ðã«URLè²¼ããªããªã£ã¦ããã®ã§ãZennã«ããã«ããã¹ããã¦ãã¾ãã
ServerlessDays Tokyo 2024 PreEvent
2024-09-21ã®ServerlessDays Tokyo 2024ã«ããã¦ãå»å¹´ã«å¼ãç¶ããç´åã¤ãã³ãã§ãµã¼ãã¼ã¬ã¹æè¡ã®ä»ã¨æªæ¥ã«ã¤ãã¦è©±ãã¦ãã¾ããã
ããããææ¥ããã¡ã¤ã³ã¤ãã³ãã§ãã®ã§åå ãå¾
ã¡ãã¦ãã¾ãï¼
Serverless Update 2024 æåèµ·ãã
ã¹ã©ã¤ãå
¨ä½ã¯Docswellããã§å
¬éãã¦ãã¾ãã
PreEventã¯YouTubeã§ã¢ã¼ã«ã¤ããããã¾ãã
ãµã¼ãã¼ã¬ã¹ã®ãããã
ããµã¼ãã¼ã¬ã¹ãã¯ã誤解ãæããããæè¡ç¨èªã§æ§ã
ãªå®ç¾©ãããã¾ãããããã§ã¯2ã¤ã®è¦ç¹ã§å®ç¾©ãã¾ãã
éç¨è
ã®è¦ç¹ã¨ãã¦ã®ãµã¼ãã¼ã¬ã¹ã¯ãç©ççãªãã·ã³ãä»®æ³ãã·ã³ãEC2ã¤ã³ã¹ã¿ã³ã¹ã®ãããªããµã¼ãã¼ããèªåã§ç®¡çããã®ã§ã¯ãªãããã®ç®¡çãã¯ã©ã¦ãäºæ¥è
ã«ä»»ããã¨ããèãæ¹ã§ãè¦ããã«å®å
¨å¾é課éåã®ãã«ããã¼ã¸ããµã¼ãã¹ã§ãããã¨ã§ããã¤ã¾ãã使ã£ãåã ãæéãæ¯æãããªã½ã¼ã¹ã¯èªåçã«ã¹ã±ã¼ã«ããããã¾ãã«ã0åãããããã§ã使ããããµã¼ãã¹ãæãã¾ãã
ãããæãä¸è¬çã«è¨ããã¦ãããµã¼ãã¼ã¬ã¹ã®å®ç¾©ã§ãããã
éçºè
ã®è¦ç¹ã§èããã¨ãåã
ã®ãµã¼ãã¼ã®åå¨ã«ä¾åããªãããã°ã©ãã³ã°ã¢ãã«ããµã¼ãã¼ã¬ã¹ã¨ããæè¡ã ã¼ãã¡ã³ãã®éè¦ãªè¦ç´ ã§ããWordPressã®ã¢ãããã¼ããã¡ã¤ã«ä¿åå
ã®ããã«ããã¡ã¤ã«ã·ã¹ãã ãããã»ã¹ã®ã¡ã¢ãªã¼ã¨ãã£ããªã¯ã¨ã¹ããã¾ããã§å
±æããããµã¼ãã¼ä¸ã®ãªã½ã¼ã¹ã«ä¾åããªãã¨ãããã¨ã§ãã
AWS LambdaãAzure Functionsã®ãããªããã»ã¹ããã¡ã¤ã«ãå
±æããªãããã°ã©ãã³ã°ã¢ãã«ããã®ä»£è¡¨ä¾ã§ãããDatabase as a Serviceï¼DBaaSï¼ãªã©ãè£å´ã§åæ£ã·ã¹ãã ã®ãã¯ããã¯ï¼ã¬ããªã±ã¼ã·ã§ã³ãã·ã£ã¼ãã£ã³ã°ï¼ã使ãã¤ã¤ãä¿åå
ã®ãµã¼ãã¼ãæèããSQLã®ãããªè¨èªã§éçºè
ãæä½ã§ãããããªãã®ãããµã¼ãã¼ã¬ã¹ãªããã°ã©ãã³ã°ã¢ãã«ã®ä¸ã¤ã¨è¨ãã¾ãã
ã¾ã¨ããã¨ããµã¼ãã¼ãææããªãã¨ããéç¨ã®è¦ç¹ã¨ããµã¼ãã¼ã«ä¾åããªãéçºãæèããè¦ç¹ã®2ã¤ããã¤ã³ãã§ãã
ããµã¼ãã¼ã¬ã¹ãã®å
¨ä½å
ãµã¼ãã¼ã¬ã¹ã¨è¨ããã¦ããæè¡ã ã¼ãã¡ã³ãã¨ãã¦ãããããªè©¦ã¿ãè¡ããã¦ãã¾ããããããå
ã»ã©ã®2ã¤ã«ããã²ã¨ã¤å ãã3ã¤ã®è¦ç¹ããæ´çãã¾ãã
- ãã«ããã¼ã¸ããµã¼ãã¹
- ããã°ã©ãã³ã°ã¢ãã«
- ã¤ãã³ãããªãã³ã¢ã¼ããã¯ãã£
å°ããªèª²éåä½ãAWS Lambdaã§ã¯ãªãªã¼ã¹å½åã«100ããªç§åä½ã§èª²éããã¦ããã®ããä»ã¯1ããªç§åä½ã§å®è¡æéã«å¯¾ãã¦èª²éãããããã«ãªãã¾ããã大æã®ä»®æ³ãµã¼ããEC2ã§ã¯1æéåä½ã®1å°åä½ã§èª²éãããã¦ããã®ããä»ã1ããªç§ã§ã¡ã¢ãªã128MBãã¨ã®åä½ã§èª²éããã¾ããã¯ã©ã¦ãã³ã³ãã¥ã¼ãã£ã³ã°ã®ç¹å¾´ã¨ãã¦è¨ãããããã«ã確ä¿ããéã§ã¯ãªãã¦ä½¿ç¨ããéã¨ããèãæ¹ã®å¤åã表ãã¦ãã¾ãããããå®å
¨å¾éæéã¨ããã¨ããã«è¡¨ããã¦ããããã§ããã
ãµã¼ãã¼ã¬ã¹ãªãµã¼ãã¹ãå®ç¾ããããã«ããã«ããã¼ã¸ããµã¼ãã¹ã¨ãã¦ãä¾ãã°ãã®å¼¾åæ§ã¨ãã観ç¹ã§ã¯ãã¯ã©ã¦ãäºæ¥è
ããã®è£å´ã§åãã¦ãããã·ã³ãå¢ãããªã¼ãã¹ã±ã¼ã«ã ã£ããã¨ãããããã¯ä½¿ããªãæã¯0å°ã¾ã§æ¸ãããã¤ã¾ã使ããªãæã«ã¯ãªã¯ã¨ã¹ããæ¥ãªãæã«ã¯å²ãå½ã¦ãã·ã³ã0å°ã«ããã¨ãã£ãããã¼ãã¹ã±ã¼ã«ãã¨è¨ãããåä½ããã¾ãã
1ãªã¯ã¨ã¹ããã¨ã«åãå¦çã¨ãã¦ããã¡ã¤ã«ãä»®æ³ã¡ã¢ãªã®ããæ¹ã¨ãã£ããªã½ã¼ã¹ã®æ½è±¡åãä»®æ³åã¿ãããªã¨ããããã³ã³ãã¥ã¼ã¿ã¼ãµã¤ã¨ã³ã¹ã®æèã«ç¶ºéºã«ä¹ã£ã¦ãã¾ããä¾ãã°AWS Lambdaã ã¨ã¢ã«ã¦ã³ããã¾ããã§ãªã¯ã¨ã¹ããé£ã°ãªãããã«ããããã¯ã¡ã¢ãªãå
±æãããªãããã«ãmicroVMã ã£ããã¨ãã³ã³ããã©ã³ã¿ã¤ã ã§åé¢ãããã¨ããæè¿ã ã¨ä¾ãã°Node.jsã®JavaScriptã®ãµã³ãããã¯ã¹ã使ã£ã¦ããã»ã¹ãã¨ã«ã¡ããã¨éé¢ããã¦ã客ããã®ãã¼ã¿ãåãã¦ããããã»ã¹ã®ã¡ã¢ãªãå®ãã¿ãããã¨ããã£ã¦ãã¾ãã
ãã®ä¸æ¹ã§ãã»ãã¥ãªãã£ãå®ã£ã¦ããããã«1ãªã¯ã¨ã¹ããã¨ã«ãã¡ãã¡ããã»ã¹ãå
¨é¨1ããç«ã¡ä¸ãã¦ãããã ã¨ããã£ã±ãæéãããã£ã¦ãã¾ãã®ã§ããããã£ãã¹ã¿ã¼ãã¢ããã®é«éåã®ãã¯ããã¯ã¨ããã¨ãããè²ã
ã¨è©¦ã¿ããã¦ãã¾ãã
ãããã£ãä¸ã§ããã£ã±ã1ãªã¯ã¨ã¹ããã¨ã«ããã»ã¹ããã¡ã¤ã«ã·ã¹ãã ãå
±æãããªãã¨ããã®ããã®ã¾ã¾æ¸ãã®ã¯ãã£ã±ããªããªãè¾ãã®ã§ãããã°ã©ãã³ã°ã¢ãã«ã¨ãã¦ã©ãéçºãããããã¦ãããã¨ãã¦ãéçºè
ã¨ãã¦ä¸çªå®ç¾ãããã®ã¯ã客ããã®ãããã°ã©ã ã使ã人ã¸ã®ä¾¡å¤ãã¡ããã¨ä¸ãã¦ãããã¨ã大äºã«ãªãããã§ãã
é¢åãããã¨ããã¯ã©ã¤ãã©ãªã¼ã ã£ãããã¬ã¼ã ã¯ã¼ã¯ã ã£ããããããã¯ã¯ã©ã¦ããã³ãã¼ã管çãã¦ããããã¸ã¡ã³ãã®ä»çµã¿ã¨ããã¨ããã«ãã¾ãè¼ãã¦ããããã®ã§ãããããªã·ã£ã¼ãã£ã³ã°ã¨ãã¬ããªã±ã¼ã·ã§ã³ã¿ãããªããã¼ã¿ãä¿åããã¬ã¤ã¤ã¼ã ã¨ãããã£ãåæ£ã·ã¹ãã ãå¿
è¦ã«ãªãã¾ãããããã£ããã®ãå
¨é¨é è½ãããã¨ããã®ããå½ç¶ã®åãã¨ãã¦åºã¦ãã¾ãã
ä¾ãã°Database as a Serviceã®ãããªå½¢ã§æä¾ãããããæ½è±¡åã®ã°ã©ãã¼ã·ã§ã³ã¨ãã¦ä¾ãã°AWSã§è¨ãã¨Step Functionsã¿ãããªãã®ãããã¾ããStep Functionsã®è¨è¿°è¨èªãASLããªããã¯ãå»å¹´ã®ããã«ã»ãã·ã§ã³ã§ãè²ã
ãªæç´ãåºã¾ããããASLã¿ãããªç¬èªã®è¨èªããããã£ãç¹ååç¨èªãDSLã¨å¼ã³ã¾ããDSLã¨ãã¦æ½è±¡åãããããããã¯æ½è±¡åãã©ãã©ãä¸ãã¦ãããæçµçã«ã¯ã³ã³ããã¼ã¾ã§åºãã£ã¦ããã®ããªã¨ããã®ãæ¨ä»ã®ãµã¼ãã¼ã¬ã¹ã®è©±ã§ãã
ã³ã³ããã¨ããã¨ããããããããã¯é¢æ°ã¨ããã¢ãã«ããã£ãããASLã®ãããªDSLãç¬èªè¨èªããã£ãããçªãè©°ãã¦è¨ãã¨ã³ã³ãã£ã®ã¥ã¬ã¼ã·ã§ã³ãYAMLã ã£ããJSONã®è¨å®ãã¡ã¤ã«ã¨ããã¨ããã«æçµçã«ã¯ããã¾ããè¨å®ã¾ã§è¡ãã¨ãç¨æãããè¨å®é
ç®ããã§ããªãã®ã§ããããããã£ãèªç±ã¨æ½è±¡åã®ã°ã©ãã¼ã·ã§ã³ãããã¾ãã
ãããªæãã§ãDSLã¨ãã使ã£ã¦Step Functionsã§ä¾ãã°å¦çãå®è¡ãããã¨ãªãã¨ããã®æã«Step Functionsã¨ãApache Airflowã¨ããããã£ããã®ã使ã£ããã¨ããã人ã ã¨ãã¤ãã³ãããªãã³ã«éåæã«ã·ã¹ãã ã使ã£ã¦ç¹ãã¦ããã¨ããè¨è¨ã大äºã«ãªãã¾ãã
ä¾ãã°åæ£ã·ã¹ãã ã®è¤æ°ãµã¼ãã¹ãã¤ãã³ãã§ç¹ãã¦ããããã«ã¯ãã©ããã風ã«ç®¡çãããã¨ããã¨ããã§ããªã¼ã±ã¹ãã¬ã¼ã·ã§ã³ã ã¨ãã³ã¬ãªã°ã©ãã£ã¼ã¿ãããªãã¼ã¯ã¼ããåºã¦ãã¾ãããããã¯ã·ã¹ãã ãã¾ããéã®èªè¨¼ãèªå¯ã®é£æºãã©ãããã®ãããããã£ãåé¡ã¨ããããã¾ããè¤æ°ã®ç´°ããåæ£ã·ã¹ãã ãããä¸ã§ããã¼ã¿ã®æ´åæ§ãã©ããã£ã¦åãã®ãã¿ãããªè©±ããããªã¢ã¯ãã£ãã·ã¹ãã ã¿ãããªèãæ¹ã®ä¸ã«ãã¢ã¯ã¿ã¼ã¢ãã«ã¿ãããªèãæ¹ãåºã¦ãããã ã£ããã¨ããã¤ãã³ãããªãã³ã®ã¢ã¼ããã¯ãã£ã¼ã¨ããã¨ãããã©ãå®ç¾ãã¦ããããããã¾ãã
ããã¾ã§ãã«ããã¼ã¸ããµã¼ãã¹ã¨ããã¨ããããã¹ã¿ã¼ããã¦ãããã°ã©ãã³ã°ã¢ãã«ãè²ã
èãã¤ã¤ããã®ä¸ã§ããããªã·ã¹ãã ãä½ã£ã¦ããããã«ã¯ãã¤ãã³ãããªãã³ã®ã¢ã¼ããã¯ãã£ã¼ã¨ããã¨ããã®è§£å度ãä¸ãã¦ããå¿
è¦ãããã¨ããã¨ããã¾ã§ããµã¼ãã¼ã¬ã¹ã®å
¨ä½åã¨ãã¦è©±ããã¾ããã
å»å¹´ã®ãµã¼ãã¼ã¬ã¹ã¢ãããã¼ã2023ã§ãã¤ãã³ãããªãã³ã¢ã¼ããã¯ãã£ã®è©±ãããã¦ãããã¾ãããããããªã¯ã©ã¦ããµã¼ãã¹ãã©ã管çãããã¨ããã¨ãããLambdaãAzure Functionsã§ç¹ãã§ããã¿ãããªçã§ç¹ãã¦ããã¨ããèãæ¹ã¯ãã£ã±ãããå¤ããªãã¤ã¤ããã¨ããããé¢åãããããã§ããä¾ãã°å¤±æããæã«åéãããã¨ãã¨ãããã¨ãèããã¨ãããããªè³¢ãéå
·ãå¢ãã¦ããã®ã§ãä¾ãã°EventBridge Pipesã ã£ããã¨ãã¿ãããªããããéå
·ãå¢ãã¦ãã¦ããã®ã§ããããã£ããã®ã使ã£ã¦ããã¾ãããã¨ãã話ãå»å¹´ããã¦ããã ãã¾ããã
詳ããã¯æ¨å¹´ã®ã¹ã©ã¤ããåèã«ãã¦ãã ããã
ä»å¹´ã¯æ°ãããã¼ã¯ã¼ããæã£ã¦ãã¾ããã
AIæ¡å¼µåéçºï¼LLMã«ããéçº
AIæ¡å¼µåéçºã¨ãããã¼ã¯ã¼ããåºã¦ãã¦ãã¾ã*1ã
ããã°ã©ã ãèªåã§å
¨é¨1ãã10ã¾ã§æ¸ãã¦ããã®ãä»ã¾ã§ã®ããã°ã©ãã³ã°ã§ãããã¡ããã³ã¼ãã¸ã§ãã¬ã¼ã¿ã¼ã®ãããªãã®ã使ããã¦ãã¾ããããããç©æ¥µçã«AIã«ããã°ã©ã ãæ¸ããããããããã¯ããããå¦çãã®ãã®ãLLMã®ããã³ããã¨ãã¦è¨è¿°ã»å®è£
ãããã¿ãããªè©¦ã¿ãããã¦ãã¾ãã
ããã§ããã¤ãã®ä¾ãæãã¾ãã
UIã§ã¯Verceoã®v0ãGoogleã®AI Generated UIã®ãããªãããã³ããããUIãå®ç¾©ã§ããäºä¾ãåºã¦ãã¾ããã
å¦çã®æ¬ä½ãã®ãã®ãããã¼ã³ã¼ãã¨ãã¦ããã®ãã³ã¼ããã®é¨åãLLMã®ããã³ããã§æ¸ãã¦ãã¾ããã¨ããã®ããAWSã®App Studioããªã¨æãã¾ãã
AIã®ããã³ããããç´æ¥åããã®ã§ã¯ãªããããã°ã©ãã¨ãã¢ããçã«ã³ã¼ããæ¸ãã¦ãããã®ããçããããªãã¿GitHub Copilotã§ããã
é¢ç½ã試ã¿ã¨ãã¦ãããããLLMãç解ããããä¸éè¨èªãæ¸ãããSudoLangã¨ãã試ã¿ãããããã§ããã»ãã«ããè¦ã¯ãã¼ã¿ã®å½¢ããLLMã«æãã¦ããã¦SQLãLLMã«æ¸ãã¦ãããããã¨ããPostgres.newã ã£ããã¨ãããããã¯å¤ã塩漬ãã«ãªã£ãã³ã¼ããæ´æ°ããã®ãLLMã«ä»»ããAmazon Q Code Transformationã¿ãããªè©¦ã¿ãããã¾ããGitHub Copilotã¨ã使ã£ã人ã¯è©¦ãããã¨ãããæ¹ããããããããªããã§ãããLLMã¯æ¢ã«ããã³ã¼ãã®æå³ãèªã¿åãããã¿ãããªã¨ãããçµæ§å¾æã ã£ããããã®ã§ããããã£ãã¨ãããå
ã«ãã¦å¤ãã³ã¼ããä»ã®ã©ã¤ãã©ãªã¼ã¨ãã«æ¸ãæãã¦ãããããã§ãã
ã¨ããããã§ãããããªAIæ¡å¼µåéçºã¨ããã®ãçµæ§çãã«ãªã£ã¦ããã®ããªã¨æãã¾ãã
ã³ã¹ãã«åºã¥ããã¢ã¼ããã¯ãã£
ãã®1å¹´ã§ç¹ã«æ³¨ç®ãæµ´ã³ã¦ããã®ããã³ã¹ãã«åºã¥ããã¢ã¼ããã¯ãã£ã¨ããèãæ¹ã§ãã
ããèããã¨å½ããåã®è©±ã§ããã巨大ãªã¯ã©ã¦ãã»ã©ã³ã¹ãã®å°ããªæ¹åããåããå½±é¿ã¨ããã®ã¯ãã¡ãã大ããããã§ãããè¦ã¯çµ¶å¯¾éé¡ãå¤ãããã§ãããããã«ä»å¾10å¹´éã§ãã¼ã¿ã»ã³ã¿ã¼ã®é»åæ¶è²»éãä»ã®2å以ä¸ã«å¢ããã¨ããäºæ³ãä»åºã¦ãã¾ãã
ã¯ã©ã¦ãã®å¸å ´è¦æ¨¡ã¯é常ã«å¤§ããããã®æçµçãªã³ã¹ãã¯ãã¼ã¿ã»ã³ã¿ã¼ã®é»åæ¶è²»éã«è¡ãçãã¾ãããããä¾ãã°1%æ¸ãããã ãã§ã巨大ãªéé¡ã«ãªãããã§ãããã®1%ã§ãæ§è½ãè¯ãããã¨ããæé©åã«ãã£ã¦ãå©çãå¢ããä¾ãã°æ©è½æ¡å¼µãªã©ã®æé·ã®åè³ã«ç¹ããã¨ããã大ããªã¯ã©ã¦ãã»ã©æ£ã®ãã£ã¼ãããã¯ãé¡èã«ãªãã¾ãã
å»å¹´ã®AWSã®re:Inventã«ãããWerner Voegelsæ°åºèª¿è¬æ¼ã§ãã³ã¹ãæ§é ã¨ããã®ãã¢ã¼ããã¯ãã£è¨è¨ã«ãããéè¦ãªè¦ä»¶ã®1ã¤ã«ãªãã¨ãããThe Frugal Architect*2ã¨ããæ´çãç´¹ä»ããã¾ããããã®ãããªæèãèããä¸ã§1ã¤ä¾ãæããã¨ãå
±éæ©è½ã®ã³ã¹ããããã¾ãã
ä¾ãã°ãAWS Lambdaã¯ãã¼ãã¹ã±ã¼ã«ãã ã¨è¨ããã¦ãã¦ã使ã£ã¦ãªãæã«ã¯1åãããããã¾ãããã§ãå®éã«ã¯ããªã¯ã¨ã¹ããæ¥ãæã«ãã®HTTPã®ãªã¯ã¨ã¹ããåãåããã¼ããã©ã³ãµã¼ãåå¨ãããããããã¯ãã°ã®åºç¤ã¨ããåãã¦ããå¿
è¦ãããã¾ããããªã¯ã¨ã¹ãããæ¥ã¦ããªãããã¨ãã£ã¦ããã®æ¬å½ã«0ã«ã¯ã§ããªãã³ã¹ãã¨ããã®ã¯ãã©ããã«ããããã§ãã
ãããã£ãã³ã¹ãã¯ã¯ã©ã¦ãäºæ¥è
ãå®ã¯ç¡æã§è² æ
ãã¦ãå ´åå¤ãã¨æãã¾ãããã®ä¸æ¹ã§ãMomentoããã®ãããªãæ¬å½ã®ãµã¼ãã¼ã¬ã¹ãã謳ãã¯ã©ã¦ããã³ãã¼ã§ã¯ããããããããã«ãããã³ããåæã¨ãããã¨ã«ãããã¿ããªã§ãããã£ãã³ã¹ããè² æ
ãã¦ããã¨ããã¢ãã«ã¨ããã®ãã1ã¤ã¢ã¼ããã¯ãã£ã®è¨è¨ã¨ãã¦ããããã§ãããããªã¢ã¼ããã¯ãã£ããç§èªèº«ã®è¨èã§è¨ãã¨ãåºãèãã¢ã¼ããã¯ãã£ãã¨æããå¼ãã§ãã¾ãã
ã¨ããããã§ãã³ã¹ãã«åºã¥ãã¦ã¢ã¼ããã¯ãã£ã¼ã決ããã¨ããè¦ç¹ãæã£ã¦ããã¨ãä»å¾ã®ãµã¼ãã¼ã¬ã¹ã«éããã¯ã©ã¦ãäºæ¥è
ã®åããããæ·±ãç解ã§ããæªæ¥ã®äºæ¸¬ããããããªãã§ãããã
NewSQLã¨DBaaS
ãã®ä½å¹´ãã§ãNewSQLãªã©ãè¨ãããæ°ãããã¼ã¿ãã¼ã¹ãµã¼ãã¹ããDatabase-as-a-Service(DBaaS)ã¨ããã¯ã©ã¦ããµã¼ãã¹ã¨ãã¦ããã«æ®åãã¦ãã¦ãã¾ããããã3ã¤ã®è»¸ããæ´çãã¦ã¿ã¾ããã
1ã¤ã¯ãããã³ã«äºæã§ããå
¨ãæ°ãããããã³ã«ã«ãã£ã¦æä¾ããããµã¼ãã¹ãããã¾ãããDBaaSã§åå¨æã大ãããã®ã¯ãPostgreSQLãMySQLãMongoDBãªã©æ¢åã®ãªã¼ãã³ã½ã¼ã¹ãã¼ã¿ãã¼ã¹ã«ãããã³ã«ãåããã¦åºãã¦ãã¾ãããããã³ã«ãåãããã¨ãããã¨ã¯ãåãæ©è½ãåãããã«ä½¿ããããã§ãããã¡ãããæ§è½ç¹æ§ãªã©ãã¼ã¿ãã¼ã¹ã®æ§è³ªãç¹å¾´ã¨ããã®ã¯éãã¯ããã¾ããã表ããè¦ãããããæ©è½çãªæ©è½ã¨ããã¨ãããã³ã«äºæã¨ããã¨ããã§1ã¤è¦ããã®ããªã¨ã
次ã¯ãã«ãã¢ãã«ãªè¨ç®æ©å±¤ï¼ã³ã³ãã¥ã¼ã層ï¼ã§ããAzureã®Cosmos DBããGoogleã®Spannerã§ã¯ãããããSQLã¨ãããã¥ã¡ã³ãDBã¿ãããªå½¢ã ãã§ã¯ãªããåãæ çµã¿ã®ä¸ã§ã°ã©ãDBããæè¿ã ã¨AIã®æèã§ãã使ããããã¯ãã«æ¤ç´¢ããããã¯å
¨ææ¤ç´¢ãªã©ãæ§ã
ãªãã¼ã¿ã¢ãã«ãæ±ããå¦ç層ãä¹ããããã¨ããã®ããæè¿ã®ãã¬ã³ãã®1ã¤ã«ãªã£ã¦ãã¾ãã
æå¾ã«ãã¹ãã¬ã¼ã¸ã¨è¨ç®æ©å±¤ã®åé¢ã¨ããã³ã³ããã¹ãã«ãããã¹ãã¬ã¼ã¸ã®è©±ã§ãã
ä¾ãã°ãªãã¸ã§ã¯ãã¹ãã¬ã¼ã¸ããç´æ¥ã¯ã¨ãªã¼ãã§ãããä»ã¾ã§ãAmazonã ã£ããAthenaãS3ããç´æ¥ã¯ã¨ãªãæãããã§ãã¾ãããAmazonã®AthenaãS3ã«ã¯ã¨ãªã§ããã®ã¯ãããããã ããã£ã¦æãã§ãããä¾ãã°BigQuery Omniãç´æ¥Amazon S3ããã¯ã¨ãªã§ãããããªãä»ç¤¾ã¹ãã¬ã¼ã¸ã«ç´æ¥ã¯ã¨ãªã§ãããããªãã¼ã¿ãã¼ã¹ãµã¼ãã¹ãåºã¦ãã¦ãã¾ãããããã¯ç¬ç«ãããªã¼ãã³ã½ã¼ã¹ã¨ãã¦ãDuckDBã¯ãã·ã³ã°ã«ãã¤ããªã¼ã§åãã¦S3ãããã¡ã¤ã«ãåã£ã¦ãã¦ç´æ¥ã¯ã¨ãªãã§ããã¿ãããªãããããæ°ããåãã¨ããã®ãããã¾ãã
ä»å¾ã«åãã¦ã²ã¨ã¤è¦ãã¦ããã¨è¯ãã®ãããã«ãã¯ã©ã¦ãã¨ã¯ãã¹ã¯ã©ã¦ãã¨ããèãæ¹ã§ãã
ãã¨ãã°ã¡ã¤ã³ã®ã¦ã§ããµã¼ãã¹ã®åºç¤ã¯Amazonã§åããã¦ããããã©ãéè¨ã®ã¨ããã ãBigQueryã«è»¢éãã¦ããã¨ãã£ããã¿ã¼ã³ã¯ä»¥åããè¯ãèãã¾ãããããããå
¨ã¦ã®ã¯ã©ã¦ãã使ããç¶æ
ã«ãªãã¨ãµã¼ãã¹ãå£åãã¦ãã¾ãã¨ããç¹ã§ããã«ãã¯ã©ã¦ãã¯å¯ç¨æ§ã®è¦³ç¹ããå³ããã¨ãããããã¨ããè¦æ¹ãããã¾ããããã®ãã«ãã¯ã©ã¦ããããã1æ©ããã«è¸ã¿è¾¼ãã§ããã¼ã¿ãã©ãã«ãã£ã¦ããããã¿ãããªãã¯ãã¹ã¯ã©ã¦ãã¨ããèãæ¹ãå¢ãã¦è¡ãã®ã§ã¯ãªããã¨æã£ã¦ãã¾ãã
ã¨ããããã§ããããã®èãæ¹ã®æ´çã¨ããã¨ããã§ããããã³ã«ã®äºæã¨ãã話ããããã³ã«ã®è©±ã¨è¨ç®æ©å±¤ã¨ã¹ãã¬ã¼ã¸å±¤ã¨ãã3ã¤ã«åãã¦èããã¨ãDBaaSãããã ãåºãåºã¦ãã¦ããçç±ã«ã¤ãã¦æ´çã§ããã®ããªã¨æã£ã¦ãã¾ãã
ããã³ãã¨ã³ãã¨ããã¯ã¨ã³ãã®æ¥ç¹
æ¨å¹´ã®Serverless Updates 2023ã§ã¯Honoãä¸å¿ã«ããCDNã®è©±ããã¾ããã
ããã³ãã¨ã³ãã¨ããã¯ã¨ã³ãã®æ¥ç¹ã¨ããã¨ããã§ãããã¯CDNã¨ãã¸ã³ã³ãã¥ã¼ãã£ã³ã°ãAWS Lambdaãªã©ã®Function as a Serviceã«éãããæ°ããããã°ã©ãã³ã°ã®ãã©ãã¤ã ã§æ°ãããRuby on Railsããæ¢ãããæ°ããªã¬ã¼ã«ã¯ã©ãæ·ãããããã ãããã¨ããã®ãä»ã¾ãã«ä»æ¨¡ç´¢ã®æ®µéã«ããã¾ãã
ãã®1å¹´ã®åãã¨ãã¦ã¯ãä¾ãã°Next.jsãããã³ãã¨ã³ããä¸å¿ã«ããã³ã¼ãã®ä¸ã«ãµã¼ãã¼å´ã®ã¯ã¨ãªã®å®è£
ãåãè¾¼ãServer Actionsã ã£ãããæ¨å¹´ãç´¹ä»ããHonoã¯ã¦ã§ãã¹ã¿ã³ãã¼ãæè¡ï¼fetch()ãJavaScriptã®æ¨æºé¢æ°ãæ¨æºã¤ã³ã¿ã¼ãã§ã¼ã¹ï¼ã«åã£ãæ çµã¿ããã¼ã¹ã«ãNodeãDenoã¨ãã£ãããã¯ã¨ã³ãå´ã®æè¡ããã¹ã¿ã¼ããã¦ããã³ãã¨ã³ãå´ã«ã©ãã©ã浸éãã¦ããã¿ãããªããããã£ãããããªåæ¹ããã®åãã£ã¦ããã®ãããã¾ãã
ããã¯ã¨ã³ããããã³ãã¨ã³ãããæçµçã«ã¯ãã¼ã¿ãã©ãæ±ããã¨ããã¨ããããµã¼ãã¹ã®1çªå¤§äºãªé¨åã§ããããã¼ã¿ãã©ããã風ã«å®ã£ã¦ããããããå°ãè¸ã¿è¾¼ãã§è¨ãã¨ããã®ãã¼ã¿ã®ã¹ãã¼ããã©ããã£ã¦å®ç¾©ãã¦ããããããã°ã©ãã³ã°ä¸ã§ã©ãå¼·å¶ãããã¨ãã£ãåå®å
¨æ§ã®ãããªè©±ãéè¦ã§ããä»ã¾ã§ã ã¨GraphQLãgRPCåãã«ã¹ãã¼ããä½ã£ã¦ãããããã¨ã«åè¨èªã§èªåçæãããããªããæ¹ãçµæ§å¤ãã£ããæ°ãããã¿ã¼ã³ã ã¨ããã®Next.js Server Actionsãªãããããã§ãããTypeScriptã®ã¹ãã¼ããããã³ãã¨ã³ãã¨ããã¯ã¨ã³ãå
¨é¨ã§ä½¿ã大統ä¸ãããããªãtRPCã®ãããªè©¦ã¿ãããã¾ãã
ããã³ãã¨ã³ãã¨ããã¯ã¨ã³ã両æ¹ã«ã¾ããã£ã¦ãã¼ã¿ãå®ã£ã¦ããããã«ãä»ã¾ã§ã ã£ããããã¯ã¨ã³ãã§ããªãã¼ã·ã§ã³ããã¦ããã³ãã¨ã³ããä¸å¿ããªãã¼ã·ã§ã³ããããã©æçµçã«ã¯ãµã¼ãã¼å´ã§æããããããããã¿ãããªäºåº¦æéããã¦ãã¾ããããã³ãã¨ã³ãå´ã¨ããã¯ã¨ã³ãå´ã§å®è£
ã®è©³ç´°ãéãã¨ããªããããã³ãã¨ã³ãå´ã§ã¯ãã¹ãã¡ãã£ããããã¯ã¨ã³ãå´ã§ã¨ã©ã¼ã¨ãã¦å¼¾ãããæã«ããã¯ã¦ã¼ã¶ã¼ä½é¨æªãããã¿ãããªè©±ã«ãªãã¾ãããããã£ãã¹ãã¼ããã©ãä¸è²«ãã¦æ±ããã¿ãããªã¨ããã¾ã§ã»ããã§ããã®æ°ãããon Railsãã模索ãã¦ããæãã«ãªãã®ããªã¨æãã¾ãã
FaaS Updates
FaaSã®åéã§ãã¢ãããã¼ãã¯è²ã
ããã¾ãã
AWS LambdaãAzure Functionsã§ã¯ããªãåãããããã¦ãã¦ãæ§è½æ¹åãä¾ãã°Auto Scalingã®æ§è½ãããä½åã«ããªã£ãã¿ãããªè©±ããé·æéå®è¡ãHTTPã®ã¹ããªã¼ãã³ã°ãªã©ãããã¾ãã
ããã¾ã§ã¬ã¹ãã³ã¹ã®å
容ã¯ãã¡ã³ã¯ã·ã§ã³ã®æ»ãå¤ã§JSONã®å
¨ä½ãä¸æ¬ã§è¿ãä»æ§ã«ãªã£ã¦ããã®ããChatGPTã®1æåãã¤åºã¦ããä½é¨ãå®ç¾ããããã«ãHTTPã®ã¹ããªã¼ãã³ã°ã¨ãã¦å°ããã¤ã¯ã©ã¤ã¢ã³ãã«è¿ãããã®ä»æ§ããããã°ã©ãã³ã°ã¢ãã«ã¨ãã¦å®ç¾©ãããã¨ããããã§ãã
éçºä½é¨ã®åä¸ã¨ãã¦ãä¾ãã°Amazonã ã¨ãµã¼ãã¼ã¬ã¹ã¢ããªã±ã¼ã·ã§ã³ããã¸ã¥ã¢ã«ããã°ã©ãã³ã°ã§æ§æã§ããApplication ComposerããIaCã®ã³ã¼ããåãåºãã¿ãããªè©±ããAmplifyã®UIã¨ãã£ããã®ãç»å ´ãã¾ãããAzure Functionsã§ã¯ä»ã¾ã§ã®Node.jsã¨ãã§ãã¨ã¦ãããªããã£ãã«ããã¹ãã¨ã«ãã¡ã³ã¯ã·ã§ã³ãç¨æããããããã®ãã¡ã³ã¯ã·ã§ã³ããã¨ãã°JavaScriptã®ãªãã¸ã§ã¯ãã§ã¬ã¹ãã³ã¹ãè¿ãã¦ã¾ããããæ°ããããã°ã©ãã³ã°ã¢ãã«ã¨ãã¦Expressã®ããã«ãã¹ã¨ã¬ã¹ãã³ã¹ãå®ç¾©ã§ããã¨ãã£ãéçºä½é¨ã«ãªãã¾ããã
AWSã§ãããããåãã§ããã¨ããããããªã¼ãã³ã½ã¼ã¹ã½ããã¦ã§ã¢ãããã¼ã¸ãã§æä¾ãããã®ãçµæ§å¢ãã¦ãã¾ãããä¾ãã°ä»¥åKinesis Data Analytics for Flinkã®ãããªååã§æä¾ããããã®ããä»Amazon Managed Service for Apache Flinkã¿ãããªæãã§ãªãã©ã³ãã£ã³ã°ããã¦ãã¾ããFlink以å¤ã«ããAmazon Timestream for InfluxDBã¨ããAmazon Managed Workflows for Apache Airflowã®ãããªããããã¯ããã¾ã§ãµã¼ãã¼ã¬ã¹ã£ã½ãã¯ãªãã®ã§ãããããã¼ã¸ããªã¼ãã³ã½ã¼ã¹ã½ããã¦ã§ã¢ã¨ããã®ãçµæ§Amazonã§ãæä¾ãå¢ãã¦ãã¦ãããã«æãã¦ãã¾ãã
ä»ã¾ã§ã ã¨Amazonã¯ç¬èªè·¯ç·ã§æåããæå¾ã¾ã§æ°è¦ã«èªç¤¾è¨è¨ãããæ°ããç»æçãªãµã¼ãã¹ããæä¾ãããã¿ã¼ã³ãå¤ãã£ãããã«æãã¾ãããæè¿ã¯ãªã¼ãã³ã½ã¼ã¹ã«æ³¨åãã¦ãããã«æãã¾ããä¾ãã°FaaSã¨é¢é£ãæ·±ããã®ã¨ãã¦ã¯Kafkaã§ããä»ã¾ã§ã ã£ããKinesis Data StreamããLambdaã«ã¤ãè¾¼ãã¿ãããªãã¿ã¼ã³ãã¡ã¤ã³ã§ããããä»ã ã¨Kafkaã®ããã¼ã¸ããµã¼ãã¹ã§ããMSKã¸ã®çµ±åã«å¯¾ãã¦æ·±ã対å¿ãã¦ãã¦ãããªã¨æãã¾ã
ä¸æ¹ããã¨çéã¨ãããå
¨ç¶éãåãããã¦ãã®ãGoogleã§ããçãããåç¥ã®äººãå¤ãéããGoogle Cloudã¯ãã£ã±ãã³ã³ããããã¼ã¹ã«æé·ãã¦ãã¦ãã®ã§ãGoogle Cloud Functionsã¯ä»Cloud Runã«å®å
¨çµ±åããã¦Cloud Run Functionsã«çµ±åããã¾ãããå
ã
Cloud Functionsã第2ä¸ä»£ã«ãªã£ãæããã»ã¨ãã©Cloud Runã§ããããå®å
¨ã«Cloud Runã«çµ±åãããã®ã§ãä¾ãã°ä»å¹´å
¥ã£ãGPUã®å¯¾å¿ãCloud Runã«å
¥ãã¾ãããããã¡ã³ã¯ã·ã§ã³ããGPUã使ã£ãã³ã¼ããæ¸ããããã«ãªãã¾ãããã¾ã 使ãã¨ããã¯éå®çã§ãããããã§ãé³å£°åæã¨ãã§ã¯GPUç©æ¥µçã«ä½¿ããã¾ããããããã©ãã©ãAIã®ã¢ãã«ãå°ããªè¨èªã¢ãã«ã¿ãããªãã®ãä»å¾å¢ãã¦ããã¨ããã®ãããªGPU対å¿ãããªãçãã¦ããå ´é¢ãå¢ãã¦ããã§ãããã
å
±éãã¦è¨ããã¨ããã¯ãå社éçºã®ããããã«æ³¨åãã¦ãã¦ãã¨ãããã¨ã§ããå»å¹´ãã³ã³ããæè¡ã¨ã®çµ±åã®è©±ã¯ãã¾ããããã³ã³ããæè¡ããã¡ã³ã¯ã·ã§ã³ã¨çµ±åãã¦ããæµãã¯ä»å¹´ãå¼ãç¶ãç¶ãã¦ãã®ããªã¨æãã¾ãã
ã¾ã¨ã
FaaSãã®ãã®ã«ã¤ãã¦ãå¼ãç¶ãå®æ度ãä¸ãã¦ããã®ã¯ç¶ãã¦ãã¾ãããä»å¹´ããã¤ãã®è¦ç¹ã¨ãã¦ã4ã¤ã®è©±ããã¾ããã
AIãã©ãã©ãç©æ¥µçã«ã³ã¼ãçæãããããLLMããã³ãããã³ã¼ããã®ãã®ã¨ãã¦ä½¿ãã¨ãã£ãAIæ¡å¼µåéçºãåºã¦ãã¦ãã¾ãã
ã³ã¹ãã«åºã¥ããã¢ã¼ããã¯ãã£ã£ã¦ããèãæ¹ããªã1%ã§ãæ§è½ãè¯ãããå¿
è¦ãããã®ãã©ããªã¤ã³ãã¯ããããã®ããèããã¨ãã¯ã©ã¦ããã³ãã¼ãæçµçã«ã¯é»æ°ãè² æ
ããã£ã¦ã¨ãããã³ã¹ããã®ãã®ãªã®ã§ãããã«ãããèãã¦ããã¨ããããªã¢ã¼ããã¯ãã£ã®æè¡çé¸å®ãè
ã«è½ã¡ãã®ã§ã¯ç¡ããã¨æãã¾ãã
DBaaSããã¡ãããã¼ã¿ãã¼ã¹ã«éãããä¾ãã°Memcacheã®ãããªã¡ã¢ãªãã£ãã·ã¥ããPub/Subåºç¤ãªã©ãããã¾ããããããã£ããã¼ã¿ã¹ãã¢ç³»ã®ãµã¼ãã¹ãã¯ã©ã¦ããµã¼ãã¹ã¨ãã¦æä¾ãããä¸ã§ããã«ãã¯ã©ã¦ãã¨ãã¦è¤æ°ã®ã¯ã©ã¦ããåã«ä½µç¨ããã ãã§ã¯ãªããã¯ãã¹ã¯ã©ã¦ãã¨ããå½¢ã§ãã¯ã©ã¦ããã¾ããã§ãã¼ã¿ãå
±éåãã¦ä½¿ãã¨ãã£ãèãæ¹ããããã¯ã¯ã©ã¦ãå士ã§ãã¼ã¿ããä¾ãã°S3ããGoogle Cloud Storageã«å
¨é¨å¼ã£è¶ãã¦ãåããããªè¨ç®æ©å±¤ãããã¯ãããã³ã«ã使ããã¨ãã£ãã¯ãã¹ã¯ã©ã¦ãã®èãæ¹ãä»å¾éè¦ã«ãªãã§ãããã
ã¨ããããã§ããã®ãã¡ã³ã¯ã·ã§ã³ãµã¼ãã¹ã®ç´¹ä»ã¨ããµã¼ãã¼ã¬ã¹ãå¯ãæ·±ãç¥ãããã®è¦ç¹ã¨ãã¦4ã¤ãã¼ã¯ã¼ããä»å¹´ã¯ç´¹ä»ããã¦ããã ãã¾ããã
ServerlessDays Tokyo 2024
ServerlessDays Tokyo 2024ã¾ã ã¾ã åå åéãã¦ããã®ã§ãã²ãè¶ããã ããï¼