Slide 1

Slide 1 text

খࢁ݈Ұ࿠(.01FQBCP *OD ϖύϘɾ͸ͯͳٕज़େձʙ!ΦϯϥΠϯ σʔλج൫ͷϝλσʔλΛ ܧଓతʹ؅ཧͰ͖Δ࢓૊ΈΛ࡞Δ ʢϖύϘฤʣ

Slide 2

Slide 2 text

ϓϦϯγύϧΤϯδχΞ খࢁ݈Ұ࿠!L-P8 ϗεςΟϯάࣄۀ෦ϗεςΟϯάάϧʔϓϚωʔδυΫϥ΢υνʔϜ IUUQTHJUIVCDPNL-P8

Slide 3

Slide 3 text

Slide 4

Slide 4 text

No content

Slide 5

Slide 5 text

ຊ୊

Slide 6

Slide 6 text

IUUQTEFWFMPQFSIBUFOBTUB⒎DPNFOUSZ

Slide 7

Slide 7 text

ຊൃදʹ͓͚Δ lσʔλج൫ͷϝλσʔλzͱ͸

Slide 8

Slide 8 text

σʔλ෼ੳΛਖ਼֬ʹߦͳ͏ͨΊʹ͸ɺσʔλࣗ਎ʹؔ͢Δ஌ࣝ ϝλσʔλ ͕ ඞཁͰ͢ɻ ʢதུʣ ͜͏͍ͬͨϝλσʔλ͸Ͳ͜ʹ͋ΔͰ͠ΐ͏͔ɻ ΞϓϦέʔγϣϯͷίʔυɺ(JU)VC্ͷJTTVFͰͷ΍ΓऔΓɺXJLJͳͲͷΩʔ ϫʔυϖʔδɺ༷ʑͩͱࢥ͍·͢ɻΞϓϦέʔγϣϯΤϯδχΞͰ͋Ε͹ɺඞཁ ʹԠͯ͡ίʔυͳͲΛࢀর͠ɺྺ࢙Λඥղ͘͜ͱͰϝλσʔλΛखʹ͢Δ͜ͱ͕ Ͱ͖ΔͰ͠ΐ͏ɻ JETZPV ʮσʔλج൫ͷϝλσʔλΛܧଓతʹ؅ཧͰ͖Δ࢓૊ΈΛ࡞ΔʯΑΓ

Slide 9

Slide 9 text

w ͜ͷςʔϒϧΧϥϜ͸ԿͷͨΊͷςʔϒϧͳͷ͔ w ࣅͨΑ͏ͳΧϥϜͱͷҧ͍ w ूܭ৚݅ͷҧ͍ɺͳͲ w σʔλ͕ͲͷΑ͏ͳ஋ΛऔΓಘΔ͔ w 4&-&$5DPMVNO $06/5 '30.NZ@UBCMF(3061#:DPMVNOͰςʔϒϧத ʹग़ͯ͘Δ஋ΛྻڍͰ͖Δ͕ɺͨ·ͨ··ͩग़͍ͯͳ͍஋͕͋Δ͔΋͠Εͳ͍ w σʔλ͚ͩݟͯ$"4&Ͱ෼ذ͍ͯ͠Δͱߟྀ࿙Ε͕ى͜Δ w 99೥::݄Ҏલ͸ඞͣ/6--ʹͳ͍ͬͯΔ ϝλσʔλʢσʔλϕʔεͷ৔߹ʣ ʮσʔλج൫ͷϝλσʔλΛܧଓతʹ؅ཧͰ͖Δ࢓૊ΈΛ࡞ΔʯΑΓ

Slide 10

Slide 10 text

ຊൃදʹ͓͚Δ༻ޠ w ϝλσʔλʜσʔλࣗ਎ʹؔ͢Δ஌ࣝɻ w ྫ͑͹σʔλιʔεʹͳ͍ͬͯΔσʔλϕʔε΍ςʔϒϧɺΧϥϜͳͲͷઆ໌ͳ Ͳɻ#JH2VFSZʹ͓͍ͯ͸σʔληοτςʔϒϧΧϥϜͷ%FTDSJQUJPOɺλάʹ ϝλσʔλ͕ه࿥͞ΕΔɻ w σʔλΧλϩάʜσʔλج൫ͷϝλσʔλΛࢀরɾ؅ཧͰ͖Δج൫ɻ#JH2VFSZ͕อ ࣋͑͠ͳ͍ϝλσʔλΛ࣋ͭ৔߹΋͋Δɻ

Slide 11

Slide 11 text

#JHGPPU

Slide 12

Slide 12 text

#JHGPPU w ߦಈϩά׆༻ج൫ͱͯ͠஀ੜ w ౰ॳ͔Βࠃ಺࠷େڃϋϯυϝΠυϚʔέοτNJOOFΛࢧ͑Δϩάج൫ͱͯ͠׆༻͞ Ε͍ͯͨ w ͦͷ׆༻ൣғΛ޿͛ͨ݁Ռɺzߦಈϩάzج൫͔ΒΑΓଟ༷ͳσʔλ͕ू໿͞ΕΔ σʔλج൫ʹਐԽ͍ͯ͠ΔʢݱࡏਐߦܗͰ֦ு͍͍ͯͬͯ͠Δʣ w ʢݱࡏ͸ʣόοΫΤϯυͷσʔλ΢ΣΞϋ΢εͱͯ͠#JH2VFSZΛར༻

Slide 13

Slide 13 text

#JHGPPU

Slide 14

Slide 14 text

#JHGPPUʢ#JH2VFSZʣʹू໿͞ΕΔσʔλྫ w ߦಈϩά w σʔλϕʔεͷσʔλʢશͯɺҰ෦ɺՃ޻ʣ w ΧελϚʔαʔϏεج൫ͷϩά w αʔόϩά w αʔόϝτϦΫε w (JU)VC*TTVFT ू໿͞ΕΔσʔλͷछྨ͸ଟذʹΘͨΓɺ͜Ε͔Β΋૿͑Δ

Slide 15

Slide 15 text

Slide 16

Slide 16 text

σʔλΧλϩάʹٻΊΔཁ݅

Slide 17

Slide 17 text

σʔλΧλϩάʹٻΊΔཁ݅ ϝλσʔλͷߋ৽͸ɺΤϯδχΞҎ֎Ͱ΋Ͱ͖ΔΑ͏ʹͳ͍ͬͯΔ͜ͱ w ϝλσʔλͷߋ৽ͷෑډΛͰ͖ΔݶΓԼ͛Δ͜ͱͰϝλσʔλΛॆ࣮ͤ͞Δ ಈతʹมԽ͠͏ΔσʔληοτςʔϒϧΧϥϜʹରԠͰ͖Δ͜ͱ w ऩू͞ΕΔσʔλ΋छྨ΋૿ݮ͕͋Δɻͦͷঢ়ଶͷมԽʹ௥ैͰ͖Δ͜ͱ ϝλσʔλͷೋॏ؅ཧΛආ͚ΒΕΔΑ͏ͳ࢓૊ΈΛ࣋ͯΔ͜ͱ w ಉ͡Α͏ͳ%%-ͳΒϝλσʔλΛڞ௨ԽͰ͖ΔΑ͏ʹ w σʔλιʔε͕3%#ͳΒʢςʔϒϧΧϥϜίϝϯτ͕ϝλσʔλʣɺ3%#͔Β ϝλσʔλΛऔಘͰ͖ΔΑ͏ʹ

Slide 18

Slide 18 text

σʔλΧλϩάʹٻΊΔཁ݅ʢղܾʣ ϝλσʔλͷߋ৽͸ɺΤϯδχΞҎ֎Ͱ΋Ͱ͖ΔΑ͏ʹͳ͍ͬͯΔ͜ͱ ˠ :".-ʹΑΔϝλσʔλͷఆٛͱߋ৽ऀϑϨϯυϦͳ1VMM3FRVFTUϕʔεͷϝ λσʔλߋ৽ػߏ ಈతʹมԽ͠͏ΔσʔληοτςʔϒϧΧϥϜʹରԠͰ͖Δ͜ͱ ˠ ఆظతͳσʔληοτҰཡͷऔಘͱಈతͳσʔλΧλϩάੜ੒ػߏ ϝλσʔλͷೋॏ؅ཧΛආ͚ΒΕΔΑ͏ͳ࢓૊ΈΛ࣋ͯΔ͜ͱ ˠ ϨΠϠʔػߏΛ࣋ͭઐ༻ͷϚʔδػߏ

Slide 19

Slide 19 text

#JHGPPU

Slide 20

Slide 20 text

Slide 21

Slide 21 text

UCMT w $*ϑϨϯυϦͳσʔλϕʔευΩϡϝϯτੜ੒πʔϧ w IUUQTHJUIVCDPNL-P8UCMT w $*ϑϨϯυϦϫϯόΠφϦ w 1PTUHSF42- .Z42-ͳͲͷ3%#.4͚ͩͰͳ͘ɺ#JH2VFSZ΍"NB[PO %ZOBNP%# $MPVE4QBOOFSͱ͍ͬͨσʔλιʔεʹ΋ରԠ wυΩϡϝϯτΛॆ࣮ͤ͞Δػೳͱͯ͠Ծ૝తͳϝλσʔλΛఆٛ͢Δ͜ͱ͕Մೳ w ςʔϒϧɺΧϥϜͳͲͷίϝϯτ෇༩͚ͩͰͳ͘λάɺϦϨʔγϣϯͳͲ w UCMTͷ਺͋ΔػೳͷதͰσʔλΧλϩάΛ࡞Δ্Ͱத৺ͱͳΔػೳ

Slide 22

Slide 22 text

Ծ૝తͳϝλσʔλ w σʔλιʔεͷ৘ใ͔ΒυΩϡϝϯτΛੜ੒͢Δͷ͕UCMTͷجຊͷػೳʢUCMTEPDʣ w͞ΒʹUCMTZNMʹهࡌ͞Εͨίϝϯτ΍ϦϨʔγϣϯΛϚʔδͯ͠υΩϡϝϯτԽͰ ͖Δ w "-5&35"#-&ͳͲΛ͢Δඞཁͳ͘υΩϡϝϯτΛߋ৽Ͱ͖Δ w σʔλιʔεଆ͕ίϝϯτ΍',ͷػೳΛ͍࣋ͬͯͳͯ͘΋υΩϡϝϯτͰ͸දݱͰ ͖ΔʢʹԾ૝తʣ

Slide 23

Slide 23 text

:".-ʹΑΔϝλσʔλͷఆٛͱ ߋ৽ऀϑϨϯυϦͳ 1VMM3FRVFTUϕʔεͷϝλσʔλߋ৽ػߏ

Slide 24

Slide 24 text

ߋ৽ऀϑϨϯυϦͳ1VMM3FRVFTUϕʔεͷϝλσʔλߋ৽ػߏ w ʮ:".-ʹΑΔϝλσʔλͷఆٛʯ͸UCMTͷجຊػೳ w ʮ1VMM3FRVFTUϕʔεʯ΋$*ͰUCMTEPDͰग़ྗͨ͠υΩϡϝϯτΛίϛοτ͢Ε͹ ͍͍ w ʮߋ৽ऀϑϨϯυϦʯʮ:".-ͷߋ৽Λ೗ԿʹΘ͔Γ΍͘͢͢Δ͔ʯ ϚχϡΞϧͷॆ࣮ ʮҙਤͨ͠ߋ৽͕͞ΕΔ͔ʯΛΘ͔Γ΍ࣔ͘͢͢ ʮ:".-ͷهड़ϛεͳͲͷΤϥʔʯΛΘ͔Γ΍ࣔ͘͢͢

Slide 25

Slide 25 text

$*ͷ݁ՌΛΘ͔Γ΍͘͢1VMM3FRVFTUʹίϝϯτͰొ࿥͢Δ w UCMTEJ⒎ͰɺʮݩͷυΩϡϝϯτʯͱʮੜ੒͞ΕΔυΩϡϝϯτʯͷࠩ෼ΛEJ⒎දࣔ ͕Ͱ͖Δ w UCMTMJOUͰɺϝλσʔλ͕ࢦఆͷϧʔϧʹԊ͍ͬͯΔ͔Ͳ͏͔ΛνΣοΫͰ͖Δ w ʮλά͕#JH2VFSZͷλάϑΥʔϚοτʹ४ڌ͍ͯ͠Δ͔Ͳ͏͔ʯͳͲ w UCMTEJ⒎΍UCMTMJOUͷ݁ՌΛ$*؀ڥ͔Βऔಘͯ͠1VMM3FRVFTUʹΘ͔Γ΍͘͢ίϝϯ τͰొ࿥͢Δ w :".-ͷγϯλοΫεΤϥʔͳͲΘ͔Γʹ͍͘Τϥʔ͸ʮΤϥʔͷಡΈํʯ΋ί ϝϯτͰొ࿥͢Δ

Slide 26

Slide 26 text

HIQVU w (JU)VCʹ͍ΖΜͳ΋ͷΛ165ʢొ࿥ʣͰ͖Δπʔϧ w IUUQTHJUIVCDPNL-P8HIQVU w 3BLFλεΫ಺Ͱ&3#Λۦ࢖ͯ͠ίϝϯτจষΛ࡞੒ɻHIQVUͰ1VMM3FRVFTUʹί ϝϯτΛొ࿥ʢPO$*ʣ

Slide 27

Slide 27 text

ఆظతͳσʔληοτҰཡͷऔಘͱ ಈతͳσʔλΧλϩάੜ੒

Slide 28

Slide 28 text

ఆظతͳσʔληοτҰཡͷऔಘͱಈతͳσʔλΧλϩάੜ੒ w UCMT͸ෳ਺ͷσʔλιʔεͷυΩϡϝϯτੜ੒͸૝ఆ͍ͯ͠ͳ͍ w #JH2VFSZʹ͋ΔσʔληοτҰཡ͕ඞཁ w Ұཡ͔Β֤σʔληοτͷUCMTZNMΛੜ੒Ͱ͖Ε͹͍͍ w LVSBHFNΛ࢖ͬͯ#JH2VFSZ͔ΒσʔληοτҰཡΛऔಘ͢Δ3BLFλεΫͱͯ͠ هड़

Slide 29

Slide 29 text

# kura.gem # https://github.com/nagachika/kura/ # Fukuoka.rbͷओ࠵ͷҰਓͰ΋͋Δid:nagachika͞Μ࡞੒ͷBigQuery APIϥούʔ ˌҎԼͷίʔυ͚ͩͰೝূ͔ΒσʔληοτҰཡऔಘ·ͰͰ͖Δ require 'kura' client = Kura.client('/path/to/client_secrets.json') client.datasets(project_id: 'xxxxxxx').each do |dataset| puts dataset.id end

Slide 30

Slide 30 text

ఆظతͳσʔληοτҰཡͷऔಘͱಈతͳσʔλΧλϩάੜ੒ w ͜ͷ࣌఺Ͱ͸ϝλσʔλ͸#JH2VFSZυΩϡϝϯτͷҰํ௨ߦ w ߋ৽ͨ͠ϝλσʔλͷ৘ใΛ#JH2VFSZʹ൓өͤ͞Δඞཁ͕͋Δ

Slide 31

Slide 31 text

Slide 32

Slide 32 text

UCMTNFUB w UCMT͕อ࣋͢ΔϝλσʔλΛɺσʔλιʔεʹϑΟʔυόοΫͯ͠ߋ৽͢Δ֎෦αϒ ίϚϯυ w IUUQTHJUIVCDPNL-P8UCMTNFUB w $*ͷσʔληοτҰཡऔಘͷ࣍ͷεςοϓʹ૊ΈࠐΜͰఆظ࣮ߦ ֎෦αϒίϚϯυʜHJUHTVCΛHJUHTVCͰ࣮ߦͰ͖ΔΑ͏ʹͳΔΞϨ

Slide 33

Slide 33 text

ϨΠϠʔػߏΛ࣋ͭઐ༻ͷϚʔδػߏ

Slide 34

Slide 34 text

ཁ݅࠶ܝ wʮϝλσʔλͷೋॏ؅ཧΛආ͚ΒΕΔΑ͏ͳ࢓૊ΈΛ࣋ͯΔ͜ͱʯ w ಉ͡Α͏ͳ%%-ͳΒϝλσʔλΛڞ௨ԽͰ͖ΔΑ͏ʹ ˠ ಉ͡σʔλιʔεͷςʔϒϧΛαʔϏε͝ͱʹ෼ׂ͍ͯ͠Δ৔߹ͳͲ w σʔλιʔε͕3%#ͳΒʢςʔϒϧΧϥϜίϝϯτ͕ݩϝλσʔλʣɺ3%#͔ ΒϝλσʔλΛऔಘͰ͖ΔΑ͏ʹ ˠ σʔλج൫ͱ͸ผʹ3%#͸3%#ͰͦΕΛར༻͍ͯ͠ΔΞϓϦέʔγϣϯͷ։ ൃνʔϜͰ؅ཧӡ༻͍ͯ͠Δ w͔͠͠ɺUCMT͕ઃఆͱͯ͠ಡΈࠐΉUCMTZNM͸ͭͷ:".-ϑΝΠϧͰɺ%4-Λ΋ͬ ͍ͯΔΘ͚Ͱ͸ͳ͍

Slide 35

Slide 35 text

Slide 36

Slide 36 text

UCMTCVJME w UCMTZNMʹଞͷઃఆͷαϒηοτ:".-ϑΝΠϧ΍ɺσʔλιʔε͔Βੜ੒ͨ͠ TDIFNBKTPOΛɺϨΠϠʔߏ଄Λҙࣝͨ͠ܗͰϚʔδͰ͖Δ֎෦αϒίϚϯυ w IUUQTHJUIVCDPNL-P8UCMTCVJME w ϕʔεͷUCMTZNMʹରͯ͠ɺσϑΥϧτ஋ͳͲ͸Լ૚ʹʢŠVOEFSMBZʣɺڧ੍తʹ ্ॻ͖Λ͍ͨ͠஋͸ϕʔεʹର্ͯ͠૚ʹʢŠPWFSMBZʣ഑ஔͯ͠Ϛʔδ͢Δ w LVTUPNJ[FʹӨڹΛड͚ͨπʔϧ

Slide 37

Slide 37 text

#JHGPPUʢ࠶ܝʣ

Slide 38

Slide 38 text

·ͱΊͱࠓޙͷల๬

Slide 39

Slide 39 text

·ͱΊͱࠓޙͷల๬ w σʔλج൫ͷϝλσʔλΛܧଓతʹ؅ཧͰ͖Δ࢓૊ΈΛ࡞ͬͨ w ͨͩɺॏཁͳͷ͸ʮϝλσʔλͷߋ৽͕ܧଓతʹ࣮ࢪ͞ΕΔ͜ͱʯͰɺͦͷ఺ʹؔ ͯ͠͸·ͩԿ΋Ͱ͖͍ͯͳ͍ͷͰ֤ॴʹڠྗΛ΋Β͍ͳ͕ΒਐΊ͍͖͍ͯͨ w ݱࡏ͸#JHGPPU #JH2VFSZ ͕த৺ͱͳ͍ͬͯΔ͕ɺྫ͑͹ϖύϘ͕อ࣋͢Δશͯͷ σʔλιʔεͷσʔλΧλϩάΛ࡞Γ͍ͨͱߏ૝͍ͯ͠Δ w ࠓճ঺հͨ͠πʔϧνΣΠϯΛ࢖͑͹ɺ֤σʔλιʔεʹରͯ͠UCMTPVUUKTPO Ͱग़ྗͨ͠TDIFNBKTPOΛHIQVUͰͭͷϦϙδτϦʹίϛοτ͢Δ͚ͩͰ৘ใΛ ू໿Ͱ͖ΔɹͳͲ w ͜ͷλεΫΛ೚ͤͯ͘ΕͨJEVE[VSBʹײँ͠·͢ʂ

Slide 40

Slide 40 text

5IBOLZPV ࠷৽ͷ࠾༻৘ใΛνΣοΫˠ !QC@SFDSVJU