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
re:今更始める Firebase + BigQueryを使った サクサクデータ分析 / We...
Search
hideki kinjyo
PRO
April 20, 2018
Programming
0
700
re:今更始める Firebase + BigQueryを使った サクサクデータ分析 / We love Array in BigQuery
社内発表用資料です。
BigQuery(Firebase Analytics)を利用する際に気をつけたい点を、ARRAYの取扱周りを中心に話しました。
hideki kinjyo
PRO
April 20, 2018
Tweet
Share
More Decks by hideki kinjyo
See All by hideki kinjyo
もう少しテストを書きたいんじゃ〜 #phpstudy
o0h
PRO
18
4.1k
『テスト書いた方が開発が早いじゃん』を解き明かす #phpcon_nagoya
o0h
PRO
9
2.5k
色んなオートローダーを覗き見る #phpcon_okinawa
o0h
PRO
5
570
ヒューマンエラーの本を読んだ ~報告会~
o0h
PRO
3
290
みんなでワイワイ「テスト駆動開発」の話をやる会 #techramen24conf
o0h
PRO
4
570
SPLから始める「データ構造」入門
o0h
PRO
7
1.9k
PHPUnit11の新しい仲間たち
o0h
PRO
3
430
単体テストを書かない技術 #phpcon_odawara
o0h
PRO
62
21k
パンフ記事 「初めてのリファクタリング!」 の裏側 #phperkaigi
o0h
PRO
2
180
Other Decks in Programming
See All in Programming
Unity Android XR入門
sakutama_11
0
180
楽しく向き合う例外対応
okutsu
0
700
生成AIで加速するテスト実装 - ロリポップ for Gamersの事例と 生成AIエディタの活用
kinosuke01
0
130
Jakarta EE meets AI
ivargrimstad
0
440
読まないコードリーディング術
hisaju
0
100
お前もAI鬼にならないか?👹Bolt & Cursor & Supabase & Vercelで人間をやめるぞ、ジョジョー!👺
taishiyade
7
4.2k
Serverless Rust: Your Low-Risk Entry Point to Rust in Production (and the benefits are huge)
lmammino
1
160
GoとPHPのインターフェイスの違い
shimabox
2
210
15分で学ぶDuckDBの可愛い使い方 DuckDBの最近の更新
notrogue
3
540
Introduction to kotlinx.rpc
arawn
0
770
1年目の私に伝えたい!テストコードを怖がらなくなるためのヒント/Tips for not being afraid of test code
push_gawa
1
620
[JAWS DAYS 2025] 最近の DB の競合解決の仕組みが分かった気になってみた
maroon1st
0
130
Featured
See All Featured
A Modern Web Designer's Workflow
chriscoyier
693
190k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
27
1.9k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
12
1k
How GitHub (no longer) Works
holman
314
140k
Speed Design
sergeychernyshev
27
810
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
4
380
We Have a Design System, Now What?
morganepeng
51
7.4k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Building Adaptive Systems
keathley
40
2.4k
Docker and Python
trallard
44
3.3k
Embracing the Ebb and Flow
colly
84
4.6k
Transcript
SFࠓߋ࢝ΊΔ 'JSFCBTF #JH2VFSZΛͬͨ αΫαΫσʔλੳ
͔ͭͯ ͜͏͍͏هࣄΛॻ͖·ͨ͠ʂ IUUQUFDIDPOOFIJUPDPNFOUSZ
͔͋ͭͬͨ༰ w ྻσʔλͷϑϥοτԽ w $3044+0*/Λ༻͍ͨߜΓࠐΈ w 8*5)۟Λͬͨଟஈूܭ w 'JSFCBTF"OBMZUJDTͷσʔλߏ
None
ײ Α͔ͬͨͱࢥ͏͜ͱ w 8*5)۟ศརʂʂ w ίϨࣾͰྲྀߦ͍ͬͯͦ͏ʂ w ྲྀߦ͍ͬͯΔʮͨΓલʯԽʂ
ײ ͍࣌·͍ͪγοΫϦདྷ͍ͯͳ͔ͬͨ͜ͱɺ ͦͷޙʹཧղ͕ਂ·ͬͨ͜ͱ w ྻͷσʔλͷѻ͍ɺͬͱྑ͘ͳΕΔͱྑ͍ͷ͔ɾɾ
ࠓͷςʔϚ
w 'JSFCBTF"OBMZUJDTʹ͋Δ w FWFOU@EJNͷσʔλΛத৺ʹ w #JH2VFSZͷྻσʔλʹཱ͔ͪ͏
ࠓͷΰʔϧ
ྻා͘ͳ͍ͧʂʂ
"HFOEB #JH2VFSZʹ͓͚Δʮྻʯʹ͍ͭͯ ࠶ೖ'JSFCBTF"OBMZUJDTͷσʔλߏ ֓೦͔ΒΞϓϩʔν͢Δʮ͖ͬ͢Γσʔλऩूʯ
͔͜͜Βαϯϓϧ1+Λར༻ͯ͠આ໌ΛਐΊ·͢ IUUQTCJHRVFSZDMPVEHPPHMFDPNUBCMFpSFCBTFBOBMZUJDT TBNQMFEBUBJPT@EBUBTFUBQQ@FWFOUT@
#JH2VFSZʹ͓͚Δʮྻʯʹ͍ͭͯ
ྻͬͯͳΜ͚ͩͬʁ ςʔϒϧͰΈΔͱʮͭͷߦʯʹʮෳͷʯ͕ೖ͍ͬͯΔͭ
ྻͬͯͳΜ͚ͩͬʁ +40/ͰΈΔͱΘ͔Γ͍͢
ྻͱࢲୡ Πϕϯτʹؚ·Ε͍ͯΔଐੑΩʔΛͱΔͧʂʂ
ྻͱࢲୡ ͍ͭͷΞϨ
ͳΜͯݴͬͯΔͷʁ w ؾʹ͖͢ $BOOPUBDDFTTpFMEQBSBNTPOBWBMVFXJUIUZQF"33": ͷ෦ w AQBSBNTA"33":ͳͷ͔ͩΒɺALFZAͱ͍͏ϑΟʔϧυΞΫ ηεͰ͖ͳ͍
ͳΜͯݴͬͯΔͷʁ ·͊ɺແཧͩΑͶɻɻɻ ͍ͬͯΔ͜ͱίϨɻ
ͪͳΈʹ
ͪͳΈʹ ϦΞϧλΠϜʹόϦσʔγϣϯϋΠϥΠτͯ͘͠ΕΔ
༨ஊFWFOU@EJNͷ4536$5 ͜Μͳײ͡
༨ஊᶄεΩʔϚఆٛͱ"33": ʮྻʯʮߏମʯͱ3&$03%ͱදݱ͞ΕΔɻ ͦͷ͏ͪɺ3&1&"5&%ͱͳ͍ͬͯΔͷ͕ྻɻ
࠶ߟྻͷϝϦοτ
3&$03% 4536$5ͱ"33": w 3&$03%ʮෳͷΛଋͶ ͨͷʯ w 4536$5ʮԣʯɺ"33": ʮॎʯͳΠϝʔδ
3&$03%σʔλͷల։ w "33":ͷల։ʹ6//&45 w 4&-&$5۟ʮߦͷग़ྗΛ͢ Δͷʯɻ w ߦΛग़ྗ͢Δͷ'30.ʹೖ ΕΔɻ
4&-&$5ྻͷσβΠϯ ˠ6//&454&-&$5۟ʹؚΊ ΒΕͳ͍ɻ'30.ʹೖΕΔɻ w 4536$5ͷల։ʹpFME w ԣల։र͏ʮྻΛ૿͢ʯͷ 4&-&$5۟ͷதʹɻ
ྻͷཁૉͷΞΫηε w "33":<0''45 O >Ͱɺ֤ཁ ૉΞΫηεͰ͖Δ w ͕͞ෆ໌ Մม ͷͱ͖
PVUPGCPVOETΤϥʔʹҙ w 4"'&@0''4&5 Λ͏ͱɺ ΤϥʔͰͳ͘/6--Λฦ͢Α͏ ʹ
༨ஊᶃ αϒΫΤϦΛ༻͍ͨྻͷੜ w ʮྻ ෳߦΛฦ͢ΫΤϦʯ Λɺ"33": ͷҾʹ͓͘͜ ͱ͕Ͱ͖Δ w ΫΤϦࣗମʮෳཁૉɾෳ
ଐੑʯΛੜ͢Δ͕ɺ͋͘ ·Ͱʮ୯ҰͷϨίʔυܕʯͱ ݴ͍ுΔ͜ͱ͕Ͱ͖Δʂ
Ͳ͏ͯ͠ศརͳͷʁ w ؔ࿈Λͭͷηοτʹ͓͚ͯ͠Δͷศར͞Ͷɾɾ w ྻΛҾʹऔΔؔͷαϙʔτ͕͋ΔΑخ͍͠Ͷ w 42-తʹʮ(3061#:Λͳͤ͘ΔʯͷͰ͔͍
࠶ೖ'JSFCBTF"OBMZUJDTͷσʔλߏ
ϢʔβʔใͱΠϕϯτใͰߦ w τοϓʹVTFS@EJNͱFWFOU@EJN͕͋Γ w FWFOU@EJN3&1&"5&% w VTFS@EJNͱFWFOU@EJN<>ɺͦΕͧΕVTFS@QSPQFSUJFTɾ QBSBNTͱ͍͏LFZWBMVFͳ3&1&"5&%ϨίʔυΛͭ w ͨͿΜίϨ͚ͩ௫ΜͰ͠·͑ɺେମ0,
WBMVFܕ͝ͱʹରԠͨ͠ଐੑΛͭ w VTFS@QSPQFSUJFT QBSBNTʹWBMVFͱ͍͏4536$5͕͋Δɻ ʹΑͬͯTUSJOH JOU qPBU EPVCMFʹৼΔ͍͚ΒΕΔ w ཧతʹ$0"-&4$&ͰશͯͷଐੑΛݕࠪ͢Δɾɾͱ͍͏ͷ
Մೳ
WBMVFܕ͝ͱʹରԠͨ͠ଐੑΛͭ WBMVFWBMVF ͷ͏ͪʮ/6--͕ͳΕͦͷΛʯฦ͢ྫɻ JOUͱqPBU͕ಉ͡ϑΟʔϧυʹ͞Ε͍ͯΔ
pSFCBTF@FWFOU@PSJHJOʹ͍ͭͯ w 4%,͕ࣗಈతʹه͢ΔͱɺBQQ͕ه͢Δ͕͋Δ w ࣗಈతʹه͞ΕΔɾɾɾ w TFTTJPO@TUBSU w pSTU@PQFO w
VTFS@FOHBHFNFOUͳͲ
֓೦͔ΒΞϓϩʔν͢Δʮ͖ͬ͢Γσʔλऩूʯ
ಛఆͷΠϕϯτΛΩʔʹ4&-&$5 ʮ˓˓ͨ͠ϢʔβʔͷҰཡʯΈ͍ͨͳͭ w 'JSFCBTF"OBMZUJDTతʹɾɾ w ΠϕϯτͷछྨFWFOU@EJN<>LFZΛݟΕྑ͍ w #JH2VFSZతʹ w ॎํͷϕΫτϧ9*/MJTUͰਅِఆ͕Ͱ͖Δ
w ਅِఆ͕Ͱ͖Ε 8)&3&۟ʹೖΕΔ͜ͱͰɺ੍ݶ͕Մೳ
ಛఆͷΠϕϯτΛΩʔʹ4&-&$5 ϕΫτϧΛੜ͢ΔΑ͏ɺ6//&45͔ΒࣹӨ͢Δ ݅ͱͳΔFWFOU@EJN<>LFZͷΛɺ*/ʹͿ੍͚ͭͯݶΛߦ͏
ԋࢉͷରʹΫΤϦΛ͏ w αϒ ΫΤϦ4&-&$5จ w #JH2VFSZͰॊೈʹΫΤϦΛೖΕࢠͰ͖Δ w ಛʹLFZWBMVFܗࣜͷ"33":4536$5Λ ݅ʹҾͬுͬͯ͘Δͱ͖ͳͲʹڧͳΠϯύΫτ
ԋࢉͷରʹΫΤϦΛ͏ w͍ͬͯΔ͜ͱγϯϓϧͳ"WBMVFͷ8)&3&۟ wݕࠪϑΟʔϧυ͕LFZΛ݅ͱͯ͠औͬͨߦͷWBMVFྻͱ͍͏ߏ wूؔ $06/5ͱ͔."9ͱ͔ -*.*5ɺ03%&3ͷར༻Մೳ
ԋࢉͷରʹΫΤϦΛ͏ w LFZΛϑΟʔϧυ໊ʹస༻͢Δྫ w ࠓճϋογϡߏతͳLFZWBMVFදݱ͕ରͳͷͰ͜ΕͰΑ͠ɻ 03%&3-*.*5Λ͏ͱʮཁૉ͚ͩฦ͢ʯͰ͖Δͣɻ
ԋࢉͷରʹΫΤϦΛ͏ w ʮಛఆͷ݅Λຬ͍ͨͯ͠Δ ͔ʯΛ ϑΟʔϧυʹग़ྗ͢Δྫ
͜ΕΒͷॲཧΛ༻͍ͯσʔλΛૢ࡞͠ɺ ۪ʹ8*5)۟Λ͍ͳ͕Βʮεςοϓͣͭूܭʯ͍͚ͯ͠ ലେͳσʔλ͕ๅͷࢁʹͳΔͱࢥ͍·͢ʂʂ
͓ർΕ༷Ͱͨ͠ʂ