作らない分析基板のススメ/DWH For Startup With YAGNI

作らない分析基板のススメ/DWH For Startup With YAGNI

- スタートアップにおけるデータウェアハウス
- データウェアハウス設計について

53c93eb80b5958590b18205dc5fd3634?s=128

Masatoshi Shimada

October 01, 2018
Tweet

Transcript

  1. ϨγϐಈըϝσΟΞ ʰ%&-*4),*5$)&/ʱΛࢧ͑Δ ࡞Βͳ͍෼ੳج൫ͷεεϝ ౡాխ೥

  2. ࣗݾ঺հ w ౡాխ೥!TNENUT w σʔλ΢ΣΞϋ΢εΞʔΩςΫτ 4DBMBc1ZUIPOc(PMBOHc+BWBc%%%  w גࣜձࣾΤϒϦʔॴଐ w

    %&-*4),*5$)&/σʔλ෼ੳܥશൠ୲౰ ओʹ෼ੳج൫ɺ഑৴໘࠷దԽͳͲΛ୲౰
  3. ΞϓϦϦϦʔε μ΢ϯϩʔυɿສ Ϩγϐ਺ɿສ݅Ҏ্ ݄ؒಈը࠶ੜ਺ɿԯສճҎ্ "QQ4UPSF#&450' (PPHMF1MBZϕετΦϒ ೥ࠃ಺ΞϓϦμ΢ϯϩʔυୈ̏Ґ ʢ̍Ґ-*/&ɺ̎Ґ:BIPP+"1"/˞ඇήʔϜɹ"QQ"OOJFௐ΂ʣ ɾຖ೔৽ணϨγϐಈը͕഑৴͞ΕΔ ɹɾྉཧϨγϐಈըʢௐཧݙཱखॱʣ

    ɹɾ޿ࠂओλΠΞοϓಈը <13>%&-*4),*5$)&/ͷ঺հʢ͔ΜͨΜʹʣ 3
  4. ΞδΣϯμʢ֓ཁʣ ࠓ೔͸໿೥൒ʹ౉Γӡ༻ͨ͠%&-*4),*5$)&/ͷ ෼ੳج൫͕ͲͷΑ͏ʹ࡞ΒΕɺར༻͞Ε͍ͯΔ͔ʹ͍ͭͯ ʰ࡞Βͳ͍෼ੳج൫ͷεεϝʱͱ͍͏λΠτϧͰ͓࿩ͤͯ͠͞௖͖·͢ɻ

  5. ΞδΣϯμ w ελʔτΞοϓʹ͓͚Δσʔλ΢ΣΞϋ΢ε w σʔλ΢ΣΞϋ΢εઃܭʹ͍ͭͯ w ·ͱΊ

  6. ελʔτΞοϓʹ͓͚Δ σʔλ΢ΣΞϋ΢ε

  7. ελʔΞοϓاۀ಺ͷࣄ৘ w গਓ਺ͰΞϓϦ಺,1*Λ͢΂ͯूܭ͢Δඞཁ͕͋Δ σʔλΤϯδχΞʢ໊ʣɺσʔλΞφϦετʢ໊ʣ σʔλΤϯδχΞΞφϦετʹࢪࡦՄࢹԽͷूܭۀ຿͕ूத w ࣮ࢪࡁΈͷࢪࡦʢ"#ςετ౳ʣͷ༗ޮੑ൑அΛଈ࠲ʹߦ͍͍ͨ શͯͷࢪࡦͷ෼ੳ͸ʢ޻਺తʹʣࣄ্࣮ෆՄೳ ඞવతʹબ୒ͱूத͕ൃੜ͢Δ͜ͱʹͳΔ w

    ΞϓϦ಺σʔλ෼ੳ΁ͷཁٻ͸ແݶେʹ๲ΒΉ ύʔΩϯιϯͷ๏ଇʢ΍Γ͍ͨ͜ͱ͸ແݶେʣ
  8. σʔλ෼ੳΛඞཁͱ͢Δओͳϖϧιφ૾ ϓϩμΫτΦʔφʔ σΟϨΫλʔΤϯδχΞʢࢪࡦ୲౰ʣ σʔλΞφϦετ σʔλαΠΤϯςΟετ σʔλΤϯδχΞ ػցֶशΤϯδχΞ

  9. ελʔτΞοϓʹ͓͚Δ%8)ͱ͸ᶃ wجຊతʹࣗྗͰࢪࡦͷ෼ੳ͕Մೳͳσʔλج൫Ͱ͋Δ͜ͱ wඞཁͱ͢Δೳྗ͸42-ɺ#*πʔϧɺදܭࢉπʔϧ w೉͍͠σʔλ෼ੳ͸σʔλΞφϦετσʔλΤϯδχΞɹɹɹɹ ʹґཔ͢Δ wʰΤΫηϧ͕ਆπʔϧʱͰ͋ͬͯ΋໰୊ͳ͍ɻɹɹɹɹɹɹɹɹ ʢࢪࡦͷ༗ޮੑ൑அ͕Ͱ͖Ε͹ྑ͍ʣ ϓϩμΫτΦʔφʔσΟϨΫλʔΤϯδχΞʢࢪࡦ୲౰ʣ ʹͱͬͯͷσʔλ΢ΣΞϋ΢εͱ͸ɺ

  10. ελʔτΞοϓʹ͓͚Δ%8)ͱ͸ᶄ σʔλΞφϦετσʔλαΠΤϯςΟετ ʹͱͬͯͷσʔλ΢ΣΞϋ΢εͱ͸ɺ wΤϯδχΞϦϯάͷٕज़ελοΫ͕ෆཁͰ͋Δ͜ͱɹɹɹɹɹɹɹ δϣϒεέδϡʔϥ΍෼ࢄσʔλॲཧϑϨʔϜϫʔΫΛɹɹɹɹɹ ಁաతʹͯ͠Πϯϑϥ΍࣮ߦج൫Λۃྗҙࣝͤ͞ͳ͍ wجຊతʹ42-ͷΈͰ෼ੳՄೳͰ͋Δ͜ͱɹɹɹɹɹɹɹɹ ଟ૬ߏ଄ͷதؒςʔϒϧ͸ෆཁͰ͋Δ͜ͱ͕๬·͍͠ wΠϯϑϥΛҙࣝ͠ͳ͍Ͱ෼ੳՄೳͱͳΔ͜ͱɹɹɹɹɹɹɹɹɹɹ 3FETIJGU5SFBTVSF%BUBͳͲΛࢦ͢

  11. w؅ཧը໘ΛಠࣗͰ։ൃ͢Δඞཁ͕ແ͍͜ͱɹɹɹɹɹɹɹɹɹɹɹɹ 3FEBTI.FUBCBTF౳Λར༻͠ʰπʔϧʹཁٻΛ߹ΘͤΔʱɹɹ πʔϧͰຬͨͤͳ͍ཁٻ͸΍ΉΛಘͣࣗલͰߏங͢Δ w)BEPPQΫϥελͳͲͷΠϯϑϥߏங͢Δඞཁ͕ແ͍͜ͱɹɹɹ 5SFBTVSF%BUBɺ%BUBCSJDLTͳͲͷ4BB4Λར༻͢Δɹɹɹɹɹ ػցֶशΤϯδϯ΋ϏϧτΠϯ͞Εͨ෺ΛબͿ wΠϯϑϥ΍ϩάج൫ΛՄೳͳݶΓ4BB4#BB4ʹ೚ͤΔ ελʔτΞοϓʹ͓͚Δ%8)ͱ͸ᶅ σʔλΤϯδχΞػցֶशΤϯδχΞ ʹͱͬͯͷσʔλ΢ΣΞϋ΢εͱ͸ɺ

  12. ελʔτΞοϓʹ͓͚Δ%8)ͱ͸ ݶΒΕͨϦιʔεͷதͰग़དྷΔ͜ͱ͸ݶΒΕ͍ͯΔɻ ϦʔϯελʔτΞοϓᐌ͘ɺʰՄೳͳݶΓখ͘͞࡞Δɻʱ ͢ͳΘͪɺʰग़དྷΔ͚ͩ࡞Βͳ͍ɻʱ ՄೳͳݶΓɾָʹ࡞Γ ՄೳͳݶΓɾখ͘͞࡞Γ ՄೳͳݶΓɾૣ͘࢖͏

  13. ʰग़དྷΔ͚ͩ࡞Βͳ͍͜ͱʱ͕ɺ Ϧιʔεͷޮ཰ԽΛଅ͠ҙࢥܾఆΛՃ଎͢Δɻ ɾଵଦɿ࠷খݶͷίετͰ෼ੳՄೳʹ ɾ୹ؾɿͲͷΑ͏ͳσʔλ΋ଈ࣌෼ੳՄೳʹ ɾၗຫɿ୭Ͱ΋෼ੳج൫Λࣗ༝ʹ࢖͑ΔΑ͏ʹ ϓϩάϥϚʔࡾେඒಙ ελʔτΞοϓʹ͓͚Δ%8)ͱ͸

  14. ʰग़དྷΔ͚ͩ࡞Βͳ͍ʱ ɹσʔλ΢ΣΞϋ΢εઃܭʹ͍ͭͯ

  15. σʔλ΢ΣΞϋ΢εུ֓ਤ "1*αʔό ޿ࠂޮՌଌఆ Πϕϯτܭଌ ՄࢹԽ 3&45"1* %8)

  16. 4JOHMF4PVSDFPG5SVUI The state of your whole application is stored in

    an object tree within a single store. by redux. w ΞϓϦέʔγϣϯͷঢ়ଶ͸Ұݩ؅ཧ͞ΕΔ΂͖Ͱ ͋Δ w Ϗοάσʔλʹ͓͍ͯ΋ɺҰͭͷ৔ॴʹू໿ͯ͠ݕ ࡧՄೳͱ͢Δ΂͖Ͱ͋Δ w ݱ࣮తʹ͸اۀ಺ͷσʔλ͸༷ʑͳܗͰଘࡏ͓ͯ͠ Γ݁߹͢Δ͜ͱ͸೉͍͠
  17. σʔλ΢ΣΞϋ΢εͷઃܭࢥ૝ wશ৬੹͕ࣗྗͰσʔλΛऔΓग़ͤΔΑ͏ɺ෼ੳͷෑډΛప ఈతʹԼ͛ͯฏқͳ42-Ͱ෼ੳՄೳͱ͢Δ wҰͭͷσʔλιʔεͰݕࡧՄೳͱ͢Δʢ4405ʣ w༧ΊͻͳܗͱͳΔ,1*ͷՄࢹԽάϥϑΛେྔʹ࡞Γɺɹɹɹɹɹ ࢀߟͱͳΔ42-͕େྔʹ͋Δঢ়ଶʹ͢Δɹɹɹɹɹɹɹɹɹɹ ඇΤϯδχΞͷϝϯόʔʹσʔλ෼ੳΛ֮͑ͯ΋Β͏ αϯϓϧίʔυίʔυεχϖοτ͸ڧྗͳڭҭࡐྉ

  18. σʔλ΢ΣΞϋ΢ε಺ͷσʔλϑϩʔ σʔλΛ্ྲྀ͔ΒԼྲྀʹ͔͚ͯ୯ํ޲σʔλϑϩʔͰৠཹ͍ͯ͠Δ ɹ্ྲྀʢ45% ͸ΑΓੜϩάʹ͍ۙ࠶ར༻Մೳͳσʔλ Լྲྀ 5%3FETIJGU ͸ूܭࡁΈσʔλ΍ػցֶशͷ݁ՌͳͲ ɹͨͩ͠Ұ෦ྫ֎΋͋ΔʢػցֶशϞσϧͳͲ͕֘౰ʣ 3&45

  19. ֤ετϨʔδͷ໾ׂͱΫΤϦํ๏ ΞϓϦ಺શσʔλΛू໿ͯ͠όοΫΞοϓ͞ΕΔσʔλϨΠΫ େྔσʔλͰൃߦස౓ͷ௿͍ΫΤϦʹݶఆͯ͠ɺ "UIFOBͰΫΤϦՄೳʹ͍ͯ͠Δʢ+40/1BSRVFUʣ ݪଇͱͯ͠4405ͱͳΔΑ͏ʹઃܭ͞Εͨσʔλ΢ΣΞϋ΢ε ੜϩάͱ࠶ར༻Մೳͳཻ౓ͱͳΔதؒςʔϒϧ͕อ؅͞ΕΔ ʢ3FEBTI͔Β͸XJUI۟Λଟ༻͢ΔΫΤϦ͕࣮ߦ͞ΕΔʣ 4QBSLΛར༻ͨ͠ෳࡶͳूܭࡁΈςʔϒϧ͕อ؅͞ΕΔσʔλϚʔτ 42-͚ͩͰ͸͘Έ্͛Δ͜ͱ͕೉͍͠ूܭ݁Ռ͕อଘ͞ΕΔ ʢ3FEBTI͔Β͸جຊతʹ+0*/͕ແ͍ΫΤϦ͕ൃߦ͞ΕΔʣ

    4 5SFBTVSF%BUB 3FETIJGU
  20. ࡞Βͳ͍෼ੳج൫Λ࣮ݱ͢ΔͨΊʹ ԿΛ࡞͔ͬͨ ΞϓϦ಺,1*ΛՄࢹԽ͢ΔμογϡϘʔυ42-ɺ1ZUIPO ΫΤϦ਺ɿ  μογϡϘʔυ਺ɿ தؒςʔϒϧΛੜ੒͢Δδϣϒͷ؅ཧɺதؒςʔϒϧੜ੒༻ͷ42- EJHϑΝΠϧ਺ɿ  42-਺ϑΝΠϧ਺ɿ

    4QBSLΛૢ࡞͢ΔϊʔτϒοΫɺ4DBMBɺ1ZUIPOɺ.-ɺ42- 3FEBTI͔Β͸جຊతʹ+0*/͕ແ͍ΫΤϦ͕ൃߦ͞ΕΔ ίϚϯυ਺ɿ 3FEBTI
  21. ࡞Βͳ͍෼ੳج൫Λ࣮ݱ͢ΔͨΊʹ ԿΛ࡞͔ͬͨ ʰग़དྷΔ͚ͩ࡞Βͳ͍ʱσʔλ΢ΣΞϋ΢εͰ࡞ΒΕͨ෺͸ɺ 3FEBTIEJHEBHEBUBCSJDLTͷ఺ʹू໿͞ΕΔ ɾଵଦɿ࠷খݶͷίετͰ෼ੳՄೳʹ ɾ୹ؾɿͲͷΑ͏ͳσʔλ΋ଈ࣌෼ੳՄೳʹ ɾၗຫɿ୭Ͱ΋෼ੳج൫Λࣗ༝ʹ࢖͑ΔΑ͏ʹ ϓϩάϥϚʔࡾେඒಙ

  22. ·ͱΊ

  23. w ࠷খͷ޻਺Ͱ࠷େͷޮՌΛൃش͢ΔͨΊʹ͸ɺɹɹɹɹɹɹɹɹɹ ඞཁͱͳΔ࡞ۀΛݶఆͯ͠࡞Βͳ͍બ୒ͱ࡞ΔूதΛૂ͏ w σʔλͷҰݩ؅ཧʢ4405ʣΛຬͨ͢͜ͱΛ࠷ॏཁͱҙࣝ͠ɺɹɹɹɹ σʔλ΢ΣΞϋ΢ε಺ͷσʔλϑϩʔΛઃܭ͢Δ w %8)ΞʔΩςΫτͱͯ͠͸ɺϓϩμΫτʹؔΘΔϝϯόʔશһ͕ɹ σʔλΛݩʹͨ͠ࢪࡦΛߟ͑ͯࣗ૸Ͱ͖Δ؀ڥΛఏڙ͢Δ ·ͱΊ

  24. ಈըΛ௨ͯ͡  ੈքΛ΋ͬͱָ͘͠
 ΋ͬͱॆ࣮ͨ͠ຖ೔ʹ ΤϯδχΞ શ৬छੵۃ࠾༻தʂ https://corp.every.tv/recruits

  25. ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠