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
680
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
色んなオートローダーを覗き見る #phpcon_okinawa
o0h
PRO
5
520
ヒューマンエラーの本を読んだ ~報告会~
o0h
PRO
3
270
みんなでワイワイ「テスト駆動開発」の話をやる会 #techramen24conf
o0h
PRO
3
520
SPLから始める「データ構造」入門
o0h
PRO
7
1.8k
PHPUnit11の新しい仲間たち
o0h
PRO
3
390
単体テストを書かない技術 #phpcon_odawara
o0h
PRO
61
20k
パンフ記事 「初めてのリファクタリング!」 の裏側 #phperkaigi
o0h
PRO
2
160
phpunit/php-code-coverageって何をしてるんだ #phperkaigi
o0h
PRO
3
1.4k
Composerを便利に使うために私がやっていること #phperkaigi
o0h
PRO
1
2.7k
Other Decks in Programming
See All in Programming
PHPカンファレンス 2024|共創を加速するための若手の技術挑戦
weddingpark
0
110
PHPUnitしか使ってこなかった 一般PHPerがPestに乗り換えた実録
mashirou1234
0
390
traP の部内 ISUCON とそれを支えるポータル / PISCON Portal
ikura_hamu
0
130
歴史と現在から考えるスケーラブルなソフトウェア開発のプラクティス
i10416
0
240
週次リリースを実現するための グローバルアプリ開発
tera_ny
1
680
PHPで学ぶプログラミングの教訓 / Lessons in Programming Learned through PHP
nrslib
4
1k
テストコード書いてみませんか?
onopon
2
290
htmxって知っていますか?次世代のHTML
hiro_ghap1
0
390
Fibonacci Function Gallery - Part 2
philipschwarz
PRO
0
200
Effective Signals in Angular 19+: Rules and Helpers
manfredsteyer
PRO
0
330
情報漏洩させないための設計
kubotak
5
1.2k
return文におけるstd::moveについて
onihusube
1
1.4k
Featured
See All Featured
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.9k
4 Signs Your Business is Dying
shpigford
182
21k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.8k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
A designer walks into a library…
pauljervisheath
205
24k
YesSQL, Process and Tooling at Scale
rocio
170
14k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
The Invisible Side of Design
smashingmag
299
50k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
132
33k
Raft: Consensus for Rubyists
vanstee
137
6.7k
A Philosophy of Restraint
colly
203
16k
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)۟Λ͍ͳ͕Βʮεςοϓͣͭूܭʯ͍͚ͯ͠ ലେͳσʔλ͕ๅͷࢁʹͳΔͱࢥ͍·͢ʂʂ
͓ർΕ༷Ͱͨ͠ʂ