å¹ççã§é«æ§èœãªãŠã§ãã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ããããã®ãETLããã»ã¹ãšãªã¢ã«ã¿ã€ã åŠçãå«ãããã³ããšã³ãããŒã¿ãã€ãã©ã€ã³ãæ¢æ±ããŸããã°ããŒãã«ãªãªãŒãã£ãšã³ã¹ã®ããã®ã¢ãŒããã¯ãã£ãããŒã«ããã¹ããã©ã¯ãã£ã¹ãçè§£ããŸãããã
ããã³ããšã³ãããŒã¿ãã€ãã©ã€ã³ïŒææ°ã¢ããªã±ãŒã·ã§ã³ã®ããã®ETLãšãªã¢ã«ã¿ã€ã åŠç
仿¥ã®ããŒã¿é§ååã®äžçã§ã¯ãããã³ããšã³ãã§ããŒã¿ã广çã«ç®¡çããã³åŠçããèœåããŸããŸãéèŠã«ãªã£ãŠããŸããExtractãTransformãLoadïŒETLïŒããã»ã¹ãšãªã¢ã«ã¿ã€ã åŠçãå«ãããã³ããšã³ãããŒã¿ãã€ãã©ã€ã³ã«ãããéçºè ã¯é«æ§èœã§å¿çæ§ã®é«ããŠã§ãã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ã§ããŸãããã®å æ¬çãªã¬ã€ãã§ã¯ãããã³ããšã³ãããŒã¿ãã€ãã©ã€ã³ã®è€éããæãäžãããã®ã¢ãŒããã¯ãã£ããã¹ããã©ã¯ãã£ã¹ãããã³ã°ããŒãã«ãªãªãŒãã£ãšã³ã¹åãã®å®éã®äŸãæ¢ããŸãã
ããã³ããšã³ãããŒã¿ãã€ãã©ã€ã³ã®å¿ èŠæ§ãçè§£ãã
åŸæ¥ã®ããã¯ãšã³ãäžå¿ã®ããŒã¿åŠçã¢ãã«ã¯ããµãŒããŒã«å€§ããªè² æ ããããæœåšçãªããã©ãŒãã³ã¹ã®ããã«ããã¯ãšé å»¶ã®å¢å ã«ã€ãªãããŸããããã³ããšã³ãã«ããŒã¿ãã€ãã©ã€ã³ãæŠç¥çã«å®è£ ããããšã«ãããéçºè ã¯åŠçã¿ã¹ã¯ããªãããŒããããŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãåäžããããããã€ãããã¯ã§é åçãªã¢ããªã±ãŒã·ã§ã³ãäœæã§ããŸãã
ããã€ãã®èŠå ããããã³ããšã³ãããŒã¿ãã€ãã©ã€ã³ã®éèŠæ§ã®é«ãŸãã«è²¢ç®ããŠããŸãã
- ãŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ã®åäžïŒãªã¢ã«ã¿ã€ã ã®ããŒã¿æŽæ°ãããŒãœãã©ã€ãºãããã³ã³ãã³ããããã³ããé«éãªèªã¿èŸŒã¿æéã¯ããŠãŒã¶ãŒãšã³ã²ãŒãžã¡ã³ããåäžãããŸãã
- ãµãŒããŒè² è·ã®è»œæžïŒããŒã¿åŠçã¿ã¹ã¯ããªãããŒããããšãããã¯ãšã³ããµãŒããŒãžã®è² æ ã軜æžãããã¹ã±ãŒã©ããªãã£ãšã³ã¹ãå¹çãåäžããŸãã
- ããŒã¿èŠèŠåã®åŒ·åïŒããã³ããšã³ããã€ãã©ã€ã³ã¯ãè€éãªããŒã¿å€æãšéçŽã容æã«ãããããªããã§ã€ã³ã¿ã©ã¯ãã£ããªããŒã¿èŠèŠåãå¯èœã«ããŸãã
- ãªãã©ã€ã³æ©èœïŒããŒã¿ããã£ãã·ã¥ããã¯ã©ã€ã¢ã³ãåŽã§åŠçããããšã§ããªãã©ã€ã³æ©èœãå¯èœã«ãªããã€ã³ã¿ãŒãããæ¥ç¶ãå¶éãããŠããå°åã§ã®ã¢ã¯ã»ã·ããªãã£ãåäžããŸãã
ã³ã¢ã³ã³ããŒãã³ãïŒããã³ããšã³ãã§ã®ETL
åŸæ¥ãããã¯ãšã³ãããŒã¿ãŠã§ã¢ããŠãžã³ã°ã«é¢é£ä»ããããŠããETLããã»ã¹ã¯ãããã³ããšã³ãã¢ããªã±ãŒã·ã§ã³ã«å¹æçã«é©åãããããšãã§ããŸãã ããã³ããšã³ãETLã«ã¯ã次ã®äž»èŠãªæ®µéãå«ãŸããŸãã
1. æœåº
ãæœåºããã§ãŒãºã§ã¯ãããŸããŸãªãœãŒã¹ããããŒã¿ãååŸããŸãã ããã«ã¯ä»¥äžãå«ãŸããŸãã
- APIïŒREST APIããããŒã¿ããã§ããããŸãïŒäŸïŒ`fetch`ãŸãã¯`XMLHttpRequest`ã䜿çšïŒã
- ããŒã«ã«ã¹ãã¬ãŒãžïŒãã©ãŠã¶ã®ããŒã«ã«ã¹ãã¬ãŒãžãŸãã¯ã»ãã·ã§ã³ã¹ãã¬ãŒãžã«ä¿åãããŠããããŒã¿ãååŸããŸãã
- WebSocketïŒWebSocketãä»ããŠãªã¢ã«ã¿ã€ã ã®ããŒã¿ã¹ããªãŒã ãåä¿¡ããŸãã
- Web WorkerïŒã¡ã€ã³ã¹ã¬ããããããã¯ããã«ãããã¯ã°ã©ãŠã³ãã§å€éšãœãŒã¹ããããŒã¿ãæœåºããããã«Web Workerã䜿çšããŸãã
äŸïŒã°ããŒãã«ãªeã³ããŒã¹ãã©ãããã©ãŒã ã¯ãäžå€®APIãã補åã«ã¿ãã°ããŒã¿ããå¥ã®APIãããŠãŒã¶ãŒã¬ãã¥ãŒãããµãŒãããŒãã£APIããçºæ¿ã¬ãŒããæœåºããå ŽåããããŸãã ããã³ããšã³ãETLãã€ãã©ã€ã³ã¯ãããããã¹ãŠã®ããŒã¿ã»ããããŸãšãã圹å²ãæãããŸãã
2. 倿
ã倿ããã§ãŒãºã§ã¯ãæœåºãããããŒã¿ãã¯ãªãŒã³ã¢ããã倿Žãããã³æ§é åããŠãã¢ããªã±ãŒã·ã§ã³ã®ããŒãºã«é©ãããã®ã«ããŸãã äžè¬çãªå€æã¿ã¹ã¯ã«ã¯ã次ã®ãã®ããããŸãã
- ããŒã¿ã¯ã¬ã³ãžã³ã°ïŒç¡å¹ãªããŒã¿ãåé€ãŸãã¯ä¿®æ£ããŸãïŒäŸïŒæ¬ æå€ã®åŠçãããŒã¿åã®ä¿®æ£ïŒã
- ããŒã¿å€æïŒããŒã¿ããã圢åŒããå¥ã®åœ¢åŒã«å€æããŸãïŒäŸïŒé貚æç®ãæ¥ä»ã®æžåŒèšå®ïŒã
- ããŒã¿éçŽïŒããŒã¿ãèŠçŽããŸãïŒäŸïŒå¹³åã®èšç®ãåºçŸåæ°ã®ã«ãŠã³ãïŒã
- ããŒã¿ãã£ã«ã¿ãªã³ã°ïŒåºæºã«åºã¥ããŠç¹å®ã®ããŒã¿ãéžæããŸãã
- ããŒã¿ãšã³ãªããã¡ã³ãïŒè€æ°ã®ããŒã¿ã»ãããããŒãžããŠãæ¢åã®ããŒã¿ã«è¿œå ã®ããŒã¿ã远å ããŸãã
äŸïŒåœéçãªæ è¡äºçŽWebãµã€ãã§ã¯ãæ¥ä»åœ¢åŒããŠãŒã¶ãŒã®ããŒã«ã«åœ¢åŒã«å€æããéžæããé貚ã«åºã¥ããŠé貚å€ã倿ãããŠãŒã¶ãŒã®å Žæãšèšå®ã«åºã¥ããŠæ€çŽ¢çµæããã£ã«ã¿ãªã³ã°ããå ŽåããããŸãã
3. ããŒã
ãããŒãããã§ãŒãºã§ã¯ã倿ãããããŒã¿ãããã³ããšã³ããããã«äœ¿çšã§ãã圢åŒã§ä¿åããŸãã ããã«ã¯ã次ã®ãã®ãå«ãŸããå ŽåããããŸãã
- ããŒã«ã«ã¹ãã¬ãŒãžãžã®ä¿åïŒãªãã©ã€ã³ã¢ã¯ã»ã¹ãŸãã¯é«éãªååŸã®ããã«ã倿ãããããŒã¿ãæ°žç¶åããŸãã
- UIã³ã³ããŒãã³ãã®æŽæ°ïŒå€æãããããŒã¿ãUIèŠçŽ ã«ã¬ã³ããªã³ã°ããŸãã
- ããŒã¿ã®ãã£ãã·ã¥ïŒãããã¯ãŒã¯èŠæ±ãæžãããããã©ãŒãã³ã¹ãåäžãããããã«ããã£ãã·ã¥ã¡ã«ããºã ãå®è£ ããŸãã
- ç¶æ 管çã·ã¹ãã ã®æå ¥ïŒReduxãZustandãªã©ã®ç¶æ 管çã©ã€ãã©ãªãšå€æãããããŒã¿ãçµ±åããŠãå¹ççãªç®¡çãšã¢ã¯ã»ã¹ãå¯èœã«ããŸãã
äŸïŒã°ããŒãã«ãªãã¥ãŒã¹ã¢ã°ãªã²ãŒã¿ãŒã¯ã倿ããããã¥ãŒã¹èšäºããªãã©ã€ã³ã§èªãããã«ããŒã«ã«ã¹ãã¬ãŒãžãã£ãã·ã¥ã«ããŒããã倿ãããããŒã¿ããã®ææ°ã®ãã¥ãŒã¹ãã£ãŒãã§UIã³ã³ããŒãã³ããæŽæ°ããããšãã§ããŸãã
ããã³ããšã³ãã§ã®ãªã¢ã«ã¿ã€ã åŠç
ãªã¢ã«ã¿ã€ã åŠçãšã¯ãããŒã¿ãå°çãããšãã«ç¶ç¶çã«åŠçããããšãæããŸãã ããã¯ãã€ãã³ãã«å³åº§ã«å¿çããå¿ èŠãããã¢ããªã±ãŒã·ã§ã³ã«ãšã£ãŠéåžžã«éèŠã§ãã ãªã¢ã«ã¿ã€ã ããã³ããšã³ãåŠçã®äž»èŠãªãã¯ãããžãŒã«ã¯ã次ã®ãã®ããããŸãã
- WebSocketïŒã¯ã©ã€ã¢ã³ããšãµãŒããŒéã®åæ¹åã®ãªã¢ã«ã¿ã€ã éä¿¡ãå¯èœã«ããŸãã
- Server-Sent EventsïŒSSEïŒïŒãµãŒããŒãããŒã¿ã®æŽæ°ãã¯ã©ã€ã¢ã³ãã«ããã·ã¥ã§ããããã«ããŸãã
- Web WorkerïŒã¡ã€ã³ã¹ã¬ããããããã¯ããã«ããªã¢ã«ã¿ã€ã ã®ããŒã¿ã¹ããªãŒã ã®ããã¯ã°ã©ãŠã³ãåŠçã容æã«ããŸãã
- Progressive Web AppsïŒPWAïŒïŒãªãã©ã€ã³æ©èœãšããã¯ã°ã©ãŠã³ãåæã«ããããŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãåäžãããŸãã
äŸïŒã°ããŒãã«ãªæ ªåŒååŒãã©ãããã©ãŒã ã¯ãWebSocketãå©çšããŠãªã¢ã«ã¿ã€ã ã®æ ªäŸ¡ã¢ããããŒããæäŸããŸãã ããŒã¿å ã®å€æŽã¯ããã³ããšã³ãã§å³åº§ã«åŠçãããäžçäžã®ãŠãŒã¶ãŒã®ããŒããã©ãªãªæ®é«ãšãã£ãŒããæŽæ°ããŸãã
ããã³ããšã³ãããŒã¿ãã€ãã©ã€ã³ã®ã¢ãŒããã¯ãã£
ããã³ããšã³ãããŒã¿ãã€ãã©ã€ã³ã®ã¢ãŒããã¯ãã£ã¯ãç¹å®ã®ã¢ããªã±ãŒã·ã§ã³èŠä»¶ã«ãã£ãŠç°ãªããŸãã ããã€ãã®ã¢ãŒããã¯ãã£ãã¿ãŒã³ãäžè¬çã«æ¡çšãããŠããŸãã
1. ã·ã³ã°ã«ããŒãžã¢ããªã±ãŒã·ã§ã³ïŒSPAïŒã¢ãŒããã¯ãã£
SPAã§ã¯ãããã³ããšã³ãããŒã¿ãã€ãã©ã€ã³ã¯éåžžãã¢ããªã±ãŒã·ã§ã³ã®JavaScriptã³ãŒãå ã«å®è£ ãããŸãã ããŒã¿ã¯APIãããã§ãããããJavaScript颿°ã䜿çšããŠå€æãããã¢ããªã±ãŒã·ã§ã³ã®ç¶æ 管çã·ã¹ãã ãŸãã¯UIã³ã³ããŒãã³ãã«çŽæ¥ããŒããããŸãã ãã®ã¢ãããŒãã¯é«ãæè»æ§ãšå¿çæ§ãæäŸããŸãããã¢ããªã±ãŒã·ã§ã³ãæé·ããã«ã€ããŠç®¡çãé£ãããªãå¯èœæ§ããããŸãã
2. ãã€ã¯ãããã³ããšã³ã
ãã€ã¯ãããã³ããšã³ãã¯ãè€éãªããã³ããšã³ãã¢ããªã±ãŒã·ã§ã³ããããå°ãããç¬ç«ããããããã€å¯èœãªãŠãããã«åå²ããŸãã åãã€ã¯ãããã³ããšã³ãã¯ãç¬èªã®å°çšããŒã¿ãã€ãã©ã€ã³ãæã€ããšãã§ããç¬ç«ããéçºããããã€ã¡ã³ããããã³ã¹ã±ãŒãªã³ã°ãå¯èœã«ããŸãã ãã®ã¢ãŒããã¯ãã£ã¯ã¢ãžã¥ãŒã«æ§ãä¿é²ããå€§èŠæš¡ãªããã³ããšã³ããããžã§ã¯ãã«é¢é£ãããªã¹ã¯ã軜æžããŸãã ã°ããŒãã«ãã©ãããã©ãŒã çšã®æ°ããæ±ºæžã²ãŒããŠã§ã€ãªã©ã®æ°æ©èœããããã€ããå Žåã¯ããããæ€èšããŠãã ãããç¹å®ã®ãã€ã¯ãããã³ããšã³ããžã®å€æŽãåé¢ã§ããŸãã
3. ããŒã¿ãããŒã©ã€ãã©ãªãšãã¬ãŒã ã¯ãŒã¯
RxJSã®ãããªã©ã€ãã©ãªãRedux Toolkitã®ãããªãã¬ãŒã ã¯ãŒã¯ã¯ããªã¢ã¯ãã£ããªæ¹æ³ã§ããŒã¿ãããŒã調æŽããã®ã«åœ¹ç«ã¡ãŸãã ãããã¯ãç¶æ ã®ç®¡çãéåææäœã®åŠçãããã³ããŒã¿ã¹ããªãŒã ã®å€æã®ããã®åŒ·åãªæ©èœãæäŸããŸãã ãããã¯ãè€éãªãã€ãã©ã€ã³ãäœæããå Žåãããªã¢ã«ã¿ã€ã ããŒã¿ãåŠçããå Žåã«ç¹ã«åœ¹ç«ã¡ãŸãã
ããã³ããšã³ãããŒã¿ãã€ãã©ã€ã³ã®ããŒã«ãšãã¯ãããžãŒ
ããã³ããšã³ãããŒã¿ãã€ãã©ã€ã³ã®éçºããµããŒãããããã«ã倿§ãªããŒã«ãšãã¯ãããžãŒãå©çšå¯èœã§ãã
- JavaScriptã©ã€ãã©ãªïŒ
- Axios/FetchïŒããŒã¿ãæœåºããããã«APIãªã¯ãšã¹ããè¡ãããã
- RxJSïŒãªã¢ã¯ãã£ããªããŒã¿ã¹ããªãŒã ãäœæããã³ç®¡çããããŒã¿ã倿ããããã
- Lodash/Underscore.jsïŒããŒã¿æäœã®ããã®ãŠãŒãã£ãªãã£é¢æ°ãæäŸããŸãã
- Moment.js/Date-fnsïŒæ¥ä»ãšæå»ã®æžåŒèšå®ããã³æäœã®ããã
- ç¶æ
管çã©ã€ãã©ãªïŒ
- ReduxïŒJavaScriptã¢ããªã®äºæž¬å¯èœãªç¶æ ã³ã³ããã
- ZustandïŒå°ãããé«éã§ãã¹ã±ãŒã©ãã«ãªç¶æ 管çãœãªã¥ãŒã·ã§ã³ã
- Context APIïŒReactïŒïŒReactã¢ããªã±ãŒã·ã§ã³ã§ç¶æ ã管çããããã®çµã¿èŸŒã¿ãœãªã¥ãŒã·ã§ã³ã
- VuexïŒVue.jsïŒïŒVue.jsã¢ããªã±ãŒã·ã§ã³ã®ç¶æ 管çãã¿ãŒã³ãšã©ã€ãã©ãªã
- Web WorkerïŒããã¯ã°ã©ãŠã³ãã§CPUè² è·ã®é«ãã¿ã¹ã¯ãå®è¡ããããã
- ãã¹ããã¬ãŒã ã¯ãŒã¯ïŒ
- JestïŒäžè¬çãªJavaScriptãã¹ããã¬ãŒã ã¯ãŒã¯ã
- Mocha/ChaiïŒãŠããããã¹ãããã³çµ±åãã¹ãã®ä»£æ¿ã
- ãã«ãããŒã«ïŒ
- Webpack/RollupïŒããã³ããšã³ãã³ãŒãã®ãã³ãã«ãšæé©åã®ããã
- ParcelïŒãŒãæ§æã®ãã³ãã©ãŒã
- ãã£ãã·ã¥ã©ã€ãã©ãªïŒ
- LocalForageïŒãªãã©ã€ã³ã¹ãã¬ãŒãžçšã®ã©ã€ãã©ãªã
- SW Precache/WorkboxïŒãµãŒãã¹ã¯ãŒã«ãŒã®ç®¡çãšã¢ã»ããã®ãã£ãã·ã¥ã®ããã
广çãªããã³ããšã³ãããŒã¿ãã€ãã©ã€ã³ãæ§ç¯ããããã®ãã¹ããã©ã¯ãã£ã¹
å¹ççã§ä¿å®å¯èœã§ã¹ã±ãŒã©ãã«ãªããã³ããšã³ãããŒã¿ãã€ãã©ã€ã³ãæ§ç¯ããã«ã¯ããã¹ããã©ã¯ãã£ã¹ã«åŸãããšãéèŠã§ãã
- ã¢ãžã¥ãŒã«æ§ãšåå©çšæ§ïŒããŒã¿å€æé¢æ°ãšã³ã³ããŒãã³ãããã¢ããªã±ãŒã·ã§ã³å šäœã§ã¢ãžã¥ãŒã«åŒã§åå©çšã§ããããã«èšèšããŸãã
- ãšã©ãŒåŠçãšãã°èšé²ïŒå ç¢ãªãšã©ãŒåŠçã¡ã«ããºã ãšãã°èšé²ãå®è£ ããŠãããŒã¿ãã€ãã©ã€ã³ã®å¥å šæ§ãç£èŠãããããã°ã容æã«ããŸãã ãã°èšé²ã¯ãåæ®µéã§åŠçãããããŒã¿ã«é¢ãã詳现ãšãšãã«ãé©åãªå Žæã«ããå¿ èŠããããŸãã
- ããã©ãŒãã³ã¹ã®æé©åïŒããŒã¿è»¢éãµã€ãºãæå°éã«æãããã£ãã·ã¥æŠç¥ã䜿çšããJavaScriptã³ãŒããæé©åããŠãé«éãªèªã¿èŸŒã¿æéãšã¹ã ãŒãºãªãŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ã確ä¿ããŸãã
- ãã¹ããšæ€èšŒïŒãŠããããã¹ããšçµ±åãã¹ããäœæããŠãããŒã¿å€æãæ€èšŒããããŒã¿ã®æŽåæ§ã確ä¿ãããªã°ã¬ãã·ã§ã³ãé²ããŸãã ã¹ããŒãæ€èšŒãªã©ã®ææ³ã䜿çšããŠãåä¿¡ããŒã¿ã®æ§é ãšããŒã¿åãæ€èšŒããŸãã
- éåææäœïŒç¹ã«APIãªã¯ãšã¹ããè€éãªããŒã¿å€æãåŠçããå Žåã¯ãéåææäœïŒäŸïŒ`async/await`ãpromiseïŒãå©çšããŠãã¡ã€ã³ã¹ã¬ããããããã¯ããªãããã«ããŸãã
- ã»ãã¥ãªãã£ã«é¢ããèæ ®äºé ïŒãŠãŒã¶ãŒå ¥åããµãã¿ã€ãºããå€éšãœãŒã¹ããåä¿¡ããããŒã¿ãæ€èšŒããæ©å¯ããŒã¿ïŒäŸïŒAPIããŒïŒãä¿è·ããŠãã»ãã¥ãªãã£ãªã¹ã¯ã軜æžããŸãã
- ããã¥ã¡ã³ããŒã·ã§ã³ïŒããŒã¿ãã€ãã©ã€ã³ã®ã¢ãŒããã¯ãã£ãããŒã¿å€æããžãã¯ãããã³ç¹å®ã®æ§æãææžåããŠãä¿å®æ§ãšéçºããŒã éã®ã³ã©ãã¬ãŒã·ã§ã³ãä¿é²ããŸãã
- åœéåãšããŒã«ãªãŒãŒã·ã§ã³ãæ€èšããïŒã°ããŒãã«ã§äœ¿çšããããšãç®çãšããããŒã¿ãæ±ãå Žåã¯ãåœéåãšããŒã«ãªãŒãŒã·ã§ã³ã®éèŠæ§ãæ€èšããŠãã ããã ããšãã°ãæ¥ä»ã®æžåŒèšå®ã¯ãŠãŒã¶ãŒã®ãã±ãŒã«ã«åºã¥ããŠåŠçããé貚æç®ã¯ãŠãŒã¶ãŒãéžæããé貚ã§åŠçããå¿ èŠããããŸãã
- ã¢ãã¿ãªã³ã°ãšã¢ã©ãŒãïŒãã€ãã©ã€ã³ãæåŸ ã©ããã«åäœããŠããããšã確èªãããšã©ãŒãç°åžžãçºçããå Žåã«èŠåããããã«ãã¢ãã¿ãªã³ã°ãå®è£ ããŸãã
å®éã®äŸïŒããã³ããšã³ãããŒã¿ãã€ãã©ã€ã³ãå©çšããã°ããŒãã«ã¢ããªã±ãŒã·ã§ã³
ããã€ãã®ã°ããŒãã«ã¢ããªã±ãŒã·ã§ã³ããããã³ããšã³ãããŒã¿ãã€ãã©ã€ã³ã广çã«æŽ»çšããŠããŸãã
- ã°ããŒãã«Eã³ããŒã¹ãã©ãããã©ãŒã ïŒAmazonãAlibabaãeBayãªã©ã®Eã³ããŒã¹Webãµã€ãã¯ãããã³ããšã³ãããŒã¿ãã€ãã©ã€ã³ã䜿çšããŠã補åã®æšå¥šäºé ãããŒãœãã©ã€ãºãããŠãŒã¶ãŒã®å Žæã«åºã¥ããŠäŸ¡æ Œãšåšåº«ç¶æ³ãåçã«æŽæ°ãããªã¢ã«ã¿ã€ã ã®åšåº«æŽæ°ãåŠçããŸãã ãŸããããŒã¿ãã¬ãŒã³ããŒã·ã§ã³ããã³ãŠãŒã¶ãŒã€ã³ã¿ãŒãã§ã€ã¹ã§A/Bãã¹ããªã©ã®æ©èœãå©çšããããšãã§ããŸãã
- éèã¢ããªã±ãŒã·ã§ã³ïŒGoogle FinanceãBloomberg Terminalãªã©ã®ãã©ãããã©ãŒã ã¯ããªã¢ã«ã¿ã€ã ã®ããŒã¿ã¹ããªãŒã ãå©çšããŠãææ°ã®æ ªäŸ¡ãçºæ¿ã¬ãŒããããã³åžå ŽããŒã¿ã®èŠèŠåãæäŸããŸãã ãã®ããŒã¿ã¯ããã³ããšã³ãã§åŠçããã³ã¬ã³ããªã³ã°ãããã°ããŒãã«ãŠãŒã¶ãŒã«å³æã®æŽæ°ãæäŸããŸãã
- ãœãŒã·ã£ã«ã¡ãã£ã¢ãã©ãããã©ãŒã ïŒFacebookãTwitterãInstagramãªã©ã®ãœãŒã·ã£ã«ã¡ãã£ã¢ãã©ãããã©ãŒã ã¯ãããã³ããšã³ããã€ãã©ã€ã³ã䜿çšããŠããªã¢ã«ã¿ã€ã ãã£ãŒãã管çããã©ã€ããŠãŒã¶ãŒã€ã³ã¿ã©ã¯ã·ã§ã³ïŒããããã³ã¡ã³ããå ±æïŒã衚瀺ãããŠãŒã¶ãŒã®èšå®ãšå Žæã®ããŒã¿ã«åºã¥ããŠã³ã³ãã³ããããŒãœãã©ã€ãºããŸãã ãŠãŒã¶ãŒåæãšãšã³ã²ãŒãžã¡ã³ãã¡ããªãã¯ã¯ãããŒãœãã©ã€ãºãããæšå¥šäºé ãšãšã¯ã¹ããªãšã³ã¹ã®ããã«ãããã³ããšã³ãã§èšç®ãããããšããããããŸãã
- æ è¡äºçŽWebãµã€ãïŒBooking.comãExpediaãªã©ã®Webãµã€ãã¯ãããã³ããšã³ãETLãã€ãã©ã€ã³ãå©çšããŠãè€æ°ã®ãœãŒã¹ïŒãã©ã€ãã¹ã±ãžã¥ãŒã«ãããã«ã®ç©ºå®€ç¶æ³ãçºæ¿ã¬ãŒãïŒããã®ããŒã¿ãçµåãããŠãŒã¶ãŒã®éžæãšæ è¡æ¥ã«åºã¥ããŠæ€çŽ¢çµæãšäŸ¡æ Œãåçã«æŽæ°ããŸãã ãŸãããã©ã€ãã®å€æŽããã®ä»ã®æ è¡é¢é£ã®ã¢ã©ãŒãã®ãªã¢ã«ã¿ã€ã æŽæ°ãåŠçã§ããŸãã
åœéçãªèªç©ºäŒç€ŸãèããŠã¿ãŸãããã 圌ãã¯ãã©ã€ãã®ç©ºåžç¶æ³ãšäŸ¡æ Œã衚瀺ããããã®ãã€ãã©ã€ã³ãå¿ èŠã§ãã ãã®ãã€ãã©ã€ã³ã¯ãããã€ãã®ãœãŒã¹ããããŒã¿ãæœåºããŸãã
- 空åžç¶æ³ããŒã¿APIïŒèªç©ºäŒç€Ÿã®å éšã·ã¹ãã ããã座åžã®ç©ºåžç¶æ³ãæäŸããŸãã
- äŸ¡æ ŒããŒã¿APIïŒèªç©ºäŒç€Ÿã®äŸ¡æ Œãšã³ãžã³ããã
- çºæ¿APIïŒäŸ¡æ ŒããŠãŒã¶ãŒã®çŸå°éè²šã«æç®ããŸãã
- å°çããŒã¿APIïŒãŠãŒã¶ãŒã®å Žæãç¹å®ããé¢é£æ å ±ã衚瀺ããŸãã
ããã³ããšã³ããã€ãã©ã€ã³ã¯ããã®ããŒã¿ãçµã¿åãããŠãã©ãŒããããããŠãŒã¶ãŒã«æç€ºããããšã§å€æããŸãã ããã«ãããèªç©ºäŒç€Ÿã¯ææ°ã®äŸ¡æ Œãšç©ºåžç¶æ³ãã°ããŒãã«ãªãŒãã£ãšã³ã¹ã«æäŸã§ããŸãã
課é¡ãšèæ ®äºé
ããã³ããšã³ãããŒã¿ãã€ãã©ã€ã³ã®å®è£ ã«ã¯ãããã€ãã®èª²é¡ããããŸãã
- ããŒã¿ã»ãã¥ãªãã£ãšãã©ã€ãã·ãŒïŒã¯ã©ã€ã¢ã³ãåŽã§åŠçãããæ©å¯ããŒã¿ã®ã»ãã¥ãªãã£ãšãã©ã€ãã·ãŒã確ä¿ããããšãæãéèŠã§ãã éçºè ã¯ãå ç¢ãªã»ãã¥ãªãã£å¯ŸçïŒäŸïŒæå·åãèªèšŒïŒãå®è£ ãããã¹ãŠã®ã°ããŒãã«å°åã§ããŒã¿ãã©ã€ãã·ãŒèŠå¶ïŒäŸïŒGDPRãCCPAïŒãéµå®ããå¿ èŠããããŸãã
- ããã©ãŒãã³ã¹ã®æé©åïŒã¯ã©ã€ã¢ã³ãåŽã®ãªãœãŒã¹æ¶è²»ïŒCPUãã¡ã¢ãªã垯åå¹ ïŒã®ç®¡çã¯ãæé©ãªããã©ãŒãã³ã¹ã«äžå¯æ¬ ã§ãã ã³ãŒããããŒã¿æ§é ãããã³ãã£ãã·ã¥æŠç¥ãæ éã«æé©åããããšãäžå¯æ¬ ã§ãã
- ãã©ãŠã¶ã®äºææ§ïŒç°ãªããã©ãŠã¶ããã³ããã€ã¹éã§ã®äºææ§ã確ä¿ããŸãã ããã«ã¯ãã¬ã¬ã·ãŒãã©ãŠã¶ã«å¯ŸããŠç°ãªãæ§æãšæé©åãå¿ èŠã«ãªãå ŽåããããŸãã
- ããŒã¿ã®äžè²«æ§ïŒç°ãªãããã³ããšã³ãã³ã³ããŒãã³ãããã³ããã€ã¹éã§ããŒã¿ã®äžè²«æ§ãç¶æããããšã¯ãç¹ã«ãªã¢ã«ã¿ã€ã ã®ããŒã¿æŽæ°ãåŠçããå Žåã«å°é£ãªå ŽåããããŸãã
- ã¹ã±ãŒã©ããªãã£ãšä¿å®æ§ïŒã¢ããªã±ãŒã·ã§ã³ãæé·ããã«ã€ããŠãããã³ããšã³ãããŒã¿ãã€ãã©ã€ã³ã¯è€éã«ãªãå¯èœæ§ããããŸãã é©åã«æŽçãããã¢ãŒããã¯ãã£ãã¢ãžã¥ãŒã«åŒã³ãŒããããã³é©åãªããã¥ã¡ã³ããŒã·ã§ã³ãç¶æããããšããé·æçãªã¹ã±ãŒã©ããªãã£ãšä¿å®æ§ã«äžå¯æ¬ ã§ãã
ããã³ããšã³ãããŒã¿ãã€ãã©ã€ã³ã®æªæ¥
ããã³ããšã³ãããŒã¿ãã€ãã©ã€ã³ã®æªæ¥ã¯æãããã€ã³ã¿ã©ã¯ãã£ãã§ãªã¢ã«ã¿ã€ã ã§ããŒãœãã©ã€ãºãããWebãšã¯ã¹ããªãšã³ã¹ã«å¯ŸããéèŠã®é«ãŸãã«ãã£ãŠçœåŒãããŠããŸãã æªæ¥ã圢äœãäž»èŠãªãã¬ã³ãã«ã¯ã次ã®ãã®ããããŸãã
- ãµãŒããŒã¬ã¹ã³ã³ãã¥ãŒãã£ã³ã°ïŒããŒã¿åŠçã¿ã¹ã¯ãã¯ã©ãŠãã«ãªãããŒãããã¯ã©ã€ã¢ã³ãåŽã®è² è·ã軜æžããã¹ã±ãŒã©ããªãã£ãé«ããããã®ãµãŒããŒã¬ã¹ãã¯ãããžãŒïŒäŸïŒAWS LambdaãAzure FunctionsïŒã®çµ±åã
- ãšããžã³ã³ãã¥ãŒãã£ã³ã°ïŒã¬ã€ãã³ã·ãççž®ããã°ããŒãã«ã«ããã©ãŒãã³ã¹ãåäžãããããã«ããŠãŒã¶ãŒã®è¿ãã«ããŒã¿åŠçãšãã£ãã·ã¥ããããã€ããïŒäŸïŒã³ã³ãã³ãé ä¿¡ãããã¯ãŒã¯ïŒCDNïŒã䜿çšïŒã
- WebAssemblyïŒã¯ã©ã€ã¢ã³ãåŽã§ã®é«æ§èœããŒã¿åŠçã®ããã«WebAssemblyãæŽ»çšããŸãã ãã®ãã¯ãããžãŒã«ãããéçºè ã¯ã³ã³ãã€ã«ãããã³ãŒããå®è¡ã§ããèšç®è² è·ã®é«ãã¿ã¹ã¯ã§ããã©ãŒãã³ã¹äžã®å©ç¹ãæäŸããŸãã
- ããã³ããšã³ãã§ã®ããŒã¿èŠèŠåãšåæïŒé«åºŠãªããŒã¿èŠèŠåã©ã€ãã©ãªïŒäŸïŒD3.jsãChart.jsïŒã®äœ¿çšãå¢ãããŠããªããã§ã€ã³ã¿ã©ã¯ãã£ããªããã·ã¥ããŒããšåæããã©ãŠã¶å ã§çŽæ¥äœæããããŒãœãã©ã€ãºããããŠãŒã¶ãŒã€ã³ãµã€ããæäŸããŸãã
- AIæèŒã®ããã³ããšã³ããã€ãã©ã€ã³ïŒããŒãœãã©ã€ãºãããæšå¥šäºé ãæäŸããã³ã³ãã³ãé ä¿¡ãæé©åãããŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãåäžãããããã®ãããã³ããšã³ãã§ã®æ©æ¢°åŠç¿ã¢ã«ãŽãªãºã ã®çµ±åã
çµè«
ããã³ããšã³ãããŒã¿ãã€ãã©ã€ã³ã¯ãWebã¢ããªã±ãŒã·ã§ã³ã®æ§ç¯æ¹æ³ã«é©åœããããããéçºè ã髿§èœã§å¿çæ§ãé«ããé åçãªãŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãäœæã§ããããã«ããŸãã ETLãšãªã¢ã«ã¿ã€ã åŠçã®ã³ã¢ã³ã³ããŒãã³ããçè§£ãããã¹ããã©ã¯ãã£ã¹ã«åŸãããšã§ãéçºè ã¯ããã³ããšã³ãããŒã¿ãã€ãã©ã€ã³ã®åãæŽ»çšããŠãã°ããŒãã«ãªãŒãã£ãšã³ã¹åãã®åªããã¢ããªã±ãŒã·ã§ã³ãæäŸã§ããŸãã ãã¯ãããžãŒãé²åãç¶ããã«ã€ããŠãããã³ããšã³ãããŒã¿ãã€ãã©ã€ã³ã®åœ¹å²ã¯ãWebéçºã®æªæ¥ã圢äœãäžã§ããã«éèŠã«ãªãã§ãããã