é ããæ©ããããŒã¿ãèç©ããã³åæããããã®ITãã©ãããã©ãŒã ãæ§ç¯ããã¿ã¹ã¯ã¯ãç¥çã«ããŒãããããµãŒãã¹æäŸã¢ãã«ãŸãã¯æè¡çã«è€éãªè£œåã®äœæã«åºã¥ããŠããžãã¹ãè¡ãäŒæ¥ã§çºçããŸããåæãã©ãããã©ãŒã ã®æ§ç¯ã¯ãå°é£ã§æéã®ãããäœæ¥ã§ãããã ããã©ã®ã¿ã¹ã¯ãåçŽåã§ããŸãããã®èšäºã§ã¯ãããŒã³ãŒãããŒã«ã䜿çšããŠåæãœãªã¥ãŒã·ã§ã³ãäœæããçµéšãå ±æããããšæããŸãããã®çµéšã¯ãNeoflex瀟ã®Big DataSolutionsã®æ¹åã§å€ãã®ãããžã§ã¯ããå®æœããéã«åŸãããŸããã 2005幎以æ¥ãNeoflexã®Big Data Solutionsã®æ¹åæ§ã¯ãããŒã¿ã¹ãã¬ãŒãžãšæ¹ã®æ§ç¯ã®åé¡ã«å¯ŸåŠããæ å ±åŠçé床ã®æé©åã®åé¡ã解決ããããŒã¿å質ã管çããããã®æ¹æ³è«ã«åãçµãã§ããŸããã
匱ãããã³/ãŸãã¯é«åºŠã«æ§é åãããããŒã¿ã®æå³çãªèç©ãåé¿ããããšã¯ã§ããŸãããããããç§ãã¡ãäžå°äŒæ¥ã«ã€ããŠè©±ããŠãããšããŠãã確ãã«ãããžãã¹ãæ¡å€§ãããšããææãªèµ·æ¥å®¶ã¯ãã€ã€ã«ãã£ããã°ã©ã ã®éçºã®åé¡ã«çŽé¢ãã販売ãã€ã³ãã®æå¹æ§ãåæããã¿ãŒã²ãããçµã£ãåºåã«ã€ããŠèããä»éãã補åã®éèŠã«æžæãã§ããããæåã®æŠç®ãšããŠãåé¡ã¯èã§è§£æ±ºããããšãã§ããŸããããããããžãã¹ã®æé·ã«äŒŽããåæãã©ãããã©ãŒã ãžã®åå ¥ã¯äŸç¶ãšããŠé¿ããããŸããã
ãã ããã©ã®å ŽåãããŒã¿åæã¿ã¹ã¯ã¯ããã±ãããµã€ãšã³ã¹ãã¯ã©ã¹ã®ã¿ã¹ã¯ã«æé·ã§ããŸããïŒãããããæ¬åœã«å€§ããªããŒã¿ã«ãªããšããã®ç¬éã«ã
ãã±ãããµã€ãšã³ã¹ã®ã¿ã¹ã¯ãç°¡çŽ åããããã«ã象ãå°ããã€é£ã¹ãããšãã§ããŸãã
ã¢ããªã±ãŒã·ã§ã³/ãµãŒãã¹/ãã€ã¯ããµãŒãã¹ã®è£éãšèªåŸæ§ãé«ãã»ã©ãããªããååãããã³ããžãã¹å šäœã象ãæ¶åãããããªããŸãã
ã»ãšãã©ãã¹ãŠã®ã¯ã©ã€ã¢ã³ãããã®ä»®å®ã«å°éããDevOpsããŒã ã®ãšã³ãžãã¢ãªã³ã°æ £è¡ã«åºã¥ããŠã©ã³ãã¹ã±ãŒããåæ§ç¯ããŸããã
ãããããåå²ããã象ãã®é£äºãããŠããŠããITç°å¢ãé飜åã«ãªãå¯èœæ§ã¯ååã«ãããŸãããã®æç¹ã§ãç«ã¡æ¢ãŸã£ãŠæ¯ãåããããŒã³ãŒããšã³ãžãã¢ãªã³ã°ãã©ãããã©ãŒã ã«ç®ãåãã䟡å€ããããŸãã
å€ãã®éçºè ã¯ãã³ãŒãã®çŽæ¥èšè¿°ãããããŒã³ãŒãã·ã¹ãã ã®UIã€ã³ã¿ãŒãã§ã€ã¹ã®ç¢å°ã®ããã©ãã°ãã«ç§»è¡ãããšãã«ããã£ãªã¢ã®è¡ãè©°ãŸãã®å¯èœæ§ã«æããæããŠããŸããããããå·¥äœæ©æ¢°ã®åºçŸã¯ãšã³ãžãã¢ã®å€±èžªã«ã€ãªããã®ã§ã¯ãªãã圌ãã®ä»äºãæ°ããã¬ãã«ã«åŒãäžããŸããïŒ
ãã®çç±ãç解ããŸãããã
ããžã¹ãã£ã¯ã¹ããã¬ã³ã æ¥çãã¡ãã£ã¢ç 究ãéèã»ã¯ã¿ãŒã®ããŒã¿åæã¯ãåžžã«æ¬¡ã®è³ªåã«é¢é£ããŠããŸãã
- èªååæã®é床ã
- ããŒã¿çæã®ã¡ã€ã³ãããŒã«åœ±é¿ãäžããããšãªãå®éšãå®æœããèœåã
- æºåãããããŒã¿ã®ä¿¡é Œæ§ã
- å€æŽã®è¿œè·¡ãšããŒãžã§ã³ç®¡çã
- ããŒã¿ã®èšŒæãããŒã¿ã®ç³»çµ±ãCDC;
- å®çšŒåç°å¢ãžã®æ°æ©èœã®è¿ éãªæäŸã
- ãããŠããã®èšŒæ ïŒéçºãšãµããŒãã®ã³ã¹ãã
ã€ãŸãããšã³ãžãã¢ã«ã¯èšå€§ãªæ°ã®é«ã¬ãã«ã®ã¿ã¹ã¯ããããäœã¬ãã«ã®éçºã¿ã¹ã¯ã®å¿ãã¯ãªã¢ããã ãã§ååãªå¹çã§å®è¡ã§ããŸãã
ããžãã¹ã®é²åãšããžã¿ã«åã¯ãéçºè ãæ°ããã¬ãã«ã«ç§»è¡ããããã®åææ¡ä»¶ã«ãªããŸãããéçºè ã®äŸ¡å€ãå€åããŠããŸããèªååãããããžãã¹ã®æŠå¿µãæ·±ãæãäžããããšãã§ããéçºè ã¯å€§å¹ ã«äžè¶³ããŠããŸãã
äœã¬ãã«ãšé«ã¬ãã«ã®ããã°ã©ãã³ã°èšèªã«äŸããŸããããäœã¬ãã«ã®èšèªããé«ã¬ãã«ã®èšèªãžã®ç§»è¡ã¯ããéã®èšèªã§ã®çŽæ¥æ瀺ãã®èšè¿°ããã人ã ã®èšèªã§ã®æ瀺ããžã®ç§»è¡ã§ããã€ãŸããæœè±¡åã®ã¬ã€ã€ãŒãè¿œå ããŸãããã®å Žåãé«ã¬ãã«ã®ããã°ã©ãã³ã°èšèªããããŒã³ãŒããã©ãããã©ãŒã ãžã®ç§»è¡ã¯ãã人ã®èšèªã®ãã£ã¬ã¯ãã£ãããããããžãã¹ã®èšèªã®ãã£ã¬ã¯ãã£ãããžã®ç§»è¡ã§ãããã®äºå®ã«æ²ããã§ããéçºè ããããšããã°ãããããé åãœãŒãæ©èœã䜿çšããJava ScriptãçãŸããç¬éããããã圌ãã¯æ²ããã§ããŸãããããŠãã¡ããããããã®æ©èœã«ã¯ãåãé«ã¬ãã«ã®ããã°ã©ãã³ã°ã®ä»ã®æ段ã«ããå éšã§ã®ãœãããŠã§ã¢å®è£ ããããŸãã
ãããã£ãŠãããŒã³ãŒãã¯ãæœè±¡åã®å¥ã®ã¬ã€ã€ãŒã®åºçŸã«ãããŸããã
ããŒã³ãŒã䜿çšã®å¿çšçµéš
ããŒã³ãŒãã®ãããã¯ã¯éåžžã«åºãã§ãããããã§ãç§ãã¡ã®ãããžã§ã¯ãã®1ã€ã®äŸã䜿çšããŠããããŒã³ãŒãã®æŠå¿µãã®é©çšã¢ããªã±ãŒã·ã§ã³ã«ã€ããŠèª¬æããããšæããŸãã
Neoflex瀟ã®BigData Solutionséšéã¯ãããžãã¹ã®éèã»ã¯ã¿ãŒãã¹ãã¬ãŒãžãšããŒã¿ã¬ã€ã¯ã®æ§ç¯ãããã³ããŸããŸãªã¬ããŒãã®èªååãããå°éãšããŠããŸãããã®ãããã§ã¯ãããŒã³ãŒãã®äœ¿çšãé·ãéæšæºã«ãªã£ãŠããŸãããã®ä»ã®ããŒã³ãŒãããŒã«ã«ã¯ãETLããã»ã¹ãæŽçããããã®ããŒã«ïŒInformatica Power CenterãIBM DatastageãPentaho Data IntegrationïŒãå«ãŸããŸãããŸãã¯ãããŒã¿ã«ã¢ã¯ã»ã¹ããŠç·šéããããã®ã€ã³ã¿ãŒãã§ã€ã¹ãè¿ éã«éçºããããã®ç°å¢ãšããŠæ©èœããOracleApexããã ããããŒã³ãŒãéçºããŒã«ã®äœ¿çšã¯ããã³ããŒã«å€§ããäŸåããåçšãã¯ãããžãŒã¹ã¿ãã¯ã§ã®ã¿ãŒã²ãããçµã£ãã¢ããªã±ãŒã·ã§ã³ã®æ§ç¯ã«åžžã«é¢é£ããŠããããã§ã¯ãããŸããã
ããŒã³ãŒããã©ãããã©ãŒã ã䜿çšããŠãããŒã¿ã¹ããªãŒã ã®ãªãŒã±ã¹ãã¬ãŒã·ã§ã³ãæŽçããããããŒã¿ãµã€ãšã³ã¹ãã©ãããã©ãŒã ãäœæããããããŒã¿å質管çã¢ãžã¥ãŒã«ãªã©ãäœæãããããããšãã§ããŸãã
ããŒã³ãŒãéçºããŒã«ã®äœ¿çšçµéšã®å¿çšäŸã®1ã€ã¯ãNeoflexãšãã·ã¢ã®ã¡ãã£ã¢ç 究åžå Žã®ãªãŒããŒã®1ã€ã§ããMediascopeãšã®ã³ã©ãã¬ãŒã·ã§ã³ã§ãããã®äŒç€Ÿã®ããžãã¹ç®æšã®1ã€ã¯ãåºåäž»ãã€ã³ã¿ãŒããããµã€ããTVãã£ãã«ãã©ãžãªã¹ããŒã·ã§ã³ãåºå代çåºãããã³ãã©ã³ããåºåãè³Œå ¥ããããŒã±ãã£ã³ã°ã³ãã¥ãã±ãŒã·ã§ã³ãèšç»ããããšã«åºã¥ããŠãããŒã¿ãäœæããããšã§ãã
ã¡ãã£ã¢ç 究ã¯ãæè¡éçŽåã®ããžãã¹åéã§ãããããªã·ãŒã±ã³ã¹ã®èªèã衚瀺ãåæããããã€ã¹ããã®ããŒã¿ã®åéãWebãªãœãŒã¹ã§ã®ã¢ã¯ãã£ããã£ã®æž¬å®-ããã¯ãã¹ãŠãäŒæ¥ã«å€§èŠæš¡ãªITã¹ã¿ãããããŠãåæãœãªã¥ãŒã·ã§ã³ã®æ§ç¯ã«è±å¯ãªçµéšãããããšãæå³ããŸããããããæ å ±ã®éããã®ãœãŒã¹ã®æ°ãšå€æ§æ§ã®ææ°é¢æ°çãªæé·ã«ãããITããŒã¿æ¥çã¯çµ¶ããé²æ©ããŠããŸãããã§ã«æ©èœããŠããåæãã©ãããã©ãŒã Mediascopeãã¹ã±ãŒãªã³ã°ããããã®æãç°¡åãªãœãªã¥ãŒã·ã§ã³ã¯ãITã¹ã¿ããã®å¢å¡ã§ããå¯èœæ§ããããŸããããããã¯ããã«å¹ççãªè§£æ±ºçã¯ãéçºããã»ã¹ãã¹ããŒãã¢ããããããšã§ãããã®æ¹åã«ã€ãªããã¹ãããã®1ã€ã¯ãããŒã³ãŒããã©ãããã©ãŒã ã®äœ¿çšã§ããå¯èœæ§ããããŸãã
ãããžã§ã¯ãã®éå§æç¹ã§ãå瀟ã¯ãã§ã«æ©èœãã補åãœãªã¥ãŒã·ã§ã³ãæã£ãŠããŸããããã ããMSSQLã§ã®ãœãªã¥ãŒã·ã§ã³ã®å®è£ ã§ã¯ã蚱容å¯èœãªæ¹èšã³ã¹ããç¶æããªãããæ©èœãæ¡åŒµãããšããæåŸ ã«å®å šã«å¿ããããšã¯ã§ããŸããã§ããã
ç§ãã¡ã®åã®ä»äºã¯æ¬åœã«éå¿çã§ãã-MVPãäœæ¥éå§æ¥ãã第1ååæå ã«ãªãªãŒã¹ãããå ŽåãNeoflexãšMediascopeã¯1幎以å ã«ç£æ¥çšãœãªã¥ãŒã·ã§ã³ãäœæããå¿ èŠããããŸããã
Hadoopãã¯ãããžãŒã¹ã¿ãã¯ã¯ãããŒã³ãŒãã³ã³ãã¥ãŒãã£ã³ã°ã«åºã¥ãæ°ããããŒã¿ãã©ãããã©ãŒã ãæ§ç¯ããããã®åºç€ãšããŠéžæãããŸããã HDFSã¯ãå¯æšçŽ°å·¥ã®ãã¡ã€ã«ã䜿çšããããŒã¿ã¹ãã¬ãŒãžã®æšæºã«ãªããŸããããã©ãããã©ãŒã å ã®ããŒã¿ã«ã¢ã¯ã»ã¹ããããã«ãHiveã䜿çšãããå©çšå¯èœãªãã¹ãŠã®ã¹ãã¢ããã³ããå€éšããŒãã«ã®åœ¢åŒã§è¡šç€ºãããŸããã¹ãã¬ãŒãžãžã®ããŒã¿ã®ããŒãã¯ãKafkaãšApacheNiFiã䜿çšããŠå®è£ ãããŸããã
ãã®æŠå¿µã®lowe-code-toolã¯ãåæãã©ãããã©ãŒã ãæ§ç¯ããéã«æãåŽåéçŽçãªã¿ã¹ã¯ãã€ãŸãããŒã¿ãèšç®ããã¿ã¹ã¯ãæé©åããããã«äœ¿çšãããŸããã
ããŒã³ãŒãã®ããŒã¿ã°ã©ã ããŒã«ããããŒã¿ãããã³ã°ã®äž»èŠãªã¡ã«ããºã ãšããŠéžæãããŸãããNeoflex Datagramã¯ãå€æãšããŒã¿ã¹ããªãŒã ãèšèšããããã®ããŒã«ã§ãã
ãã®ããŒã«ã䜿çšãããšãScalaã³ãŒãããæäœæ¥ã§ãäœæããããšãåé¿ã§ããŸããScalaã³ãŒãã¯ãã¢ãã«é§ååã¢ãŒããã¯ãã£ã®ã¢ãããŒãã䜿çšããŠèªåçã«çæãããŸãã
ãã®ã¢ãããŒãã®æãããªå©ç¹ã¯ãéçºããã»ã¹ã®å éã§ãããã ããé床ã«å ããŠã次ã®å©ç¹ããããŸãã
- ãœãŒã¹/å®å ã®ã³ã³ãã³ããšæ§é ã®è¡šç€ºã
- åã ã®ãã£ãŒã«ãïŒç³»çµ±ïŒãžã®ããŒã¿ãããŒãªããžã§ã¯ãã®èµ·ç¹ã远跡ããŸãã
- äžéçµæã衚瀺ããå€æã®éšåçãªå®è¡ã
- ãœãŒã¹ã³ãŒãã衚瀺ããå®è¡åã«ä¿®æ£ããŸãã
- å€æã®èªåæ€èšŒã
- èªåããŒã¿ããŒã1in1ã
å€æãçæããããã®ããŒã³ãŒããœãªã¥ãŒã·ã§ã³ãå ¥åããããã®ãããå€ã¯éåžžã«äœããéçºè ã¯SQLãç解ããETLããŒã«ã®çµéšãæã£ãŠããå¿ èŠããããŸããã³ãŒãé§ååå€æãžã§ãã¬ãŒã¿ãŒã¯ãåºçŸ©ã®ETLããŒã«ã§ã¯ãªãããšã«æ³šæããŠãã ãããããŒã³ãŒãããŒã«ã«ã¯ãç¬èªã®ã³ãŒãå®è¡ç°å¢ããªãå ŽåããããŸããã€ãŸããçæãããã³ãŒãã¯ãããŒã³ãŒããœãªã¥ãŒã·ã§ã³ã®ã€ã³ã¹ããŒã«åã§ãã¯ã©ã¹ã¿ãŒäžã«ãã£ãç°å¢ã§å®è¡ãããŸãããããŠãããã¯ãããããããŒã³ãŒãã«ã«ãã®ãã1ã€ã®ãã©ã¹ã§ãã low-code-commandãšäžŠè¡ããŠããã¯ã©ã·ãã¯ãã³ãã³ããæ©èœãããããããšãã°ãçŽç²ãªScalaã³ãŒãã§æ©èœãå®è£ ããŸããäž¡æ¹ã®ããŒã ã®äœæ¥ãæ¬çªç°å¢ã«åã蟌ãã®ã¯ç°¡åã§ã·ãŒã ã¬ã¹ã§ãã
ãããããããŒã³ãŒãã«å ããŠãã³ãŒããªãã®ãœãªã¥ãŒã·ã§ã³ãããããšã«æ³šæãã䟡å€ããããŸãããããŠæ¬è³ªçã«ããããã¯ç°ãªããã®ã§ããããŒã³ãŒãã䜿çšãããšãéçºè ã¯çæãããã³ãŒããå€§å¹ ã«åŠšå®³ã§ããŸããDatagramã®å ŽåãçæãããScalaã³ãŒãã衚瀺ããã³ç·šéããããšã¯å¯èœã§ãããã³ãŒããªãã§ã¯ãã®ãããªæ©äŒãæäŸãããªãå ŽåããããŸãããã®éãã¯ããœãªã¥ãŒã·ã§ã³ã®æè»æ§ã ãã§ãªããããŒã¿ãšã³ãžãã¢ã®äœæ¥ã«ãããå¿«é©ããšã¢ãããŒã·ã§ã³ã®èŠ³ç¹ãããéåžžã«éèŠã§ãã
ãœãªã¥ãŒã·ã§ã³ã¢ãŒããã¯ãã£
ããŒã³ãŒãããŒã«ããããŒã¿èšç®æ©èœã®éçºé床ãæé©åããåé¡ã®è§£æ±ºã«ã©ã®ããã«åœ¹ç«ã€ããæ£ç¢ºã«ç解ããŠã¿ãŸãããããŸããã·ã¹ãã ã®æ©èœã¢ãŒããã¯ãã£ãèŠãŠã¿ãŸãããããã®å Žåã®äŸã¯ãã¡ãã£ã¢ç 究ã®ããŒã¿çæã¢ãã«ã§ãã
ç§ãã¡ã®å Žåã®ããŒã¿ãœãŒã¹ã¯éåžžã«ç°è³ªã§å€æ§ã§ãã
- (-) â - , â , , . â . Data Lake , , , . , , ;
- ;
- web-, site-centric, user-centric . Data Lake research bar VPN.
- , - ;
- -.
ãœãŒã¹ã·ã¹ãã ããçããŒã¿ã®ãã©ã€ããªã¹ããŒãžã³ã°ãžã®ããŒãã®å®è£ ã¯ãããŸããŸãªæ¹æ³ã§æŽçã§ããŸãããããã®ç®çã§ããŒã³ãŒãã䜿çšãããšãã¡ã¿ããŒã¿ã«åºã¥ããŠããŒãã¹ã¯ãªãããèªåçã«çæã§ããŸãããã®å ŽåããœãŒã¹ããã¿ãŒã²ãããžã®ãããã³ã°ã®éçºã¬ãã«ã«äžããå¿ èŠã¯ãããŸãããèªåããŒããå®è£ ããã«ã¯ããœãŒã¹ãšã®æ¥ç¶ã確ç«ããŠãããããŒããããšã³ãã£ãã£ã®ãªã¹ããããŒãã€ã³ã¿ãŒãã§ã€ã¹ã§å®çŸ©ããå¿ èŠããããŸãã HDFSã§ã®ãã£ã¬ã¯ããªæ§é ã®äœæã¯èªåçã«è¡ããããœãŒã¹ã·ã¹ãã ã®ããŒã¿ã¹ãã¬ãŒãžæ§é ã«å¯Ÿå¿ããŸãã
ãã ãããã®ãããžã§ã¯ãã®ã³ã³ããã¹ãã§ã¯ãMediascopeãNifi + Kafkaãªã³ã¯ã§åæ§ã®ãµãŒãã¹ã®äœæã«ãã§ã«ç¬èªã«åãçµãã§ãããããããŒã³ãŒããã©ãããã©ãŒã ã®ãã®æ©äŒã䜿çšããªãããšã«ããŸããã
ãããã®ããŒã«ã¯äºææ§ããªããçžäºã«è£å®çã§ããããšã«ããã«æ³šæããå¿ èŠããããŸãã NifiãšKafkaã¯ãçŽæ¥ïŒNifi-> KafkaïŒãã³ãã«ãšéïŒKafka-> NifiïŒãã³ãã«ã®äž¡æ¹ã§æ©èœããŸããã¡ãã£ã¢ç 究ãã©ãããã©ãŒã ã§ã¯ãæåã®ãªã³ã¯ã䜿çšãããŸããã
ç§ãã¡ã®å ŽåããœãŒã¹ã·ã¹ãã ããã®ããŸããŸãªã¿ã€ãã®ããŒã¿ãåŠçããŠãKafkaãããŒã«ãŒã«éä¿¡ããå¿ èŠããããŸãããåæã«ãç¹å®ã®Kafkaãããã¯ãžã®ã¡ãã»ãŒãžã®éä¿¡ã¯ãPublishKafkaNifiããã»ããµã䜿çšããŠå®è¡ãããŸããããããã®ãã€ãã©ã€ã³ã®ãªãŒã±ã¹ãã¬ãŒã·ã§ã³ãšã¡ã³ããã³ã¹ã¯ãããžã¥ã¢ã«ã€ã³ã¿ãŒãã§ã€ã¹ã§è¡ãããŸãã NifiããŒã«ãšNifi + Kafkaãã³ãã«ã®äœ¿çšã¯ãéçºãžã®ããŒã³ãŒãã¢ãããŒããšãåŒã°ããŸããããã¯ãããã°ããŒã¿ãã¯ãããžãŒãžã®åå ¥ã®ãããå€ãäœããã¢ããªã±ãŒã·ã§ã³éçºããã»ã¹ãå éããŸãã
ãããžã§ã¯ãã®å®è£ ã«ããã次ã®æ®µéã¯ã詳现ããŒã¿ã®åäžã®ã»ãã³ãã£ãã¯ã¬ã€ã€ãŒã®åœ¢åŒãžã®çž®å°ã§ããããšã³ãã£ãã£ã«å±¥æŽå±æ§ãããå Žåãèšç®ã¯åé¡ã®ããŒãã£ã·ã§ã³ã®ã³ã³ããã¹ãã§å®è¡ãããŸãããšã³ãã£ãã£ãå±¥æŽã§ã¯ãªãå Žåããªãã·ã§ã³ã§ããªããžã§ã¯ãã®ã³ã³ãã³ãå šäœãåèšç®ããããïŒå€æŽããªãããã«ïŒãã®ãªããžã§ã¯ãã®åèšç®ããŸã£ããæåŠããããšãã§ããŸãããã®æ®µéã§ããã¹ãŠã®ãšã³ãã£ãã£ã®ãââãŒãçæãããŸããããŒã¯ããã¹ã¿ãŒãªããžã§ã¯ãã«å¯Ÿå¿ããHbaseãã£ã¬ã¯ããªã«ä¿åãããåæãã©ãããã©ãŒã ã®ããŒãšãœãŒã¹ã·ã¹ãã ã®ããŒã®éã®å¯Ÿå¿ãå«ãŸããŸããã¢ãããã¯ãšã³ãã£ãã£ã®çµ±åã«ã¯ãäºåèšç®ã®çµæã«ããåæããŒã¿ã®åŒ·åã䌎ããŸããããŒã¿ãèšç®ããããã®ãã¬ãŒã ã¯ãŒã¯ã¯Sparkã§ãããããŒã¿ãåäžã®ã»ãã³ãã£ã¯ã¹ã«å€æãã説æãããæ©èœããããŒã³ãŒãããŒã«ããŒã¿ã°ã©ã ã®ãããã³ã°ã«åºã¥ããŠå®è£ ãããŸããã
ã¿ãŒã²ããã¢ãŒããã¯ãã£ã§ã¯ãããžãã¹ãŠãŒã¶ãŒã«SQLããŒã¿ã¢ã¯ã»ã¹ãæäŸããå¿ èŠããããŸããããã®ãªãã·ã§ã³ã«ã¯ãã€ãã䜿çšãããŸãããlow-code-toolã§[RegistrHive Table]ãªãã·ã§ã³ãæå¹ã«ãããšããªããžã§ã¯ããHiveã«èªåçã«ç»é²ãããŸãã
æ¯æããããŒå¶åŸ¡
Datagramã«ã¯ãã¯ãŒã¯ãããŒèšèšãæ§ç¯ããããã®ã€ã³ã¿ãŒãã§ã€ã¹ããããŸãããããã³ã°ã¯ãOozieã¹ã±ãžã¥ãŒã©ãŒã䜿çšããŠèµ·åã§ããŸããã¹ããªãŒã ã®éçºè ã®ã€ã³ã¿ãŒãã§ãŒã¹ã§ã¯ã䞊åãé 次ããŸãã¯ããŒã¿å€æã®å®è¡ã®æå®ãããæ¡ä»¶ã«å¿ããŠãã¹ããŒã ãäœæããããšãã§ããŸããã·ã§ã«ã¹ã¯ãªãããšJavaããã°ã©ã ããµããŒããããŠããŸããApacheLivyãµãŒããŒã䜿çšããããšãã§ããŸããApache Livyã¯ãéçºç°å¢ããçŽæ¥ã¢ããªã±ãŒã·ã§ã³ãå®è¡ããããã«äœ¿çšãããŸãã
äŒç€Ÿããã§ã«ç¬èªã®ããã»ã¹ãªãŒã±ã¹ãã¬ãŒã¿ãŒãæã£ãŠããå Žåã¯ãRESTAPIã䜿çšããŠæ¢åã®ã¹ããªãŒã ã«ãããã³ã°ãåã蟌ãããšãã§ããŸããããšãã°ãPLSQLãšKotlinã§èšè¿°ããããªãŒã±ã¹ãã¬ãŒã¿ãŒã«Scalaãããã³ã°ãåã蟌ããšããããªãæåããçµéšããããŸãããããŒã³ãŒãããŒã«ã®RESTAPIã¯ããããã³ã°ãã¶ã€ã³ã«åºã¥ããŠå®è¡å¯èœå¹Žãçæããããããã³ã°ãåŒã³åºãããããã³ã°ã®ã·ãŒã±ã³ã¹ãåŒã³åºãããããŠãã¡ããããããã³ã°ãèµ·åããããã«URLã«ãã©ã¡ãŒã¿ãæž¡ããªã©ã®æäœã®ååšãæå³ããŸãã
Oozieãšãšãã«ãAirflowã䜿çšããŠèšç®ã®ãããŒãæŽçããããšãã§ããŸãããããããOozieãšAirflowã®æ¯èŒã«ã€ããŠã¯é·ãé詳ãã説æããŸããããã¡ãã£ã¢ç 究ãããžã§ã¯ãã§ã®äœæ¥ã®ã³ã³ããã¹ãã§ã¯ãéžæã¯Airflowã«åãããããšç°¡åã«èšããŸããä»åã®äž»ãªè°è«ã¯ã補åãéçºãããã掻çºãªã³ãã¥ããã£ãšãããéçºãããã€ã³ã¿ãŒãã§ãŒã¹+ APIã§ããããšãå€æããŸããã
Airflowã¯ãææã®Pythonã䜿çšããŠèšç®ããã»ã¹ãèšè¿°ãããããåªããŠããŸããäžè¬ã«ããªãŒãã³ãœãŒã¹ã®ã¯ãŒã¯ãããŒç®¡çãã©ãããã©ãŒã ã¯ããã»ã©å€ããããŸãããããã»ã¹ïŒã¬ã³ããã£ãŒãã䜿çšããããã»ã¹ãå«ãïŒã®å®è¡ãèµ·åããã³ç£èŠãããšãAirflowã®ã«ã«ãã«ãã€ã³ããè¿œå ãããã ãã§ãã
ããŒã³ãŒããœãªã¥ãŒã·ã§ã³ãããã³ã°ãèµ·åããããã®æ§æãã¡ã€ã«ã®åœ¢åŒã¯spark-submitã§ããããã¯2ã€ã®çç±ã§èµ·ãããŸããããŸããspark-submitã䜿çšãããšãã³ã³ãœãŒã«ããçŽæ¥jarãã¡ã€ã«ãå®è¡ã§ããŸãã次ã«ãã¯ãŒã¯ãããŒãæ§æããããã«å¿ èŠãªãã¹ãŠã®æ å ±ãå«ããããšãã§ããŸãïŒããã«ãããDagã圢æããã¹ã¯ãªãããç°¡åã«äœæã§ããŸãïŒã
ãã®å Žåã®Airflowã¯ãŒã¯ãããŒã®æãäžè¬çãªèŠçŽ ã¯ãSparkSubmitOperatorã§ãã
SparkSubmitOperatorã䜿çšãããšãjar`niksãå®è¡ã§ããŸããããã¯ãäºåã«åœ¢æãããå ¥åãã©ã¡ãŒã¿ãŒã䜿çšããŠããã¯ãããããŒã¿ã°ã©ã ãããã³ã°ã§ãã
åAirflowã¿ã¹ã¯ã¯å¥ã ã®ã¹ã¬ããã§å®è¡ãããä»ã®ã¿ã¹ã¯ã«ã€ããŠã¯äœãç¥ããªãããšã«æ³šæããŠãã ãããããã«é¢é£ããŠãã¿ã¹ã¯éã®çžäºäœçšã¯ãDummyOperatorãBranchPythonOperatorãªã©ã®å¶åŸ¡æŒç®åã䜿çšããŠå®è¡ãããŸãã
å šäœãšããŠãæ§æãã¡ã€ã«ã®ãŠãããŒãµã«åïŒDagã®åœ¢æïŒãšçµã¿åãããDatagramããŒã³ãŒããœãªã¥ãŒã·ã§ã³ã®äœ¿çšã«ãããããŒã¿ããŠã³ããŒãã¹ããªãŒã ã®éçºããã»ã¹ãå€§å¹ ã«å éããã³ç°¡çŽ åãããŸããã
ã·ã§ãŒã±ãŒã¹ã®èšç®
ãããããåæããŒã¿ã®çæã§æãã€ã³ããªãžã§ã³ãã«ããŒãããã段éã¯ãåºé ã®æ§ç¯ã¹ãããã§ãã調æ»äŒç€Ÿã®ããŒã¿ãããŒã®1ã€ã«é¢é£ããŠããã®æ®µéã§ã¯ãæŸéã°ãªãããåç §ããã¿ã€ã ãŸãŒã³ã®ä¿®æ£ãèæ ®ããŠãåç §æŸéãžã®å€æãè¡ãããŸããããŒã«ã«æŸéãããã¯ãŒã¯ïŒããŒã«ã«ãã¥ãŒã¹ãåºåïŒã«åãããŠèª¿æŽããããšãå¯èœã§ããç¹ã«ããã®ã¹ãããã§ã¯ãèŠèŽééã®åæã«åºã¥ããŠãã¡ãã£ã¢è£œåã®é£ç¶èŠèŽééãåé¡ããŸããããã«ã衚瀺å€ã¯ããã®éèŠæ§ã«é¢ããæ å ±ïŒè£æ£ä¿æ°ã®èšç®ïŒã«åºã¥ããŠãéã¿ä»ãããããŸãã
ããŒã¿æ€èšŒã¯ãããŒã¿ããŒããæºåããããã®å¥ã®ã¹ãããã§ããæ€èšŒã¢ã«ãŽãªãºã ã¯ãããã€ãã®æ°åŠçç§åŠã¢ãã«ã䜿çšããŸãããã ããããŒã³ãŒããã©ãããã©ãŒã ã䜿çšãããšãè€éãªã¢ã«ãŽãªãºã ãããã€ãã®åå¥ã®èŠèŠçã«èªã¿åãå¯èœãªãããã³ã°ã«åå²ã§ããŸããåãããã³ã°ã¯çãã¿ã¹ã¯ãå®è¡ããŸãããã®çµæãããŒã¿æºå段éã®äžéãããã°ããã®ã³ã°ãããã³èŠèŠåãå¯èœã«ãªããŸãã
æ€èšŒã¢ã«ãŽãªãºã ã次ã®ãµãã¹ããŒãžã«é¢æ£åããããšã決å®ãããŸããã
- å°åå ã®ãã¹ãŠã®ãããã¯ãŒã¯ã60æ¥éèŠèŽããªãããå°åå ã®ãã¬ããããã¯ãŒã¯ãèŠèŽããããšã®äŸåé¢ä¿ã®ååž°ãããããããŸãã
- ãã¹ãŠã®ååž°ãã€ã³ããšèšç®ãããæ¥ã®åŠçåæ®å·®ïŒååž°ã¢ãã«ã«ãã£ãŠäºæž¬ããããã®ããã®å®éã®å€ã®åå·®ïŒã®èšç®ã
- ç°åžžãªå°åãšãããã¯ãŒã¯ã®ãã¢ã®ãµã³ãã«ãèšç®ãããæ¥ã®æ®ãã®åŠçãæšæºïŒæäœèšå®ã§æå®ïŒãè¶ ããŠããŸãã
- ãã®åçè ããµã³ãã«ããé€å€ããå Žåã®ããã®åçè ã®è²¢ç®åºŠïŒåŠçåãããæ®å·®ã®å€åã®å€ïŒã決å®ããŠãé åå ã®ãããã¯ãŒã¯ã衚瀺ããååçè ã®ç°åžžãªé åãšãããã¯ãŒã¯ã®ãã¢ã®ä¿®æ£ãããåŠçåãããæ®å·®ã®åèšç®ã
- åè£è ãæ¢ããŸããåè£è ãé€å€ãããšã決æžæ¥ã®åŠçã®ãã©ã³ã¹ãéåžžã«æ»ããŸãã
äžèšã®äŸã¯ãããŒã¿ãšã³ãžãã¢ããšã«ããé ã®äžã«ããŸãã«ãå€ããæã£ãŠããå¿ èŠããããšãã仮説ã®ç¢ºèªã§ã...ãããŠãããæ¬åœã«ããšã³ãžãã¢ãã§ãããã³ãŒããŒãã§ã¯ãªãå ŽåãããŒã³ãŒãããŒã«ã䜿çšãããšãã®å°é家ã®å£åã®æã圌ã¯æçµçã«æ€éããªããã°ãªããŸããã
ããŒã³ãŒãã¯ä»ã«äœãã§ããŸããïŒ
Scalaã³ãŒããæåã§èšè¿°ããã«ããŒã¿ããããåŠçããã³ã¹ããªãŒãã³ã°ããããã®ããŒã³ãŒãããŒã«ã®ç¯å²ã¯ãããã ãã§ã¯ãããŸããã
ããŒã¿ã¬ã€ã¯ã®éçºã«ãããããŒã³ãŒãã®äœ¿çšã¯ããã§ã«ç§ãã¡ã®æšæºã«ãªã£ãŠããŸãããããããHadoopã¹ã¿ãã¯ã®ãœãªã¥ãŒã·ã§ã³ã¯ãRDBMSã«åºã¥ãåŸæ¥ã®DWHã®éçºã®éããã©ã£ãŠãããšèšããŸãã Hadoopã¹ã¿ãã¯ã®ããŒã³ãŒãããŒã«ã¯ãããŒã¿åŠçã¿ã¹ã¯ãšæçµçãªBIã€ã³ã¿ãŒãã§ã€ã¹ãæ§ç¯ããã¿ã¹ã¯ã®äž¡æ¹ã解決ã§ããŸããããã«ãBIã¯ããŒã¿ã®è¡šçŸã ãã§ãªããããžãã¹ãŠãŒã¶ãŒã®åã«ããç·šéãæå³ããå¯èœæ§ãããããšã«æ³šæããŠãã ãããéèã»ã¯ã¿ãŒåãã®åæãã©ãããã©ãŒã ãæ§ç¯ããéã«ããã®æ©èœããã䜿çšããŸãã
ç¹ã«ãããŒã³ãŒããç¹ã«ããŒã¿ã°ã©ã ã䜿çšãããšãã¢ãããã¯æ§ãåããããŒã¿ãããŒãªããžã§ã¯ãã®èµ·ç¹ãåã ã®ãã£ãŒã«ãïŒç³»çµ±ïŒãŸã§è¿œè·¡ããåé¡ã解決ã§ããŸãããããè¡ãããã«ãããŒã³ãŒãããŒã«ã¯ApacheAtlasããã³ClouderaNavigatorãšã®ã€ã³ã¿ãŒãã§ã€ã¹ãå®è£ ããŸããå®éãéçºè ã¯AtlasèŸæžã«ãªããžã§ã¯ãã®ã»ãããç»é²ãããããã³ã°ãäœæãããšãã«ç»é²ããããªããžã§ã¯ããåç §ããå¿ èŠããããŸããããŒã¿ã®åºæã远跡ãããããªããžã§ã¯ãã®äŸåé¢ä¿ãåæãããããã¡ã«ããºã ã¯ãèšç®ã¢ã«ãŽãªãºã ãæ¹åããå¿ èŠãããå Žåã«å€ãã®æéãç¯çŽããŸããããšãã°ã財åè«žè¡šãäœæããå Žåããã®æ©èœã䜿çšãããšãæ³æ¹æ£ã®æéãããå¿«é©ã«ä¹ãåãããšãã§ããŸããçµå±ã®ãšããã詳现ã¬ã€ã€ãŒã®ãªããžã§ã¯ãã®ã³ã³ããã¹ãã§ã®ãã©ãŒã éã®äŸåé¢ä¿ãããããç解ãããšããçªç¶ã®ãæ¬ é¥ã«ééããããšãå°ãªããªããããçŽãã®åæ°ãæžããŸãã
ããŒã¿å質ãšããŒã³ãŒã
Mediascopeãããžã§ã¯ãã®ããŒã³ãŒãããŒã«ã«ãã£ãŠå®è£ ããããã1ã€ã®ã¿ã¹ã¯ã¯ãDataQualityã¯ã©ã¹ã®ã¿ã¹ã¯ã§ãã調æ»äŒç€Ÿã®ãããžã§ã¯ãã®ããŒã¿æ€èšŒãã€ãã©ã€ã³ã®å®è£ ã®ç¹åŸŽã¯ãã¡ã€ã³ã®ããŒã¿ãããŒã®ããã©ãŒãã³ã¹ãšé床ã«åœ±é¿ããªãããšã§ãããããªãã¿ã®ApacheAirflowã䜿çšããŠãç¬ç«ããã¹ã¬ããã«ããããŒã¿æ€èšŒã®ãªãŒã±ã¹ãã¬ãŒã·ã§ã³ãå¯èœã«ããŸãããããŒã¿çæã®åã¹ãããã®æºåãæŽããšãDQãã€ãã©ã€ã³ã®åå¥ã®éšåã䞊è¡ããŠéå§ãããŸããã
åæãã©ãããã©ãŒã ã§ããŒã¿ã®å質ãæåããç£èŠããããšããå§ãããŸããã¡ã¿ããŒã¿ã«é¢ããæ å ±ãããã°ãæ å ±ããã©ã€ããªã¬ã€ã€ãŒã«å ¥ã£ãç¬éãããåºæ¬æ¡ä»¶ãæºããããŠãããã©ããã確èªã§ããŸããnullã§ã¯ãªããå¶çŽãå€éšããŒã§ãããã®æ©èœã¯ãDatagramã§ããŒã¿å質ãã¡ããªã®èªåçæããããããã³ã°ã«åºã¥ããŠå®è£ ãããŸãããã®å Žåã®ã³ãŒãçæãã¢ãã«ã¡ã¿ããŒã¿ã«åºã¥ããŠããŸããMediascopeãããžã§ã¯ãã§ã¯ãã€ã³ã¿ãŒãã§ã€ã¹ã¯EnterpriseArchitect補åã®ã¡ã¿ããŒã¿ã䜿çšããŠããŸããã
ããŒã³ãŒãããŒã«ãšEnterpriseArchitectããã¢ãªã³ã°ããããšã«ããã次ã®ãã§ãã¯ãèªåçã«çæãããŸããã
- ãnotnullã修食åã䜿çšããŠãã£ãŒã«ãã«ãnullãå€ãååšãããã©ããã確èªããŸãã
- äž»ããŒã®éè€ã®ååšã確èªããŸãã
- ãšã³ãã£ãã£ã®å€éšããŒã®æ€èšŒã
- äžé£ã®ãã£ãŒã«ãã«å¯ŸããŠæååã®äžææ§ããã§ãã¯ããŸãã
ããé«åºŠãªããŒã¿ã®å¯çšæ§ãšåŠ¥åœæ§ã®ãã§ãã¯ã®ããã«ãZeppelinã®ã¢ããªã¹ãã«ãã£ãŠæºåãããå€éšã®SparkSQLãã§ãã¯ã³ãŒããåãå ¥ããScalaåŒãããã³ã°ãäœæãããŸããã
ãã¡ãããåŸã ã«å°åæã®èªåçæã«è³ãå¿ èŠããããŸãã説æãããŠãããããžã§ã¯ãã®ãã¬ãŒã ã¯ãŒã¯å ã§ãããã«ç¶ããŠæ¬¡ã®æé ãå®è¡ãããŸããã
- ZeppelinããŒãããã¯ã«å®è£ ãããDQã
- DQçµã¿èŸŒã¿ãããã³ã°ã
- ç¹å®ã®ãšã³ãã£ãã£ã®ãã§ãã¯ã®ã»ããå šäœãå«ãåå¥ã®å€§èŠæš¡ãªãããã³ã°ã®åœ¢åŒã®DQã
- ã¡ã¿ããŒã¿ãšããžãã¹æ€èšŒæ å ±ãå ¥åãšããŠåãå ¥ãããŠãããŒãµã«ãã©ã¡ãŒã¿åDQãããã³ã°ã
ããããããã©ã¡ãŒã¿åããããã§ãã¯ã®ãµãŒãã¹ãäœæããäž»ãªå©ç¹ã¯ãæ¬çªç°å¢ãžã®æ©èœã®é ä¿¡æéã®ççž®ã§ããæ°ããå質ãã§ãã¯ã§ã¯ãéçºç°å¢ãšãã¹ãç°å¢ãä»ããŠéæ¥çã«ã³ãŒããé ä¿¡ãããšããåŸæ¥ã®ãã¿ãŒã³ãåé¿ã§ããŸãã
- EAã§ã¢ãã«ãå€æŽããããšããã¹ãŠã®ã¡ã¿ããŒã¿ãã§ãã¯ãèªåçã«çæãããŸãã
- ããŒã¿å¯çšæ§ãã§ãã¯ïŒããæç¹ã§ã®ããŒã¿ã®ååšãå€æããïŒã¯ããªããžã§ã¯ãã®ã³ã³ããã¹ãã§æ¬¡ã®ããŒã¿ãåºçŸããäºæ³ãããã¿ã€ãã³ã°ãæ ŒçŽãããã£ã¬ã¯ããªã«åºã¥ããŠçæã§ããŸãã
- ããžãã¹ããŒã¿ã®æ€èšŒã¯ãZeppelinããŒãããã¯ã®ã¢ããªã¹ãã«ãã£ãŠäœæãããŸãããããããå®çšŒåç°å¢ã®DQã¢ãžã¥ãŒã«ã»ããã¢ããããŒãã«ã«çŽæ¥ç§»åããŸãã
ã¹ã¯ãªãããæ¬çªç°å¢ã«çŽæ¥åºè·ãããªã¹ã¯ã¯ãããŸãããæ§æãšã©ãŒããã£ãŠããããŒã¿èšç®ã®ãããŒãšå質ãã§ãã¯ã®éå§ã®ãããŒãäºãã«åé¢ãããŠãããããç§ãã¡ãè ããæ倧ã®åé¡ã¯ã1ã€ã®ãã§ãã¯ã®å®è¡ã®å€±æã§ãã
å®éãDQãµãŒãã¹ã¯å®çšŒåç°å¢ã§æ°žç¶çã«å®è¡ãããŠããã次ã®ããŒã¿ã衚瀺ããããšãã«æ©èœãéå§ããæºåãã§ããŠããŸãã
çµè«ã®ä»£ããã«
ããŒã³ãŒãã䜿çšããå©ç¹ã¯æããã§ããéçºè ã¯ãã¢ããªã±ãŒã·ã§ã³ãæåããéçºããå¿ èŠã¯ãããŸãããè¿œå ã®ã¿ã¹ã¯ãã解æŸãããããã°ã©ããŒã¯ãããéãçµæãåºããŸãã次ã«ãé床ã¯ãæé©åã®åé¡ã解決ããããã®è¿œå ã®æéãªãœãŒã¹ã解æŸããŸãããããã£ãŠããã®å Žåãããåªãããããé«éãªãœãªã¥ãŒã·ã§ã³ãæåŸ ã§ããŸãã
ãã¡ãããããŒã³ãŒãã¯äžèœè¬ã§ã¯ãªããéæ³ã¯ããèªäœã§ã¯èµ·ãããŸããã
- ããŒã³ãŒãæ¥çã¯ãæé·ãã®æ®µéãçµãŠããããããŸã§ã®ãšãããçµ±äžãããæ¥çæšæºã¯ãããŸããã
- å€ãã®ããŒã³ãŒããœãªã¥ãŒã·ã§ã³ã¯ç¡æã§ã¯ãããŸãããããããè³Œå ¥ããããšã¯æå³çãªã¹ãããã§ããå¿ èŠããããŸããããã¯ããããã®äœ¿çšã«ããçµæžçå©çã«å®å šã«èªä¿¡ãæã£ãŠè¡ãå¿ èŠããããŸãã
- GIT / SVN. ;
- â , , « » low-code-.
- , low-code-. . / IT- .
ãã ããéžæããã·ã¹ãã ã®ãã¹ãŠã®æ¬ ç¹ãç¥ã£ãŠããŠãããã§ããã®äœ¿çšã«ããå©ç¹ãå§åçã«å€ãå Žåã¯ãæããããšãªãå°ããªã³ãŒãã«é²ãã§ãã ãããããã«ããããžã®ç§»è¡ã¯é¿ããããŸãã-ã©ããªé²åãé¿ããããªãã®ã§ã
ããŒã³ãŒããã©ãããã©ãŒã äžã®1人ã®éçºè ããããŒã³ãŒããªãã®2人ã®éçºè ãããéãä»äºãããªããå Žåãããã¯äŒç€Ÿã«ããããç¹ã§æå©ãªã¹ã¿ãŒããäžããŸããããŒã³ãŒããœãªã¥ãŒã·ã§ã³ãå ¥åããããã®ãããå€ã¯ããåŸæ¥ã®ããã¯ãããžãŒãããäœããããã¯ã¹ã¿ããäžè¶³ã®åé¡ã«ãã©ã¹ã®å¹æããããããŸããããŒã³ãŒãããŒã«ã䜿çšãããšãæ©èœããŒã éã®çžäºäœçšãå éããéžæããããŒã¿ãµã€ãšã³ã¹ç 究ãã¹ã®æ£ç¢ºæ§ã«ã€ããŠããè¿ éãªæ±ºå®ãäžãããšãã§ããŸããçæããããœãªã¥ãŒã·ã§ã³ã¯æè¡è 以å€ã®å°é家ïŒç¹ã«ããžãã¹ãŠãŒã¶ãŒïŒãç解ã§ãããããäœã¬ãã«ã®ãã©ãããã©ãŒã ã¯çµç¹ã®ããžã¿ã«å€é©ãæšé²ã§ããŸãã
ç· ãåããå³ãããããžãã¹ããžãã¯ãå¿ãããæè¡çãªå°éç¥èãäžè¶³ããŠããŠãåžå Žæå ¥ãŸã§ã®æéãççž®ããå¿ èŠãããå Žåã¯ãããŒã³ãŒããããŒãºãæºããæ¹æ³ã®1ã€ã§ãã
åŸæ¥ã®éçºããŒã«ã®éèŠæ§ãåŠå®ããããšã¯ã§ããŸããããå€ãã®å ŽåãããŒã³ãŒããœãªã¥ãŒã·ã§ã³ã®äœ¿çšã¯ã解決ãããåé¡ã®å¹çãé«ããããã®æè¯ã®æ¹æ³ã§ãã