Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ピクシブ流データ活用基盤のこれまでとこれから #pixivTECHSALON / 20190305
Search
minamitary
March 05, 2019
Technology
1
3.9k
ピクシブ流データ活用基盤のこれまでとこれから #pixivTECHSALON / 20190305
pixiv TECH SALON
https://techsalon.pixiv.co.jp/
メインセッションで使用した発表資料です。
minamitary
March 05, 2019
Tweet
Share
More Decks by minamitary
See All by minamitary
ピクシブにおける「ビジョン」の取り扱われ方 #pixivdevmeetup / 20240920
minamitary
1
2.5k
興味関心と組織とリサーチ #ResearchConf / 20240419
minamitary
1
280
デザインを誘発する「イネーブルメント」アプローチ #spectrumfest2023 / 20231203
minamitary
0
1.1k
まわるUXリサーチ、たまるユーザーインサイト #uxmilkallnight / 20200912
minamitary
2
420
もし仮に、定性・定量リサーチを全開発者が自ら実施できるようになったとしたら #InsightTokyo / 20200325
minamitary
7
2.8k
エンジニアがUXリサーチャーを兼任するに至ったワケ #uxmilk_fest / 20190914
minamitary
7
11k
Other Decks in Technology
See All in Technology
計装を見直してアプリケーションパフォーマンスを改善させた話
donkomura
2
200
MagicPodが描くAIエージェント戦略とソフトウェアテストの未来
magicpod
0
330
転職したらMCPサーバーだった件
nwiizo
13
9.9k
MCP でモノが動くとおもしろい/It is interesting when things move with MCP
bitkey
3
640
分解し、導き、託す ログラスにおける“技術でリードする” 実践の記録
hryushm
1
610
事業と組織から目を逸らずに技術でリードする
ogugu9
19
5.5k
テストコードにはテストの意図を込めよう(2025年版) #retechtalk / Put the intent of the test 2025
nihonbuson
PRO
14
2.3k
本番環境への影響リスクが低い Real Application Testing (SQL Performance Analyzer) の実施方法の検討と実践
jri_narita
0
230
VitePress & MCPでアプリ仕様のオープン化に挑戦する
hal_spidernight
0
150
4社統合におけるマスタデータ管理に立ち向かう / Towards master data management in the four-company integration
carta_engineering
0
320
OCI Full Stack Disaster Recovery サービス概要
oracle4engineer
PRO
1
140
スプリントゴールで価値を駆動しよう
takufujii
3
1.4k
Featured
See All Featured
What's in a price? How to price your products and services
michaelherold
245
12k
Rebuilding a faster, lazier Slack
samanthasiow
81
9k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Scaling GitHub
holman
459
140k
GitHub's CSS Performance
jonrohan
1031
460k
Docker and Python
trallard
44
3.4k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.8k
Being A Developer After 40
akosma
91
590k
Into the Great Unknown - MozCon
thekraken
38
1.8k
Designing Experiences People Love
moore
142
24k
How STYLIGHT went responsive
nonsquared
100
5.5k
Transcript
ϐΫγϒྲྀσʔλ׆༻ج൫ͷ ͜Ε·Ͱͱ͜Ε͔Β pixiv.inc minamitary
σʔλ׆༻ج൫ ࠓ͢͜ͱ
@minamitary / ా༸հ 2015த్ೖࣾ pixivӡӦຊ෦ + σʔλۦಈਪਐࣨ ΤϯδχΞ + UX
Ϧαʔνϟʔ ྖҬԣஅతͳಈ͖ํΛ͢Δ͜ͱ͕ଟ͍ ࣗݾհ
• 2015ɿೖࣾޙʮsenseiʯͷ্ཱͪ͛ʹϦʔυΤϯδχΞͱͯ͠ࢀՃ • 2016ɿsenseiͷϦϦʔεޙάϩʔεΛ୲ɺͦͷޙʮpixivʯ • Ҏ߱ΫϦΤΠλʔΛத৺ͱͨ͠UXϦαʔνΛओʹ୲ • ఆྔతϦαʔνͰBigQueryΛୟ͖࢝Ίͯ̏ ࣗݾհ ʴ
͓ֆ͔͖ྺ̏
σʔλ׆༻ج൫ ࠓ͢͜ͱ
ϐΫγϒʹ͓͚Δσʔλ׆༻ج൫ ≒ BigQuery
• BigQueryʹσʔλΛूΊ͚ͨͩͰμϝ • ΘΕͳ͚Εσʔλʮ׆༻ʯج൫Ͱͳ͍ ϐΫγϒʹ͓͚Δσʔλ׆༻ج൫
ʮ׆༻ʯʹͲ͏ཱ͔ͪ͏͔
• ʮ׆༻ʯΛ८ͬͯɺ̏ͷؒʹ৭ʑͳมԽ͕͋ͬͨ • ٕज़తͳมԽ͚ͩͰͳ͘ɺ৫తͳมԽେ͖͔ͬͨ ϐΫγϒʹ͓͚Δσʔλ׆༻ج൫
• ͜ͷ̏Ͱσʔλ׆༻ج൫ʹੜͨ͡มԽ ‣ ٕज़తͳมԽ ‣ ৫తͳมԽ • ϐΫγϒʹ͓͚Δσʔλ׆༻ج൫ͷ͜Ε͔Β ࠓ͢͜ͱ
ʮΦʔφʔγοϓʯ
Φʔφʔγοϓʁ ୲͢ΔϓϩμΫτʹର͢ΔΦʔφʔγοϓ
Φʔφʔγοϓʁ ʮԶ͕͜ͷϓϩμΫτΛੈքҰʹ͢ΔΜʂʯ
• શ৬छ͕ϢʔβʔΛத৺ʹΈͯಈ͘ • Ϣʔβʔ࠷༏ઌ = ৬छؒͷ͕͍֞ࠜ • ϓϩμΫτѪɾΧϧνϟʔѪ͕ڧ͍ϝϯόʔ͕ଟ͍ લఏɿϐΫγϒͷاۀจԽ
ʮΦʔφʔγοϓ͕ڧ͍ʯ ͱ͍͏ͷ͕ϐΫγϒʹ͓͚Δେલఏ
υϝΠϯཧղ͕σʔλ׆༻ͷਫ਼ΛߴΊΔ υϝΠϯཧղͷਂ͍ਓ͕σʔλΛ׆༻͍͖ͯ͘͠ Φʔφʔγοϓͳͥॏཁʁ
Φʔφʔγοϓ͕υϝΠϯཧղΛਂΊΔ ͭ·ΓΦʔφʔγοϓ͕σʔλ׆༻ͷਫ਼ΛߴΊΔ Φʔφʔγοϓͷڧ͍։ൃऀ͕σʔλΛ׆༻͍͖ͯ͘͠ Φʔφʔγοϓͳͥॏཁʁ
σʔλ׆༻ Φʔφʔγοϓͱηοτ جຊݪଇɿ
͏ҰͭͷϐΫγϒͷಛ
ଟछଟ༷ͳϓϩμΫτ
• υϝΠϯྖҬͯ͢ʮ࡞׆ಈʯ • αʔϏεܗଶҟͳΓͭͭɺϢʔβʔಉ͡ • Ϣʔβʔ୯ҐͰͷ݁ͼ͚͕ͭେࣄʂ ϐΫγϒͷ๊͑ΔϓϩμΫτ
• ʮσʔλ׆༻Φʔφγοϓͱηοτʯҡ࣋ • σʔλ׆༻ͷʮڮ͠ʯඞཁ ͦΕΏ͑ʹ……
ʮΦʔφʔγοϓʯ ʮڮ͠ʯ ೋͭͷϙΠϯτɿ
1. ͜ͷ3Ͱੜͨ͡มԽ ʙٕज़ฤʙ 2. ͜ͷ3Ͱੜͨ͡มԽ ʙ৫ฤʙ 3. ͜Ε͔Βͷ
࣌ḪΔ͜ͱ3……
• σʔλطʹBigQueryʹͬͯͨ • ར༻։࢝2014ʂ ٕज़ฤ -3લ-
• DBϨϓϦΧΛୟ͘ • Google AnalyticsͷAPIΛୟ͍ͯूܭ • ൿͷεϓϨουγʔτͷཚཱ • σʔλ෦తʹ্͔͕͍ͬͯ͠ͳ͍ʂ ʮ׆༻ʯݶఆత……
3ޙ
σʔλBigQueryʹू JOIN͠์ʂ
• ൿͷεϓϨουγʔτɿ΄΅ফ໓ʂ • ൿͷूܭεΫϦϓτɿ΄΅ফ໓ʂ • ཧը໘্ʹࡏ͍ͯͨ͠άϥϑ܈ɿ΄΅ফ໓ʂ • શͯͷσʔλॲཧ͕SQLͰهड़͞ΕΔੈքʹ ੳखஈBigQueryʹ౷Ұ
• WITH۟ϏϡʔͰલॲཧΛ؆ུԽ • ͍ճ͍͢͠WITH۟Λࢿ࢈ͱͯ͠อଘɾγΣΞ • SQLͷڞ௨ࢿ࢈Խʂ શ͕ͯSQLͰهड़͞ΕΔੈք
• SQL֮͑͑͞ΕσʔλΛ׆༻Ͱ͖Δੈք • BigQuery্Ͱσʔλॲཧ͕݁ • ϚγϯϦιʔεΛҙࣝ͢Δඞཁ͕ͳ͍ શ͕ͯSQLͰهड़͞ΕΔੈք
• ʮSQLศརʯʮSQLΠέͯΔʯ • ݁ՌϏδωεଆͷਓؒʹSQLར༻͕֦େ • ΦʔφʔγοϓͷԸܙʂ શ͕ͯSQLͰهड़͞ΕΔੈք
ʮڮ͠ʯ͍͢͠ڥ͕Ͱ͖ͨʂ
• ͯ͢ͷσʔλ͕BigQueryʹू͞Εͨ • ੳखஈ͕SQLʹ౷Ұ͞Εͨ • ʮڮ͠ʯ͕Γ͘͢ͳͬͨ ٕज़తͳมԽ·ͱΊ
1. ͜ͷ3Ͱੜͨ͡มԽ ʙٕज़ฤʙ 2. ͜ͷ3Ͱੜͨ͡มԽ ʙ৫ฤʙ 3. ͜Ε͔Βͷ
࠶ͼḪΔ͜ͱ3……
• ֤෦ॺ͕ͦΕͧΕͰؤுΔ • Ϗδωεܥͷ෦ॺΛத৺ʹσʔλ͕׆༻͞Ε͍ͯͨ • μογϡϘʔυɺཧը໘ɺεϓϨουγʔτͷཚཱ ৫ฤ -3લ-
എܠɿ૿͑Ώ͘ϓϩμΫτ 9ݸ 2016/01 20ݸ 2019/01 ͜ͷ3ؒͰϓϩμΫτͷ2ഒҎ্ʹ
• ͦΕʹԠͯ͡νʔϜͷ૿Ճ • νʔϜʹσʔλಘҙϚϯ͕͍ͳ͍ • ยखؒσʔλΤϯδχΞϦϯά എܠɿ૿͑Ώ͘ϓϩμΫτ
ੳઐͷ෦ॺΛ࡞Δ͖ʁ
• جຊݪଇʮσʔλ׆༻ΦʔφʔγοϓͱηοτͰʯ • ʮσʔλ͋ͷ෦ॺͷਓ͕ݟͯ͘ΕΔʯͱ͍͏ҙࣝ ආ͚͍ͨ ͑NOʂ
ੳ୲ऀ֤෦ॺʹ͍Δ͖ ͱ͍͑ԣͷܨ͕Γඞཁ……
ରࡦ
ରࡦ SlackνϟϯωϧΛ࡞͚ͬͨͩ
• ࣾษڧձ༻ͷSlackνϟϯωϧΛ࡞Δ • ษڧձऴྃޙɺओ࠵ϝϯόʔ͕݁ୗ • ʮσʔλʹڵຯ͋Δਓ͜͜ʹདྷͯ͘ΕʂʯΞϐʔϧ ܦҢ
• νϟϯωϧʹਓ͕ू·Γ͡ΊΔ • ଟͷ૬ஊ͕دͤΒΕΔ • ଞ෦ॺͷৄ͍͠ਓ͕ͦΕʹԠ͡ΔจԽ • ʮ͜͜ʹߦ͚ղܾ͢Δʯ͞Βʹਓ͕૿͑Δʂ ܦҢ
• ि࣍Ͱੳ୲͕ू·ΔΑ͏ʹ ‣ ৽نσʔληοτՃͷ࿈བྷ ‣ ৽͍͠μογϡϘʔυͷڞ༗ ‣ BigQueryͷ৽ػೳհ ‣ ظతͳํܾΊ
‣ ͳͲͳͲ ܦҢ
ઐ෦ॺۦಈͰͳ͍ ࣗൃతͳʮ׆༻ʯج൫ͷվળ
Why?
• ʮΦʔφʔγοϓʯͱ͍͏ϐΫγϒͷاۀจԽ͋Γ͖ • ʮϓϩμΫτΛͤ͞Δ্Ͱɺඞཁ͔ͩΒΔʯ Why?
• Φʔφʔγοϓ + ϕετϓϥΫςΟεͷಉظ • ʮ͜Ε͕ϕετϓϥΫςΟεʯ͕ಉظ͞ΕΔ͜ͱͰ…… →ʮͪΐͬͱख͕ۭ͖ؾຯͳͷͰΨοͱվળ͓͖ͯ͠·͢ʯ →ʮߋʹϥΫʹͰ͖Δํ๏Λࢥ͍͖ͭ·ͨ͠ʯ →ʮ͜ͷBigQueryͷ৽ػೳศརͦ͏ͳͷͰͬͯΈ·͠ΐ͏ʯ
Why?
• ʮΦʔφʔγοϓʯͷൃشઌΛಉظ͢Δඞཁੑ • ͦͷͨΊͷɺSlackʹ͓͚Δʮڮ͠ʯͷઃܭ Why?
• Slackνϟϯωϧ࡞͕มԽͷ͖͔͚ͬ • νϟϯωϧʹਓ͕ू·Γɺԣͷ࿈ܞ͕ڧԽ • ʮڮ͠ʯʹΑΔϕετϓϥΫςΟεͷಉظ • ʮΦʔφʔγοϓʯϕʔεͰԣஅతͳج൫վળ͕Մೳʹʂ
৫తͳมԽ·ͱΊ
1. ͜ͷ3Ͱੜͨ͡มԽ ʙٕज़ฤʙ 2. ͜ͷ3Ͱੜͨ͡มԽ ʙ৫ฤʙ 3. ͜Ε͔Βͷ
ͦͷલʹ
• ٕज़తͳมԽ͚ͩΛਐΊ͍ͯͨΒ……ʁ • ৫తͳมԽ͚ͩΛਐΊ͍ͯͨΒ……ʁ • ͲͪΒʮ׆༻ʯΓཱͨͳ͍ʂ ৼΓฦͬͯΈΔͱ……
ৼΓฦͬͯΈΔͱ… ٕज़తมԽ ৫తมԽ
σʔλ׆༻ Φʔφʔγοϓͱηοτ جຊݪଇɿ
ٕज़తมԽ ৫తมԽͱηοτ ͏Ұͭͷجຊݪଇɿ
1. ͜ͷ3Ͱੜͨ͡มԽ ʙٕज़ฤʙ 2. ͜ͷ3Ͱੜͨ͡มԽ ʙ৫ฤʙ 3. ͜Ε͔Βͷ
ࡢ CTO ෦ॺ࡞ͬͪΌ͓ʂ
ࡢ ʮσʔλۦಈਪਐࣨʯͷੜ
• جຊݪଇʮσʔλ׆༻ΦʔφʔγοϓͱηοτͰʯ • ੳͷ࣮୲͠ͳ͍ʂ • ֤෦ॺͷσʔλ׆༻Λαϙʔτɾਪਐ͢Δׂ • Ϗδωε໘ɾUX໘ɾٕज़໘͕ͯ͢ରʂ σʔλۦಈʮਪਐʯࣨ
None
ΑΓΞΫϩόςΟοΫʹ ʮಈ͚Δʯ Α͏ʹ෦ॺԽ
۩ମతͳΞϓϩʔν https://inside.pixiv.blog/jaggy/6421 ϢʔβʔʹՁΛ࠷Ͱಧ͚ΔͨΊʹɻ ϐΫγϒͷʮσʔλຽओԽʯʹ͚ͨઓ
• ٕज़తͳτϐοΫͨ͘͞Μ ‣ BigQuery্ͰେنͳσʔλΛѻ͏ࡍͷϊϋ ‣ BigQueryपลͰར༻͍ͯ͠Δπʔϧ܈ɾ۩ମతͳ࣮༰ ‣ ϐΫγϒͳΒͰͷσʔλ׆༻ࣄྫ͋Ε͜Ε ‣ ͳͲͳͲ……
• ৄ͘͠ฉ͖͍ͨํ࠙ձͰʂ ۩ମతͳΞϓϩʔν
• σʔλ׆༻Φʔφʔγοϓͱηοτ • ٕज़తมԽ৫తมԽͱηοτ • σʔλۦಈਪਐ͕ࣨͰ͖ͨ ·ͱΊ
ࣾһϓϩμΫτ૿͑ଓ͚Δ͚Ͳɺ ʮ࡞׆ಈ͕ͬͱָ͘͠ͳΔॴΛΔʯؾ࣋ͪมΘΒͳ͍ɻ ϐΫγϒσʔλͷྗͰ࡞׆ಈΛࢧ͍͑ͯ͘ɻ