Upgrade to Pro — share decks privately, control downloads, hide ads and more …

モダンデータスタックとかの話(データエンジニアのお仕事とは)

numa
May 18, 2022

 モダンデータスタックとかの話(データエンジニアのお仕事とは)

datatech-jp Casual Talks #2で発表した内容
https://datatech-jp.connpass.com/event/244516/

numa

May 18, 2022
Tweet

More Decks by numa

Other Decks in Technology

Transcript

  1. ࣗݾ঺հ ˜$IVSB%"5"JOD ͪΎΒσʔλגࣜձࣾ $50 ɾ໊લɿඛপ ༤ଠʢ!GPVSTVFʣ ɾಛٕɿσʔλΤϯδχΞϦϯά ɾ࢓ࣄɿσʔλʹ·ͭΘΔΤτητϥ ೥ʹ Ϋϥ΢υ%8

    ͷ 4OPXGMBLFࣾ ͔Β %"5")&300' :&"3ʹબ͹ΕͨΓͯ͠·͢ ೥΋%BUB4VQFSIFSP ʹબ͹ΕͨΒ͍͠ ˞%8σʔλ΢ΣΞϋ΢ε
  2. "(&/%" ˜$IVSB%"5"JOD ͓͠ͳ͕͖ • ΞʔΩςΫνϟͷ࿩ • ϞμϯσʔλελοΫ·Ͱͷྺ࢙ • ϞμϯσʔλελοΫͬͯԿʁ •

    ϞσϦϯάͷ࿩ • ͲΜͳϞσϦϯά͕͋Δͷʁ • %BUB7BVMUͷ঺հ • πʔϧͷ࿩ • ϞσϦϯάπʔϧͱͯ͠ͷECU • ݁࿦ • ˎˎˎˎ
  3. ˜ $IVSB%"5"JOD ௕͍ؒ %#.4 ੡඼ͱͯ͠ɺ0SBDMF ͱ .442-4FSWFS ͷڧ࣌୅Ͱͨ͠ ϞμϯσʔλελοΫʹ͍ͨΔྺ࢙ ʙ

    ʙ ʙ ʙ ʙ #FSLFMFZ*OHSFT 1PTUHSF42- 4ZCBTF 42-4FSWFS .4 42-4FSWFS 0SBDMF .Z42-
  4. ˜ $IVSB%"5"JOD ೥ʹ "84 ͕ 3FETIJGU ͕ొ৔ɺΫϥ΢υσʔλ΢ΣΞϋ΢ε %8 ͷ࢝·Γ ϞμϯσʔλελοΫʹ͍ͨΔྺ࢙

    ʙ ʙ ʙ ʙ ʙ #FSLFMFZ*OHSFT 1PTUHSF42- 4ZCBTF 42-4FSWFS .4 42-4FSWFS 0SBDMF .Z42- 3FETIJGU Ϋϥ΢υ%8ͷొ৔ 
  5. ˜ $IVSB%"5"JOD ࣮࣭తʹΠϯϑΟχοτεέʔϧͳΫϥ΢υ%8ͷొ৔ʹΑͬͯɺଟ͘ͷ੡඼͕ੜ· ΕɺϞμϯσʔλελοΫ΁ͱੈք͸ਐΜͰ͍͖·͢ ϞμϯσʔλελοΫʹ͍ͨΔྺ࢙ ʙ 3FETIJGU ʙ #JH2VFSZ 

     ඪ४42-αϙʔτ #JH2VFSZ "[VSF 4ZOBQTF  4OPXGMBLF   DIBSUJP  -PPLFS   'JWFUSBO  .FUBCBTF  4UJDI  3FEBTI  ECU  %BUBGPSN  $FOTVT IJHIUPVDI 
  6. ˜ $IVSB%"5"JOD σʔλʹؔ͢ΔྖҬʹԼهͷΑ͏ͳ੡඼Λ૊Έ߹ΘͤΔΞʔΩςΫνϟΛϞμϯσʔ λελοΫ .%4 ͱݺͿΑ͏Ͱ͢ ϞμϯσʔλελοΫͷ࢟ 4BB4σʔλ ۀ຿σʔλ σʔλ΢ΣΞϋ΢ε

    ϏδωεɾΠϯςϦδΣϯε ձܭ σʔλ ձܭ σʔλ ձܭ σʔλ ձܭ σʔλ ձܭ σʔλ ձܭ σʔλ ΠϯδΣενϣϯ 'JWFUSBO "JSCZUF ."5*--*0/ 4UJDI τϥϯεϑΥʔϝʔγϣϯ ECU %BUBGPSN 3FETIJGU 4OPXGMBLF #JH2VFSZ 4ZOBQTF DIBSUJP -PPLFS .FUBCBTF 3FEBTI %0.0 5BCMFBV 3FWFSTF&5- $FOTVT IJHIUPVDI 1PMZUPNJD
  7. ˜ $IVSB%"5"JOD .%4ͷલͱޙͰ͸ੈք؍͕͍ͩͿ͔ΘΓ·͢ʢ4BB4΍Ϋϥ΢υͷಛ௃͕શମ΁೾ٴʣ ϞμϯσʔλελοΫͷੈք CFGPSF .%4 BGUFS .%4 ௐୡ ϋʔυ΢ΣΞͷௐୡϲ݄

    ͙͢࢖͑Δ ݟੵ ΩϟύγςΟϓϥϯχϯά͕ ࿹ͷݟͤॴ ۚͰղܾ ίετίϯτϩʔϧ͕࿹ͷݟͤॴ νϡʔχ ϯά ௐୡͨ͠ϋʔυ΢ΣΞͰ νϡʔχϯάΛ௒ؤுΔ ࢖͍΍͢ ͞ ௐୡͨ͠ιϑτ΢ΣΞ͕ Ξοϓσʔτ͞ΕΔͷΛفΔ ࢖͍΍͍͢੡඼ʹ৐Γ׵͑Δ σΟεΫ ଍Γͳ͍ σΟεΫεϖʔε͕଍Γͳ͘ͳͬͨΒɺෆཁ σʔλͷ࡟আ΍ɺσʔλอ࣋ظؒͷ୹ॖ͕ඞཁ σΟεΫεϖʔε͕଍Γͳ͘ͳΔ͜ͱ͸ ͳ͍ ো֐ ো֐ൃੜ࣌͸ɺ஍ࠈͷΑ͏ʹણࡉͳϦΧ όϦΦϖϨʔγϣϯ উखʹ࣏ͬͯΔ
  8. ˜ $IVSB%"5"JOD Ϋϥ΢υ%8΁σʔλΛΠϯδΣετ͍ͯ͘͠ͱ͜Ζ͔Β࢝ΊΔͷ͕͓͢͢Ί Ͳ͔͜Β.%4΁ߦ͘ͷ͕ྑ͍ʁ 4BB4σʔλ ۀ຿σʔλ σʔλ΢ΣΞϋ΢ε ϏδωεɾΠϯςϦδΣϯε ձܭ σʔλ

    ձܭ σʔλ ձܭ σʔλ ձܭ σʔλ ձܭ σʔλ ձܭ σʔλ ΠϯδΣενϣϯ 'JWFUSBO "JSCZUF ."5*--*0/ 4UJDI τϥϯεϑΥʔϝʔγϣϯ ECU %BUBGPSN 3FETIJGU 4OPXGMBLF #JH2VFSZ 4ZOBQTF DIBSUJP -PPLFS .FUBCBTF 3FEBTI %0.0 5BCMFBV 3FWFSTF&5- $FOTVT IJHIUPVDI 1PMZUPNJD
  9. ˜$IVSB%"5"JOD σʔλϞσϦϯάʹ͸͍ΖΜͳϓϥΫςΟε͕͋ΔͷͰɺ৭ʑςΫχοΫΛ૊Έ߹Θ ͤͯ࢖͑Δྑ͍ ͍ΖΜͳϞσϦϯά ಛ௃ • /'ͱ͔͍ͭ΋ͷౕ • ΞϓϦέʔγϣϯ࡞ͬͯΔਓ͸͍͍ͩͨ͜Ε •

    ݹయతͳ෼ੳ໨తͷϞσϦϯάख๏ • ෼ੳ࣠ͳͷͰεΩʔϚ࡞ͬͨޙ͸࢖͍΍͍͢ΑͶ • ϦϨʔγϣφϧͱσΟϝϯγϣφϧͷϋΠϒϦου • 4$% 5ZQF ͱ͔ͷςΫχοΫ͕औΓೖΕΒΕͯͯڧ͍ • ηϚϯςΟΧϦʔϦονͰBUUSJCVUFGSFF ΤϯςΟςΟͱଐੑΛಉ͡Α͏ ʹѻ͏ ͳϞσϦϯά • ࣌ܥྻσʔλͷѻ͍ʹ௕͚ͨϞσϦϯάख๏ • Ͳ͔ͬͪͱݴ͏ͱ࣮૷ΑΓ ϦϨʔγϣφϧ σΟϝϯγϣφϧ %BUB7BVMU 'BDU#BTFE ໊લ 5FNQPSBM
  10. ˜ $IVSB%"5"JOD େྔͷσʔλʹର͢ΔΫΤϦͱ෼ੳ͕࠷దԽ͞ΕΔΑ͏ʹઃܭ͞ΕͨσʔλΛߏ଄Խ ͢Δख๏ͰɺϦϨʔγϣφϧϞσϦϯάͱϞσϦϯάख๏ͷ૒ᘳΛͳ͢ σΟϝϯγϣφϧϞσϦϯάͱ͸ • ಛఆͷۀ຿ϓϩηεʹߜͬͯϞσϦϯ άΛ։࢝͢Δ • ಛఆͷۀ຿ϓϩηεΛϑΝΫτ

    • ۀ຿ϓϩηεʹ෇ਵ͢Δ෼ੳ࣠ΛσΟ ϝϯγϣϯ • ۀ຿తઃ໰ʹ౴͑ΒΕΔΑ͏ઃܭ ച্ ஍ཧ ࢢ۠ொଜ ౎ಓ෎ݝ ݄ ि ΧϨϯμ ঎඼໊ ϝʔΧ খΧςΰϦ େΧςΰϦ ঎඼ΧςΰϦ ঎඼ தԝͷച্͕ϑΝΫτɺ໼ҹ͕σΟϝϯγϣϯ ಛ௃ ෼ੳ࣠දهͷྫ ʲۀ຿తઃ໰ʳ िɾ݄͝ͱͷച্ ͕ݟ͍ͨʂ
  11. ˜ $IVSB%"5"JOD Ϗδωεϓϩηε͔Βੜ·ΕΔσʔλͷ෼ੳओମͱͳΔ౷ܭྔΛѻ͏ςʔϒϧͰɺҰ ൠతʹ෼ੳ%#ͷׂ̕ఔ౓ͷσʔλྔΛ઎ΊΔ͜ͱͱͳΔ ϑΝΫτςʔϒϧ ಛ௃ • ֹۚɺྔɺ݅਺͕ه࿥͞ΕΔ • ޙड़͢ΔσΟϝϯγϣϯςʔϒϧͱ߹Θͤͯѻ͏͜ͱͰɺʮࠓ݄ͷച্ֹۚʯ

    ΍ʮ๺ւಓͰͷࠓ݄ͷച্ֹۚʯͳͲɺ෼ੳ͕ՄೳͱͳΔ • ϑΝΫτςʔϒϧͷߦΛʮάϨΠϯʢཻ౓ʣʯͱݺͼɺϑΝΫτςʔϒϧΛ ઃܭͰ͸άϨΠϯͷܾఆ͕࠷ॏཁεςοϓ ෼ੳର৅ͷ ܾఆ ෼ੳ࣠ͷચ ͍ग़͠ άϨΠϯͷ ܾఆ ϑΝΫτςʔϒϧઃܭͷྲྀΕ
  12. ˜ $IVSB%"5"JOD %BUB7BVMUͷఆٛ %FGJOJUJPO5IF%BUB7BVMUJTBEFUBJMPSJFOUFE IJTUPSJDBMUSBDLJOHBOEVOJRVFMZMJOLFE TFUPGOPSNBMJ[FEUBCMFTUIBUTVQQPSUPOFPSNPSFGVODUJPOBMBSFBTPGCVTJOFTT*UJTB IZCSJEBQQSPBDIFODPNQBTTJOHUIFCFTUPGCSFFECFUXFFOSEOPSNBMGPSN /' BOE TUBSTDIFNB5IFEFTJHOJTGMFYJCMF

    TDBMBCMF DPOTJTUFOUBOEBEBQUBCMFUPUIFOFFETPG UIFFOUFSQSJTF*UJTBEBUBNPEFMUIBUJTBSDIJUFDUFETQFDJGJDBMMZUPNFFUUIFOFFETPG FOUFSQSJTFEBUBXBSFIPVTFT ఆٛɿ%BUB7BVMU͸ৄࡉࢦ޲ɺਖ਼نܗςʔϒϧͷཤྺ௥੻ͱҰҙͳϦϯΫηοτͰϏδ ωεྖҬΛػೳతʹαϙʔτ͠·͢ɻ/'ͱελʔεΩʔϚͷྑ͍ͱ͜औΓͷϋΠϒ ϦουΞϓϩʔνͰ͢ɻઃܭ͸ॊೈͰɺεέʔϧՄೳɺҰ؏ੑ͕͋ΓΤϯλʔϓϥΠζ ͷཁٻʹదԠͰ͖·͢ɻΤϯλʔϓϥΠζσʔλ΢ΣΞϋ΢εͷχʔζʹରԠͨ͠ σʔλϞσϧͱͯ͠ઃܭ͞Ε͍ͯ·͢ɻ ݪจ͸ IUUQTUEBODPNEBUBWBVMUTFSJFTEBUBWBVMUPWFSWJFX ΑΓ
  13. ˜ $IVSB%"5"JOD அݴɿ%BUB7BVMU͸/'ΛԼهͷछྨςʔϒϧʹมܗ͢ΔϞσϦϯάख๏Ͱ͢ %BUB7BVMU Λߏ੒͢Δཁૉ 3BX 7BVMU )VC -JOL 4BUFMMJUF

    TBU ϏδωεΩʔΛ࣋ͭ )VCಉ࢜Λͭͳ͛Δ )VCʹ͖ͬͭ͘ɺσʔλͷ ৄࡉΛ࣋ͭ #VJTJOFTT7BVMU ࠓ೔͸࿩͞ͳ͍ 1*5 #SJEHF ϏδωεΩʔΛ࣋ͭ )VCಉ࢜Λͭͳ͛Δ
  14. ˜ $IVSB%"5"JOD )VC͸҆ఆͨ͠ओΩʔΛ࣠ʹ࡞Δςʔϒϧɺ҆ఆαΠίʔ )VC • )VCͷ࣋ͭྻ  ϋογϡԽ͞ΕͨΩʔ )VC 1,

     ϏδωεΩʔ ݩͷϢχʔΫΩʔ  ϩʔυ೔࣌ -0"%@%54  ݯઘγεςϜ 3&$@43$ &.1-0:&&4 • &.1-0:&&@*% 1, • '*345@/".& • -"45@/".& • &."*- • +0#@*% ', )6#@&.1-0:&& • )6#@&.1-0:&&@,&: 1, • &.1-0:&&@*% • )6#@-PBE@%54 • )6#@3FD@43$ /'ςʔϒϧ͔Β)VCΛม׵ ϏδωεΩʔҎ֎͸)VC͔Β֎͢
  15. ˜ $IVSB%"5"JOD 4BU͸ϏδωεΩʔҎ֎ͷྻΛ࣋ͬͨςʔϒϧɺ4$%5ZQF ͳςʔϒϧͳͷͰσʔλ ͷมԽΛ࣌ܥྻͰอ࣋Ͱ͖ΔʢΤϥΠʣ 4BUFMMJUF TBU • 4BUͷ࣋ͭྻ 

    )VCͷ1, 1,  ϩʔυ೔࣌ 1,  )"4)஋ )"4)@%*''  ݯઘγεςϜ 3&$@43$  ࢒ͬͨݩςʔϒϧͷྻશ෦ ϫΠυςʔϒϧΛݟӽͯ͠ɺ มԽͷݕ஌Λ)"4)@%*''Ͱߦ͏ )"4)@%*''ʹ͕ࠩ͋Ε͹*/4&35͢ΔͷͰ શྔચସΈ͍ͨͳσʔλΛ౤͛ΒΕͯ΋ɺࠩ෼ͰϩʔυͰ͖ͯΤϥΠ &.1-0:&&4 • &.1-0:&&@*% 1, • '*345@/".& • -"45@/".& • &."*- • +0#@*% ', )6#@&.1-0:&& • )6#@&.1-0:&&@,&: 1, • &.1-0:&&@*% • )6#@-PBE@%54 • )6#@3FD@43$ 4"5@&.1-0:&& • )6#@&.1-0:&&@,&: 1, • 4"5@-PBE@%54 1, • )"4)@%*'' • 4"5@3FD@43$ • '*345@/".& • -"45@/".& • &."*- ଟ  /'ςʔϒϧ͔Β)VCͱ4BUΛ࡞Δ
  16. ˜ $IVSB%"5"JOD -JOL͸)VCΛͭͳ͛Δςʔϒϧ -JOL • -JOLͷ࣋ͭྻ  -JOLͷओΩʔ -JOL 1,

     )VCͷ1, -JOL',  ϩʔυ೔࣌ -0"%@%54  ݯઘγεςϜ 3&$@43$ &.1-0:&&4 • &.1-0:&&@*% 1, • '*345@/".& • -"45@/".& • &."*- • +0#@*% ', +0#4 • +0#@*% 1, • +0#@5*5-& • .*/@4"-"3: • ."9@4"-"3: ଟ  )6#@&.1-0:&& • )6#@&.1-0:&&@,&: 1, • &.1-0:&&@*% • )6#@-PBE@%54 • )6#@3FD@43$ )6#@+0# • )6#@+0#@,&: 1, • +0#@*% • )6#@-PBE@%54 • )6#@3FD@43$ -*/,@&.1-0:&&@+0# • -*/,@+0#@,&: 1, • )6#@&.1-0:&&@,&: ', • )6#@+0#@,&: ', • -*/,@-PBE@%54 • -*/,@3FD@43$ ଟ  ଟ  /'ςʔϒϧ͔Β)VCͱ-JOLΛ࡞Δ
  17. ˜ $IVSB%"5"JOD ม׵͸ػցతʹߦ͍·͢ /' UP %BUB7BVMU &.1-0:&&4 • &.1-0:&&@*% 1,

    • '*345@/".& • -"45@/".& • &."*- • +0#@*% ', +0#4 • +0#@*% 1, • +0#@5*5-& • .*/@4"-"3: • ."9@4"-"3: ଟ  )6#@&.1-0:&& • )6#@&.1-0:&&@,&: 1, • &.1-0:&&@*% • )6#@-PBE@%54 • )6#@3FD@43$ )6#@+0# • )6#@+0#@,&: 1, • +0#@*% • )6#@-PBE@%54 • )6#@3FD@43$ -*/,@&.1-0:&&@+0# • -*/,@+0#@,&: 1, • )6#@&.1-0:&&@,&: ', • )6#@+0#@,&: ', • -*/,@-PBE@%54 • -*/,@3FD@43$ ଟ  ଟ   ଟ  ଟ 4"5@&.1-0:&& • )6#@&.1-0:&&@,&: 1, • 4"5@-PBE@%54 1, • )"4)@%*'' • 4"5@3FD@43$ • '*345@/".& • -"45@/".& • &."*- 4"5@+0# • )6#@+0#@,&: 1, • 4"5@-PBE@%54 • )"4)@%*'' • 4"5@3FD@43$ • +0#@5*5-& • .*/@4"-"3: • ."9@4"-"3: /'ςʔϒϧ͔Β%BUB7BVMUʹม׵
  18. େ͖͘ͳΔͱ͜Μͳ෩ʹ ˜$IVSB%"5"JOD )VC -JOL 4BU 4BU 4BU )VC -JOL -JOL

    4BU )VC -JOL )VC 4BU 4BU 4BU )VC 4BU 4BU ձһ ߪೖ ঎඼ ഑ૹ ࡏݿ
  19. ˜ $IVSB%"5"JOD ECU͸42-Λੜ੒͢ΔίϯύΠϥͰɺϝλσʔλΛهड़ͨ͠ΓɺϚΫϩΛఆٛͨ͠Γ͠ ͯϓϩάϥϛϯάͷϕετϓϥΫςΟεΛ42-ͷྖҬʹ࣋ͪࠐΊΔ ECU ͬͯԿ͕Ͱ͖Δͷʁ • ECUͷಛ௃ • ߴ͍ੜ࢈ੑ

    • ςϯϓϨʔτ࢖͑Δɿ42-Λ+JOKBςϯϓϨʔτΛ࢖͑Δ • ϚΫϩ͕࢖͑ΔɿϚΫϩ͸1ZUIPOͰॻ͚Δ • ϝλσʔλϚωδϝϯτࢧԉ • σʔλΧλϩάੜ੒ɿϝλσʔλΛݩʹσʔλΧλϩάΛੜ੒Ͱ͖Δ • %'% σʔλϦωʔδ ੜ੒ɿม׵༻ͷ࣮૷Λೝࣝͯ͠%'%Λੜ੒Ͱ͖·͢ • %#ͷந৅Խ • ϚΫϩ΍֎෦ఏڙύοέʔδΛ࢖ͬͯ͋Δఔ౓͸%#ಛ༗ͷಈ͖Λந৅ԽͰ͖Δ • ޙͰܾΊ΍͍͢ • ʮશྔચସɾࠩ෼ߋ৽ʯʮ࣮ςʔϒϧɾ$5&ɾ7JFXʯͳͲͷ࣮૷ΛޙͰؾܰʹม͑΍͍͢ • γΣΞ͕Ͱ͔͍ɿσʔλΤϯδχΞ͸ΈΜͳ࢖ͬͯΔʢݴ͍ա͗ʣ
  20. ˜ $IVSB%"5"JOD ECU ʹ͸։ൃ؀ڥ෇͖4BB4ͷʮECU $MPVEʯͱɺ044ͰΤσΟλͰ։ൃ͢Δ ʮECU $PSFʯ͕͋ΓɺͦΕͧΕ޷͖ͳํΛ࢖͏ͱ͍͍ ECU ͭͷ։ൃํ๏ ECU

    $MPVE • ༻్ʹԠͯ͡ແྉͱ༗ྉͷϓϥϯ • ϒϥ΢βͰ։ൃɺ࣮ߦ • (JUIVC (JUMBCͱ౷߹ՄೳͰɺ13τϦΨʔͰ ͷϏϧυͳͲΛ؆қʹ࣮ݱՄೳ ECU $PSF • ແঈͷ044Λར༻ • 74$PEFͳͲࣗલͷΤσΟλͰ։ൃՄೳɺί ϚϯυϥΠϯ͔Β࣮ߦ • υΩϡϝϯτੜ੒ͳͲϑϧηοτػೳ͕͋Δ • ϫʔΫϑϩʔ͸ࣗલͰͷ༻ҙ͕ඞཁ