ã¯ããã« ã¯ãããŸããŠã®äººã¯ã¯ãããŸããŠãããã«ã¡ã¯ïŒ å
鱿𿿥ã¶ã ã§ãïŒBASE BANK DivisionïŒä»¥äžãBANKããŒã ïŒã®ããã³ããšã³ããšã³ãžãã¢ã®ãã£ã¡ããïŒÂ @gatchan0807  ïŒã§ãã ä»å㯠11/23ïŒåïŒ ã«éå¬ããã ãFullstack AI Dev & Raycast Summit feat. Satoshi Nakajimaãã«ã¹ãã³ãµãªã³ã°ã»ã¹ãã³ãµãŒããŒã¯ãããŸããïŒãšãããå ±åèšäºã«ãªããŸãïŒ ã¹ãã³ãµãªã³ã°ããã€ãã³ãã«ã€ã㊠ä»åã¹ãã³ãµãªã³ã°ããã€ãã³ãã¯ãFullstack AI Dev & Raycast Summit feat. Satoshi Nakajimaããšããã€ãã³ãã§ãã¹ããã¯ã»ããªã³ã¯ã¹ãã³ãµãŒã®æ ã§ã¹ãã³ãµãªã³ã°ã»åå ããŸããð ãŸããåãããŠã¹ãã³ãµãŒããŒã¯ããããŠããã ããŸããïŒïŒè©³çްã¯åŸè¿°ïŒ devx.jp DevX / Raycast Community Japan ãããš äžè¬ç€Ÿå£æ³äººã·ã³ã®ã¥ã©ãªãã£ã»ãœãµãšã㣠ããã®å
±å¬ã®ã€ãã³ãã§ãFullstack AI Devã®ååãå ããŠããéããAIã䜿ã£ãçç£æ§åäžã䟡å€ã®ãããããã¯ãã®æäŸã«é¢å¿ãåŒ·ãæ¹ã
ã®çºè¡šãããããèãããšãã§ããŸããïŒ ãŸããRaycast Summitã®ååãå ããŠããéããRaycastã䜿ã£ã䟿å©ãªæ©èœãã¯ãããRaycast Proã§äœ¿ããAIæ©èœã®ç޹ä»ãªã©ãªã©ããã£ãææ¥ããRaycastãã£ãšäœ¿ãããªãããïŒããšãªãçºè¡šãç¥èŠããããããèãããããšãã§ããŸããïŒ ã¹ã¿ããã®çãããç»å£è
ã®çãããã¯ãããããããã®æ¹ã®ãå°œåã®ãããã§ãã®ã€ãã³ãã宿œã§ããã®ã ãšæããŠããŸãããã®ãããªçŽ æµãªã€ãã³ãã«ã¹ãã³ãµãŒãšãã圢ã§é¢ããããŠããã ããŸããŠãæ¬åœã«ããããšãããããŸããïŒ ãã®å ŽãåããŠæè¬ããäŒãã§ããã°ãšæããŸãïŒ ã¹ãã³ãµãŒããŒã¯ã§ã話ãããå
容ã«ã€ã㊠ä»åã®ã¹ãã³ãµãŒããŒã¯ã§ã¯ãSLMïŒSmall Language ModelïŒã®äžã€ãGemini NanoãChromeãã©ãŠã¶ã«æèŒãããããã«ãªããã©ããªããšã«äœ¿ããã®ãã«ã€ããŠãã話ããããŠããã ããŸããïŒ ä¹
ãã¶ãã®ãªãã©ã€ã³ç»å£ã§ç·åŒµããªããçºè¡šããŠããæã®å³ ãªã³ã©ã€ã³ã§ãé
ä¿¡ãããŠããã100æ°ååã«èŠãŠããã ããŠããæã®å³ ç»å£è³æã«é¢ããŠã¯Docswellã«ãŠå
¬éããŠããŸãã®ã§ããã²åãããŠã芧ããã ããŸããšå¹žãã§ãïŒ www.docswell.com ããã㫠以äžãBASE BANKããŒã ãšããŠããFullstack AI Dev & Raycast Summit feat. Satoshi Nakajimaãã«åè³ãããŠããã ããŸããïŒãšãããå ±åã§ããïŒ ä»åã®ã€ãã³ãã¯BASE BANKããŒã ãšããŠããšã³ãžãã¢ã€ãã³ãã«åè³ãããŠãã ããïŒããšããçºä¿¡ãèŠãŠã声ããããã ãããã®ã§ããŠãåŒãç¶ãBASE BANKããŒã ãšããŠã¯èŠæš¡ã«é¢ããããšã³ãžãã¢ã€ãã³ãã»ã³ãã¥ããã£ã€ãã³ãã«ã¹ãã³ãµãŒãšããŠãååãããŠããã ããããšæã£ãŠãããŸãïŒ è©³çŽ°ã¯ä»¥äžã®èšäºã«ãŸãšãŸã£ãŠããŸãã®ã§ããããèå³ããã°ãã²ã芧ãã ããïŒ devblog.thebase.in ïŒç§å人ãšããŠã¯ã¹ãã³ãµãŒããŒã¯ã®ä»ãã©ãã©ãç»å£ããã£ãŠããããã®ã§ããã ãã®èŸºãã«æžãããŠããçºè¡šå
容 ã«ãã³ãšãããã®ãããã°ãã²ãé£çµ¡ãã ããïŒãšãã宣äŒããã£ãããšâŠïŒ ãŸããBASE BANKããŒã ã¯ãšã³ãžãã¢ãã¯ãããåè·çš®ã倧åéäžã§ãã®ã§ããããèå³ããã°ãæ°è»œã«ã«ãžã¥ã¢ã«é¢è«ãXãªã©ã§ã声ãããã ããïŒ binc.jp
ã¯ããã« ã¯ãããŸããŠã®äººã¯ã¯ãããŸããŠãããã«ã¡ã¯ïŒBASE BANK DivisionïŒä»¥äžãBANKããŒã ïŒã®ããã³ããšã³ããšã³ãžãã¢ã®ãã£ã¡ããïŒÂ @gatchan0807  ïŒã§ãã ä»åã¯BANKããŒã ã®äžã§è·çš®æšªæã§è¡ã£ãŠãããææ¬¡äŒããšããLTäŒã«ã€ããŠç޹ä»ãããŠãã ããïŒ ãã®ææ¬¡äŒïŒLTäŒïŒãæ¯æå®æœããŠããããšã§ãããŒã ã«ãšã£ãŠã©ããªã¡ãªãããããã®ãïŒãã宿œã«ããã工倫ãç¥ã£ãŠããã ããçããã®ããŒã ã§ãã¹ã¢ãŒã«ã¹ã¿ãŒãã§å®æœããŠã¿ãŠããã ãããšãšã£ãŠãå¬ãããªãšæã£ãŠããŸãïŒ ãŸããä»åã¯èšäºã®ã¿ã€ãã«ã®éãããã®ææ¬¡äŒã§å幎éïŒå®éã«ã¯2æ~10æã®èš8åïŒãæ¯ææ§ã
ãªãé¡ã§LTãããã®ã§ãã€ãã§ã«ãã®å
容ãšããããåŸãç¥èŠãããã玹ä»ãããŠãã ããïŒ ãããéå¬äºå®ã®æè¡ã€ãã³ãã®ããŒãã§åèŽããããªã¿ã€ãã«ãããã° X ãªã©ã§æ°è»œã«ã声ããããã ãããšå¬ããã§ãïŒ ããããææ¬¡äŒãšã¯ïŒ 2022幎11æããBANKããŒã ã§éå§ãããéå§åœæãã以äžã®ãããªæ³ããšç®çã§å®æœãããããã®ã§ãã ïŒãã®ææã¯åã¯ãŸã BANKããŒã ã«ã¯ããããBASEåŽã®CRMæ©èœã®æ¹åãããŠãããããŸããïŒ ç€Ÿå
ã®Notionã«ã¯ä»¥äžã®ããã«ææ¬¡äŒã«ã€ããŠãŸãšãŸã£ãããŒã¿ã«ã誰ã§ãèŠãããå Žæã«èšçœ®ãããŠãããäºæ¥è²¬ä»»è
ã®æ³å·ïŒ @gimupop ïŒãããç®çãèšèªåããŠæžããŠãããŠããããããã«è³æãžã®ãªã³ã¯ããŸãšãŸã£ãNotion DBãèšçœ®ãããŠãããããŸãã ãã®äŒã«é¢ããŠã®æ
å ±ããŸãšãŸã£ãNotionããŒãžã®ãã£ããã£ã®äžéš ïŒBANKããŒã ã§ã®ãã®åãçµã¿ã®åé²ã«ãªã£ããProduct BEER BASHããšãã瀟å
ã€ãã³ããšããã«å¯Ÿããæ³å·ããã®ã¢ããæãã¯ä»¥äžã®noteã«ãŸãšãŸã£ãŠå
¬éãããŠããã®ã§ããã²ãã¡ããã芧ãã ããã ð https://note.com/gimupop/n/nb950488d8de8 ïŒ ææ¬¡äŒèªäœã¯äžèšNotionã«ãæžãããŠããããã« ãèªå·±é瀺ããšãã¢ãŠãããããããããšã«ããPDCAã®äœçŸã ãç®çãšããŠå®æœãããŠããŸãã ãã®ãããçºè¡šããå
容ã¯ä»äºã«é¢ä¿ããŠããªããŠãããããã©ãŒããããèªç±ïŒã¹ã©ã€ããäœã£ãŠãããããLookerããã·ã¥ããŒããèŠããªããã§ãããããNotionãäžãã説æããŠãã圢ã§ãè¯ãïŒãªã®ã§ããããã5~10åéã§ããªãèªç±ã«çºè¡šããŠããŸãã ä»å¹Žããã¯äŒã®éçšã ãããŒããŒã·ã§ã³ã®ã¡ã€ã³æ ïŒçºè¡š10å+ææ³ã»è³ªå5åïŒÃ 4~6人ã ãä»»æçºè¡šè
æ ïŒçºè¡š5åã®ã¿ïŒÃ 1~3人ã ãšãã2éšæ§æã«å€ããã®ã§ãçºè¡šã®é »åºŠãšããŠã¯ã ããã3ã¶æã«1åãèªåã®çªãæ¥ããããã®ã¹ãã³ã§åã£ãŠããŸãã å®éã«éå»ã«ãã£ãçºè¡šã ãšä»¥äžã®ãããªãã®ããããŸã ã¿ã€ãã«: å€çã®è©± å€çã®å顿¹æ³ãªã©ã®åºç€ç¥èããå€çå±ãããECã«å¯ŸããŠã©ããªèª²é¡æãæã£ãŠãããïŒãšããç¥èŠã®å
±æãªã© ã¿ã€ãã«: ä»ãæç«ãç±ã ãåãããããããããããåå ããã€ãã³ããæç«åç©é€šã®ç޹ä»ãçŽè¿æç«ã®ãããŸã§ã®åžžèãå€ãã£ãŠããŠããïŒãšãã話ãããã«ã¯ECã§ãããªååãåºããããªãšèããŠããã¢ã€ãã¢ã®ç޹ä»ãªã© ã¿ã€ãã«: ãã£ãšããŒã ã®çãããšBANKãããã¯ããŠãŒã¶ãŒãã¿ãŠãããã ãŠãŒã¶ãŒã€ã³ã¿ãã¥ãŒã®æŠèŠ & ãŠãŒã¶ãŒã€ã³ã¿ãã¥ãŒãšã¯ïŒã®å
±æãªã© çºè¡šã¯åºæ¬ãªãã©ã€ã³ã§ã¿ããªèããªãããFigjamããŒãã«ä»ç®ãçµµæåããªã¢ã¯ã·ã§ã³ã貌ã£ãŠã¯ã€ã¯ã€ããŠããŸãã çºè¡šè
åŽãšããŠã¯ããã«ææ³ãããããéãŸã£ãŠããã®ãåŸã§èŠãŠå¬ããæ°æã¡ã«ãªãããããã¡ã·ãªããŒã¿ãŒã¯éåæã«è³ªåãææ³ãéãŸã£ãŠããã®ã§çºè¡šåŸã®ã¿ã€ãã³ã°ã§æŸã£ãããããããšããã¡ãªããããããŸã ð gatchan0807ããã®äŒãèŠãŠããŠæããããš BANKããŒã ã§ã¯ãããªæãã®äŒãæ¯æå®æœããŠããã2023幎11æïŒã¡ããã©1幎åïŒã«ç°åããŠæ¯æåå ããŠããŠæããããšããã£ããæžããŠãããŸãã ä»ã®çµç¹ãã§ãŒãºã«ã¯ææ¬¡äŒãããããšã§ã³ãã¥ãã±ãŒã·ã§ã³ãåæ»ã«ãªããªã©ã¡ãªããããããããããªãšæããŠããŸã ð çºè¡šèµ·ç¹ã§ããããªããšããããããªã©ã ç°ãªãè·çš®ïŒã¢ããªã¹ãïŒã®äººã«çžè«ãããã£ããã«ãªã£ãŠããã£ã ããŒã ã¡ã³ããŒã®ããŒãœããªãã£ãç¥ãæ©äŒãšããŠãšãŠã掻çšã§ãã å
¥ç€Ÿæã®èªå·±ç޹ä»ããã£ããã§ããå Žæ ãããã®ã¯ãšãŠãè¯ããã©ãããŠãä»äºã®äžãã©ã³ãã»é£²ã¿äŒãªã©ã§èªå·±ç޹ä»ã§ããéã«ã¯éçãããããè©±ã®æµããåèŽããªãããšãããã®ã§âŠ åŸããå
¥ã£ã人ãã é·ããã人ã®ããŒãœããªãã£ãç¥ã æ©äŒã«ãªã£ãŠãã Lookerããã·ã¥ããŒãã®å Žæãç¥ããããSlackã®ã©ãã§ããåããããŠããã®ãïŒã®ãããªããããªæ
å ±ãããã«ç ã£ãŠããã®ãïŒããšããæ°ã¥ããããããã£ãŠã¿ãã°ããã®ãïŒããšãã ç¥èã®ã€ã³ããã¯ã¹ã貌ãã çºè¡šæ¹åŒã«ãPDCAãåã£ãŠããŠãæè¿ã¯Canvaã䜿ã£ãŠããæãã®ã¹ã©ã€ããããããäœã£ãŠçºè¡šãã人ãåºãŠããŠãšãŠãè¯ã 倧äœçºè¡šã3ã¶æã«1åããããªã®ã§ãïŒä»»æçºè¡šã§æ¯åãããšãããªããã°ïŒæå€ãšè©±ããã¿ã¯èŠã€ãããã éã«æ¯æçºè¡šã¯ãã¿æ¢ããšã¹ã©ã€ãäœã倧å€ã ã£ãïŒèªæ¥èªåŸïŒ ãããªLTãããŸãã ããããã¯èšäºã¿ã€ãã«ã®ååã§ãææ¬¡äŒã§ç§ãã©ããªLTãããŠãããã玹ä»ãããŠãã ããã ãããèªè
ã®çããŸã®ãªãã§äœãçŽç·ã«è§Šãããã®ãããã°ããã²ã話ãããŸãããïŒãæ°è»œã« X ïŒ @gatchan0807 ïŒãŸã§ã声ãããã ãããïŒð 2024幎2æ: Chrome DevToolsã®ã¹ã¹ã¡ å®éã«äœ¿ã£ããChrome DevToolsã®ã¹ã¹ã¡ãã®ã¹ã©ã€ãã®æç² ããã³ããšã³ããšã³ãžãã¢å¿
æºã®Chrome DevToolsã®äŸ¿å©æ©èœãããŒã¹ã«çŽ¹ä» ãããã¯ããããŒãžã£ãŒããã¶ã€ããŒã®ç¢ºèªäœæ¥ã楜ã«ããæ©èœãããããã¯ãŒã¯ãé
ãå Žåãè²èŠç¹æ§ã®å Žåãããããã«ç¢ºèªã§ããæ©èœãªã©ãçŽ¹ä» ãšã³ãžãã¢ä»¥å€ã®è·çš®ã®æ¹ã«ãå®ã¯æªã人ãã¡ã¯ãããã£ãŠäœ¿ã£ãŠããããããšããã®ãã€ã¡ãŒãžããŠããããã»ãã¥ãªãã£æèãé«ããäºäŸãçŽ¹ä» äŸãã°ãChrome DevToolsã䜿ãããšã§ç»é¢ã«ã¯åºãŠããªããããªããŒã¿ãèŠããã äŸãã°ãChrome DevToolsã䜿ãããšã§ç»é¢ãç°¡åã«æžãæããŠãã£ããã£ãæ®ãã 2024幎3æ: æŠç¥çèªå·±åŠç¿ã®ã¹ã¹ã¡ å®éã«äœ¿ã£ããæŠç¥çèªå·±åŠç¿ã®ã¹ã¹ã¡ãã®ã¹ã©ã€ãã®æç² åæã«ããŒã ã¡ã³ããŒããæŠç¥çä»è
亀æµã®ã¹ã¹ã¡ããšããã¿ã€ãã«ã§çºè¡šããããŠããã®ã§ãããã«é¢é£ãããŠè©±ããå
容 èªåãã©ããªç®çã»èãæ¹ã§èª¿ã¹ç©ïŒèªå·±åŠç¿ïŒãããŠããã®ãã話ãèªå·±é瀺ã®çºè¡š ã³ãã¥ãã±ãŒã·ã§ã³ãåæ»ã«ããããã«äºåã«èª¿ã¹ç©ãããŠããããš èãäºã調ã¹ç©ã®ã·ã§ãŒãã«ãããã説æãããŸãããããã«èª¿ã¹ç©ãããŠããããš 2024幎4æ: ïŒããŒã å
šäœã§ã¹ãã¬ã³ã°ã¹ãã¡ã€ã³ããŒã宿œããäŒã«ãªã£ãã®ã§ãããã¿ïŒ ã¹ãã¬ã³ã°ã¹ãã¡ã€ã³ããŒã®äŒã«ã€ããŠã詳ããã¯ãã¡ãã®èšäºãã芧ãã ãã basebook.binc.jp 2024幎5æ: ãŒãã®ããããã ãããããã® ãããã»ãã»ãããã
〠å®éã«äœ¿ã£ãããŒãã®ããããã ãããããã® ãããã»ãã»ãããã
ã€ãã®ã¹ã©ã€ãã®æç² 4æã®ã¹ãã¬ã³ã°ã¹ãã¡ã€ã³ããŒã®çµæã«ãåéå¿ããšããæ§æ Œç¹æ§ãTOP5ã«å
¥ã£ãŠããããšãã話ãããšã«ãããã® 3æã®çºè¡šã§èªå·±åŠç¿ã®è©±ãããŠããã®ã§ãããã§åŸãç¥èãã©ãèããŠãããïŒãšãããšããã«ãã©ãŒã«ã¹ããå
容 NotionãGoogle Keepãªã©ã䜿ã£ãç¥èéç©ãã©ãããã©ãŒã æ§ç¯ãè¡ã£ãåŸãæçµçã«Slackã«èœã¡çããŠããç¶æ
2024幎6æ: ãããã¹ãŽããïŒJavaScriptïŒ å®éã«äœ¿ã£ãããããã¹ãŽããïŒJavaScriptïŒãã®ã¹ã©ã€ãã®æç² Arcadeãšãããããã¯ããç¥ãããã®ãããã¯ããChromeæ¡åŒµ + Webã¢ããªã±ãŒã·ã§ã³ã§å®çµããŠãããã¯ãã®äŸ¡å€ãäœã£ãŠããã®ãèŠãŠããããå®çŸããããã«ã¯JavaScriptã®åããµãã ãã«äœ¿ãå¿
èŠããããã ãïŒãšãã話 åãããŠãJavaScriptã䜿ã£ãŠã§ããããšãäŒãããšã³ãžãã¢ä»¥å€ã®ã¡ã³ããŒã«ãããã°ã©ãã³ã°ãæ¥åå¹çæ¹åã«èå³ãæã£ãŠããããããã«è©±ããçºè¡š 2024幎7æ: ããããæ¥ããªã³ããã€ã¹LLMïŒSLMïŒã®æªæ¥ å®éã«äœ¿ã£ããããããæ¥ããªã³ããã€ã¹LLMïŒSLMïŒã®æªæ¥ãã®ã¹ã©ã€ãã®æç² 2024幎11æ23æ¥ã«éå¬ãããã€ãã³ãïŒ Fullstack AI Dev & Raycast Summit ïŒã®ã¹ãã³ãµãŒLTã®å
容ã®å
ã«ãªã£ãçºè¡š å人çã«PWAã®é ããChromeãã©ãŠã¶ã«èå³ã匷ãã®ã§ãGoogle I/Oã§Gemini nano in Chromeãç¥ã£ãããšããå®éã«è§Šã£ãŠã¿ãŠãåŸãç¥èã話ãããã® åãããŠGemini nanoãAndroidã¹ããã«ãApple IntelligenceãiPhoneã«å
¥ãããšã話é¡ã«ãªã£ãŠããã®ã§ãããããåãããŠèšå ããããšã³ãžãã¢ä»¥å€ã«ãããã£ãŠããããããã«ã€ã¡ãŒãžããããèšèãæå€§é䜿ã£ãŠçºè¡š 2024幎8æ: ããªãã®ç¥ããªã.new ãã¡ã€ã³ã®.äžç å®éã«äœ¿ã£ããããªãã®ç¥ããªã.new ãã¡ã€ã³ã®.äžçãã®ã¹ã©ã€ãã®æç² Googleã管çããgTLDã® ã.new ãã¡ã€ã³ãã«ã€ããŠã®ç¥èŠå
±æã®ããã®çºè¡š https://docs.new ã§Google Docsã®æ°èŠããŒãžãäœæã§ããããšãªã©ãæ¥åTipsãšããŠè©±ããã èªåãã¡ã®ãµãŒãã¹ã§äœããªããããããã¡ã€ã³ãããããªïŒãšããåè£ãåºããã ããŸãã§New gTLDã§èªååãããã¡ã€ã³ãåããããšã話ããããBrandTLDã«ã€ããŠãå
±æ 2024幎9æ: Webã®æªæ¥ / WebãããŒã¿ã«ãã®æªæ¥ å®éã«äœ¿ã£ããWebã®æªæ¥ / WebãããŒã¿ã«ãã®æªæ¥ãã®ã¹ã©ã€ãã®æç² expand.aiãšãããããã¯ããY Combinatorãã調éãã話é¡ã«ãªã£ãŠããã®ã瀟å
ã§èŠã€ããããã«ã€ããŠèª¿ã¹ãç¥èãå
±æããçºè¡š ãã®ãããã¯ãã調ã¹ãŠããæã«Webäžã®æ
å ±ããŒã¿ã«ãµã€ãã®æªæ¥ãæ¡ããã®ã§ããããªå€åãå¿
èŠãªäžçã«ãªãããããšããç§èŠãã話ãããã® expand.aiãã©ã®ããã«äœ¿ããã®ãïŒãšããç¥èã«ãåè·ã®çµéšãçµã¿åãããŠããŒã¿ã«ã®ããžã·ã§ã³ãå±ãããªãããâŠãšãã屿©æãã¡ã€ã³ ãµãŒãã¹ãç¶ç¶æäŸããããã«ã©ããªè§£æ±ºçãããããã©ããªäŸ¡å€æäŸãå¿
èŠããïŒã»ãŒåŠæ³ããŒã¹ã§ïŒèªã£ããããŸãã 2024幎10æ: 仿¥ããå§ããçæAI å®éã«äœ¿ã£ãã仿¥ããå§ããçæAIãã®æªæ¥ãã®ã¹ã©ã€ãã®æç² ããŒã ã®çæAIã®æŽ»çšåºŠåãããã£ãšäžããããšæããçæAIã«å¯ŸããŠã®ã¹ã¿ã³ã¹ãå
±æãããããŒãã«ãã§ããéãäžããŠäœ¿ãå§ããŠã¿ãããããšããã¡ãã»ãŒãžã®çºè¡š ã€ã¡ãŒãžããŠããããããããã«ããã©ãããã ãšæã£ãŠäœ¿ããããšããã¡ãã»ãŒãžãäŒããŠãã ã®ã³å€ªããããã©ãããã«æ³£ãã€ãããã«ãã©ããªããšã ã£ãŠäžæŠçžè«ããŠã¿ãŠããã ãã©ãããã®ããã«å€±æããããšãããã®ã§ãæž©ããç®ã§å€±æãæããŠããããïŒå®ç§ãæ±ããããªãïŒ ããããæŽŸçããŠãããŒã«ãã¬ã€ããã³ããã䜿ã£ãå©çšæã®ãã³ã·ã§ã³ã®äžãæ¹ããJSONã§ãããšããã圢ã§ã®ç²ŸåºŠã®æ¹åãªã©ã®ã¡ãã£ãšãããã¯ããã¯ãçŽ¹ä» gatchan0807ãããã ãçºè¡šããŠããŠæã£ãããš æäžŠã¿ãªè¡šçŸã«ã¯ãªã£ãŠããŸãã®ã§ãããäœãã ã¢ãŠãããããèµ·ç¹ã«ããåŠç¿ã¯å®çãæ©ãããã¢ãããŒã·ã§ã³ã®ç¶æããšãŠãããããã®ã§è¯ã ãªãšæããŸããâŠïŒ ãŸããçæAIã«å¯ŸããŠå人çãªèå³ã¯åŒ·ãã£ããã®ã®ããããã¯ããšããŠé¢ãã£ããä»äºãšããŠé¢ããèŠèŸŒã¿ã¯ã»ãŒãããŸããã§ããã ã§ãããç©æ¥µçã«çºä¿¡ããŠããããšã§çæAIé¢é£ã®ã€ãã³ãïŒåŸè¿°ïŒãžã®ã¹ãã³ãµãªã³ã° + ã¹ãã³ãµãŒLTæ
åœããããŠããã話ãé²ãã ããå®éã«çæAIããããã¯ãã«çµã¿èŸŒãæ¹æ³ãèãå§ããããšïŒãŸã ãŸã æ§æ³ã»åŠæ³æ®µéïŒãããšããšãããããšæã£ãŠããä»äºãããããŠããããŠããã®ã§ãããããã«è¿œå ããŠæ°ãã«çæAIé¢é£ã®ãä»äºãå¢ããä»äºãããã«æ¥œããèŠå ã«ããªããŸãã ð ããŒã ã«å¯ŸããŠã®ç¥èŠå
±æããããããããïŒãããåŠã³ããã£ãïŒããšãã£ããã£ãŒãããã¯ãæè¬ãåãåããŠãšãŠããã³ã·ã§ã³ãäžãããŸãããéåžžã«åæãªããBANKããŒã ã§ãã®äŒãäžçªããŸã掻çšããŠãã人éãªããããªãããªãšæã£ãŠãããããŸã ð ãããã« ä»åã¯BANKããŒã ã®ãææ¬¡äŒããšããæã«1å瀟å
ã§è¡ã£ãŠããLTçºè¡šäŒã®åãçµã¿ã玹ä»ãããŠããã ããŸããã ããããã®ãããªåãçµã¿ãè¡ã£ãŠããBASE / BASE BANKããŒã ã«ãèå³ãæã£ãŠããã ããã®ã§ããã°ããã²ãæ°è»œã«ã«ãžã¥ã¢ã«é¢è«ã X ã§ã®ã声ãããªã©ãããŠããã ããŸããšãšãŠãå¬ããã§ãïŒ ãŸã ãŸã BASE BANKããŒã ãšããŠã¯äœããããã®ãæäŸããã䟡å€ããããããã£ãŠãããããäžç·ã«å®çŸããŠããã仲éãåéããŠããŸãããã²BANKããŒã ã«ãåãã貞ããã ãã ðââïžðââïžðââïž binc.jp ãŸããåãã㊠gatchan0807 ãå幎éãæ¯æçºè¡šããå
容ã玹ä»ãããŠããã ããŸããã BANKããŒã ãšããŠãäžå°èŠæš¡ã®ãšã³ãžãã¢ã€ãã³ããžã®äŒå ŽæäŸã»é£²é£ã¹ãã³ãµãŒããã£ãŠããåããããã®ã§ããšã³ãžãã¢ã€ãã³ãã®äž»å¬ãã¹ã¿ããã®çããŸã®äžã§ããããããã£ã話ã«ãèå³ããæ¹ãããã£ãããã°ãæ°è»œã« X ãªã©ã§ã声ããããã ããŸããšå¹žãã§ãïŒ ãããã¯ããã¡ãã®èšäºã X ãªã©ã§ã·ã§ã¢ããŠããã ãã®ããšã£ãŠããšã£ãŠãå¬ããã§ãïŒ devblog.thebase.in æåŸã«ãèšäºå
ã§ãå°ãè§ŠããŸããã 2024幎11æ23æ¥ïŒåïŒã«å®æœããã以äžã®ã€ãã³ãã«BASE BANKããŒã ãã¹ãã³ãµãŒããããŠããã ããLTããããŠããã ããŸãã®ã§ãã²ãªãã©ã€ã³ã§ãåå or ãªã³ã©ã€ã³ã§ã芧ããã ãããšå¹žãã§ãïŒ devx.jp
<ãã®èšäºã¯Hatena-Blog-Workflows-Boilerplateã«ãã£ãŠäœæãããŸãã> ããã«ã¡ã¯ïŒ BASEæ ªåŒäŒç€Ÿ Pay ID ã® @zan_sakurai ãšç³ããŸãã BASE PRODUCT TEAM BLOG ç·šéå±ã¡ã³ããŒãåããŠããŸãã(å®ã¯ä»å¹Žã®ç·šéé·ã§ãã) ä»åã¯ãHatena-Blog-Workflows-Boilerplateã䜿ã£ãŠãšããSaaSã®ãªã³ã¯ãäžæ¬çœ®æãã話ãããŸãã Hatena-Blog-Workflows-Boilerplate Hatena-Blog-Workflows-Boilerplateãšã¯ã æ ªåŒäŒç€Ÿã¯ãŠãªãããå
¬åŒã§å
¬éããŠãããã¯ãŠãªããã°ã®èšäºãæžãããã®ã¯ãŒã¯ãããŒã®ãã€ã©ãŒãã¬ãŒãã§ããŠãGitHub äžã§äžæžããèšäºã®å
¬éçãè¡ãããšãã§ãããã®ã§ãã github.com åŒç€Ÿã§ã¯æšå¹Ž @applepine1125 ãããæžãã Hatena-Blog-Workflows-Boilerplateã€ãã£ãŠ BASEã®ããã°æžããŠã¿ã ãèŠãŠããã ãããšå¹žãã§ãã Hatena-Blog-Workflows-Boilerplate ã䜿ã£ãŠ äžæ¬çœ®æããŠã¿ã å
ã«çµè«ã§ããäžæ¬çœ®æãããŸã§ã¯3ã¹ãããã§å®äºããŸãã! ç·èšäºæ°çŽ450ä»¶ã®ãã¡ã眮æå¯Ÿè±¡ã®ãªã³ã¯ãå«ãŸããŠããèšäºã¯çŽ100ä»¶ãå·®åã¯çŽ130è¡ã»ã©ã§ããã(ç®èŠã§ç¢ºèª&眮æããŠããããŸããšããŸãã...!) è¯ãæãã«åã蟌ãã§(pull from hatenablog) è¯ãæãã«çœ®æããŠïŒ è¯ãæãã«push! 以äžã§ã! ãªã³ã¯çœ®æäœæ¥ã®çµç·¯ ãããã«å°ã峿°ãªãã®ã§ãããå°ã詳ããçµç·¯ããäŒãããããšæããŸãã ããšã®ãã£ããã¯ããããŸã§å©çšããŠãããšããSaaSãå¥ã®SaaSã«åãæ¿ããããšã«ãªãã瀟å
ã§ã¯ãã®ãªã³ã¯ã®çœ®æäœæ¥ãè¡ãããŠããæäžã§ããã BASE PRODUCT TEAM BLOG ã«æ²èŒããŠããèšäºã«ãå€ãã®ãã®SaaSã®ãªã³ã¯ãå«ãŸããŠããã眮æäœæ¥ãå¿
èŠã§ããã (ããã°ãšããã³ã³ãã³ãã®ç¹æ§äžãéå»ã®èšäºã¯æŽæ°ããªãããšãã倿ãããããŸããããèªè
ã®çæ§ã®äœéšãæãªããªãããšãåªå
ããå
šãŠåãæ¿ããããšãšããŸããã) æåã¯ãå
šéšèšäºç®èŠã§å°éã«ãã£ãŠã¿ãã...ãããšæã£ãŠããŸããããéãéã§ããããããªããšããªããªãããª...ãããšãŒãããèããŠããŸããã ãŒãããèããŠãããšããšããµãšãããšãã«åè¿°ã® @applepine1125 ãããæžããèšäºãæãåºããŸããã Hatena-Blog-Workflows-Boilerplate ã¯ããã°ã®èšäºãæžãããã®ã¯ãŒã¯ãããŒãæäŸãããã®ã§ããã hatena blogäžã«æ²èŒããŠããèšäºãpullããããšãã§ããã®ã§ã ããã䜿ã£ãŠãèšäºã®åã蟌ã¿(pull) -> 眮æ -> push ãšããæµãã§ããªã³ã¯ã®çœ®æäœæ¥ãè¡ãããšãã§ããã®ã§ã¯ãªãããšæããŸããã ã¡ãã£ãšå®éšããŠããã£ãŠã¿ããšãããåè¿°ã®ãšããç°¡åã«ãªã³ã¯ã®çœ®ãæããã§ããŸããã 䜿ã£ãŠã¿ãææ³ ç¹å®ã®æååãäžæ¬çœ®æãšããæ
£ã芪ããã (?)äœæ¥ããããªãã ãã§ããã®ã§ãæ¬åœã«ç°¡åã§ããã ããã°ã®å·çã®äžé£ã®ãããŒã Hatena-Blog-Workflows-Boilerplate ã®ã¯ãŒã¯ãããŒã«ç§»è¡ããããªããšç€Ÿå
ã§ããŒãããŠããã®ã§ããã å·çã®ãããŒã ãã§ãªããããã°ã®ã¡ã³ããã³ã¹ã«ã䜿ããããšããããããŸããŸãä»åŸæŽ»çšããããšæã£ãŠããŸãã ãŸããä»åè§Šã£ãŠã¿ãŠæããŸããããå·çã ãã§ãªããã¡ã³ããã³ã¹ãèšäºãäžæ°ã«èŠãããšãã£ãããšã«ã掻çšã§ããã®ã§ãäŒæ¥ã§ã¯ãŠãªããã°ã§æè¡ããã°çãéå¶ãããŠããæ¹ã«ã¯ãã²äžåºŠã詊ãããã ãããã§ãã ãããã« Hatena-Blog-Workflows-Boilerplate ãã¡ããã¡ã䟿å©ã§ã...!!! open.talentio.com
BASE ã Aurora MySQL v3 ãšãªããŸãã SRE Groupã® ngsw ã§ãã 2024/10/14ã10/15ã®æ·±å€ã¡ã³ããã³ã¹ã«ãŠãBASEã§å©çšããŠããAmazon Aurora MySQLã®ããŒãžã§ã³ã¯ãv2ç³»ããv3ç³»ãšãªããŸããã ã¢ããã°ã¬ãŒãã®åææ¡ä»¶ã§å€§ããªã€ãŸããããããŸãããã gh-ost ãå©çšããããšã§ãä¹ãè¶ããããšãã§ããŸããã ãã®èšäºã§ã¯åœè©²ã¢ããã°ã¬ãŒãã®äžã§ gh-ost ãã©ã®ããã«å©çšããã©ãããæ©æµãåãããã«ã€ããŠè¿°ã¹ãŠãããŸãã ãããã : v3 察å¿ããªããšã©ããªãã®ïŒ Aurora MySQL v2ã¯æšæºãµããŒãçµäºãçºè¡šãããŠãããv3ãžã®ç§»è¡ãçµããŠããªãDBã¯ã©ã¹ã¿ãŒã«ã¯èªåçã«æåã®å»¶é·ãµããŒããé©çšãããæµãã§ãã Amazon RDS å»¶é·ãµããŒãã®äœ¿çš - Amazon Aurora 2024/10/31 ã«èªåã§å»¶é·ãµããŒãå
¥ã 2024/12/01 ããå»¶é·ãµããŒãæéã®èªåè«æ±ãé©çšããã è²»çšã¯ãã¡ããã確èªãã ããããããŸã§å®ããããŸããã æé - Amazon Aurora | AWS æåãµããŒãæäŸã«ããããçšåºŠã®æéç¶äºãäžãããããšã¯ãããã¢ããã°ã¬ãŒããå
å»¶ã°ãã«ããã¡ãªããã¯ã»ãšãã©ãããŸããã ããšãã°ããã®ã¢ããã°ã¬ãŒããããäŒæ¥ã«ãšã£ãŠå©çã®ããæœçããµãŒãã¹ã®éçº/æ¹ä¿®ãããã°ãŸãå¥ã®æææ±ºå®ãåãã§ããããããããªæœçã¯ãããããªãã§ãããã ç°¡åã«ã¢ããã°ã¬ãŒãã§ããªãåé¡ Aurora MySQL v2âv3ã¢ããã°ã¬ãŒãæ€èšŒæ®µéã§åé¡ãèŠã€ãããŸããã BASEã§ã¯æ¬çªç°å¢ã®ããŒã¿ã«ãã¹ãã³ã°ãã»ã©ããããã®ããéçºç°å¢ã§å©çšã§ããããã«ããŠããŸãã ãã®ãã¹ãã³ã°ããDB Clusterã§ã以äžã«ãããããªã€ã³ãã¬ãŒã¹ã¢ããã°ã¬ãŒãã®æ€èšŒãè¡ããŸãããããšã©ãŒã®ããã¢ããã°ã¬ãŒãåŠçã¯åæ¢ããŠããŸããŸããã Amazon Aurora MySQL ããŒãžã§ã³ 3ïŒMySQL 8.0 äºæïŒãžã®ã¢ããã°ã¬ãŒã | Amazon Web Services ããã° åæ¢çç±ã¯ upgrade-prechecks.log ãã¿ãããšã§ç¢ºèªãã§ããŸãã åå ãšãªãåé¡ã¯å€§ããäºã€ãããŸããã mysql . event ã«é¢ããã¢ããã°ã¬ãŒãæã®äžæŽåãšã©ãŒ 倿°ã®ããŒãã«ã«å€ããã£ã¹ã¯ãã©ãŒãããã§ datetime åã«ã©ã ãäœæãããŠããããã®ãšã©ãŒ mysql . event ã«é¢ããã¢ããã°ã¬ãŒãæã®äžæŽåãšã©ãŒ AWS ãµããŒãã«ãã察å¿ããã ããŸããã ãã¡ãã¯æ°æ¥çšåºŠã§è§£æ±ºã§ããæ€èšŒäœæ¥ããããã¯ããã»ã©ã®åé¡ã§ã¯ãããŸããã§ããã 倿°ã®ããŒãã«ã«å€ããã£ã¹ã¯ãã©ãŒãããã§ datetime åã«ã©ã ãäœæãããŠããããã®ãšã©ãŒ åé¡ã¯ãã¡ãã®ãšã©ãŒã§ãã MySQL :: MySQL 8.0: Removing support for old temporal datatypes è§£æ±ºæ¹æ³ããåœè©²ã«ã©ã ãæã€ããŒãã«ãæ°ããåäœæããããšããããšã«ãªãã Dump & Restoreãã ALTER TABLE {table_name} FORCE; ãšãããããªãã€ãŸãv2äžã§ CREATE TABLE çžåœã®ããšãè¡ãå¿
èŠããããŸããã ããããã¯MySQL5.6以åã®AWSã®RDSã§çšŒåãããã®ãŸãŸAuroraã«åŒãç¶ãããŠããããŒãã«ã§ãã〠datetime åã«ã©ã ãå«ããã®ããã®å¯Ÿè±¡ãšãªãã®ã§ãããã Aurora ãããµãŒãã¹ãéå§ãããããã¯ããªã©ã§ã¯èŠãããšããªããšã©ãŒãªã®ãããããŸããã ã©ã®ãããªå°é£ã䌎ãã ãã®ããšã«æ§ããå°é£ãæ³åãé ãæ±ããŠããŸã£ãçç±ãä»åã® datetime åã«ã©ã åäœæå¯Ÿè±¡ãšãªã£ã2ã€ã®DB ClusterãXãšYã«ã€ããŠèª¬æããŸãã X ã¯ã·ã§ããã®æ
å ±ãååã®æ
å ±ãªã©ãæã¡ãŸãã Y ã¯å皮履æŽãªã©ãèç©ãããŠããŸãã 以äžã«èŠæš¡æãèšèŒããŸãã 察象ããŒãã«æ°ãšãã®åèšãµã€ãº ããŒãã«æ° 容é Xå
šäœ 976tables çŽ7.5TB 察象ããŒãã« 268tables 600GiB 察象ããŒãã«ã¯DB Clusterã®ããŒã¿ãµã€ãºã«ããŠå
šäœã®çŽ8% 4ããŒãã«ããã°ããã¡1ã€ã察象ãšãã圢ã ããŒãã«æ° 容é Yå
šäœ 236tables çŽ5.3TB 察象ããŒãã« 37tables 615GiB 察象ããŒãã«ã¯DB Cluster ã®ããŒã¿ãµã€ãºã«ããŠå
šäœã®çŽ11% 10ããŒãã«ããã°ããã¡1ã€ã2ã€ã察象ãšãã圢ã çµè«ãšããŠããã ãã®ããŒãã«ã«å¯ŸããŠã ãªãã¹ããµãŒãã¹ç¡åæ¢ã§ALTERæãçºè¡ãããå¿
èŠããããŸãã åæãšããŠã åœè©²ã¢ããã°ã¬ãŒãã®ã¡ã³ããã³ã¹ã¯1åã®æ·±å€ã¡ã³ããã³ã¹ã§è¡ã å
šæããŠè¡ãäºå®ã§ããããã¡ã³ããã³ã¹æéã¯5ã6æéçšåºŠãããšããªã ãšããã®ããããŸããã åœåã¯ã¡ã³ããã³ã¹æéã®äžã§åœè©²ããŒãã«ã«å¯ŸããŠdump&restoreãããªã©ãèããŸãããã å®è¡æéçã«ç¡çã ãšããããšãããããŸããã 1 ãªã³ã©ã€ã³ã¹ããŒããã§ã³ãž/ãªã³ã©ã€ã³ã¹ããŒããã€ã°ã¬ãŒã·ã§ã³ããŒã« ã¡ã³ãåœæ¥ã«ALTER TABLE or Dump/Restore + upgrade ãã¹ãŠãè¡ãããšã¯(åœç¶ã«)ç¡çããšããããšãããããŸããã ãããªãã°ã¡ã³ãåœæ¥ãŸã§ã«äºåã«äžæºåãšããŠè¡ãæ¹æ³ãèããŸããã äžæºåãšããŠããšããããšããæé»çã«ç¡åæ¢ã§ãªããã°ãªããŸããã ãµãŒãã¹ç¡åæ¢ã§ALTER TABLEçºè¡ãšãããšããããããªã³ã©ã€ã³ã¹ããŒããã§ã³ãž/ãªã³ã©ã€ã³ã¹ããŒããã€ã°ã¬ãŒã·ã§ã³ããŒã«ã«è¡ãçãã§ãããã ãããã¯ãã®æã®ããŒã«ã®å©çšçµéšããªãã£ããããã²ãšãŸã以äžãåè£ã«ãããŸããã 2 pt-online-schema-change â Percona Toolkit Documentation github/gh-ost: GitHub's Online Schema-migration Tool for MySQL çµæãšããŠããããã㯠gh-ost ãã¯ããã«æ€èšŒããç®çã«éãååã§ãããšèãããã®ãŸãŸä»åã®äœæ¥éè¡ããŒã«ãšããŠæ¡çšããŸããã 以äžã®çç±ãã gh-ost ã®æ€èšŒãåªå
ããçµæçã«ããããã®èŠä»¶çã«ã¯ gh-ost ã§ååãšããããšãããã£ããããpt-osc ã®æ€èšŒèªäœãã¹ãããããŸããã pt-oscããgh-ostãåªå
ããŠæ€èšŒåè£ã«ããçç±ã¯ä»¥äžã«ãªããŸãã pt-oscãéžã°ãªãã£ã : pt-osc ã§ã¯å
ããŒãã«ãšæ°ããŒãã«ã®åæã«ããªã¬ãŒãæ¡çšãããŠãããããªã¬ãŒå©çšã«ããè² è·ãããµãŒãã¹æäŸã«ã©ã®ããã«åœ±é¿ãäžããã®ãæžå¿µããæ€èšŒåªå
床ãäžãã gh-ostãéžãã : åŠçæéã¯é·ããªãããã§ã¯ããããDBè² è·èªäœã¯è»œããã«æãããã gh-ostãéžãã : äžçªã®æžå¿µã§ãã£ãDB Cluster Xã§binlog replicationããã§ã«éçšããŠãããããgh-ostå©çšé©æ£ãé«ãã ãããšæãããã ãããã pt-osc ã¯å®äºãŸã§ã®åŠçé床ããgh-ost ã¯å°ããªè² è·ã§ã®å®è¡(ã€ãŸããµãŒãã¹åœ±é¿ã®æå°å)ãéèŠããŠããããæããä»åã¯åŸè
ã®å²åŠãæ¯æãããã gh-ost ç°¡åã«gh-ostã®ç¹åŸŽããã³å©çšããŠã®å®æãæžããŸãã ç¹åŸŽã«ã€ããŠã¯ gh-ost/README.md at master · github/gh-ost ãèªããšããããããã§ãã è€æ°æ¹åŒãããããreplicationåŽããbinlogãååŸãããã¿ãŒã³ãæšå¥šãããŠãã å¥åããŒãã«ã«å
ããŒãã«ããããŒã¿ãæœåºããŠæ¿å
¥ãããæŽæ°åã¯binlogã§å¯Ÿå¿ãã è² è·ãé«ããªããšèªåã§throttlingãã æå®ãã¡ã€ã«ãtouchããã°ãæåã§throttlingãããããšãã§ãã ãªã«ãããã®ãšã©ãŒãçºçããŠåŠçéäžã§èœã¡ãå ŽåããŸãäœæ¥éäžã§ãã£ãå¥åããŒãã«ãåé€ããŠãæåããå®è¡ããå¿
èŠããã 1ããŒãã«ã«ãããããšãŠããã£ããåãã®ã§å¯Ÿè±¡ããŒãã«ããŒã¿éã«ãã£ãŠã¯æ¥åæéå
ã«1ããŒãã«çµãããããããªãããã å¥åããŒãã«ãšå
ããŒãã«ãåãæ¿ããåŠçãcut-overãšãããããã®æéãæå®ããããšãã§ãã(å€äžã«åãæ¿ããããæŒéã«åãæ¿ããããªãå Žåãªã©ã«æå¹) cut-over ãšããåèªãåºãŠããŸããã gh-ostã§ã¯ãALTER TABLEçšã®å¥åããŒãã«ã察象ããŒãã«ã«å€åãæ¬çªéçšãžãšåãæ¿ãããããšããããŸãã gh-ost/doc/cut-over.md at master · github/gh-ost å©çšããŠãã宿ã§ã¯ cut-over ã«è³ããŸã§ã¯ãŸã£ããåé¡ãèµ·ããŸããã§ããã æç€ºçãªåé¡ãšããŠ1åã ãçºçããã®ã¯ cut-over ã¿ã€ãã³ã°ãšæŽæ°ã¿ã€ãã³ã°ãåã¿åã£ããšãã«ã cut-over ãæ¢ãŸã£ãŠããŸããšããçŸè±¡ã§ããã äžåºŠgh-ostã®åŠçããšããæ°ãã«ããçŽãã ãã§è§£æ¶ããã®ã§ã cut-over éè¿ã®ã¿ã€ãã³ã°ã ãæ°ã«ããŠããã°ããããšãã圢ã§ä»¥åŸã®äœæ¥ãããããããšãã§ããŸããã gh-ost ã®å¥œããªãšãã å人çã« gh-ost ã§æ°ã«å
¥ã£ããšãããæžããŠãããŸãããã sock fileãçµç±ããããšã§å¯Ÿè©±åŒã«ã³ãã³ãå®è¡ãå¯èœ gh-ost/doc/interactive-commands.md at master · github/gh-ost 鲿ã¹ããŒã¿ã¹ã確èªã§ãã ã³ãã³ãå®è¡äžã«ãã©ã¡ãŒã¿ãåçã«å€æŽã§ãã ç¹å®ãã¡ã€ã«ã®èšçœ®ã§åŠçãæ«å®åæ¢ããããšãã§ãã åŠçãé
ãã®ã ããæ¬ ç¹ãå®éçšãžã®å¯äœçšããŸã£ãããšãã£ãŠããã»ã©ãªã ãšããæãã§ãã æçµçã«ã¯ã»ãšãã©æŸçœ®ããŠãäžæ¥ã®çµããã«é²æç¶æ³ã確èªããçšåºŠã«ãªããŸããã éçšäœæ¥è
(ã²ããŠã¯ãµãŒãã¹)ã«åªããããŒã«ã ãªãšæããŸããã åè : å®éã®äœæ¥ã¹ã±ãžã¥ãŒã« åœåã¯æ¬çªäœæ¥æã«ã©ã®ãããªåœ±é¿ãã§ããããããªãã£ããããéçºé£ã«å¯Ÿè±¡ããŒãã«ã®ãªã¹ããšALTER TABLEå®è¡ã¹ã±ãžã¥ãŒã«ãå
±æããããããŸããã ããŸããã£ãŠã08æäžæ¬ãã09ææ«ããããããã®ã§ã¯ãªãããšäžå®ã§ããããgh-ostã®ãããã§08/08ã08/26ãšããæ³å®ãããçãæéã§çµããããšãã§ããŸããã ããŒã¿ç·éãäœæ¥æéãå·Šå³ããåŸåãã¿ããããããèŠç©ããã®ãã以äžã®ãããªã¯ãšãªã§ããŒãã«ããšã®ããŒã¿ã®äžèЧãåºããŠããŸãã total_size ãäž»ã«èŠãŠå®è¡æéã®èŠç©ãããè¡ã£ãŠããŸããã SELECT table_schema, table_name, data_length AS `data_size`, index_length AS `index_size`, (data_length + index_length) AS `total_size`, table_comment AS ` comment ` FROM information_schema.TABLES WHERE table_schema != ' sys ' AND table_schema != ' information_schema ' AND table_schema != ' performance_schema ' GROUP BY table_schema, TABLE_NAME ORDER BY total_size DESC ; 泚æç¹1 ä»åAurora v2 -> v3 ãžã®ã¢ããã°ã¬ãŒãã ã£ããããgh-ost ã®ããŒãžã§ã³ã¯ v1.1.5 ãæ¡çšããŠããŸãã æ³šæç¹2 第140åããªã³ã©ã€ã³ã¹ããŒããã€ã°ã¬ãŒã·ã§ã³ããŒã« gh-ostã䜿ã£ãŠã¿ãããã®3 | gihyo.jp ã«ã¯ä»¥äžã®ãããªèšè¿°ããããŸãã ãŠããŒã¯ããŒã®è¿œå gh-ostã䜿çšããŠããŠããŒã¯ããŒã远å ããããšã¯å¯èœã§ãã ãããããŠããŒã¯ããŒã远å ããã«ã©ã ã®å€ãäºåã«ãŠããŒã¯ãªå€ã«ãªã£ãŠããããšã確èªããŠããå®è¡ããªããšã ããŒã¿ããªããªã£ãŠããŸãæãããããŸãã ããããã®ä»åã®äœæ¥ã«ãããŠã¯é¢ä¿ããªãã£ããã®ã§ããããã®èšäºããèå³ããã£ãŠå©çšãããæ¹ã«ãããŠã¯ãçšéã«ãã£ãŠã¯æ°ã«ããŠããã ãããå
容ã§ãããããããã«åŒçšããŸãã åèURL ä»åã®ã¿ã¹ã¯ã§ã¯ä»¥äžã®Documentãåèã«ããŸãã MySQL å
šè¬ã«ã€ã㊠MySQL :: MySQL 8.0: Removing support for old temporal datatypes gh-ost ã«ã€ã㊠gh-ost/README.md at master · github/gh-ost 第138åããªã³ã©ã€ã³ã¹ããŒããã€ã°ã¬ãŒã·ã§ã³ããŒã« gh-ostã䜿ã£ãŠã¿ãããã®1 | gihyo.jp 第139åããªã³ã©ã€ã³ã¹ããŒããã€ã°ã¬ãŒã·ã§ã³ããŒã« gh-ostã䜿ã£ãŠã¿ãããã®2 | gihyo.jp 第140åããªã³ã©ã€ã³ã¹ããŒããã€ã°ã¬ãŒã·ã§ã³ããŒã« gh-ostã䜿ã£ãŠã¿ãããã®3 | gihyo.jp ãMySQLãgh-ostã調ã¹ã - å°æ¹ãšã³ãžãã¢ã®åŠç¿æ¥èš ãMySQLãgh-ostã§ãªã³ã©ã€ã³ãã€ã°ã¬ãŒã·ã§ã³ #Docker - Qiita Runtime error when trying to ALTER a table without PRIMARY KEY / UNIQUE KEY · Issue #332 · github/gh-ost pt-osc ã«ã€ã㊠pt-online-schema-change â Percona Toolkit Documentation pt-online-schema-changeã®å°å
¥æã«æ€èšããããšãããã³Railsã¢ããªãšã®äœµçšã«ã€ã㊠- freee Developers Hub Percona瀟ã®gh-ostãã³ãããŒã¯ãªã© Using gh-ost with Amazon Aurora for MySQL Gh-ost benchmark against pt-online-schema-change performance spirit ãšããããŒã«ããã£ãããv2(5.7ç³»)ã ãšå©çšãé£ãããã ã£ã MySQL ãªã³ã©ã€ã³ã¹ããŒã倿ŽããŒã«ã® spirit ãš gh-ost - Please Sleep BASEã§ã¯éæã¡ã³ããŒãåéããŠããŸãã 2024.10çŸåšãç§ã®æå±ããSRE Groupã®åéã¯ãªãããã§ãããèå³ãæãããèªè
諞æ°ã«ããããŸããŠã¯ã以äžãªã³ã¯å
ãã芧ããã ããã°å¹žãã§ãã æ¡çšæ
å ± | BASE, Inc. - BASE, Inc. æ€èšŒã§ã¯dumpã ãã§æ³å®ã¡ã³ããã³ã¹æéããã¹ãŠæ¶è²»ããŠããŸãããšãããããŸãã ↩ ããŒã å
ã«ãããããŒã«ã®æ€èšŒç®çã®éå»Issuesãç«ã£ãŠãããã ↩
æ°ããæ¹ãåãå
¥ããåŽã®ãã€ã³ãã»ããã§ãã ã¯ããã« BASE ã® Product Dev Division ã§ã·ãã¢ãšã³ãžãã¢ãããŠããããã°ã©ãã³ã°ããããã³ãïŒ @Panda_Program ïŒã§ãã å
¥ç€ŸãããŠ3ã¶æç®ã§åãããŒã ã§åããŠãã Torata ãããã å
¥ç€ŸããŠæããBASEã®ãããªãšæããšãã ããšããå
¥ç€Ÿãšã³ããªãæžããŠãããã®ã§ãæ°å
¥ç€Ÿå¡ãåãå
¥ããåŽããã®ã¢ã³ãµãŒèšäºã§ãã 以äžã¯BASE瀟å
ã®äººãªã誰ã§ãèªãããšãã§ããææžã§ãç¹ã«ããããã¡ã³ã¿ãŒã«ãªã人ã«ã¯èªãã§è²°ã£ãŠãããã®ã§ããèªåãåãå
¥ãåŽãšããŠæ°ã¶æéç¹ã«æèããŠãããæå¿ãããã£ãããšãæžãæ®ããŠããŸãã ããæ°ã¶æã®éããããŒãžã£ãŒãšå
±ã«ãªã³ããŒãã£ã³ã°ã®äœéšãè³æã®å
šé¢çãªèŠçŽããè¡ããæ°å
¥ç€Ÿå¡ãšã¡ã³ã¿ãŒã®ãªã³ããŒãã£ã³ã°äœéšãæ¹åããŸããããã®æç« èªäœãåãããããã®ã§ã¯ãªããããããã¡ã³ã¿ãŒã¯ããããããšãå¿ãããŠãããããšæ°ããäœã£ããã®ã§ãã 以äžã®å
容ã¯BASE瀟ã§ã®åãå
¥ããæ³å®ããŠããŸãããä»ã®äŒç€Ÿã§ãïŒãšã³ãžãã¢ãšããè·çš®ä»¥å€ã§ãïŒæŽ»ãããå
容ã ãšæããŸããããããæ°ããæ¹ãåãå
¥ããã«ããã£ãŠã©ãæ¥ãããããã®ãããããªããšããæ¹ãããã®æç« ãéããŠäœããæŽããã幞ãã§ãã çžæãç¥ãã ããã¯äžçªéèŠã§ããçŸåšãBASEã§æ¡çšããŠãããšã³ãžãã¢ã¯å®åçµéšè
ã®æ¹ãã¡ã€ã³ã ããã§ãã ããããééãã¯ãçžæãäœãç¥ããªããšåéãããŠäžããå
šéšæããããšããããšã§ããçžæãçµéšè
ãªã®ã§äžããæããŠãããå¿
èŠã¯ãããŸãããã§ã¯äœãæããã°ããã®ã§ãããããããã¯æ°å
¥ç€Ÿå¡ã®äººãæã£ãŠããç¥èã®ãã¡ãã¡ã³ã¿ãŒããèŠãŠäžè¶³ããŠããéšåã ãã§ãã ã¡ã³ã¿ãŒããŸãããã¹ãããšã¯ãæ°ããå
¥ç€Ÿãããæ¹ã®ãããŸã§ã®çµéšãæ·±ãç¥ãããšã§ããã¡ã³ã¿ãŒã¯ããŒã ã¡ã³ããŒã®èª°ãããæ°ããå
¥ç€Ÿãããæ¹ã®ããã¯ã°ã©ãŠã³ããçè§£ããŸãããã åè·ã§ã¯ã©ã®ãããªæ¥åãæ
åœããŠããã®ããåè·ã®äŒç€Ÿã®é°å²æ°ã¯ã©ã®ãããªãã®ã§ãã£ãã®ããã©ã®ãããªããšã«èå³ãæã£ãŠããŠãã©ã®ãããªããšãèŠæãªã®ãããããã®ããšãç¥ã£ãŠãããšèªç¶ãšçžæãžã®åãåãæ¹ãå€ãããŸããçžæã®è¯ããšãããèªåã«ãªãéšåãç¥ãããšã¯çžæãžã®ãªã¹ãã¯ãã«ã€ãªãããŸãã BASEã§ã¯ããã ãšæŒãä»ããã®ã§ã¯ãããŸãããçžæã®éå»ã®çµéšãç¥ããBASEãšã®å
±éç¹ãçžéç¹ãæç€ºããŸãããããããšçžæã¯äžããå
šéšç¥ãã³ã¹ããæãå¿
èŠã¯ãªããå
±éç¹ãå·®åãåŠã¶ã ãã§æžã¿ãŸããã¡ã³ã¿ãŒãããŠãã§ã¯ããã ããšæŒãä»ããã®ã§ã¯ãªãã転è·è
ãèªåã®éå»ã®çµéšã«åºã¥ããŠãæ°ããäŒç€Ÿãšä»ãŸã§ã®äŒç€Ÿãšã®å
±éç¹ãçžéç¹ã«ãã©ãŒã«ã¹ããæ¹ãã¹ã ãŒãºã§ããçµæçã«çµç¹ãã«ã«ãã£ãŒãžã®é©å¿ãæ©ããªãã§ãããã èªåãé瀺ããã æ°ããå
¥ç€Ÿãããæ¹ã¯ããããã®è³ªåãåããããšã§ããããããããçžæã®ããšãèãã°ããã§ã¯ãããŸãããèªåã¯ã©ããã人éããäŒç€ŸãããŒã ã§åããŠãã人ã¯ã©ããã人ãã¡ãªã®ããäŒããããšãéèŠã§ãã èªåã®çµéšãçžæã«äŒããŸããããèªåã¯äœãåŸæã§ããªããã®äŒç€Ÿã§åããŠããã®ãããªã³ããŒãã£ã³ã°æéã¯ãæ®æ®µäŒç€Ÿã§ã¯ããŸã話ãããšã®ãªããèªåã倧åã«ããŠãã䟡å€èгã«ã€ããŠè©±ãããã¿ã€ãã³ã°ã§ãããããéããšãªããªãããã話ãã¿ã€ãã³ã°ã¯ãããŸããã ã¡ã³ã¿ãŒãšã¡ã³ãã£ãŒã®äžå¯Ÿäžã«éãããæ°å
¥ç€Ÿå¡ã®æ¹ãæå±ããããŒã ã®ã¿ããªã§èªåãã¡ã®å€§äºã«ããŠãã䟡å€èгã«ã€ããŠæ¹ããŠè©±ãæ©äŒãèšããããšã«ãããã¡ã³ããŒã®ç¥ããªãã£ãäžé¢ãèŠãããããããŸãããããããã°ãããŒã ã®çµæã¯ããã«åŒ·ãŸãã§ãããã ãªã³ããŒãã£ã³ã°ãšããæ©äŒã掻çšããŠæ¢åã®ããŒã ãåãã«ãã£ã³ã°ãããšãã¡ã³ããŒå士ãä»ãããã£ãšäºãã«ãªã¹ãã¯ããéãåãããã匷ãããŒã ã«ãªããŸãã ããã¥ã¡ã³ãã¯æž¡ãã ãã§ã¯ãªããçžæã®ç解床ã«åãããŠé©å®äžç·ã«èªãããå£é ã§è§£èª¬ã»è£è¶³ãããã ãªã³ããŒãã£ã³ã°ã§æåã«ããããšã®äžã€ã¯ãèªåãã¡ãéçºããŠãããããã¯ããå®éã«è§Šã£ãŠã¿ãããšã§ãããã®éãã¡ã³ã¿ãŒã¯æ°å
¥ç€Ÿå¡ãäžäººããã«ããªãã§ãããŠãã ããã äžè¬çã«ãäœããŠã§ããµã€ãããœãããŠã§ã¢ãè§Šããšãã«ãã®è£åŽã¯ã©ããªã£ãŠãããã ãããšæ°ã«ãªããšããã®ããšã³ãžãã¢ã®æ§ïŒããïŒã§ããæ°ããå
¥ã£ãæ¹ã¯ãããããèªåãéçºããŠããããšã«ãªããããã¯ãã«èªç¶ãšèå³ãšçåãæã¡ãŸãã èå³ããåºãææ³ãçåã«å¯ŸããŠã¡ã³ã¿ãŒãã·ã¹ãã ã®è£åŽã解説ããããããã¯ã¡ãã£ãšãããŠãªããšãããªãã ãããšå
±æããããšã¿ã€ã ãªãŒã«çããããšã§ãã¡ã³ãã£ãŒã®ç¥èã®å®ç床ã¯ä¿ç¶ã¢ããããŸãã人ã¯çåãæã£ãæãäžçªç¥èãåžåã§ããããã§ãããŸãããã®ããã«çžæã«å¯ãæ·»ã£ãè¡åã®ç©ã¿éãããäºãã®ä¿¡é Œé¢ä¿ãæ§ç¯ããããšã«ç¹ãããŸãã ãœãããŠã§ã¢ã«éããããã¥ã¡ã³ããåæ§ã§ããäžäººã§ãã èªãã ãã§ã¯çè§£ã§ããªãããšããã¡ã³ã¿ãŒãšäžç·ã«èªã¿ãªããé©å®å£é ã§è£è¶³ã解説ã亀ããŠããããšã¡ã³ãã£ãŒã¯æ·±ãçè§£ããããšãã§ããŸãã ãã®æãèªåã§è§£èª¬ãå§ãããBASEã®äºæ
ãäžæ¹çã«äŒããã ãã§ã¯ãªããããã®äžã§ã©ã®éšåãããããªãã§ããããããªãã®åã®äŒç€Ÿã§ã¯ã©ãã§ãããããšãŸã質åãããŠè©±ãèããŠãããŸãããããããããã¡ã®äŒç€Ÿã§ã¯ããã¯éããŸãããããã¯åãã§ãããšããäŒè©±ãåºããŠãããŸãããã ãçžæãç¥ãããã£ã³ã¹ã¯ã©ãã«ã§ã転ãã£ãŠããŸãã ãããã« å°ã倧è¢è£ã§ãããã¡ã³ã¿ãŒãšãªãããªãã®å°è±¡ãBASEã®ç€Ÿå¡å
šäœã®å°è±¡ã決ãããšèšã£ãŠãéèšã§ã¯ãããŸãããããçžæã幎äžã ã£ããèªåããçµéšãæµ
ããŠããçžæãžã®ãªã¹ãã¯ããå¿ããçæ¯ã«åãåããŸãããã ãªããæåå³åã§ããç§ã®é
ä¿¡ããŠããã©ãžãªã³ã³ãã³ãããèãããã ãããšããªã³ããŒãã£ã³ã°ã«å¯ŸããŠããã«ã€ã¡ãŒãžãæ¹§ãããªãšæããŸãã ãã¡ãã¯ããªã³ããŒãã£ã³ã°ããŠãããåŽç¹æã®çŠããããã倱æãªã©ã«ã€ããŠè©±ããŠããŸãããªã³ããŒãã£ã³ã°ãããåŽã®æ°æã¡ãå°ãã§ãæãåºããã£ããã«ãªãããšæããŸãã BASEã§ã¯ãœãããŠã§ã¢ãšã³ãžãã¢ãåéããŠããŸãããã²æ¡çšæ
å ±ããŒãžãã芧ãã ããã æ¡çšæ
å ± | BASE, Inc. - BASE, Inc.
ã¯ããã« BASE BANK Division ã§ ãšã³ãžã㢠ãããŠãã岩æ¬ãšç³ããŸãïŒ YELL BANK ã®éçºãæ
åœããŠããŸãã 2024幎5æã«BASEãžjoinããŠæ©ããã®ã§5ã¶æã»ã©ãçµã¡ãŸããã joinããŠããããã€ãã®ãããžã§ã¯ããæ
åœããŠããŸããã æ¹ããŠèãããšãªã³ããŒãã£ã³ã°ããšãŠãå
å®ããŠãããããã§åæ»ã«ãããžã§ã¯ãã«å
¥ã£ãŠãããã®ã ãªããšæããŸãã ããã§ããªã³ããŒãã£ã³ã°ãäžå¿ã«ãããŸã§ã®5ã¶æãæ¯ãè¿ãã€ã€ãããŒã ãæ°èŠã¡ã³ããŒã®ãã£ããã¢ããã«åããŠãã©ã®ãããªåãçµã¿ãè¡ã£ãŠãããã玹ä»ãããŠé ãããšæããŸãïŒïŒ åçœ®ã æ¬é¡ã«å
¥ãåã«å眮ãã§ãã ç§ã®æ®æ®µã®æ¥åãã€ã¡ãŒãžããããããã«äœå¶ã圹å²ãåçš®ç°å¢ã«ã€ããŠãäŒãããŸãïŒ äœå¶ ãŸãã¯äœå¶ã§ãã ç§ã®æ
åœãã YELL BANK ã§ãããjoinãã5ææç¹ã§ã¯ä»¥äžã®ãããª3åäœå¶ã§éçºããŠããŸããã EPMïŒEngineering Program Managerã®ããšã§ãã ãã¡ã ããåèãã ãããïŒ ãšã³ãžãã¢2åïŒå
1人ãç§ïŒ 7æä»¥éã¯ä»¥äžã®äœå¶ã«ç§»è¡ããŠããŸãã EPM ãšã³ãžãã¢1åïŒç§ïŒ åœ¹å² æ¬¡ã«åœ¹å²ã§ãã ç§ã¯ãšã³ãžãã¢ã§ãããBASE BANKã§ã¯ããã«ãµã€ã¯ã«ãšã³ãžãã¢ããšãã圹å²ãæ±ããããŸãã ãã«ãµã€ã¯ã«ãšã³ãžãã¢ã«ã€ããŠã®èšäºã¯éå»ã«Group Managerã®æŸéªãã( @applepine1125 )ãæžãã ãã¡ã ããåèãã ããã ãã®ãããäŒç»ã»èŠä»¶å®çŸ©ãä¿å®éçšã»ããŒã¿åææ¯æŽçãŸã§å¹
åºã察å¿ããããšãå¿
èŠã«ãªããŸãã ããã«ãããéçºããŒã ã ãã§ãªããPdMããã¶ã€ããŒãPMMãšãã£ãè·èœã®ã¡ã³ããŒãšãé »ç¹ã«ã³ãã¥ãã±ãŒã·ã§ã³ãçºçããŸãã äœæçã«ã¯éçºããŒã ïŒ7ãPdMã»PMMã»ãã¶ã€ããŒïŒ3ãããã®å²åã§ã³ãã¥ãã±ãŒã·ã§ã³ããŠããŸãã åºç€Ÿé »åºŠ ã³ãã¥ãã±ãŒã·ã§ã³ã«é¢é£ãã話ã§ãããçŸç¶ãBASE BANKã®éçºããŒã ã§ã¯é±1ïŒæ¯é±æšæïŒã«åºç€Ÿæ¥ãèšãããã®ä»ã¯ãªã¢ãŒãã¯ãŒã¯ã§ãã éçºç°å¢ æåŸã«ã¢ãŒããã¯ãã£åšãã®ã話ã§ãã ç§ã®æ
åœãã YELL BANK ã®éçºæ¥åã«ãããŠã¯ä»¥äžã®å³ã®äžåŽã«ããBASEã®ãµãŒãã¹ãšäžåŽã«ããBASE BANKã®ãµãŒãã¹çŸ€ãå®è£
ããŠãããŸãã ã芧ã®éããããã³ããšã³ãã¯TypescriptïŒVue.jsïŒãããã¯ãšã³ãã¯PHPãGoãPythonãšãã圢ã§è€æ°ã®èšèªã§éçºããŠããŸãã ãŸããã€ã³ãã©ã¯äž»ã«AWSã䜿çšããŠãããIaCã§ã¯terraformã䜿çšããŠããŸãã æ¬é¡ å眮ããå°ã
é·ããªããŸããããããããæ¬é¡ã§ãã ç§ã广ãæããåãçµã¿ãªã©ã5ã€ç޹ä»ãããŠé ããŸãïŒïŒ ãã®1ããªã³ããŒãã£ã³ã°ã¯ãšã¹ã BASE BANKããŒã ã§ã¯ãªã³ããŒãã£ã³ã°ã¯ãšã¹ããçšæããŠããŸãã 以äžã¯Notionã§äœæãããªã³ããŒãã£ã³ã°ã¯ãšã¹ãã®TOPããŒãžã«ãªããŸãïŒ æ°èŠã¡ã³ããŒã¯ãŸãã¯ãšã¹ãã«æ²¿ã£ãŠéçºç°å¢æ§ç¯çã®åçš®ã»ããã¢ãããããŠãããŸãã ããã«éçºç°å¢æ§ç¯ã ãã§ãªãããããã¯ãã®èª¬æãåããããå®éã«è§Šã£ãããšãã£ãç ä¿®ãè¡ããŸãã ãªã³ããŒãã£ã³ã°äžã¯ã¡ã³ã¿ãŒã1人ä»ããŸãããã¯ãšã¹ãã®äžã§PdMããã¶ã€ããŒãšãã£ãä»ã®è·èœã®ã¡ã³ããŒãšãæ¥ããŸãã ãã«ãµã€ã¯ã«ãšã³ãžãã¢ãšããŠã¯ã³ãŒããæžãããšããã ãã§ã¯äžååã§ãã ãã®ããããããã¯ãã®ç ä¿®ããã£ãããä»ã®è·èœã®ã¡ã³ããŒãšã³ãã¥ãã±ãŒã·ã§ã³ã§ããæ©äŒããã£ãã®ã¯æ¥åãé²ããã®ã«å€§å€å©ãããŸããïŒ ãŸããã¯ãšã¹ãã§ã¯ãªã³ããŒãã£ã³ã°ã¿ã¹ã¯ãšãããã®ãçšæããŠããŸãã ç°¡åãã€æ¥åã1ãµã€ã¯ã«åãããšãã£ãæåã®ãã£ããã¢ããã«ã¡ããã©ããã¿ã¹ã¯ã®ããšã§ãã ç§ã®å Žåãifæãå°ãä¿®æ£ããã°OKãªç°¡åãªã³ãŒãä¿®æ£ãšãããããããã€ãããšããã¿ã¹ã¯ã§ããã ããã«ããäžéãã®éçºã®æµããææ¡ã§ããŸããã ã¯ãšã¹ãã¯ãªã³ããŒãã£ã³ã°ãçµäºãããã³ã«æ¯ãè¿ããããŠæ¹åãéããŠããŸãã ãã®2ããªã³ããŒãã£ã³ã°æéäžã¯æ¯æ¥åºç€Ÿ ãªã³ããŒãã£ã³ã°æéã¯1ã2é±éã§ãã ãã®éãåºæ¬çã«ã¯æ°èŠã¡ã³ããŒãã¡ã³ã¿ãŒãæ¯æ¥åºç€ŸããŸãã ãã®ãããããã«ã¡ã³ã¿ãŒãä»ã®ã¡ã³ããŒã«è³ªåããããšãã§ããŸãã 察é¢ãªã®ã§ãè§£æ±ºãæ©ãã§ãã ãã以äžã«ã¡ã³ããŒãšã®ä¿¡é Œé¢ä¿ãããªãæ©ãæ§ç¯ã§ãããšããã¡ãªãããæããŸãã ãªã¢ãŒãã®å Žåãã³ãã¥ãã±ãŒã·ã§ã³éãå°ãªããªãåŸåããããããåºç€Ÿã«ãã察é¢ã®ã³ãã¥ãã±ãŒã·ã§ã³ã§ã¬ã¯ãã£ãŒãåããããããšã§ã·ã¹ãã ããããã¯ãã®ã€ã³ãããéã»è³ªãäžãããŸããã 仿¯ãè¿ã£ãŠã¿ãŠãæåã«åºç€ŸããŠããããšã§ãªã³ããŒãã£ã³ã°åŸã®æ¥åãåæ»ã«é²ããããšãã§ããŸããã ãŸããå
¥ç€Ÿåã»çŽåŸã«ã³ãã¥ãã±ãŒã·ã§ã³ã«äžå®ãæããæ¹ã¯å€ããšã¯æããŸãããBASEã§ã¯æ©æã«ãã®ãããªäžå®ãè§£æ¶ããããšãã§ããŸããïŒ ãã¡ãªãããšããŠéå€ã®è² è·ã¯ãããŸãããããããè¶
ããã¡ãªããã享åã§ãããšæããŠããŸãïŒ å眮ãã§ãèšèŒããéãããªã³ããŒãã£ã³ã°çµäºåŸã¯é±1ïŒæ¯é±æšæïŒã§åºç€ŸããŠããŸãã ãã®3ãããã¥ã¡ã³ãæå ãªã³ããŒãã£ã³ã°çµäºåŸãããæ¬æ Œçãªæ¥åã«å
¥ãããã§ããããŸã ãŸã åãããªãããšã¯ãããããããŸãã BASE BANKã«ã¯ããã¥ã¡ã³ããæ®ãæåããããŸãã åãããªãããšãããã°NotionãREADMEãèŠãã°çãã«èŸ¿ãçãããšãå€ãã§ããããããã¯ãªã«ãããã®ãã³ããããããšãå€ãã§ãã æ¥åããŠãããšå€§æµãã©ã®ã¡ã³ããŒãåãããšã§å°ããã¿ãŒã³ãå€ãã®ã§ããããªãšãã®ããã«ãã©ãã«ã·ã¥ãŒãã£ã³ã°ããŸãšããããã¥ã¡ã³ããååšããŸãã å人çã«ã¯ãªã³ããŒãã£ã³ã°çŽåŸã¯ãã®ããã¥ã¡ã³ãã«å€§å€å©ããããŸããã 以äžã¯ãã®ãã©ãã«ã·ã¥ãŒãã£ã³ã°ã®ããã¥ã¡ã³ããäžéšæç²ãããã®ã§ãã ãã®4ãã¡ã³ã¿ãŒã©ã³ã BASEã«ã¯ã¡ã³ã¿ãŒã©ã³ããšããå¶åºŠããããŸãã å
¥ç€ŸåŸãäž»ã«æ¥åã§é¢ããã¡ã³ããŒãšã©ã³ããããšãããã®ã§ãã è²»çšã¯äŒç€Ÿè² æ
ã§ãã ãã®å¶åºŠã«ãããèªåã§æ©äŒãèšãããšãä»çµã¿ã§ã³ãã¥ãã±ãŒã·ã§ã³ã®æ©äŒãèšããããšãã§ããŸãã ãããžã§ã¯ãéå§åã«ãšã³ãžãã¢ä»¥å€ã®è·èœã®ã¡ã³ããŒãšãã話ã§ããããšã§ããããããžã§ã¯ããé²ãããšãããšãã«ãããããã£ãã®ãèŠããŠããŸãã ãã®5ãæ¯ãè¿ãæå BASE BANKã§ã¯ã¹ããªã³ãããšã«ãæ¯ãè¿ãããŸãããããããã®ãããžã§ã¯ãåŸã«ãæ¯ãè¿ããããæåããããŸãã ãããžã§ã¯ãã®æ¯ãè¿ãã¯è·èœæšªæçã«ãã®ãããžã§ã¯ãã«é¢ãã£ãã¡ã³ããŒå
šå¡ãåå ããŸãã ç§å人ãšããŠã¯æ¯ãè¿ãã®å Žã¯ãããã¯ããç¥ãæ©äŒã§ãããã人ãç¥ãæ©äŒã§ããããŸãã ãã®äººã®è·èœãçµéšã«ãã£ãŠè²ã
ãªæèŠãåºãŸãã ãããŠèªåãæèŠãåºããŸãã æèŠãåºããšããããšã¯ãããžã§ã¯ãããããã¯ãã«ã€ããŠãåžžã«èœåçã«èããŠããå¿
èŠããããŸãã æ¯ãè¿ãæåã®ãããã§èªç¶ãšãã®ãããªèãã«ãªã£ãŠããããã«æããŸãã ã€ãŸããèªç¶ãšãæ©ããã£ããã¢ããããªããããšããæ°æã¡ã«ãªããŸãã ãŸãšã æ¹ããŠãããŸã§ã®4ã¶æãæ¯ãè¿ã£ãŠã¿ãŸããã æ¯ãè¿ã£ãŠã¿ããšåæ»ãªã³ãã¥ãã±ãŒã·ã§ã³ãšãããšããã«BASE BANKã®åŒ·ã¿ãããã®ã ãšæããŸãã ãããŠãããã«ããããŒã ãã¬ã€ã«åŒ·ã¿ãããã®ã ãšæããŸãã ç§èªèº«ã¯ãŸã ãŸã å
šè¬çã«ç¥èãäžè¶³ããŠããã®ã§ãããŒã ååäžã«å¯äžã§ããããã«éé²ããŸãã ãããã« BASE BANKã§ã¯ãã£ããã«åã仲éã倧åéããŠãããŸãïŒ ãã«ãµã€ã¯ã«ãšã³ãžãã¢ãšãã圹å²ã«èå³ããããšããæ¹ã¯ãŸãã¯ã«ãžã¥ã¢ã«é¢è«ããã§ããå¿åé ãããšããããã§ãïŒ âã®æ¡çšããŒãžã®åéè·çš®äžèЧãããBASE BANKããŒã ã§6.éèãµãŒãã¹ïŒBASE BANKããŒã ïŒãéžæé ããŠã«ãžã¥ã¢ã«é¢è«ã«ãå¿åã§ããŸãïŒ binc.jp
ããã«ã¡ã¯ïŒ BASE BANKã§ãã æè¿ã¯å€§ããªã«ã³ãã¡ã¬ã³ã¹ã ãã§ãªãæ§ã
ãªã³ãã¥ããã£ã®ãªãã©ã€ã³ã€ãã³ããå¢ãããã€ãŠä»¥äžã®æŽ»æ°ã§æº¢ããŠãããªãšæããŠããŸãã æã
BASE瀟ã倧å°ããŸããŸãªã«ã³ãã¡ã¬ã³ã¹ãã€ãã³ãã«ã¹ãã³ãµãŒããããŠããã ããŠãããŸãããä»åã¯BASE BANKãšããŠããã£ãšã¹ãã³ãµãŒã®é »åºŠããããŠãããïŒã¹ãã³ãµãŒãããŠãã ããïŒãšããå
容ã®èšäºã§ãã BASE BANKã£ãŠ? ã¹ãã³ãµãŒã®çç±ãã€ãã³ããšã®ãããã³ã°ã®ããã«ããŸãã¯è»œãBASE BANKã«ã€ããŠèªå·±ç޹ä»ãããŠãã ããã BASE BANKã¯BASE瀟ã®1äºæ¥éšã§ãã ãéè¡ãããããã«ããå
šãŠã®äººãææŠã§ããäžã®äžã«ããšããããã·ã§ã³ãæ²ããå人ãã¹ã¢ãŒã«ããŒã ã®è³éç¹°ãã«é¢ãã課é¡è§£æ±ºãè¡ã£ãŠããŸãã https://speakerdeck.com/base/basebank çŸåšããBASEãã®ã·ã§ãããªãŒããŒåãã«ã¯ããYELL BANKãããBASEã«ãŒãããããæ¥ãæ¯èŸŒ(æ¯èŸŒç³è«)ãã®3ã€ãæäŸããŠãããã°ã«ãŒãäŒç€Ÿã®PAY.JPãšåæ¥ããPAY.JP YELL BANKããšããŠãBASEã以å€ã®ãã©ãããã©ãŒã ãžãåºãäŸ¡å€æäŸããå§ãããšããã§ãïŒ 8æã«å
¬éããIRè³æããããããããã«ããããããããšã«ãYELL BANKããçé ã«åãããã¯ãããã¡ããã¡ãé 調ã«ã°ããŒã¹ããŠããŸãã ãããããã£ãšBASEã°ã«ãŒãå
šäœããªãŒãã§ãããããªäºæ¥éšãžãšæé·ããŠããããã«ãçŸäºæ¥ã®ã°ããŒã¹ãšæ°èŠäºæ¥ã®åµåºã®2軞ããã«ã¢ã¯ã»ã«ã§æšé²ããŠããŸãã https://contents.xj-storage.jp/xcontents/AS08546/360b2858/87ab/484c/9da2/062c0fb17663/140120240806563776.pdf çŸåšããšã³ãžãã¢ãšBizdevãäºæ¥äŒç»ã®ããžã·ã§ã³ããªãŒãã³ããŠããŸãããç¹ã«ãšã³ãžãã¢ãç©æ¥µå€§åéäžã§ãïŒ https://open.talentio.com/r/1/c/binc/homes/4380?group_ids=9203 ãªãã§ã¹ãã³ãµãŒãããã®? ã¹ãã³ãµãŒãããŠããããçç±ã®ïŒã€ã¯äºæ¥éšã®èªç¥åºŠåäžã®ããã§ãã BASE瀟ãšããŠã¯ããããããããšã«ãããŸã§ã®ã¹ãã³ãµãŒã®ç©ã¿éããCMãªã©ãéããŠèªç¥ããŠãã ãã£ãŠããæ¹ãå€ãããã£ããããŸãã ãããBASE BANKãšããäºæ¥éšãšããŠã¯ãŸã ãŸã èªç¥åºŠã«äŒžã³ããããããâBASEã£ãŠECã ããããªããã§ããïŒâãšã¹ã«ãŠããã€ãã³ããªã©ã§åããŠç¥ã£ãŠããã ãæ©äŒããŸã ãŸã å€ãã§ãã äžã«ãæžããããã«ããããªãæäŸäŸ¡å€ãæäŸé¡§å®¢ã®æ¡å€§ã®ããã«çŸåšãã«ã¢ã¯ã»ã«ã§äºæ¥ãšçµç¹ã®å¢åŒ·ããããªã£ãŠãããšããã§ããããŸã ãŸã 仲éãè¶³ããŸããã ãã¡ããã¡ããããããããšãã£ãŠãäºæ¥éšããããïŒãã£ãŠããããããšã®ããã«ãŸã ãŸã 仲éãå¿
èŠã ãïŒãšããã¢ããŒã«ã®å Žãå¢ãããŠãããããšèããŠããã®ã1ã€ç®ã®çç±ã§ãã çç±ã®2ã€ç®ãšããŠãã³ãã¥ããã£ã®çºå±ããµããŒãããŠãããããšããæãããããŸãã ã³ãã¥ããã£ãã€ãã³ãã®ååšãæ¥ã
ã®ãã¬ã³ããã£ããã¢ãããã¢ãŠããããã®èµ·ç¹ã«ããªããããã«ãããéããâãããã€ãªããâãçãŸããããšã§äŒç€Ÿã®çµç¹æåãèŠçŽãããæ©äŒã«ãã€ãªãã£ããããŸãã æã
ããããã£ãã³ãã¥ããã£ã®æ©æµãåããŠããããšããããäŒç€ŸãšããŠãæããæ§ã
ãªã³ãã¥ããã£ãžã¹ãã³ãµãŒãšããŠåŸ®åãªããå¿æŽããããŠããã ããŠããŸããã ãããŸã§ã¯PHP ConferenceãGo Conferenceãªã©ãæ¯èŒç倧ããªã€ãã³ããã³ãã¥ããã£ãžã®ã¹ãã³ãµãŒãã¡ã€ã³ã§ãããããã现ããç¶ç¶çã«BASE BANKãç¥ã£ãŠããããæ©äŒãå¢ãããããã³ãã¥ããã£ã®è£ŸéãåºãããæäŒãããã£ãšãã£ãŠãããããšããæãããããä»åã¹ãã³ãµãŒç«åè£ãããã«è³ããŸããã äžç·ã«çµãã§ããããã€ãã³ããã³ãã¥ãã㣠BASE BANKãšããŠããäºæ¥ãçµç¹ã®ããæ¹ãæè¡ã¹ã¿ãã¯ãšèŠªåæ§ã®é«ãã³ãã¥ããã£ãã€ãã³ããšã¿ãã°ãçµãã§ãããããšèããŠããŸãã å
·äœçãªãžã£ã³ã«ãšããŠã¯ä»¥äžãæ³å®ããŠããŸãã äºæ¥é å Fintech EC éçºããã»ã¹ ã¹ã¯ã©ã ã¢ãžã£ã€ã« ããã°ã©ãã³ã°èšèª PHP Go TypeScript(React, Vue) èŠæš¡ãšããŠã¯~100äººèŠæš¡ãæ³å®ããŠããŸãã ãããŸã§çŸæç¹ã§ã®æ³å®ãªã®ã§ãäžã«æžãã以å€ã§ãç念ã«åŒ·ãå
±æãããŠããã ããããèŠªåæ§ã®é«ããæããã³ãã¥ããã£ãã€ãã³ããšã®ãçžãããã°ãã²ãæäŒããããŠããã ãããã§ãïŒ BASE BANKãšããŠãæäŸã§ãããã® äŒå Žã¹ãã³ãµãŒ æ±äº¬éœæž¯åºå
æ¬æšäžäžç®2çª1å· äœåäžåç£å
æ¬æšã°ã©ã³ãã¿ã¯ãŒ 37F æå€§50åçšåºŠå容å¯èœ(æ€
åãããŒãã«ããã®å Žå) ã¬ã€ã¢ãŠãäŸ (çŽ40åèŠæš¡ã®ã€ãã³ã) https://devblog.thebase.in/entry/welcome_fintech2 çºè¡šçšã®æŒå°ãããããã®å·Šå³ã«ãããžã§ã¯ã¿ã䜿ã£ãŠæåœ±ããããšãã§ããŸãã 飲é£ã¹ãã³ãµãŒ äºç®ã¯10äžçšåºŠãŸã§ãæ³å®ããŠãããŸãã äžæŠ10äžä»¥äžãšãããŠããã ããŠãããŸããå€å°èª¿æŽã¯å¹ãã®ã§ãäºç®ãšæäŸããããªã³ã¯ãé£äºã«ã€ããŠã¯éœåºŠãçžè«ãããŠãã ããïŒ ã€ãã³ãæã«ãããŠããã ãããããš ã€ãã³ãã®äœåŠãã®ã¿ã€ãã³ã°ã§BASE, BASE BANKã®äŒç€Ÿç޹ä»ããããŠãã ããïŒ 3åçšåºŠãæéãé æŽããŸãã ãé£çµ¡å
ãšãããã話ãèããŠã¿ããïŒãšããã ãã§ãæ§ããŸããã以äžãã©ãŒã ãããã²ãåãåãããã ããïŒ https://binc.jp/contacts/jobs äŒå Žãäºç®ã®ç¢ºèªã®ãããã€ãã³ãéå¬ã®1ã¶æåã«ã¯ã声ããããã ãããšå¹žãã§ãã ãããã« ä»åããã°ãšããŠåç¥ãåºãããŠããã ããŸãããããã¡ããããç©æ¥µçã«çŽæ¥ã声ãããããŠããã ããŸãã ãŸããäºæ¥ãäžç·ã«äœã£ãŠãã仲éã倧åéäžã§ã! https://open.talentio.com/r/1/c/binc/homes/4380?group_ids=9203 å°ãã§ããèå³ããæ¹ã¯æ¯éã話ããŸãããïŒ
ã¯ããã« BASEã®Product Dev / Feature Dev1 Groupã§ã¢ããªã±ãŒã·ã§ã³ãšã³ãžãã¢ãããŠããTorataã§ãã BASEã«å
¥ç€ŸããŠæ©ãã3ã¶æããã¡ãŸããã å°ãã¥ã€BASEã®ä»äºãç°å¢ãæåã«ãæ
£ããŠããã®ã§æ¯ãè¿ããå
ŒããŠå
¥ç€Ÿãšã³ããªãŒãæžãããšæããŸãã BASEã«èå³ãæã£ãŠããæ¹ã®åèã«ãªãã°å¬ããã§ãïŒ å
¥ç€Ÿã®çµç·¯ åè·ã§ã¯ãæ°åããçŽ5幎éãããã¯ãšã³ããšã³ãžãã¢ãšããŠåããŠããŸããã åšãã«ã¯ä¿¡é Œã§ããçŽ æŽãããæ¹ã
ãå€ããå¹
åºãçµéšãããããšãã§ããŸããã ãã èªèº«ã®ãã£ãªã¢ãèãããšãã«ããã倧ããªããŒã ã§å€§èŠæš¡ãªã·ã¹ãã ãæ±ãçµéšãç©ã¿ããããã®äžã§ããã«ãšã³ãžãã¢ãšããŠã®å°éæ§ãé«ããŠãããããšæã転è·ã決æããŸããã BASEã«å
¥ç€Ÿããçç±ã¯ãããžã§ã³ã«å
±æããæé·ã§ããç°å¢ãæŽã£ãŠãããšæããããã§ããBASEã®ãããã¯ãã¯ãå人ãã¹ã¢ãŒã«ããŒã ããšã³ãã¯ãŒã¡ã³ããããããšã«ãã©ãŒã«ã¹ããŠããã誰ãã倧ããªçµç¹ã«é Œãããšã掻èºã§ããæä»£ã«éåžžã«ããããããµãŒãã¹ã ãšæããŸããã ãŸããç§ã®èº«è¿ãªäººãBASEãå©çšããŠããããšãããã圌ãã®ãããªäººã
ãæ¯ããããšãã匷ãæããèœçããŸããã ããã«ãBASEã®ãšã³ãžãã¢çµç¹ã§ã¯ã«ã³ãã¡ã¬ã³ã¹ã§ã®ç»å£ããçŸåšç§ãæžããŠããããã¯ããã°ã®ãããªçºä¿¡æŽ»åãçãã«è¡ãããŠãããããããç°å¢ã§èªåãæé·ã§ããå§¿ãã€ã¡ãŒãžã§ããããšããå
¥ç€Ÿã決ãã倧ããªçç±ã§ãã BASEã®ãããªãšæããšã 1. ããŒã å€ã®ã¡ã³ããŒãšäº€æµã§ããæ©äŒããããããã BASEã§ã¯ãå
¥ç€ŸåŸ8åãŸã§ããŒã å
å€ã®ã¡ã³ããŒãšã©ã³ãã«è¡ãããã¡ã³ã¿ãŒã©ã³ãããã3ã¶æã«1床ãªãã£ã¹ã§éå¬ããããç· ãäŒããååŸ7æä»¥éã«ãªãã£ã¹å
ã®ããŒã«ãŠã³ã¿ãŒã§ã¢ã«ã³ãŒã«ãå«ãåçš®ããªã³ã¯ã楜ããããšãã§ãããªã©ã瀟å¡å士ã亀æµã§ããæ©äŒãå€ãèšããããŠããŸãã ç§ãå
¥ç€ŸããŠããããŒã å
å€ã®å€ãã®æ¹ã
ãšäº€æµããããšãã§ããŸããã ç§ã¯åè·ã¯æ¯æ¥ãªãã£ã¹åºç€Ÿã®äŒç€Ÿã ã£ãã®ã§ãã€ããªããã¯ãŒã¯ã宿œããŠããBASEã§ã®ã³ãã¥ãã±ãŒã·ã§ã³ã®åãæ¹ã«äžå®ããã£ãã®ã§ããããªããªãåè·ãããä»ã®æ¹ãšè©±ãæ©äŒãå€ãããããªãããšæããããã«ã³ãã¥ãã±ãŒã·ã§ã³ãåããæ©äŒãå€ãèšããããŠããŸãã ã³ãã¥ãã±ãŒã·ã§ã³ãéããŠã©ããã人ãåãã£ãŠããæ¹ãæ¥åãã¹ã ãŒãºã«é²ããããããããããæ©äŒãéããŠæ®æ®µæ¥åã§ã¯é¢ããã®ãªã人ãšã亀æµãæã€ããšãã§ããã®ã§å€§å€å©ããããŠããŸãã 2. ãMove Fastãã§æ¯ãåãæåããã ãã£ããã§å°ãããšãçåãåããšãããã«å€ãã®ã¡ã³ããŒãå©ããŠãããŸãã ç¹ã«ãªã³ããŒãã£ã³ã°æéäžã¯ãæ°ããç°å¢ã«å¯Ÿããäžå®ãçåãå€ãã£ãã®ã§ãããäœåºŠãå©ããŠããããŸããã å®éãèªåã®ãªã³ããŒãã£ã³ã°ãã£ã³ãã«ã«ãããã£ãŠã©ããªã£ãŠãããã ããïŒããšããããè©°ãŸã£ã¡ãã£ããªãŒãã¿ãããªå°ãããšãéã«æããŠã誰ãããããããæŸã£ãŠãããŠèª¬æããã解決ãŸã§æã£ãŠãã£ãŠãããŸãã 现ããªçåãã¡ãã£ãšããæ©ã¿ã«ãè¿
éã«åå¿ããŠããããããšã§ãäœããã£ãæã«ã¯èª°ããå©ããŠããããšããå®å¿æãšãããå°ã£ãŠãã人ãèŠããããèªåãåãããã«å©ããŠãããããšãããã埪ç°ãã§ããŠãããªãšæããŠããŸãã BASEã«ã¯Move Fast以å€ã«ãè¡åæéããã£ãŠããããã®âBASEãããâãå人çã«ã¯é
åã«æããŠããŸãã 3. ã¢ãã³ãšã¬ã¬ã·ãŒ2ã€ã®ç°å¢ãçµéšã§ãã BASEã¯10幎以äžç¶ããŠãããµãŒãã¹ã§ãããé·å¹Žäœ¿ãããŠãããªããžããªãšããªãã¬ã€ã¹å
ã®æ°ãããªããžããªã®2ã€ãååšããŠããŸãã æ°ãããªããžããªã§ã¯ã¢ãžã¥ã©ã¢ããªã¹ãæ¡çšãããŠãããçŸä»£ã®æ°Žæºã«åã£ãã¯ãªãŒã³ãªã³ãŒãã«è§Šããããšãã§ããŸãã äžæ¹ã§ãå€ããªããžããªãæ¹åãé²ããããŠãããã¬ã¬ã·ãŒã³ãŒãã«ã©ãç«ã¡åãã£ãŠããããçµéšã§ããŸãã ãšã³ãžãã¢ãšããŠã¯åžžã«ã¢ãã³ãªç°å¢ã§éçºãããæ¹ãæ¥œãããããããŸããããçŸå®çã«ã¯ã¬ã¬ã·ãŒã³ãŒããšãåãåãããšãé¿ããããªããšå人çã«ã¯èããŠããŸãã ã¢ãã³ãšã¬ã¬ã·ãŒ2ã€ã®ç°å¢ãçµéšããããšã§ãšã³ãžãã¢ãšããŠå€§ããæé·ã§ããããããªãããšä»ããã¯ã¯ã¯ã¯ããŠããŸãã ä»åŸããããããš ç§ã®åšãã«ã¯ãéåžžã«åªãããå°æ¬ã§ãããšã³ãžãã¢ãå€ãããŸãããŸãã¯ãã®ã¬ãã«ã«è¿œãã€ãããšãç®æšã«ãæ¥ã
åªåããŠããŸãã çŸåšã¯å€ããåŠã³ãªãããããŒã ã®ãµããŒããåããŠããæ®µéã§ãããå°æ¥çã«ã¯ãèªåã ããããã§ãããè²¢ç®ã暡玢ããããŒã ãçµç¹ã«æ°ããªäŸ¡å€ãæäŸã§ãããšã³ãžãã¢ãç®æããããšèããŠããŸãã ããã㫠以äžã§ç§ã®BASEã®å
¥ç€Ÿã®çµç·¯ãå
¥ç€ŸããŠãããªãšæããšããã玹ä»ããŸããã ãã®èšäºãèªãã§å°ãã§ãBASEã«èå³ãæã£ãŠãããããå¬ããã§ãã BASEã¯çŸåšãšã³ãžãã¢ç©æ¥µæ¡çšäžãªã®ã§èå³ãããã°æ¡çšæ
å ±ãã²ã芧ãã ããïŒ BASEã§äžç·ã«åããŸãããïŒ binc.jp
ã¯ããã« ããã«ã¡ã¯ãProduct Management Group ã§ ãããã¯ããããžã¡ã³ã ãããŠããåæ±ïŒ @7auto ïŒã§ãã ãªãœãŒã¹çãªåé¡ã§ãããã¹ãããšããããããã£ãŠãå°ããã®æ¹åãPJã«æãåããªãããããªãæ©ã¿ãæã€æ¹ã¯ããããããã£ãããã®ã§ã¯ãªãã§ããããã ãµãŒãã¹ã倧ãããªããšPJã®èŠæš¡ã倧ãããªã£ãŠãããŸãããã®çµæãå°ããã®PJãæ¹åã®åªå
床ãäžãããã¡ã«ãªããŸãã äžæ¹ã§ãå°ããã®PJãæ¹åã¯ãµãŒãã¹å©çšè
ã®å£°ããçãŸããããšãå€ãããããæŸçœ®ãç¶ããããšã¯ãµãŒãã¹äœéšã®æªåã«ç¹ãããŸãã ããã§å€§ããªPJãšäžŠè¡ããŠãããããå°ããã®PJãæ¹åã«å¯Ÿããæå°ã®ã³ãã¥ãã±ãŒã·ã§ã³ã³ã¹ãã§æ©èœãªãªãŒã¹ããããšããã³ã³ã»ããã§ç«ã¡äžããããªãªãŒã¹ãè¡ããŸããã ãå
šå¡éãŸã£ãã®ã¯ããã¯ãªããšæ¯ãè¿ãã ãããããªå®äŸãDailyãç¡ãPJãéããŠãäœã³ã¹ããªã ãã§ãªãåäººã®æé·ã«ãã€ãªããã¡ãªãããããããã«æããããŸããã æ¬çš¿ã§ã¯ããããåŸãããããšãå
±æã§ããã°ãšæããŸãã äœã³ã¹ããã³ã³ã»ããã«ããèæ¯ åœæãèªåã¯æ¬ä»¶ã®ä»ã«3PJïŒãã®ãã¡éçºã2ä»¶ïŒãåæé²è¡ããŠããŸããã ä»ã®PJã§ã¯ã¢ãžã£ã€ã«ãªéçºæ¹åŒãåã£ãŠãããæ¯é±ã¹ããªã³ãã€ãã³ãDailyMTGã宿œããªããæŒžé²çã«é²ããŠããŸããã ã¢ãžã£ã€ã«ãªéçºæ¹åŒãåãããšã§äžç¢ºå®æ§ãžã®å¯ŸåŠã¯å®¹æã«ãªãäžæ¹ãã³ãã¥ãã±ãŒã·ã§ã³ã«å²ãæéã倧ãããªããŸãã ãã®ãããïŒéçºãã¢ãžã£ã€ã«ã«ãããšæéçãªé¢ã§èªåãããã«ããã¯ã«ãªãæžå¿µãæããŸããã ããã§ãéçºèŠæš¡ãäžçªå°ããã£ãæ¬ä»¶ã®PJã¯ã¢ãžã£ã€ã«ã«ãšãããããã§ããã ãã³ãã¥ãã±ãŒã·ã§ã³ã³ã¹ããäžããããPJãèšèšããŸããã ã¡ã³ããŒæ§æã»åã£ãããšã»ã¹ã±ãžã¥ãŒã«æ ãã®PJã¡ã³ããŒæ§æã¯ãããã¯ããããŒãžã£ãŒïŒèªåïŒããã¶ã€ããŒãããã¯ãšã³ããšã³ãžãã¢ãããã³ããšã³ããšã³ãžãã¢ãããã»ã¹ãšã³ãžãã¢ãçŽæ¥æã¯åãããªããããžã§ã¯ããããŒãžã£ãŒã®ïŒåã§ããããããå¥ã®PJãå
ŒåããŠããŸããã ãããã¯ããããŒãžã£ãŒããã¶ã€ããŒããšã³ãžãã¢ã¯äžç·ã«ä»äºããã®ãåããŠã®ã¡ã³ããŒå士ã§ããã ãŸããåã¡ã³ããŒãå¥ã®PJãå
ŒåããŠããéœåäžãå
šå¡ãæãã®ãåŸ
ã€ããšã¯ãããåå·¥çšãFIXãããŠæ¬¡ã®å·¥çšã«é²ãããŠã©ãŒã¿ãŒãã©ãŒã«ã«è¿ã圢ã«ãªããŸããã å®éã®ãªãªãŒã¹ãŸã§ã®ã¹ã±ãžã¥ãŒã«ã¯ãã£ãããšä»¥äžã®ãããªæµãã«ãªããŸããã 2é±éïŒPdMãäŒç»ã»ããã¥ã¡ã³ãå 2é±éïŒãã¶ã€ããŒãUI/UXãç¢ºå® 4é±éïŒãšã³ãžãã¢ãéçº 2é±éïŒPEãQA ãªãªãŒã¹ ã³ãã¥ãã±ãŒã·ã§ã³ãåããã ãåã£ãããããªãªãŒã¹ãããŸã§ã«å
šã¡ã³ããŒãé¡ãåãããã®ã¯ããã¯ãªãã ãã§ãã¢ãããã¯ãªMTGãæ°ããã»ã©ã§ããã PdMãšããŠæ°ãã€ããŠããããš ã³ãã¥ãã±ãŒã·ã§ã³ãåããšããããšã¯ããã¶ã€ããŒããšã³ãžãã¢ã¯ããã¥ã¡ã³ãããå¿
èŠååãªæ
å ±ãåŒãåºããå¿
èŠãããããšãæå³ããŸãã ãªã®ã§äŒç»ã®æ®µéã§äœéšããåãåããæã®å¯Ÿå¿ãªã©ãèæ
®ããèŠä»¶ã»äœéšã»å®è£
ãæèããPRDãäœæããŠãããŸããã ããã§ãããã€ã質åãåããã±ãŒã¹ããããŸãããã質åãåããéã¯2å以å
ã§çãããããã®æ°æã¡ã§ãããŸããã *1 çµæçã«ç¹ã«å€§ããªãã©ãã«ããªãã¹ã ãŒãºã«ãªãªãŒã¹ã§ããŸããã ãã®PJãéããŠåŸãããããš äœã³ã¹ãã§å€§ããªææ»ãããªãã£ãã®ã§ãå
šäœçã«ã¹ããŒãã£ãŒã«ç¡é§ãªãäŸ¡å€æäŸã§ããŸããã ä»åã®ãããªæ¹éã§PJãèšèšããããšã§ãæãåãã«ããå°ããã®PJã䞊è¡ããŠåããããšæããŸããã ãŸãããªãªãŒã¹ãéããŠå®¢èгçã«èªèº«ãèŠçŽãæ©äŒãåŸãããããšãéåžžã«ããžãã£ãã«ãšãããŠããŸãã ãŠã©ãŒã¿ãŒãã©ãŒã«ã«è¿ãéçºã¹ã¿ã€ã«ãšãªã£ãããšã§ä»¥äžãæèããå¿
èŠããã£ããããïŒä»äºãããäžã§åœããåã§ãããŸããïŒæ®æ®µã®ä»äºã®å§¿å¢ãæ¹ããŠèããè¯ãæ©äŒã«ãªããŸããã èªèº«ã§äœæããã¹ã±ãžã¥ãŒã«ã«è²¬ä»»ãæã€ æ
å ±äŒéã®å
容ã«è²¬ä»»ãæã€ ç¶æ³å€åã«å¯Ÿããå ±é£çžã®æèãé«ãã ç¹ã«ãã®PJã§ã¯Dailyããªãã®ã§ãææ¥å
±æããã°ãããããšããæ°æã¡ã«ãªããªãã£ãããšã倧ãããšæããŸããã ãŸããèªèº«ã®ããã¥ã¡ã³ããŒã·ã§ã³ã®è³ªã客芳çã«èŠçŽãè¯ãæ©äŒãšãªããŸããã PdMãšããŠã¯ããã¥ã¡ã³ãã§å¿
èŠååãªæ
å ±ãäŒããªããã°ãªããªãã£ãããšã§ã以äžãæ¹ããŠæèããããšã«ãªã£ãããã§ãã äžæçããæ®ããªã ç¡é§ãªããšãæžããªã èªã¿æã®ã³ã³ããã¹ããæèãã æåŸã«ãä»åã¯å°ããPJãã€åããŠã®ã¡ã³ããŒãšã®ä»äºã ã£ãã®ã§ãPJéçšã§ãã©ã€ãããã£ãããšãå°ãã詊ãããšãã§ããŸããã PJèŠæš¡ã倧ãããªããšãPJéçšã®ã¹ã±ãžã¥ãŒã«ãžã®åœ±é¿ãç¡èŠã§ããªããããç©æ¥µçãªãã©ã€ããã«ãããªããŸãã ãã®ãããããããæ¹åŒã®PJã¯å®éšãæ¯æãããã³ããªã®è§£æ¶ãšãã£ãæå³ãæãããããšãã§ããããã«æããŸããã ãããã« å°èŠæš¡ãªPJã§ããã°ãã³ãã¥ãã±ãŒã·ã§ã³ãåãèœãšããŠPJã®äžŠåæ°ãå¢ããããšãã§ããŸããããŸãã坿¬¡çã«ä»äºã®è³ªãããã»ã¹ãèŠçŽããšãã䟡å€ãæãããããšãã§ããŸããã å°èŠæš¡ã®éçºã«å²ããªãœãŒã¹ããªãæ¹ãæéããªããšãæ©ã¿ã®æ¹ããã€ãã®ããæ¹ã«ãã³ããªãèŠããŠããæ¹ã¯ãåæ°ãæã£ãŠã©ããŸã§è»œéã«ãªãªãŒã¹ã§ããããæ¥œããã§èŠãŠã¯ãããã§ããããïŒ æåŸã«å®£äŒã§ããBASE ã§ã¯ãããã¯ããããžã¡ã³ããããã¡ã³ããŒãåéããŠããŸãã èå³ãããæ¹ã¯äžèšã®ç޹ä»è³æããæ¡çšæ
å ±ããã²ã芧ãã ããã binc.jp *1 : ãªãªãŒã¹åŸã®æ¯ãè¿ãã§ãšã³ãžãã¢ããFBãé ããã®ã§ãããããã«è¿çããããšãDailyïŒåŒ·å¶çã«éãŸã£ãŠåé¡ã確èªããå ŽïŒãèšããã«æžãã èŠçŽ ã«ãªã£ãŠããããã§ãã
ã¯ããã« ã¯ãããŸããŠã®äººã¯ã¯ãããŸããŠãããã«ã¡ã¯ïŒBASE BANK Divisionã®ããã³ããšã³ããšã³ãžãã¢ã®ãã£ã¡ããïŒÂ @gatchan0807  ïŒã§ãã ãããã·ã§ããäœæãµãŒãã¹ãBASEãã®éçºããŒã ããBASE BANKããŒã 㫠瀟å
ç°åãã㊠ãããŒã ã®äººæ°ãåå以äžã®ããŒã ã«ãªã£ãŠããçŽå幎ãçµã¡ãŸããã ãããªããŒã ç°å¢ã®å€åãšå
±ã«ãç§ãã©ããªããšãèããããã«ãªã£ãã®ããBASE BANKããŒã ãšã¯ããã³ããšã³ããšã³ãžãã¢ç®ç·ã§ã©ã®ãããªããŒã ãªã®ããããå°ããªããŒã ã§ããã³ããšã³ããšã³ãžãã¢ãšããè·çš®ã§åãããšã®é¢çœãããšåãããŠç޹ä»ãããŠãã ããïŒ å人çã«ã¯ãä»å玹ä»ãããããªæŽ»åãããããšã§ãããã¯ããåã«é²ããŠãŠãŒã¶ãŒã«äŸ¡å€æäŸããããšãã§ããããããžãã¹ã®æé·ã«ãå¯äžããããšãåºæ¥ãã ãããšèããŠããã®ã§ãèªãã§ãã ãã£ãçããŸã®åèã«ãªãã°å¬ããã§ãïŒ ããŒã ã®é¢çœãã®ç޹ä»ã®åã«âŠ ããŒã ã®ç޹ä»ãããåã«ãŸããã¡ãã£ãšã ãç§ã®èªå·±ç޹ä»ãããã«ç§ããããã³ããšã³ãããšããæ¥åé åãã©ãæããŠããã®ãã«ã€ããŠå
±æãããŠãã ããã ã²ãšããšã§èšããšãç§ã¯ããã³ããšã³ãããããŒã¿ïŒã·ã¹ãã ïŒãšãŠãŒã¶ãŒã® å¢çé¢ ã§ããããšèããŠããŸããã ããããããšãŠãé¢çœããŠå€§å¥œããªé åãªã®ã§ãã ããå°ãå
·äœçãªã話ããããšããµãŒãã¹ã»ãããã¯ããå©çšããŠãããŠãŒã¶ãŒã¯ç»é¢ã«è¡šç€ºãããŠããããŒã¿ããç¥ãåŸãŸãããããã¯ã瀟å
çšã®ç®¡çç»é¢ã§ãã£ãŠãBASEãPay IDãæäŸããŠãããµãŒãã¹ã§ãã£ãŠãåãã§ãã ãã®åæã«ç«ã€ãšã UIãå®è£
ããããã³ããšã³ããšã³ãžãã¢ãæ£ããUIã«è¡šç€ºãããäºãã§ããªããšããŠãŒã¶ãŒã«å¯ŸããŠæ£ããäŸ¡å€æäŸãåºæ¥ãªã ãšããããšã«ãªããŸãã ããã«ããã®å®è£
è
ã§ãããããã«ããã¶ã€ããŒããã ãã®ãããã¯ãã®ãæåãã«å¯ŸããŠã®æ·±ãç¥èããã ãšãèšããŸãã å
·äœçã«ã¯ãAPIãDBãDOMäžã«ã®ã¿è¡šç€ºãããŠãããç»é¢ã«ã¯èŠããªãããŒã¿ã®æ±ãæ¹ãšãã®ããŒã¿ã«åºã¥ããUIã®ãã¿ãŒã³ã«ãæ·±ãç¥èãããããããããã¹ããšèšããŸãã ã€ãŸããããã³ããšã³ããå¢çé¢ã«ãªãããããã ãŠãŒã¶ãŒãžã®äŸ¡å€æäŸãšUIã®ãã¿ãŒã³ã®ç®¡çã«è²¬ä»»ãæã€ããšãéèŠãªè·å ã ãšç§ã¯æããŠããŸãã ããã³ããšã³ããšã³ãžãã¢ã®è²¬åãå
šãããããã«ã¢ã³ããã匵ãå Žæ äžè¿°ã®ãšãããããã³ããšã³ããšã³ãžãã¢ã¯ç»é¢ã«äœãã©ã衚瀺ãããŠããã®ãã«è²¬åãæã€ãšèããŠããã®ã§ãç§ã¯ ããŠãŒã¶ãŒããã®ãåãåããããšãçŽ æ©ãç®ã«èŠããUIãäœãææ®µãã«æåºŠé«ãããããšãéèŠ ã ãšèããŠåžžã
ããã«ã¢ã³ããã匵ãããã«ãªããŸããã åæãšããŠããåãåããã¯ããŠãŒã¶ãŒãå®éã«ç»é¢ã§èŠããã®ããå
ã«è¡ãããŠããŸãã ããã«é¢ããŠãããå°ãå
·äœçã«è§£èª¬ããŠãããŸãã ããåãåãããã¯UIæ¹åã®èµ·ç¹ã«ãªããããããæ©äŒ ãããããå°ãæœè±¡çã«æžããšããŠãŒã¶ãŒãããšãããã¿ãŒã³ã®UIã§è¡šç€ºãããæ
å ±ãèŠãŠ å°ã£ãã»è¿·ã£ããã€ã³ãã®ãã¡ããµãŒãã¹ãå©çšããäžã§ã¯ãªãã£ã«ã«ã§ç±éãé«ããªãéšåã®äžå ã ãæããŠãã ãã£ãŠãã ç¶æ
ã§ãã ããã¯ãããã³ããšã³ããšã³ãžãã¢ã«ãšã£ãŠã¯ãã©ã®ãã¿ãŒã³ã®UIãã¿ããšãã®ãããªåãåãããçãŸããã®ãïŒãããã®èª²é¡ãã©ã解決ããã¹ããïŒããèããããšã«äœ¿ãããã²ãããããã«ãããããããã«ã±ã ãšæããŠããŸãïŒããã«ãåçš®ãã¹ãã±ãŒã¹ã®æ¡å
ãæ°æ©èœã®ä»æ§èæ
®æã®å©ãã«ããªããŸãïŒ å°ã話ã¯ãããŸãããçŸåšBASE BANKããŒã ã§ã¯ããåãåããå
容ã®ç®¡ççšããŒã«ZendeskãšSlackã®é£æºãè¡ã£ãŠããããåãåããã®å
·äœçãªå
容ãããŒã å
ã§ç¢ºèªã§ããSlackãã£ã³ãã«ã«ãæµããŠããŸãããã®ãããããŒã ã¡ã³ããŒã¯èª°ã§ãçŽè¿é »çºããŠããåãåããå
容ãå¯ç¥ããããäžæ¬¡å¯Ÿå¿ã®å
å®¹ãæ€èšããŠããã¹ã¬ããå
ã§ãšã³ãžãã¢ãPdMãåŒãã§æ¥ãŠä»æ§é¢ãæè¡é¢ã§ã®ç¢ºèªã調æ»ãè¡ãããã«ãªã£ãŠããŸãã Slackäžã«æµããŠãããåãåããã®ã€ã¡ãŒãž ããã«ã2é±éã«1床ã®MTGã§åããŒã ããã®å
±ææéãããã®ã§ãæ®æ®µãåãåãã察å¿ãè¡ã£ãŠããOperationããŒã ããããåãåãã察å¿ã®äžã§ã®ãããã¯ãã«å¯Ÿããå°ãäºãããããåãåãããå€ãã£ãããšããæ
å ±å
±æããããããšããããŸãã 以äžã®ããã«ãOperationããŒã å
ã§Lookerããã·ã¥ããŒãã䜿ã£ãŠå¯èŠåãè¡ã£ãŠãããããæ°ã®å¢æžãå²åãªã©ãçè§£ããããå
±æããŠããã£ãŠããŸãã OperationããŒã ã®çºè¡šæã«äœ¿ã£ãŠããNotionã®ãã£ãã㣠OperationããŒã ã®Looker掻çšäºäŸã«é¢ããŠã¯ããã²ä»¥äžã®PodcastãåãããŠãèããã ããã https://open.spotify.com/episode/7wD9QCv6imYPOGsGIuvSTU?si=eA8ENSswQBWoGrOFkaz7fg ãã®ãããªåœ¢ã§BASE BANKããŒã ã®ããã³ããšã³ããšã³ãžãã¢ã¯OperationããŒã ã®ã¡ã³ããŒãšãã¶ã€ããŒããŒã ã®ã¡ã³ããŒãšäžç·ã«ãåãåãããåºã«UIã®æ¹åã«åãçµãã§ããŸãã 課é¡è§£æ±ºã®ããã®ææ®µãšããŠChrome DevToolsãæŽ»çšããã 2ã€ç®ã®ã¢ã³ããã匵ã£ãŠããããšã¯ã ãšã³ãžãã¢ãšä»è·çš®ã®ããŒã ã¡ã³ããŒã®ã³ãã¥ãã±ãŒã·ã§ã³ã³ã¹ããäžããããã®ææ³ã«ã€ã㊠ã§ãã äžè¿°ã®ããåãåãããããã£ãéã®UIæ¹åããããã¯ãã®æ©èœéçºããµã¯ãµã¯ã§ããããã«ãã¡ã³ããŒéã®ã³ãã¥ãã±ãŒã·ã§ã³ã³ã¹ããäžããããšã§ãæææ±ºå®ã®ç²ŸåºŠãšã¹ããŒããäžããããæ©ããŠãŒã¶ãŒã«äŸ¡å€æäŸãããããšãåºæ¥ãããã«ãªããŸãã ãããå®çŸããããã®å
·äœçãªææ®µãšã㊠Chrome DevToolsã®æŽ»çš ãæšããŠããŠãã¹ããŒãžã³ã°ç°å¢ãªã©ã§å®éã®UIã衚瀺ããChrome DevToolsã§HTMLãCSSããµã¯ããšå€æŽããŠç»é¢ãã£ããã£ããã ãã§äºè¶³ããããšãå€ã
ãããŸãã å®éã«ãã£ãããåãã ãšã以äžã®ãããªãã®ããããŸãã ãã®äºäŸã®ä»ã«ãGoogle Meetã«ãã¶ã€ããŒãšPdMã®æ¹ã«éãŸã£ãŠããããç»é¢å
±æãããªããChrome DevToolsäžã§HTMLãCSSã®ã¹ã¿ã€ã«ã倿ŽããŠå®è£
æ¹éãããã§ããªãããã§ããªãããšãã話ãããããšããããŸãã ãã®ä»ãã¡ãã£ãšããæèšã®ä¿®æ£ã®å Žå㯠document.designMode = âonâ ïŒ è©³ãã解説ã¯ãã¡ãã®W3Schoolã§å®éã«è§Šã£ãŠã¿ã ã®ãããããããã§ãïŒããããšèšå®ããŠç»é¢ãã£ããã£ããããšããããããŸãã ãããã£ãUIã®æ€èšæã«æç« ã§ã¯ãªãèŠèŠçã«çè§£ãããããã®ãäœãããã«ãããã³ããšã³ããšã³ãžãã¢ããFigmaã䜿ãããªããŠãã¶ã€ã³ãã¡ã€ã«èªäœããµããšå€æŽããŠãã£ããã£ãäœãããšããéžæè¢ããããŸãã ãã ãå人çã«ã¯Chrome DevToolsãããã³ããšã³ããšã³ãžãã¢ã«ãšã£ãŠã®æé«ã®IDEã ãšæã£ãŠããŸããããã«ãåŸã®DOMæ§é ãã©ããªã£ãŠããã®ãææ¡ããŠããããšã§åŸãããã¡ãªããããããšæã£ãŠããã®ã§ããã®æ¹æ³ã掻çšããããšãããããããŠããŸãã Chrome DevToolsã«ã€ããŠãã詳ããç¥ããããªã£ãæ¹ã¯ãã²ã å
¬åŒDocs ãçºããŠã¿ãŠããããã°ãšæããŸãã æã
ã æ°æ©èœãã¥ãŒã¹ããŒãž ãçºãããšãããããªäŸ¿å©ãªæ©èœå¢ããŠãã®ïŒããšãå®ãèŠã€ãããããªæ°åã«ãªããã®ã§ãšã£ãŠãããããã§ãã ããã㫠以äžãBASE BANKããŒã ã«ç°åããŠèããããã«ãªã£ããããã³ããšã³ããšã³ãžãã¢ãšããŠåºæ¥ãããšã»ãããšãããšæã£ãããšã®ã玹ä»ã§ããã OperationããŒã ãšã®åæ¥ã®ä»æ¹ã¯BASE BANKããŒã ã«ç°åããŠãã倧ããå€ãã£ããªãšæããŸãããBASE BANKããŒã ãæ
åœããŠããã®ã¯ãŸã ãŸã æ¢çŽ¢ãã§ãŒãºã®æ©èœã»ãããã¯ãããããããªã®ã§ãã©ãã©ããªãªãŒã¹ããŠã©ãã©ããã£ãŒãããã¯ãåãåã£ãŠæ¹åãé²ããŠããæèŠã匷ãã§ãã ããããããªããšãèããŠããç§ãBASE BANKããŒã ã«èå³ãæãããããã²æ¡çšããŒãžããã声ãããã ããïŒïŒâã®ããŒãžã®åéè·çš®äžèЧãããBASE BANKããŒã ã§ãã£ã«ã¿ãªã³ã°ããŠããããšç©æ¥µæ¡çšäžã§ããããšãäŒããããšæããŸãïŒïŒ binc.jp ãŸãããããªãä»°ã
ããã«ãžã¥é¢ã¯ã¡ãã£ãšã¢ã¬ã ãããã£ã¡ãããšã¯å人çã«è©±ããŠã¿ãããïŒãšããæ¹ã¯PittaãXïŒæ§TwitterïŒã®ãªãã»DMãªã©ã§ã声ãããã ããð https://pitta.me/matches/PDWMyhvOjUOy https://x.com/gatchan0807
ããã«ã¡ã¯ïŒ BASE BANK Divisionã® æŸéª ã§ãã 8/5ã« Welcome Fintech Community #2ãéå¬ããŸããã ãçãæãã§ãã¿ãã¿ããŠããã3é±éã»ã©çµã£ãŠããŸããŸããããä»åãå€§çæ³ã ã£ãã®ã§ãã®æ§åããå±ãããŸãïŒ Welcome Fintech Communityã«ã€ã㊠ã³ãã¥ããã£ç«ã¡äžãã®çµç·¯ã¯ãã¡ãã«èšèŒããŠããã®ã§ãã²ã芧ãã ããã devblog.thebase.in 6/20ã«éå¬ãã第1åããããããããšã«å€§åé¿ã ã£ããããéã¯ç±ããã¡ã«æãŠ!ãšããããšã§1ã¶æåã»ã©ã§ç¬¬2åãéå¬ããŸããã ä»åã¯ç¬¬1åã®æèŠªäŒã§æ¯é次ãããã°è©±ããã! ãšææè¡šæããŠãã ãã£ãŠããSTORESãããšMIXIããã«ã声ããããå
¬åLTãšåãããŠ5人ã«ãç»å£ããã ããŸããã ãŸãä»åã¯åã®è©Šã¿ãšããŠããšã³ãžãã¢è»¢è·ãµãŒãã¹Forkwellãéå¶ããGroovesããã«é£²é£ã¹ãã³ãµãŒãããŠããã ããŸãã! ãã®å ŽãåããŠæ¹ããŠã瀌ç³ãäžããŸããããããšãããããŸãã! åœæ¥ã®æ§å ä»åã¯LTåŸã®æèŠªäŒãžã¹ã ãŒãºã«ç§»è¡ã§ãããããã¢ã€ã©ã³ã圢åŒã®ããŒãã«é
眮ã«ã 第1åã«åŒãç¶ãåžäŒã®BASE æ³å·ãã Forkwell ã®ããããããïŒé£²é£ãµããŒã¿ãŒããããšãããããŸããïŒïŒ LT LTäžçºç®ã¯ æ ªåŒäŒç€ŸMIXI ããæµ
èŠããã ãŠã©ã¬ãããµãŒãã¹ãšããŠã®MIXI Mã¯ç¥ã£ãŠããŸããããIDãèªèšŒåºç€ãšããŠãå±éããŠããã®ã¯å人çã«ã¯åè³ã§ããã 確ãã«æ±ºæžãµãŒãã¹ã¯æ¬äººç¢ºèªãªã©ãŠãŒã¶ãŒãšåŒ·ãçŽã¥ããŠããã®ã§ããããèªèšŒåºç€ãšããŠåãåºããŠæäŸãããšããã®ã¯æå€ãšæãã€ããªãã£ããªããšæ°ããªçºèŠããããŸããã ç¶ã㊠STORESæ ªåŒäŒç€Ÿ ããSTORES æ±ºæž ã«é¢ãã£ãŠããã£ããã西æããã æ±ºæžæã®åºæ¬çãªåº§çµã®è©±ããSTORES決æžã䜿ã£ãæ±ºæžæã®é»æã®çµè·¯ã«ã€ããŠã話ãããã ããŸããã 黿ã®çµè·¯ã¯äžè¬çãªã«ãŒã決æžãšã¯å°ãéãçµè·¯ã§åãåãããè¡ãããŠãããã«ãŒã決æžãªã©ã«è©³ããåå è
ããã¯âãããªããšã§ããã®??âãšãã声ãäžãã£ãŠããŸããã 3人ç®ã¯ ã¯ã©ã¹ã¡ãœããæ ªåŒäŒç€Ÿ ã®åç°ããã DevelopersIOã«ã¯ãã€ãå©ããããŠããŸãããããšãããããŸãã AWSãš PCI DSS ã«ã€ããŠã®ã話ã§ã責任å
±æã¢ãã«ããReserved InstancesãSavings PlansãŸã§ã決æžã ãã§ãªãAWSäžã§äºæ¥ãè¡ããã¹ãŠã®æ¹ã«å¿
èŠãªæ
å ±ãããããå
±æããã ããŸããã 4人ç®ã¯ æ ªåŒäŒç€Ÿdinii ã®è§ç°ããã diniiããã¯ã¢ãã€ã«ãªãŒããŒã ãã§ãªãPOSããªã³ã©ã€ã³æ±ºæžæ©èœããããããæ±ºæžãµãŒããPOSãµãŒãéã§ã©ã®ããã«ããŒã¿ã®æŽåæ§ãä¿ã¡ãªããæ±ºæžãå®çŸããããªã©ã飲é£åºã§ã®ãªãã¬ãŒã·ã§ã³ãªãã§ã¯ã®èŠåŽãããã€ã³ããªã©ããããããããã ãªãšãšãŠãå匷ã«ãªããŸããã æåŸã« æ ªåŒäŒç€ŸLayerX ããken5scalããã éèåºãâéèåéã«ããããµã€ããŒã»ãã¥ãªãã£ã«é¢ãã ã¬ã€ãã©ã€ã³ïŒæ¡ïŒ âãšãããã®ãå
¬éããŠããããã§ããã®äžããææãæã
fintechã«é¢ãã人éã«ãé¢ä¿ããããããªå
容ãããã¯ã¢ããããŠãã ãããŸããã ã«ãŒã«ã«åŸãã ãã§ãªãã«ãŒã«ãäžç·ã«äœã£ãŠããããã«ããããªãã¯ã³ã¡ã³ãã§æèŠãåºããïŒãšããã¡ãã»ãŒãžãåå è
ã®çããã«ããšãŠãåºãã£ãŠããããã§ãã æèŠªäŒ æèŠªäŒãååã«åŒãç¶ãå€§çæ³ïŒ (çãäžãããããŠåçæ®åœ±ãå®å
šã«å¿ããŠããŸããã»ã»ã») äºåã«æèŠªäŒã«ç§»è¡ãããããããªããŒãã«é
眮ã«ããããããª?ãšæãã€ã€ããã£ãšããé
眮ãé²ãæ¹ã¯ããããã ãªãšæããå Žé¢ããã£ãã®ã§ããã®ãããã¯ãããããè²ã
ãšè©Šè¡é¯èª€ããªããåå è
ã®ã¿ãªãããçãäžãããããå Žã®èšèšãããŠãããŸãïŒ ãããã« æ¹ããŠãä»åãåå ããã ããçæ§ããããšãããããŸããïŒ ãããŠïŒïŒïŒïŒç¬¬3åã®éå¬ã決å®ããŸããïŒ10~11æãããäºå®ããŠããŸãã ãŸã远ã£ãŠé嬿¥ãconnpassã®å
¬éãªã©è¡ã£ãŠãããŸãã®ã§ããã²ã³ãã¥ããã£ã¡ã³ããŒã«ãªã£ãŠãããŠãã ããïŒ https://welcome-fintech.connpass.com ã§ã¯ãŸãã第3åã§ååå ãããæ¹ããªããŒã¿ãŒã®æ¹ããåŸ
ã¡ããŠãããŸãïŒïŒ
ã¯ããã« ããã«ã¡ã¯ãProductDev FeatureDev3 ã§ãšã³ãžãã¢ãããŠããŸãã endu ã§ãã å
æ¥ãèªåãæå±ããããŒã ã§ãè¯ãã³ãŒãïŒæªãã³ãŒãã§åŠã¶èšèšå
¥éããšããæ¬ã顿ã«èŒªèªäŒãéå¬ããŸããã gihyo.jp ãã®èšäºã§ã¯ããè¯ãã³ãŒã/æªãã³ãŒãã§åŠã¶èšèšå
¥éããèªãããšæã£ãèæ¯ããããŒã ã§å®éã«è¡ã£ã茪èªäŒã®é²ãæ¹ã茪èªäŒãéããŠåŸãåŠã³ã«ã€ããŠå
±æã§ããã°ãšæããŸãã 茪èªäŒãéå¬ããèæ¯ã«ã€ã㊠BASEã§ã¯ã·ã§ãããç¬èªã«ã«ã¹ã¿ãã€ãºããæ¡åŒµæ©èœãšããŠãAppsããæäŸããŠããŸãã èªåãæå±ããããŒã ã§ã¯ç¹ã«ã Googleåå飿ºã»åºå App ããã InstagramåºåApp ããã Instagram 販売App ããã TikTokåå飿ºã»åºå ããªã©ãäž»ã«SNS Appsåšãã®ä¿å®ãæ©èœæ¹åãè¡ã£ãŠãããŸãã åœç¶GoogleãMetaåŽããæäŸããŠããAPIã®ã¢ããããŒããããã®ã§ãã¢ããããŒãã®å¯Ÿå¿ããããªã£ããããåãåããèµ·å ã§ã®çްããä¿®æ£ãçºçããŸãã ãããã®SNS Appsã¯BASEã§ãæŽå²ãé·ããããŒã ã«é
å±ããã°ããã®é ã¯å
šäœã®ä»æ§ãææ¡ã§ããŠãªãäºããããæ¢ã«æžãããŠããã³ãŒããåèã«ããŠè¿œå ãããã®ã®ãããŸãã¡è¯ãã³ãŒãããããŠãããã®èªä¿¡ããããŸããã§ããã ããããããŠããå
ã«ãããŒã å
ã§èŒªèªäŒãéå¬ãã話ãäžãã£ãã®ãšãèªåãæžããã³ãŒãã«å¯ŸããŠã¢ã€ã¢ã€ããã£ãã®ã§ããè¯ãã³ãŒããšã¯ãªã«ã? æªãã³ãŒãã¯ãªã«ã?ããèããæ©äŒãäœãçºã«ãã¡ãã®æ¬ãææ¡ãã茪èªäŒãéå¬ããäºã«ãªããŸããã 茪èªäŒã®é²ãæ¹ã«ã€ã㊠ä»åãç§éã®ããŒã ã§ã¯ä»¥äžã®ãã©ãŒãããã«æ²¿ã£ãŠé²ããŸããã ç« ãé
ãªã©ãæžç±ãææžã®æ§æåäœæ¯ã«æ
åœè
ãå²ãæ¯ãåããã æ
åœè
ã¯æ
åœåã®ããŒãžãèªã¿ãå¿
èŠã«å¿ããŠèª¿æ»ãªã©ããŠçè§£ããäžã§èŠçŽã»ææ³ãNotionã«èšè¿°ããã 茪èªäŒã®é嬿¥ã«æ
åœè
ã¯èªåãèªãã åã®èŠçŽã»ææ³ãªã©ãçºè¡šããã 茪èªäŒåå è
ã¯æ
åœè
ã®çºè¡šãèãã質åãæããããæ
åœè
ãšèªèº«ã®è§£éã®å·®ãè¿°ã¹ããªã©ããŠè°è«ããçè§£ãæ·±ãã æ¬¡åã®äºå®ãšæ
åœè
ã®ç¢ºèªãããŠçµäºã ãªããæ
åœè
以å€ã®æ¹ã®äºç¿ã¯ä»»æã§ãåºæ¬çã«ã¯æ
åœè
ã®æ¹ãèšäºãèªãã§èŠçŽããŠçºè¡šããã¹ã¿ã€ã«ã§èŒªèªäŒã¯éå¬ããŸããã 茪èªäŒãéããåŠã³ã«ã€ã㊠ãŸããã®æ¬ãäœãç®çã«æžãããã?ã«ã€ããŠã¯ã15ç« èšèšã®æçŸ©ãšèšèšã®åãåãæ¹ãã§ä»¥äžã®ããã«èè
ã¯æžããŠããŸãã æ¬æžã¯ãœãããŠã§ã¢éçºäžã®æªéãéæ²»ããèšè𿹿³ãèšè¿°ãããã®ã§ããæªéã¯ããŸããŸãªæªäºãåããŸãããããã°æã仿§å€æŽæãã©ã®ããžãã¯ã圱é¿ããŠããã®ã圱é¿ã®ææ¡ãå°é£ã«ãããŸãããŸãã仿§å€æŽæã«ä¿®æ£æŒããèµ·ãããããããã°ãçºçãããªã©ãæ£ç¢ºãªåäœãã§ããããã«ãªããŸã§æéãæµªè²»ãããŸããããããæªéã®æ§è³ªãšæãé¢ä¿ããããããªåè³ªç¹æ§ã¯ã©ãã§ãããããä¿å®æ§ãã¿ãŠãã ããããã·ã¹ãã ãä¿®æ£ããæå¹æ§ãå¹ç床åãããšãããŸãããããã§ããæ¬æžã§åãæ±ã£ãŠããã®ã¯ä¿å®æ§ã«é¢ä¿ããèšèšã§ãã ãã®ããã«1ç« ãã~17ç« ãŸã§ã¯ã»ãŒäžç°ããŠããã®ä¿å®æ§ã«é¢é£ããææ³ã玹ä»ãããŠããŸã 第1ç« ã®ãæªããæ§é ã®åŒå®³ãç¥èŠããããšç¬¬2ç« ã®ãèšèšã®åæ©ãã¯ãã®æ¬ã®å°å
¥éšãšããŠèªã¿ãããã§ããè¯ãèšèšãè¡ãã«ã¯ãŸããæªãèšèšãšã¯ãªã«ã?ãèããŠèªåã®äžã§åºæºãæã€å¿
èŠããããŸãã ãããã£ãæå³ã§æåã«1ç« ã§æªãã³ãŒããšã¯ãªã«ãã®äºäŸãåŠã³ã2ç« ã§ã¯ãèšèšã®åæ©ããšããŠãæå³ããååä»ãã䜿ããçè§£ãå°é£ã«ããæ¡ä»¶åå²ã®ãã¹ãã¯é¿ãããªã©ãåºæ¬çãªææ³ã玹ä»ãããŠããŸãã 第3ç« ã ã¯ã©ã¹èšèš âãã¹ãŠã«ã€ãªããèšèšã®åºç€âãããã¯ã©ã¹èšèšã®è©±ãå§ãŸãã®ã§ãããããã®ç« ããå°ãã¥ã€ãèªåéã®ã³ãŒãã©ããªã®ã?ããšãã話é¡ãããŒã ã¡ã³ããŒå
ã§åºãŠããŸãããå®éã«ããã§æžãããŠããã³ãŒãéãã«ã§ããŠããã®ã?ã ã£ãããä»ã®ããŒã ãéå»ã®çµéšè«ãªã©ã®è©±é¡ãªã©ãåºããªããããŒã å
ã§èšèšã«ã€ããŠãè°è«ãã§ããŠè¯ãã£ãã§ãã ãŸãå人çã«ã¯ç¬¬6ç« ãæ¡ä»¶åå² âè¿·å®®åããåå²åŠçãè§£ãã»ããææ³âãã§ã¯ãswitch caseã䜿ããã«interfaceã䜿ããã¹ãã©ããžãŒãã¿ãŒã³ã§åŠçãåããæ¹æ³ã«ã€ããŠã¯ãµã³ãã«ã³ãŒããæç€ºãããŠããŠããããããã£ãã§ãã 6ç« ä»¥éã«ã€ããŠããããå®è·µçãªãã¯ããã¯ããèšèšã®åãåãæ¹ã«ã€ããŠãæžãããŠããŸããæ°ã«ãªãæ¹ã¯ãã²æ¬èªãæã«åã£ãŠèªãã§ã¿ãã ãã! 茪èªäŒåŸã«åŸãè¯ãäœéšãšããŠã¯ãå®éã«æ¥åã®äŒè©±ã§ãããã£ãŠæ¬ã®äŸã§æžãããŠããæªããã¿ãŒã³ã§ã¯?ããšãã話ãããã£ãŠãå®è£
ã倿Žããæ©äŒããããŸããã ãè¯ãã³ãŒã/æªãã³ãŒãã§åŠã¶èšèšå
¥éãã®èŒªèªäŒãéå¬ããäºã§ãå°ãã¥ã¥ã§ããè¯ãã³ãŒããæžãèªä¿¡ãæãŠããšæããŸãã 茪èªäŒã«åå ããã¡ã³ããŒããã®ã³ã¡ã³ã 茪èªäŒã«åå ã¡ã³ããŒãããææ³ãããã ããã®ã§ã玹ä»ããŸã! ä¿å®ã芳ç¹ã«å®äŸã亀ããªããå®è·µçãªåœ¢ã§ãŸãšããããŠããã®ã§ãéçºãã¬ãã¥ãŒã«ã€ããŠèŠçŽãããæ©äŒãšãªããŸãããã¡ã³ããŒãšãäœéšè«ã亀ããªãã話ãåãããšãã§ããã®ã§ææçŸ©ãªæéã ã£ãšæããŸããã ããã£ãŠãã âã€ããâ ã«ãªã£ãŠãããããªããšãå€ãåºãŠããŠãèªã¿ãªããåèªèïŒãšå°ãåçããïŒã§ããŠãšãŠãããã£ãã§ããããŒã ã¡ã³ããŒãšèšèšã®è¯ãæªãã®ç®ç·ãæããããç¹ã§ããšãŠãæçšã ã£ããšæã£ãŠããŸããåå ã§ããŠããã£ãã§ãã ãµã³ãã«ã³ãŒããå
·äœçãªäºäŸãè±å¯ã§ã身ã®èŠãã®ãããã®ãå€ããåŠã³ããããŸãããåã¡ã³ããŒã®ç¥èŠãåŸããããè¯ãæ©äŒã«ããªããŸããã ãã®æ¬ã®èŒªèªäŒã¯éç®2åç®ã§ããã1床ç®ã§åžåããããªãã£ãéšåããã®ä»æãåºãããæ©äŒã«ãªã£ãããæŽã«ç¥èãæ·±ãŸããŸããããŸããéå»ã®äºäŸãããã®å Žåã©ãããïŒãã¿ãããªè°è«ãæ¯åæãããã®ã§ææçŸ©ãªæéã§ãã ãããã« ãè¯ãã³ãŒããæªãã³ãŒãã§åŠã¶èšèšå
¥éãã®èŒªèªäŒãéããããŒã å
ã§è°è«ããªããèšèšã«ã€ããŠåŠã¹ãæ©äŒãã§ããŸããã ãã®æ¬ãèªãã§ããã¯èªåã®äžã§è¯ãèšèšãæªãèšèšãšã¯äœã?ã®åºæºãæãŠãããã«ãªãããªãã¡ã¯ã¿ãªã³ã°ããéãéžæè¢ãå¢ããŸããã ä»åŸã®æ¥åã§ããã®æ¬ã«ããããŠããå
容ãå
ã«è¯ãèšèšãäœã£ãŠãããããšæããŸã! æåŸã«å®£äŒã§ãããBASE ã§ã¯ãšã³ãžãã¢ãæ¡çšäžã§ã! ä»åã®ãããªèŒªèªäŒã®ä»ã«ã瀟å
LTäŒãªã©éå¬ãããŠããã®ã§èå³ãããæ¹ã¯äžèšã®ç޹ä»è³æããæ¡çšæ
å ±ãããã²ã芧ãã ãã! speakerdeck.com binc.jp
ã¯ããã« Data StrategyããŒã ïŒä»¥äžãDSããŒã ïŒã§DWHãBIããŒã«ã®éçšãããŠãã@shota.imazekiãšäžæ£æ€ç¥ãAWSåºç€éçšãããŠãã @tawamura ã§ãã Aurora MySQL v2ïŒMySQL5.7äºæïŒã2024/10/31ã«æšæºãµããŒãçµäºãšãªããããDSããŒã ã§ã¯2024幎6æã«Aurora MySQL v3ïŒMySQL8.0äºæïŒãžã®ã¢ããã°ã¬ãŒãã宿œããŸããã ãã®éã«åŸããã課é¡ãç¥èŠã«ã€ããŠç޹ä»ããŠãããŸãã䞻㫠AWS DMS ã Amazon RDS ãã«ãŒ/ã°ãªãŒã³ããã〠ãçšããã¢ããã°ã¬ãŒãæ¹æ³ã®è©±ã«ãªããŸãã DSããŒã ã®ã€ã³ãã©æ§æ DSããŒã ã¯BASEã®æ©æ¢°åŠç¿åºç€ãæ§ç¯ã»éçšããŠãããAPIãªã©ãä»ããŠãããã¯ãåŽãžæ©æ¢°åŠç¿ã¢ãã«ã®æšè«çµæãªã©ãè¿ããŠããŸããåŠç¿ã»æšè«ã®ããã«äœ¿ããããã¯ãåŽã®ããŒã¿ã¯DMSãçšããŠãDSç°å¢ã«ã¬ããªã±ãŒã·ã§ã³ããŠããŸãã å
·äœçã«ã¯ãæ¬çªç°å¢ã«ããã¬ããªã«DBãDMSã¿ã¹ã¯ã®ãœãŒã¹ã«æå®ããDSç°å¢ã§äœ¿çšããDBãžãšåæãè¡ã£ãŠããŸãã ãŸããDMSã§åæããDBãããã«ãœãŒã¹ãšããŠæå®ããDMSã®å€æŽæ€ç¥ïŒCDCïŒã«ãã£ãŠååŸããå·®åãAmaon MSKã«æµããŠããŸããããã«ãã£ãŠç¹å®ã®ããŒãã«ã«ããŒã¿ãæ¿å
¥/æŽæ°ããããšããã€ãã³ããååŸããããšãã§ãããããããªã¬ãŒã«workerã§ä»ã®åŠçãè¡ã£ãŠããŸãããããã£ãworkerãã宿å®è¡ããããããã«ããåŠççµæãä¿åããŠããããã®DBãåãDBã¯ã©ã¹ã¿ãŒå
ã«ååšããŠããŸãã ä»åã¢ããã°ã¬ãŒã察象ãšãªã£ãã®ã¯ãå³ã§èµ€æ ã§ç€ºãããDS DBã¯ã©ã¹ã¿ãéšåã«ãªããŸãã äºåæ€èšŒ DSããŒã ã®DBïŒä»¥äžãDS DBïŒã§ã¯äžè¿°ããéããDMSãçšããŠãããã¯ãåŽã®ããŒã¿ãã¬ããªã±ãŒã·ã§ã³ãããŠããŸããDSããŒã ã®æ¹ãã¢ããã°ã¬ãŒããæ©ãã«å®æœããã¹ã±ãžã¥ãŒã«ã§åããŠãããããã¡ãžã£ãŒããŒãžã§ã³åäœã§ã®ããŒãžã§ã³å·®ç°ããã£ãŠãDMSã«ããåæãå¯èœãªã®ããäºåã«æ€èšŒããŸãããã§ããªãå Žåã¯ã¢ããã°ã¬ãŒãã®ã¿ã€ãã³ã°ããããã¯ãåŽãšåãããå¿
èŠãããããã§ãã æ€èšŒæ¹æ³ãšããŠã¯3ã€ã®DBã¯ã©ã¹ã¿ãŒAïŒMySQL5.7ïŒ, BïŒMySQL5.7ïŒ, CïŒMySQL8.0ïŒãçšæãã以äžã®ãããªåœ¢ã§DMS飿ºãè¡ããŸããã ãã®åŸãBãMySQL8.0ã«ã¢ããã°ã¬ãŒããããããšã§2ã€ã®äºè±¡ãåæã«èŠãããšãã§ããŸãã AïŒMySQL5.7ïŒâBïŒMySQL8.0ïŒ: DMS飿ºå
ïŒDS DBïŒãã¢ããã°ã¬ãŒãããæã®æå ããã«ã€ããŠã¯ç¹ã«åé¡ã¯çºçããŸããã§ãã BïŒMySQL5.7ïŒâCïŒMySQL8.0ïŒ: DMS飿ºå
ïŒãããã¯ãåŽã®DBïŒãã¢ããã°ã¬ãŒãããæã®æå BãMySQL8.0ã«ã¢ããã°ã¬ãŒãããããšãBâCãžã®DMSã¿ã¹ã¯ã倱æããŠããŸããã DMS飿ºã®éã«ONã«ããŠããå¿
èŠã®ããã·ã¹ãã 倿°log_binãOFFã«ãªã£ãŠããããã§ããã ãã¡ã ãåèã«åèµ·åãããšããããšã©ãŒã¯è§£æ¶ãããŸããã äžéšãšã©ãŒã¯çºçããŸããããã¡ãžã£ãŒããŒãžã§ã³åäœã§ã®ããŒãžã§ã³å·®ç°ããã£ãŠãDMS飿ºã¯åé¡ãªããšå€æããŸããããŸãDMS飿ºå
ïŒãããã¯ãåŽã®DBïŒãã¢ããã°ã¬ãŒãããéã«ã¯log_binã®å€ã«æ³šæããå¿
èŠãããããšãåãããŸããã ã¢ããã°ã¬ãŒãæ¹æ³ã®æ€èš Amazon Aurora MySQL ããŒãžã§ã³ 3ïŒMySQL 8.0 äºæïŒãžã®ã¢ããã°ã¬ãŒã ãåèã«ä»¥äž3ã€ã®éžæè¢ããã¢ããã°ã¬ãŒãæ¹æ³ãæ€èšããŸããã ã€ã³ãã¬ãŒã¹ã¢ããã°ã¬ãŒã ãã«ãŒ/ã°ãªãŒã³ããã〠ã¹ãããã·ã§ããããã®åŸ©å
ã¢ããã°ã¬ãŒãåŸã«åé¡ãçºçããŠããæ§ããŒãžã§ã³ã«æ»ãå€ãã¯ã©ã¹ã¿ãŒã«åãæ¿ããããšãå¯èœãªç¹ãããŠã³ã¿ã€ã ãæå°éã«æããããç¹ãããã«ãŒ/ã°ãªãŒã³ãããã€ãéžæããŸããã ãã«ãŒ/ã°ãªãŒã³ãããã€ã¯ããã«ãŒç°å¢ïŒçšŒåäžã®DBïŒãšã¯å¥ã§ã°ãªãŒã³ç°å¢ïŒMySQL8.0ã«ã¢ããã°ã¬ãŒããããDBïŒãæ§ç¯ããŠãããä»»æã®ã¿ã€ãã³ã°ã§æ¬çªç°å¢ããã«ãŒç°å¢ããã°ãªãŒã³ç°å¢ã«åãæ¿ãããã®ã§ããããŒã¿ã¯ãã«ãŒç°å¢ããã°ãªãŒã³ç°å¢ã«ã¬ããªã±ãŒã·ã§ã³ãããŠãããããå·®åãçããããšã¯ãããŸããã æ¬¡ã«AWSã®ãã«ãŒ/ã°ãªãŒã³ãããã€æ©èœã䜿ãããã°ãªãŒã³ç°å¢ãDMSãçšããŠèªåã§æ§ç¯ãããã®æ€èšãè¡ããŸãããåŸè
ã¯æºåã«æéããããã®ã§ãããAWSã®ãã«ãŒ/ã°ãªãŒã³ãããã€æ©èœã§ããŒã«ããã¯ãè¡ãããããªã©äžæãªç¹ãåœåããã€ããããåé¢DMSã®ç°å¢æ§ç¯ã«é¢ããŠã¯æ¢ã«ç¥èŠãããããŸãå°ãããšããªãããã ã£ãã®ã§èªåã§æ§ç¯ããããšã«ããŸããã DMSãçšããã°ãªãŒã³ç°å¢ã®æ§ç¯ DMSãçšããŠãã«ãŒç°å¢ã®ããŒã¿ãã¬ããªã±ãŒã·ã§ã³ããæºåãããŠããŸãããããã®äœæ¥ãè¡ãªã£ãŠãããã¡ã«äžã€ã®èª²é¡ã«ã¶ã€ãããŸããã ã«ã©ã ã®ããŒã¿ãµã€ãºã倧ãããããšDMSã¿ã¹ã¯ãã¿ã€ã ã¢ãŠãã«ãªã ãŸããDMSã§DS DBã®ããŒã¿ãã°ãªãŒã³ç°å¢ã«åæããŠãå
šãåãç¶æ
ã®DBãæ§ç¯ããããšã«ããŸããã DS DBã«ã¯ããããã¯ãããDMSã§åæããŠããããŒãã«ã«å ããŠãDSããŒã ã§åãããŠãããªãœãŒã¹ãæ°èŠä¿åã»æŽæ°ãè¡ãªã£ãŠããDBãããŒãã«ãå«ãŸããŠããŸãããã®ããŒãã«ã®äžéšã§ã MEDIUMTEXT ãªã©å€§ããã®ããŒã¿ïŒLOB: ã©ãŒãžãã€ããªãªããžã§ã¯ãïŒãä¿åããŠããã«ã©ã ãååšããŠããŸãã DMSã§ãããã®LOBåãå«ãããŒãã«ã®ã¬ããªã±ãŒã·ã§ã³ãè¡ãéãéåžžã®ãã€ããªãã°ã«ããåæã§ã¯ãªããéžæå¯èœãªLOBã¢ãŒãã«ããåŠçæ¹æ³ãé©çšããããšã«ãªããŸãã AWS DMS ã¿ã¹ã¯ã§ã®ãœãŒã¹ããŒã¿ããŒã¹ã® LOB ãµããŒãã®èšå® ã°ãªãŒã³ç°å¢ãžã¬ããªã±ãŒã·ã§ã³ãè¡ãDMSã¿ã¹ã¯ãå®è¡ããŠãããšã以äžã®ãããªãšã©ãŒãçºçããŸããã Table ' db_test ' . ' table_test ' was errored/suspended (subtask 1 thread 1 ). Failed (retcode -1 ) to execute statement; RetCode: SQL_ERROR SqlState: HY000 NativeError: 3024 Message: [MySQL][ODBC 8.0 (w) Driver][mysqld -5.7 . 12 - log ]Query execution was interrupted, maximum statement execution time exceeded (replicationtask.c: 3066 ) LOBåã«å¯ŸããŠã¯ãã¹ããŒãã¡ã³ããçºè¡ããŠå¥éããŒã¿ãååŸãããããªã®ã§ãããããã§ã¿ã€ã ã¢ãŠããçºçãããã®ããšæãããŸãã AWSã«ãŠãµããŒãã±ãŒã¹ãäœæããç¶æ³ãå
±æãã€ã€ä»¥äžã®ãããªé
ç®ã宿œããŸããã èªäž»çã«æ€èšŒïŒDMSã¿ã¹ã¯èšå®ïŒ CommitRate ã1000ãã100ã« TransactionConsistencyTimeout ã60ãã600ã« HistoryTimeslotInMinutes ã5ãã60ã« ãµããŒãããå
±æãåã宿œïŒDMSãšã³ããã€ã³ãèšå®ïŒ ExecuteTimeout ã60ãã3600ã« ããããããã®å€æŽãè¡ãªã£ãŠãæ¹åãã¿ãããŸããã§ããã ç¶ããŠããã€ãã®å¯Ÿå¿æ¹éãæäŸããŠããã ããã®ã§ãããããä»¥äžæéããããŠå¯Ÿçãé²ãããããAWSã®ãã«ãŒ/ã°ãªãŒã³ãããã€æ©èœã詊ããæ¹ãè¯ããããšæãç¹ãããã€ãçºçããŠããŸããã DS DBã®ããŒã¿ã¯å°ãããªãã®ã§ãDMSã«ããåæãããªãæéããããããšãæ³å®ããã èªåã§ãã«ãŒ/ã°ãªãŒã³ãããã€ãè¡ããšããŠããæžã蟌ã¿ãè¡ãªã£ãŠãããªãœãŒã¹ãããããã«ãããŒã¿ã®äžæŽåãªãããŒã«ããã¯ãè¡ãããšã¯ã»ãŒäžå¯èœ ä»åŸãã¢ããã°ã¬ãŒãã®æ©äŒã¯ããã®ã§ãå
¬åŒæ©èœã§æ¥œã«å¯Ÿå¿ã§ããããšãããã£ãŠããã°ããã«è¶ããããšã¯ãªã ãã«ãŒ/ã°ãªãŒã³ãããã€æ©èœã§ãæ³å®ããŠãããã¹ããåãæ»ããã§ããã 以äžããDMSãçšãããã«ãŒ/ã°ãªãŒã³ãããã€ã¯æå¿µããAWSã®ãã«ãŒ/ã°ãªãŒã³ãããã€æ©èœãäœ¿ãæ¹éã«å€æŽããŸããã AWSãã«ãŒ/ã°ãªãŒã³ããã〠äºåç¢ºèª æºåã«ã€ããŠã¯ ãã«ãŒ/ã°ãªãŒã³ãããã€ã®äœæ ãåèã«é²ããŠãããŸããããã«ãŒ/ã°ãªãŒã³ãããã€äœææã«èæ
®ãã¹ãç¹ãåæããŠãããŸãã ãã«ãŒ/ã°ãªãŒã³ãããã€ã§ãµããŒããããŠããªãæ©èœãå©çšããŠããã 以äžã®æ©èœã¯ãã«ãŒ/ã°ãªãŒã³ãããã€ã§ãµããŒããããŠããªããããå©çšããŠããå Žåã¯äžæçã«æ¥ç¶ãåããªã©ã®æ€èšãå¿
èŠã«ãªããŸããDS DBã§ã¯å©çšããŠããªãã£ãããç¹ã«å°ãããšã¯ãããŸããã§ããã Amazon RDS Proxy ã«ã¹ã±ãŒããªãŒãã¬ããªã« ã¯ãã¹ãªãŒãžã§ã³ãªãŒãã¬ããªã« AWS CloudFormation ãã«ã AZ DB ã¯ã©ã¹ã¿ãŒã®ããã〠ãã«ãŒç°å¢ã®DBã¯ã©ã¹ã¿ãŒã®binary loggingãONã«ãªã£ãŠããã ãã«ãŒç°å¢ããã°ãªãŒã³ç°å¢ãžã®ã¬ããªã±ãŒã·ã§ã³ãè¡ãããã«ãã€ããªãã°ãå¿
èŠã«ãªãããããã©ã¡ãŒã¿ã°ã«ãŒãã® binlog_format ã確èªããå¿
èŠããããŸãããã©ãŒãããã¯è€æ°ãããã©ãã§ãã¬ããªã±ãŒã·ã§ã³ã§ããããã§ããæšå¥šã¯ ROW ã§ãããDS DBã§ã¯å
ã
ãDMSãå©çšããŠããç¹ããå
ã
ã ROW ã«èšå®ããŠããã®ã§ãã¡ããç¹ã«åé¡ãªãã£ãã§ãã ãã«ãŒ/ã°ãªãŒã³ãããã€ã®äœæ äœæèªäœã¯ã°ãªãŒã³ç°å¢ã®ãšã³ãžã³ããŒãžã§ã³ã®èšå®ãäºåã«äœæããŠããããã©ã¡ãŒã¿ã°ã«ãŒããæå®ããã ãã ã£ãã®ã§ç°¡åã§ããã https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/blue-green-deployments-creating.html#blue-green-deployments-creating-preparing-mysql äœæéå§åŸããŸããã«ãŒç°å¢ã®DBã¯ã©ã¹ã¿ãŒãè€è£œåŸã«ã¢ããã°ã¬ãŒããããŠã°ãªãŒã³ç°å¢ãæ§ç¯ããŸããè€è£œèªäœã¯æ°ååçšåºŠã§çµãã£ãã®ã§ãããã¢ããã°ã¬ãŒãæã«ãšã©ãŒã«ãªããŸããã Database cluster is in a state that cannot be upgraded: Upgrade prechecks failed. For more details, see the upgrade-prechecks.log file upgrade-prechecks.log ãã¡ã€ã«ã確èªãããšããããšããããŒãã«ã®ããŒãã£ã·ã§ã³ãã¢ããã°ã¬ãŒãããå¿
èŠãããããã§ãã Partitioning upgrade required. Please dump /reload to fix it or do: ALTER TABLE `database`.` table ` UPGRADE PARTITIONING " 察象ã®ããŒãã«ã¯DSããŒã ã§çŸåšå©çšããŠããªããã®ã ã£ããããä»åã¯åé€ããããšã«ããŸãããå¿
èŠãªå Žåã¯ãšã©ãŒã®æ¡å
ã«åŸã£ãп޿°ããããããšã§è§£æ¶ã§ãããšæããŸãã ååºŠäœæäœæ¥ãè¡ããã°ãªãŒã³ç°å¢ã®æ§ç¯ãå®äºããŸãããæ§ç¯ããæéã¯å€§äœ1æéçšåºŠã§ããã æ€èšŒ ã°ãªãŒã³ç°å¢ã®æ§ç¯ãçµãã£ããããDS DBåšãã§åããŠããããããAPIãåãããŠã¿ãŠãåäœã«åé¡ããªããã§ããéã確èªãè¡ããŸããã ãã«ãŒ/ã°ãªãŒã³ãããã€æ©èœã§ã¯ãã°ãªãŒã³ç°å¢æ§ç¯åŸã«ã°ãªãŒã³ç°å¢ã«æ¥ç¶ãè¡ãããšã³ããã€ã³ããäœæãããŸãïŒããŒã¿ã¯ãã«ãŒç°å¢ã®ãã®ãè«çã¬ããªã±ãŒã·ã§ã³ãããŠãããåºæ¬çã«åããã®ãæ±ããïŒãããã«ããããã¹ãããããªãœãŒã¹ã®åãå
ãã°ãªãŒã³ã®ãšã³ããã€ã³ãã«åããŠå®è¡ããŠã¿ãããšã§ãåãæ¿ãåŸã®åé¡ãçºçããªãããäºåã«ç¢ºèªããããšãã§ããŸãã https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/blue-green-deployments-overview.html 確èªã®äžã§ãæžã蟌ã¿åŠçã®ãã¹ããè¡ãããšãããšããããã©ã¡ãŒã¿ã°ã«ãŒãã®read_onlyã¯0ã«ãªã£ãŠããããã°ãªãŒã³ç°å¢åŽã§ã¯ONã®ç¶æ
ã«ãªã£ãŠããããšã«æ°ã¥ããŸããã ãã©ã¡ãŒã¿ã°ã«ãŒã MySQL MySQL [(none)]> show variables like ' read_only ' ; + ---------------+-------+ | Variable_name | Value | + ---------------+-------+ | read_only | ON | + ---------------+-------+ AWSã®ããã¥ã¡ã³ã ã§ãã°ãªãŒã³ç°å¢ã¯èªã¿åãå°çšã«ä¿ã€ããšãå§ããŠããããããã®ãããªå·®ç°ãçãŸããŠããã®ããšæšæž¬ããŠããŸãããªããã¹ã€ãããªãŒããŒããéã«ã¯read_onlyãã©ã¡ãŒã¿ã¯OFFã«ãªã£ãŠããŸããã®ã§ãæ°ã«ããå¿
èŠãããã®ã¯ãã¹ãæã®ã¿ã§ããã ãã¹ãäžã¯ãã°ãªãŒã³ç°å¢ã®ããŒã¿ããŒã¹ãèªã¿åãå°çšã«ä¿ã€ããšããå§ãããŸããã°ãªãŒã³ç°å¢ã§ã¯ã¬ããªã±ãŒã·ã§ã³ã®ç«¶åãçºçããå¯èœæ§ããããããæžãèŸŒã¿æäœãæå¹ã«ããå Žåã¯æ³šæããŠãã ããããŸããã¹ã€ãããªãŒããŒåŸã«æ¬çšŒåããŒã¿ããŒã¹ã«æå³ããªãããŒã¿ãçºçããå¯èœæ§ããããŸããAurora MySQL ã®æžãèŸŒã¿æäœãæå¹ã«ããã«ã¯ã read_only  ãã©ã¡ãŒã¿ã 0  ã«èšå®ããDB ã€ã³ã¹ã¿ã³ã¹ãåèµ·åããŸãã 宿œ ã¡ã³ããã³ã¹åœæ¥ãDMS, CDCã¿ã¹ã¯ã忢åŸã«ã°ãªãŒã³ç°å¢ãžã®åãæ¿ãã宿œããŸãããããŠã³ã¿ã€ã ã¯3åçšåºŠã§çµããããã®åãæ¿ãèªäœã¯ç¹ã«åé¡ãçºçããŸããã§ããã ãã ãDMSãCDCã¿ã¹ã¯ãåéããåŸãDS DBâAmazon MSKãžã®CDCã¿ã¹ã¯ããšã©ãŒãšãªã£ãŠããŸããã確èªãããšãããlog_binãOFFã«ãªã£ãŠããããšãããããŸããã show global variables like " log_bin " ; + ---------------+-------+ | Variable_name | Value | + ---------------+-------+ | log_bin | OFF | + ---------------+-------+ DMSã®äºåæ€èšŒã®æç¹ã§åæ§ã®çŸè±¡ãèµ·ããŠãããããã©ã€ã¿ãŒã€ã³ã¹ã¿ã³ã¹ãåèµ·åããŠã¿ããšãããã©ã€ã¿ãŒã€ã³ã¹ã¿ã³ã¹ã§log_bin=ONã«ãªã£ãŠCDCã¿ã¹ã¯ãåãããã«ãªããŸãããåèµ·åèªäœã¯1åçšåºŠã§å®äºããŸããã ãããã« AWSã®ãã«ãŒ/ã°ãªãŒã³ãããã€æ©èœã¯ããã©ã¡ãŒã¿åšãã«ã¯å°ãæ©ãŸãããŸããã倧ããåé¡ã«ã¯ãªããªãã£ãã§ãããç°¡åã«å©çšã§ããŠå®æœãããã«çµããããã®ã§éåžžã«ããã£ãã§ããä»åŸã®DS DBé¢é£ã®ã¡ã³ããã³ã¹æ¹æ³ã«ãããŠæåãªåè£ã«ãªããšæããŸããã æåŸãšãªããŸãããåŒç€Ÿã§ã¯ããŒã¿ãšã³ãžãã¢ãåéããŠããŸãããèå³ã®ããæ¹ã¯æ°è»œã«ãå¿åãã ããïŒ open.talentio.com
welcome fintech communityã®ãããŒããã£ãããïŒ ããã«ã¡ã¯ïŒ BASE BANK Divisionã®æŸéªã§ãã ä»åãéèæ±ºæžã®æè¡é åãäžå¿ãšããã³ãã¥ããã£ãç«ã¡äžãã6æ20æ¥ã«ã€ãã³ããåéå¬ããŸããã ãã®æš¡æ§ããå±ãããŸãã Welcome Fintech Communityãšã¯? ç¹å®ã®æè¡ãè·èœã«é¢ããã³ãã¥ããã£ã¯æ°å€ããããŸããfintechã«é¢ããã³ãã¥ããã£ã¯å°ãªããfinteché åãçãäžããŠããããã«ç¥èŠããæ©ã¿ã®å
±æãã§ãããããã£ãšãªãŒãã³ãªã³ãã¥ããã£ãã»ãããªãšæããŠããŸããã ãããªãšããEMããããŒãã¢ããã§ã¹ããŒããã³ã¯ç€Ÿã® äžè°·ãã ãšåºäŒãããfintechçéã§éãŸã£ãŠãã£ãšè²ããªè©±ãããããïŒïŒïŒããšçãäžãã£ãçµæãã®ã³ãã¥ããã£ãç«ã¡äžããããšã«ããŸããã welcome-fintech.connpass.com åœæ¥ã®æ§å LT åžäŒã®æ³å·ããããããçãäžãäžæã ç³ã蟌ã¿ã«ã€ããŠã¯ããããããããšã«40人æ ãäžæãã£ã±ãã«ãªãã»ã©ã®çæ³ïŒ ããããã€ãã³ãã¯ç³èŸŒã¿äººæ°ã«å¯ŸããŠ6~70%ãããæ¥å ŽããŠãã ããã°åŸ¡ã®åãšèšãããŠããŸããã80%è¿ãæ¹ã«ãæ¥å Žããã ããç±éã®é«ããæããŸããã æåã¯BASE BANKãããæ ¹æ¬ããã® âBASEã«ãŒãããèŠã決æžãµãŒãã¹"ã ã«ãŒã決æžã®åºæ¬çãªä»çµã¿ããããå®çŸããããã®ãBASEã«ãŒãã ã®ã·ã¹ãã æ§æãããã«ã¯ãã£ã³ããŒã³ãªã©ã®æœçãã©ãå®çŸããã?ãªã©å
·äœçãªè©±ãŸã§ããŠããããŸããã æ±ºæžãã¿ãŒã³ãæ¬åœã«å€æ§ã§å®éã«ãªã¯ãšã¹ããæ¥ããŸã§ååšèªäœç¥ããªããã®ãããŸã«çºçãããšãã話ã«ãã«ãŒã決æžã«é¢ãã£ãŠããã£ãããåå è
ã®æ¹ã
ãæ·±ãé ·ããŠãããçããèŠåŽãããŠãããã ãªã»ã»ã»ãšæããŸããã BASE BANKã®æ ¹æ¬ãã speakerdeck.com æ¬¡ã«æ ªåŒäŒç€Ÿã¹ããŒããã³ã¯ã®CTO å äºãã ããâã«ãŒãçºè¡äŒç€Ÿ(ã€ã·ã¥ã¢)ãæ¯ããã·ã¹ãã 解説âãšããã¿ã€ãã«ã§ãB/43ãã®ã¢ãŒããã¯ãã£ã«ã€ããŠçºè¡šããã ããŸããã ã€ã·ã¥ã¢ãšããç«å Žã§ã¯ãBASEã«ãŒãããšåãã§ãããããæ·±ãVISAã®æ±ºæžãããã¯ãŒã¯ãšæ¥ç¶ããŠããããPCI DSSãšããã»ãã¥ãªãã£åºæºãã¯ãªã¢ããå¿
èŠãããããã®ããã«ã©ã®ãããªæè¡éžå®ãã¢ãŒããã¯ãã£æ§ç¯ãè¡ã£ãŠããã赀裞ã
ã«çºè¡šããŠãã ãããŸãããããªãã€ãã«ãŒãã®ãããã¯ããç«ã¡äžããæ©äŒãããããã°å¿
èªã®è³æã§ãïŒïŒ ã¹ããŒããã³ã¯ã®å äºãã speakerdeck.com æåŸã«PAYæ ªåŒäŒç€Ÿããã¯ãªã¹ããã PAY瀟ã§ãPCI DSSã®åºæºãã¯ãªã¢ããããã®æ§ã
ãªå¯Ÿå¿ãè¡ã£ãŠããã®ã§ãããä»å¹Žå®éã«çºçãã察å¿äºæ¡ã«ã€ããŠãµã¹ãã³ã¹ã®ããšã远äœéšããŠãããããªçºè¡šãããŠããããŸããã è©³çŽ°ã¯æ¯éè³æãèŠãŠã¿ãªããã远äœéšããŠããã ãããã§ãããåé¡ãç¹å®ããç¡äºè§£æ±ºãããšãã«ã¯äŒå Žãããããšæå£°ãäžãã£ãŠãããäŒå Žãäžäœæã«å
ãŸããŠããŸããã PAYã®ã¯ãªã¹ãã speakerdeck.com ããã«ãã£ã¹ã«ãã·ã§ã³ ããã«ãã£ã¹ã«ãã·ã§ã³ã§ã¯ãäºåã«çšæããŠããããŒããšXã«æçš¿ããã ãã質åãæŸããªããé²ããŠãããŸããã æ±ºæžã®ç¢ºå®ããã£ã³ã»ã«ãèæ
®ãããã£ã³ããŒã³äºç®èšå®ã®è³ªåããPCI DSSãèæ
®ããã·ã¹ãã åå²ã«ä»ããŠã®èå¯ãªã©ãæããã«fintechçµéšè
ããã®è³ªåã ïŒãšããå
容ãããã倧ãã«çãäžãããèŠããŸããã ããã«ãã£ã¹ã«ãã·ã§ã³ã®æ§å æèŠªäŒ LTãããã«ãã£ã¹ã«ãã·ã§ã³ã®æéãè¶³ããªãã£ãã®ããæèŠªäŒã§ãåæ¹ããæ±ºæžãééãPCI DSSãªã©æ§ã
ãªæ±ºæžè«çŸ©ãèãããéåžžã«çãäžãã£ãŠããŸããã æ¬¡ããããããŒãã§è©±ãããïŒãšããå£°ãæ¬¡åã¯ãã€ãããã§ããïŒïŒïŒãªã©æ©é次åéå¬ã®èŠæãããã ããªã©åå ããŠãã ãã£ãçããã®ç±éãæåããæåŸãŸã§é«ãããã®ã³ãã¥ããã£ãç«ã¡äžããæå³ããã£ããªããšéåžžã«ãããããã£ãã§ãã æèŠªäŒã®æ§å ãããã« æ£çŽããçšåºŠéèŠã¯ããã ãããªãšã¯æã£ãŠãããã®ã®ãæ³å®ä»¥äžã®çãäžãããèŠããä»åŸãç¶ç¶ããŠãã®ã³ãã¥ããã£ãè²ãŠãŠããããïŒãšæããã€ãã³ãã«ãªããŸããã åœæ¥ã®æ§åãXã®ããã·ã¥ã¿ã°ã远ããšããã«ããããããããšæããŸããæ¯éã芧ã«ãªã£ãŠã¿ãŠãã ããã https://x.com/hashtag/welcome_fintech æåŸã«ããã®å ŽãåããŠå
±æžããŠãã ãã£ãã¹ããŒããã³ã¯ããããããŠãåå ã®çããåæ¹ã«æè¬ç³ãäžããŸããæ¬åœã«ããããšãããããŸããïŒ ãŸã æªå®ã§ããã第2å以éãéå¬ããããšæã£ãŠããã®ã§ããã²ãåå ãã ããïŒ
ããã«ã¡ã¯ãBASE BANKã§ãã å
é±BASE BANKã¡ã³ããŒã®ç»å£ãã€ãã³ãåå ãå¶ç¶éãªã£ããããä»é±ã¯å®è³ªã€ãã³ãã¬ããŠã£ãŒã¯ãšãªã£ãŠãããŸãã ä»åã¯å»ã6æ21, 22æ¥ã«éå¬ãããã¹ã¯ã©ã ãã§ã¹å€§éª2024ã§ã®ç»å£ã«ã€ããŠã³ã¡ã³ãããå±ãããŸãïŒ ã¹ã¯ã©ã ãã§ã¹å€§éª2024 ä»ååå ããã¹ã¯ã©ã ãã§ã¹å€§éªã¯ããªã³ã©ã€ã³éå¬ã§ã¯ãããŸãã倧éªãã¯ãããšããåãµãã©ã€ãäŒå Žãååšãããã©ãã¯ããšã«åäŒå Žã®ååãã€ããããŠããŸããã ãã®ãããã¹ã¯ã©ã ãã§ã¹â倧éªâã®âä»å°âãã©ãã¯ã ãâèãéâäŒå Žããç»å£ãªã©ããªããªããã€ã³ã³ããã¹ããªç¶æ
ã«ãªã£ãŠãã人ãããããŠããŒã¯ã§ããããŸã話ã®çš®ãšãªã£ãŠããŸããã âãºãŒã ã€ã³âãšéæã£ãŠåäŒå Žã®æš¡æ§ãäžç¶ããããšãªã³ã©ã€ã³ãªãã§ã¯ã®äº€æµãããã€ã€ãåäŒå Žããšã«ãã¯ãŒã¯ã·ã§ãããæèŠªäŒã倧ãã«çãäžãããªã©ããªã³ã©ã€ã³ãšãªãã©ã€ã³ã®äž¡æ¹ã®ã¡ãªãããæå€§é掻ãããå Žã€ããããããŠããŸããã ã¹ã¯ã©ã ãã§ã¹ã«é¢ããã¿ãªããã®ã€ãã³ãéå¶ã¹ãã«ã®é«ããèã§æããããšãã§ãããšãŠãåŠã³ãå€ã楜ããã£ãã§ãã ä»åã®ã»ãã·ã§ã³ BASE BANKããã¯æŸéª( @applepine1125 )ãšæ³å·( @gimupop )ã®2åãç»å£ããŸãããã¡ãªã¿ã«2人ãšãä»åã®ç»å£ãã¹ã¯ã©ã ãã§ã¹ååå ã§ããïŒ æ³å· -ãã¢ãžã£ã€ã«ãœãããŠã§ã¢éçºå®£èšããå®è·µããããã«äºæ¥è²¬ä»»è
ã«ãªã話 Scrum Fest Osaka 2024 - 「アジャイルソフトウェア開発宣言」を実践するために事業責任者になる話 | ConfEngine - Conference Platform ç»å£è
ã³ã¡ã³ã XPç¥ããžã®åå çµéšã¯ãããŸããããã¢ãžã£ã€ã«ã³ãã¥ããã£ãžã®åå ã¯ä»åãã»ãŒåããŠã§ããã ãªã¢ãŒãé
ä¿¡ã®ä»çµã¿ãæŽã£ãŠãããµãã©ã€ãäŒå Žãšãªã³ã©ã€ã³ãåæã«ç¹ãã£ãŠããŸããã人ã®é¡ãèŠããå ŽæãçšæããŠããã ããã®ã§ãéåžžã«çºè¡šããããã£ãã§ããç©ºæ°æããšãŠãæž©ããã45åéè空ã«åãã£ãŠçºè¡šãç¶ããã®ã¯èŸããªãŒãšæã£ãŠããäžã§éåžžã«å©ãããŸããããªã³ã©ã€ã³ãªã®ã«éãŸããŠãçµäºåŸé£²ã¿äŒãã§ããäœéšãæé«ã§ãããåå·è食ãã©ãã¯ã©ãã ä»åã®ç§ã®çºè¡šã¯WebãµãŒãã¹ãäœããªããããã¯ããããŒãžã£ãŒã¯äºæ¥è²¬ä»»è
ã«ãªããšãããè³ççãªå§åŒ·ãã¡ãã»ãŒãžãªãã§ãããè³æèªãã§ããã ãããšçŽåŸããã ããã»ã»ã»ã¯ãïŒ BASE BANKã®ããŒã äœãã®èæ¯ãèŠããçºè¡šã§ããããšæããŸãã åç»ãåŸæ¥åºããããªã®ã§ã楜ãã¿ã«ãåŸ
ã¡ããã ããŸããšã æŸéª - æ°èŠäºæ¥ç«ã¡äžããã°ããŒã¹ã§ãã¡ããš"ãã£ã¹ã«ããªãŒ"ãç¶ããããã¢ãžã£ã€ã«çµç¹ã®äœãæ¹ Scrum Fest Osaka 2024 - 新規事業立ち上げ、グロースできちんと"ディスカバリー"し続けられるアジャイル組織の作り方 | ConfEngine - Conference Platform speakerdeck.com ç»å£è
ã³ã¡ã³ã ä»åã¹ã¯ã©ã ãã§ã¹å€§éªã«ãŠã¹ã¯ã©ã ãã§ã¹èªäœã«ååå ãåç»å£ãããŠããã ããŸããã ã¯ããã¯ã©ããã£ãé°å²æ°ãããããªãã£ãã®ã§ãããä»ã®æ¹ã
ã®çºè¡šããåŸããã®ãéåžžã«å€ãã£ãã®ã¯ãã¡ãããç»å£è
ã ãã§ãªãåå è
å士ã§ãçžäºã«ã³ãã¥ãã±ãŒã·ã§ã³ããšãå ŽãèšããããŠããããšãåŠã³ãæå€§åããããã®å·¥å€«ãéæã«æœãããŠããéåžžã«åšã®å€§ããã³ãã¥ããã£ã ãªããšæããŸããã èªåã¯æéã®éœåã§æèŠªäŒã«ã¯åå ã§ããªãã£ãã®ã§ãããåå è
çšã®Discordã«åå°ã®æèŠªäŒã®æ¥œããããªåçãäžãã£ãŠãããæ¬¡ã¯çµ¶å¯ŸæèŠªäŒãŸã§åå ãããã»ã»ã»ïŒãšå¿ã«æ±ºããŸããã çºè¡šã§ã¯ããã ã¹ããŒãã£ã«ã¢ãŠããããããã ãã§ãªããã¡ãããšä»®èª¬æ€èšŒã®ãµã€ã¯ã«ãåãç¶ãããããããªçµç¹ã¥ããã倧äºã ãïŒãšãã話ãããŸããã æ°èŠäºæ¥ç«ã¡äžããã°ããŒã¹ææã¯ã©ãããŠãã¢ãŠããããã«ã°ããç®ãè¡ããã¡ãããããŸããããããããç¶æ³ããäžå¯§ãã€çŽ æ©ããã£ã¹ã«ããªãŒãµã€ã¯ã«ãåããâæ£ããâãããã¯ããäœãç¶ããããšãäœãã倧äºã ãšæã£ãŠããã®ã§ãåããããªç¶æ³ã®æ¹ãããã£ãããã°ãã²äžäºäŸãšããŠåèã«ããŠããã ããã°ãšæã£ãŠããŸãã ãããã« ã©ããããªã³ã©ã€ã³ãšãªãã©ã€ã³ã®ãã€ããªãã圢åŒã§ã®éå¬ã¯ä»åãæåŸã ã£ãããã§ã次å以éã¯ãªãã©ã€ã³éå¬ã«ãªãããã§ãã åäŒå Žã®ç±éãé«ããããããªå°æ¹ã§ããããªä»²éãšåºäŒã£ãŠã¿ãããšæã£ãã®ã§ãä»åŸããŸãåå ããŠããããã§ãïŒ æåŸã«å®£äŒã§ãããBASE BANKã§ã¯ä»åçºè¡šãããããªäºæ¥ã¥ãããçµç¹ã¥ãããäžç·ã«ãã£ãŠãã£ãŠããã仲éãåéããŠããŸãïŒ æè¡ãçµç¹ãäºæ¥ããªãã§ãããã®ã§ããBASE BANKã«èå³ãæã£ãŠãã ãã£ãæ¹ãããããã²ã話ããŸãããïŒãåŸ
ã¡ããŠããŸãïŒ open.talentio.com
ã¯ããã« BASE BANK Division ã§ ãã«ãµã€ã¯ã«ãšã³ãžã㢠ãããŠãã02 ïŒ @cocoeyes02 ïŒã§ãã 2024/06/22ïŒåïŒã«éå¬ãããPHPã«ã³ãã¡ã¬ã³ã¹çŠå²¡ 2024ã«ç»å£ããŸãããä»åã®èšäºã§ã¯ç»å£ã«ã€ããŠã®ã³ã¡ã³ããšãäŒå Žã®æ§åã«ã€ããŠãå±ãããŸãïŒ ä»åã®ã»ãã·ã§ã³ ä»åã¯15åæ ã§ã®ç»å£ã§ãã speakerdeck.com 02 @cocoeyes02 ããã®ããŒã¯ãã¯ããŸã£ãŠããŸãâ£ïž #phpconfuk #hall_hz https://t.co/AFxNus3Zay pic.twitter.com/DyCkj3fD8D — PHPã«ã³ãã¡ã¬ã³ã¹çŠå²¡ å
¬åŒ (@phpcon_fukuoka) 2024幎6æ22æ¥ æéãèš±ãéããPHPUnit 11ã®ã¢ããããŒãã«ã€ããŠè©±ããŸããïŒ Ask the Speakerã§èããŠãããšãååã®PHPUnit 10ãå«ãPHPUnitã®ããŒãžã§ã³ã¢ããã«èŠåŽããŠããæ¹ãå€ãããã«æããŸããã æåã¯èå³ãç»å£ã®ãã¿ã«ãªããšããçç±ããå§ããPHPUnitã®åŠç¿ã§ããããçŸåšã¯å°æ¥ã®å¿
èŠæ§ãæããŠåãçµãã§ããŸããä»åŸããç¿å¹Žã«ãªãªãŒã¹ãããPHPUnit 12ã«ã€ããŠãããŸã 話ããŠããªãPHPUnit 10 / 11 ã®å€æŽç¹ãªã©ãããã°ãç»å£ã§è©±ããã°ãšæã£ãŠããŸãã çŸå°ã®æ§å ããããã¯ãçŸå°ã®æ§åãäžéšãå±ãããŸãïŒ ãªãŒããã³ã° ãªãŒããã³ã°ã¯å®è¡å§å¡é·ã®å
æ°æº¢ããæšæ¶ããã¹ã¿ãŒãããŸããã æã«ãé¢ãããå€ãã®äººãåå ããŠããããªãŒããã³ã°ã®æç¹ã§ã¹ã¿ãããåå è
ã®ç±éã®é«ããæããŸããã #phpconfuk 2024ãéå¹ã§ãð å®è¡å§å¡é· @BkNkbot ã®ãªãŒããã³ã°ããã¹ã¿ãŒãâ£ïž pic.twitter.com/WE182JzXOW — PHPã«ã³ãã¡ã¬ã³ã¹çŠå²¡ å
¬åŒ (@phpcon_fukuoka) 2024幎6æ22æ¥ èªç±ã«è¡šçŸã§ããããŒã ã«ãŒã åå è
ã®ããŒã ã«ãŒãã¯ãèªåã§æžãããã屿§ã·ãŒã«ïŒæ®æ®µè§Šã£ãŠããæè¡ããããŒã«ãç緎床ãªã©ïŒã貌ã£ãããšãèªç±ã«è¡šçŸã§ããããã«ãªã£ãŠããŸããã ã©ããªããã¯ã°ã©ãŠã³ãããã£ã©ã¯ã¿ãŒã®äººãåå ããŠããã®ããã²ãšç®ã§ãããããã«ãªã£ãŠããŠæåã®è©±é¡ãåºããããã£ãã§ãã ããŒã ã«ãŒããæžãããã·ãŒã«ã貌ãå Žæã®æ§å 察ããã§ãïŒç æ°ã§åããã¡ãã£ãŠãïŒ #phpconfuk pic.twitter.com/evxBil9LEl — 02 (@cocoeyes02) 2024幎6æ22æ¥ ã¹ãã³ãµãŒããŒã¹ã®æ§å ã©ã®ã¹ãã³ãµãŒããŒã¹ãè³ãã£ãŠãããåå è
å士ã®ã³ãã¥ãã±ãŒã·ã§ã³ã§æº¢ãããã£ãŠããŸããã ãŸããã³ãŒããŒã¹ãã³ãµãŒã«ããã³ãŒããŒé£²ã¿æŸé¡ããçŠå²¡ãªãã§ã¯ã®ãèåãããã€ããããŠãããçŠå²¡ãæºå«ã§ãããããªãã¹ãã¿ãªãã£ãæããŸããã ã¹ãã³ãµãŒããŒã¹åšèŸºã®æ§å æ©éæ±äº¬è¿èŸºã«éäžããŠã #phpconfuk pic.twitter.com/Sc8I3xetr9 — 02 (@cocoeyes02) 2024幎6æ22æ¥ ã³ãŒããŒã¹ãã³ãµãŒãæäŸããŠããã³ãŒããŒãšçŠå²¡ãªãã§ã¯ã®ãèå ãŸããAsk the Speakerããã®ã¹ãã³ãµãŒããŒã¹è¿èŸºã§éå¬ãããŸããïŒ ïŒŒCããŒã«ã«ãŠAsk the speaker éå¬äžðïŒ ããããããã @okashoi ãšã02ãã @tadsan ãšããã£ã³ãã @zosokh ãšãsora ãã @_fs0414 ãšããšãã ãã @picopico_dev ãšãKanon ãã @samurai_se ã«è³ªåãããæ¹ã¯CããŒã«ãžð çç²çæã«ããæ°è»œã«ãè¶ããã ããâ #phpconfuk pic.twitter.com/KFEBskbbqZ — PHPã«ã³ãã¡ã¬ã³ã¹çŠå²¡ å
¬åŒ (@phpcon_fukuoka) 2024幎6æ22æ¥ ã¢ã³ã«ã³ãã¡ã¬ã³ã¹ã«ãŒã ã¢ã³ã«ã³ãã¡ã¬ã³ã¹ãè³ãã£ãŠããŸãããæåŸã®æéã®ãRound Tablle Session ããŒãïŒåŠç¿ã©ãããŠããïŒãã«åå ããŸãããã ãã©ã®ãããæè¡æžãèªãã§ãïŒã ãã©ãããç®çã§æè¡æžãèªãã§ããïŒã ãã©ãããåºæºã§æè¡æžãéžãã§ããïŒã ãšãã£ãæè¡æžã«é¢ãã質åã«ã€ããŠãåPHPerãšèªåã®åºæºãå
±æããããè°è«ããããšãé¢çœãã£ãã§ãã ã¢ã³ã«ã³ãã¡ã¬ã³ã¹ã«ãŒã ã®ã¿ã€ã ã¹ã±ãžã¥ãŒã« ã¯ããŒãžã³ã° ã¯ããŒãžã³ã°ãå§ãŸããåæ
å ±ã®å
±æãè¡ãããŸãããPHPã«ã³ãã¡ã¬ã³ã¹çŠå²¡ 2024ã®åå è
ã¯çŽ300人ã§ãæ¥æ¬ã§éå¬ãããPHPã«ã³ãã¡ã¬ã³ã¹ã®äžã§ã人æ°ãå€ãã«ã³ãã¡ã¬ã³ã¹ã ãšå確èªããŸããã ããã«ãå§å¡é·ããåå è
ã®PHPã«ã³ãã¡ã¬ã³ã¹åå æŽïŒäŸãã°ãPHPã«ã³ãã¡ã¬ã³ã¹çŠå²¡ã«åããŠåå ãã人ãªã©ïŒã«ã€ããŠå°ããå Žé¢ããããŸããããåããŠPHPã«ã³ãã¡ã¬ã³ã¹ã«åå ãã人ããæè¡ã«ã³ãã¡ã¬ã³ã¹èªäœã«åããŠåå ãã人ãå°ãªãããããããšãå°è±¡çã§ããã #phpconfuk 2024 ããã£ãšããéã«ã¯ããŒãžã³ã°ð å®è¡å§å¡é· @BkNkbot ã®ã¯ããŒãžã³ã°ãã¹ã¿ãŒãããŸããâ£ïž pic.twitter.com/no8lPwYsYm — PHPã«ã³ãã¡ã¬ã³ã¹çŠå²¡ å
¬åŒ (@phpcon_fukuoka) 2024幎6æ22æ¥ ã¯ããŒãžã³ã°çµäºåŸã«ã¯æèŠªäŒãå§ãŸããè²ããªPHPerãšã飯ãé£ã¹ãŠããé
ã飲ã¿ãªãã亀æµããŸããã ãããã« ã¹ã¿ããã®æ¹ã
ã«ã¯ãå¿ããã«ãé¢ããããå€ãã®æéãæºåã«è²»ãããŠããã ãããšæããŸãããã®å ŽãåããŠåŸ¡ç€Œç³ãäžããŸãã åä¹å· / åçŠå²¡ / åé£è¡æ©ã䜿ã£ãŠé ããžåºãããæè¡ã«ã³ãã¡ã¬ã³ã¹ã ã£ãã®ã§äžå®ããããŸãããããšãŠã楜ãããçŽ æµãªã«ã³ãã¡ã¬ã³ã¹ã§ããããŸãéå¬ããããæ¯éåå ãããã§ããã BASE / BASE BANKã§ã¯ãçµ¶è³PHPerãæ¡çšäžã§ããäžèšã®æ¡çšæ
å ±ãã«ãžã¥ã¢ã«é¢è«ãªã³ã¯ãããã²ã芧ãã ããïŒ binc.jp open.talentio.com
ã¯ããã« BASE BANK Division ã§ ãã«ãµã€ã¯ã«ãšã³ãžã㢠ãããŠãã02ïŒ @cocoeyes02 ïŒã§ãã AWS Summit Japan 2024ã®Day 1ã«ãªã³ãµã€ãã§åå ããŠããã®ã§ãçŸå°ã®æ§åããå±ãããŸãïŒ AWS Summit Japan 2024ãšã¯ïŒ AWS Summit Japan 2024ãšã¯ã2024/06/20ã2024/06/21ã«éå¬ãããAmazon Web ServicesïŒä»¥äžAWSïŒãåŠã¶ã€ãã³ãã§ãã åå ç»é²äººæ°ã¯5äžäººãè¶
ãããªã©ãæåéãæ¥æ¬æå€§ã®AWSãåŠã¶ã€ãã³ãã«ãªããŸãã aws.amazon.com äŒå ŽãŸã§ AWS Summit Japan 2024ã®äŒå Žã¯å¹åŒµã¡ãã»ã§ãã ãæŒåã«ãããããããå
¥å ŽãŸã§äººã䞊ãã§ããŸãããæ¥æ¬æå€§ã®AWSåŠç¿ã€ãã³ããšãã衚çŸã¯å®ã«ãµããããããšããã»ã©ã®å€§çæ³ã§ããã ãããã #AWSSummit pic.twitter.com/Aabz8OmdXd — 02 (@cocoeyes02) 2024幎6æ20æ¥ AWS Summit Japan 2024äŒå Žãžã®å
¥å ŽãåŸ
ã€é·èã®å AWS Summit Japan 2024äŒå Žå
¥å£ã®æ§å äŒå Žå
šäœã®æ§å å
¥å ŽããŠã¿ããšãããããã®å±ç€ºããŒã¹ãã»ãã·ã§ã³äŒå Žãç®ã®åã«åºãã£ãŠããŸããã ãšã³ã¿ãŒãã©ã€ãºãµããŒãã§ããåãã®ãã£ãAWS SAã®æ¹ã
ããæ®æ®µããæ¥ç¹ã®ããæ¹ã
ã«ãæšæ¶ããããã«ãããŒã¹ãå·¡ããŸãããäŒå Žã¯éåžžã«åºããå°ãè¿·ã£ãŠããŸã£ãã®ã¯å
ç·ã§ãã å
¥å ŽããŠããã®ãšãªã¢ã俯ç°ããŠæ®ã£ãæ§å ããã€ãã®ã»ãã·ã§ã³ãèŽè¬ããŸãããããã®èŽè¬ç°å¢ãæŽã£ãŠãããšæããŸãããäŸãã°ãåã»ãã·ã§ã³äŒå Žã¯å€§äººæ°ãå容ã§ããå
šåžã«ã¯ç»å£è
ã®ãã€ã¯é³å£°ãã€ã€ãã³ã§èãããã®ã¬ã·ãŒããŒãçšæãããŠããŸããã åã»ãã·ã§ã³ã®äŒå Žã暪ããæ®ã£ãæ§å é
åçãªã³ã³ãã³ããçãã ããã å
šãŠã¯ç޹ä»ããããªãã§ãããçŸå°ã§äœéšããã³ã³ãã³ããäžéšç޹ä»ããŸãã AWS Snowball Edgeããã€ã¹ãæã¡äžããŠã¿ã AWS Snowball Edgeããã€ã¹ ã®å®ç©ãå±ç€ºãããŠããã®ã§ãæã¡äžããããŠããã ããŸãããAWS Snowball Edgeããã€ã¹ã¯çŽ20kgã»ã©ãããäž¡æã§ãªããšæã¡äžããããªãã»ã©éãã£ãã§ãã AWS Snowballã«ã€ããŠã¯AWSèªå®è©Šéšã§åŠãã çšåºŠã®ç¥èããæã£ãŠããªãã£ãã®ã§ãå®éã«è§Šããããšãã§ããã®ã¯è¯ãçµéšã«ãªããŸããã snowballæã¡äžããããŠããã£ã #AWSSummit pic.twitter.com/oZRG9rHNvC — 02 (@cocoeyes02) 2024幎6æ20æ¥ Chaos Kitty ã²ãŒã 圢åŒã§ã«ãªã¹ãšã³ãžãã¢ãªã³ã°ãšå¯èŠåãåŠã¹ã Chaos Kitty ãå±ç€ºãããŠããŸãããã²ãŒã ã¢ãŒãã¯ã¬ãžãªãšã³ã¹ãšã»ãã¥ãªãã£ãé£æåºŠã¯EasyãšHardããããããããã®åŸ©æ§ã¿ã€ã ã©ã³ãã³ã°ãªã¹ãããããŸããã ç§ã¯ã¬ãžãªãšã³ã¹ã¢ãŒãã®Easyããã¬ã€ãããŠããããŸããããæ¬äŒŒçã«é害èšç·ŽãããŠãããããªæèŠã§ãããèªç€Ÿåãã®ãã¢ç°å¢ããã£ãããæ¥œãã¿ãªããã€ã³ã·ãã³ã察å¿ååäžãããã£ããã«ãªãããã ãšæããŸããã ã²ãŒã 圢åŒã§ã«ãªã¹ãšã³ãžãã¢ãªã³ã°ãšå¯èŠåãåŠã¹ãchaos kitty é¢çœãã£ãïŒ #AWSSummit pic.twitter.com/Gv1y7KfhsX — 02 (@cocoeyes02) 2024幎6æ20æ¥ Industry Zone ãã®ãšãªã¢ã§ã¯ã忥çããšã®ææ°ã® AWS ãœãªã¥ãŒã·ã§ã³ã®ç޹ä»ããã¢ãè¡ãããŠããŸãããç§ã¯æµéå°å£²æ¶è²»è²¡ã€ã³ãã¹ããªãŒã«èšªããECäœéšã®åäžç®æããæ§ã
ãªæè¡ãæ©èœãèŠãŠããŸããã äŸãã°ãçæAIã䜿ã£ãåå説ææãååèæ¯ç»åã®çæããååã®çްéšã確èªã§ãã3D ããã°ã©ã ãã£ã¹ãã¬ã€ãªã©ããããŸããã Industry ZoneïŒæµéå°å£²æ¶è²»è²¡ã€ã³ãã¹ããªãŒã®æ§å AWSã§åŠæ³ããŠã¿ã QuizKnock ãããšã®ã³ã©ãäŒç»ã«ããããã«å±ç€ºã§ããããããªããšãã§ãããè¯ãã®ã«ããšããåŠæ³ãšããããå®çŸããããã®ä»çµã¿ããããŠAWSã¢ãŒããã¯ãã£å³ãæãããŠããŸããã å人çã«ã¯ãSAã®äœè€ãããåŠæ³ãããéå»ã®èªåãžçžè«ãããããå身ãšäŒè©±ã§ããããã«ãããããšãŠããšã¢ããŠè©ŠããŠã¿ãããšæããè¯ãã¢ã€ãã£ã¢ã ãšæããŸããã ãAWSã§åŠæ³ããŠã¿ããã®ããã«å±ç€ºã®æ§å SAã®äœè€ããã®åŠæ³ããŠã¿ãããã« AWS èªå®è
ã©ãŠã³ãž AWS èªå®è©Šéš ã«åæ Œãã人å°çšã®ã©ãŠã³ãžã§ããã©ãŠã³ãžå°çšã®Wi-Fi SSIDãšãã¹ã¯ãŒãã飲ã¿ç©ã黿ºãæäŸãããŠãããæ©ãç²ãããäœæ¥ããããæ¹ã«æé©ãªå Žæãšãªã£ãŠããŸããã ç¹å
žãšããŠãåæ Œãã詊éšããšã«ã¹ããã«ãŒãããããŸããç§ã¯ AWS Solution Architect Associate ã®ã¹ããã«ãŒãããããŸããã AWS èªå®è
ã©ãŠã³ãžã®æ§å AWS Solution Architect Associateã®ã¹ããã«ãŒ ä»ã«ã玹ä»ããããªãã»ã©ããããã®é
åçãªã³ã³ãã³ã ä»ã«ããAWSã®ãµãŒãã¬ã¹ãµãŒãã¹ã§äœããã Serverlesspresso ãã AWS DeepRacer Japan Championship Cup ã®ã¬ãŒã¹äŒå Žãªã©ããããŸããïŒ AWSã®ãµãŒãã¬ã¹ãµãŒãã¹ã§äœãããServerlesspresso AWS DeepRacer Japan Championship Cupã®ã¬ãŒã¹äŒå Ž AWS DeepRacer Japan Championship Cupã®ãµãã©ã€ããã£ã¹ãã¬ã€ ãããã« ã¹ã¿ãããç»å£è
ã®æ¹ã
ã«ã¯ãå¿ããã«ãé¢ããããå€ãã®æéãæºåã«è²»ãããŠããã ãããšæããŸãããã®å ŽãåããŠåŸ¡ç€Œç³ãäžããŸãã ã»ãã·ã§ã³ã¯2024/07/05ãŸã§èŠãããšã®ããšãªã®ã§ãäŒå Žã«çŽæ¥è¡ããªãã£ãæ¹ããã²ã芧ãã ããã aws.amazon.com BASEã§ã¯ãããŒã«ãæå±ã«é¢ãããAWSã䜿ã£ãŠããžãã¹ããªãŒãããããã¯ããžãã¹ãå®ããšã³ãžãã¢ãåéããŠãããŸãããèå³ãããæ¹ã¯ããã²äžèšã®æ¡çšæ
å ±ã®ãªã³ã¯ãã芧ãã ããïŒ binc.jp
ã¯ããã« Platform Group ã®ä¹
ä¿ç°ïŒ @ykbt13 ïŒã§ãïŒ BASEã§ã¯ãªã¢ãŒããã¯ãã£ãšããŠããã¯ãšã³ãã®æ¢åæ©èœãæ§ãªããžããªããæ°ãªããžããªãžç§»è¡ããäœæ¥ãæ¥ã
è¡ã£ãŠããŸãã詳ããç¥ãããæ¹ã¯ãã²ãã¡ããåç
§ããŠãã ããã www.youtube.com ãããªãªããBASEã«ãããã³ã¢æ©èœã®1ã€ã§ããååã®çºéæ©èœã®ç§»è¡ãè¡ãããŸãããããããªãããã³ã¢æ©èœã§ãããããã«æ§ã
ãªæ¹ä¿®ãç¹°ãè¿ãããŠè€éåããŠããŸã£ãçºéæ©èœã§ã¯ç§»è¡åã®åäœãä¿èšŒããè¡ããã¹ãã®ã¿ã§ã¯äžå®ããããŸãã ããã§ããªã¢ãŒããã¯ãã£ãåæ»ã«é²ããã¹ãã æ¬çªç°å¢äžã§ ç§»è¡ååŸã®åŠçãåæå®è¡ãããŒã¿ããŒã¹ã®çµæãæ¯èŒããããšã§åäœã®ä¿èšŒãè¡ãããŒã«ãéçºããŸããã ãã®èšäºã§ã¯ãåæ§ã«ãªã¢ãŒããã¯ãã£ãé²ããŠããæ¹ã
ã察象ã«ããã®ããŒã«ïŒBASEå
ã§ã¯éç§°DryRunãšåŒãã§ããŸãã®ã§ä»¥éDryRunãšèšèŒãããŠããã ããŸãïŒã«ã€ããŠãèšèŒããŠãããŸãã TL;DR ãªã¢ãŒããã¯ãã£ãæå©ãããããŒã« DryRunãéçºããŸãã å®éçšã§ã¯éšåçã«æ¬çªç°å¢ã䜿ã£ãDryRunãè¡ããŸãã DryRunãäœã£ãŠããã«ããã£ãŠãããã«å€éšåœ±é¿ãå°ãªããµã³ãããã¯ã¹ãäœãäžããããšãéèŠãªã®ããšããããšã«æ°ã¥ããŸãã ãªãã¡ã¯ã¿ãšãªã©ã€ã å°ãæ¬èšäºã®å
容ããåããŸãããèæ¯ã«ã€ãªãããŸãã®ã§ããªãã¡ã¯ã¿ãšãªã©ã€ãã«ã€ããŠè§ŠããŠãããŸãã ã ã¬ã¬ã·ãŒãœãããŠã§ã¢æ¹åã¬ã€ã ãã«ãããŠãã¬ã¬ã·ãŒãªãœãããŠã§ã¢ãæ¹åããŠããæ¹æ³ãšã㊠ãªãã¡ã¯ã¿ ãš ãªã©ã€ã ã«ã€ããŠè§ŠããããŠããŸãã www.shoeisha.co.jp ãªãã¡ã¯ã¿ãªã³ã°ã¯ å€éšããèŠãéã«å
éšã®æåãå€ããã«ãœãããŠã§ã¢ãæ¹åããŠããäœæ¥ ã§ããããªã©ã€ã㯠åäžæ©èœãäžããäœãçŽãäœæ¥ ã«åœãããã®ã§ãããã®ããã§ãªã©ã€ãã¯ãªã¹ã¯ãšã³ã¹ãã®ããããã®ã§ããã ã§ããã ããªãã¡ã¯ã¿ãªã³ã°ã®ã¿ã§æ¹åãã§ããªãã®ã ãæ€èšããããã§ãªã©ã€ããéžæãã¹ãã§ãããšããŠããŸãããã é説çã«èšããšããã® ãªã¹ã¯ã®ä¿èšŒãã³ã¹ãé¢ã®è§£æ±ºãã§ããã° ããªãã¡ã¯ã¿ãªã³ã°ã§ã¯åŸãããªãã£ãã¡ãªããã享åããããã§æ¹åãã§ããã®ã§ã¯ãªãããšãèšããã§ã¯ãªãããšæã£ãŠããŸãã ãªã¢ãŒããã¯ãã£ããæäŒãããããŒã« DryRun ããŠBASEã«ãããŠã¯ãã¬ã¬ã·ãŒãœãããŠã§ã¢ã®æ¹åãšããŠãªã¢ãŒããã¯ãã£ãè¡ãããŠããŸããçŽè¿ã§ã¯BASEã«ãããã³ã¢æ©èœã§ããååã®çºéæ©èœã® ãªã©ã€ã ã«ãããªã¢ãŒããã¯ãã£ãè¡ãããŸããã ãªããªãã¡ã¯ã¿ã§ã¯ãªããªã©ã€ãã«ããç§»è¡ãªã®ããšãããšãæ§ãªããžããªã§ã¯ MVC ãã¬ãŒã ã¯ãŒã¯ã§ã®å¯çµåãåæãšããã¢ããªã¹ã§ãããæ°ãªããžããªã§ã¯DDDãšã¯ãªãŒã³ã¢ãŒããã¯ãã£ãããŒã¹ãšããççµåãªã¢ãžã¥ã©ãŒã¢ããªã¹ã§ãããããã¢ãŒããã¯ãã£ã®ãã©ãã€ã ã·ãããèµ·ããŠããããŒã ãšããŠãªã©ã€ãã«ããç§»è¡ãéžæããããã§ãã ãªã©ã€ãã«ãã倧ããªãªã¹ã¯ã®1ã€ãšããŠã ç§»è¡ååŸã§ã®ãªã°ã¬ãã·ã§ã³ãªã¹ã¯ ãšãããã®ããããŸããããã¯ãã¡ãããã¹ããéããŠä¿èšŒããããšã«ãªããŸããã ç§»è¡åã®æåãšå矩ã§ãã ãšããã®ãä¿èšŒããã®ã«ãã¹ãã®ã¿ã§ã¯éçããããšæã£ãŠããŸããããã§ãç§»è¡åãšç§»è¡åŸã®æŽæ°åŠçã«çç®ããŠã ããŒã¿ããŒã¹ã«å¯Ÿããæ°žç¶åãåããã®ã§ãããã©ãã ãšãããã®ã確èªããããšã§ãã®ä¿èšŒãè¡ããã®ã§ã¯ãªãããšèããŸããããããå®çŸããããŒã«ãäœæããŠããŸãã DryRunã®æŠèŠå³ æ°žç¶åãè¡ã£ãŠããç®æããã皮㮠ãµã³ãããã¯ã¹ ãšããŠæäŸããŠãç§»è¡åã®æ§æ©èœãšåæå®è¡ã ååŠçã§æŽæ°ãããããŒãã«ãæ¯èŒããããš ã§ãããŒã¿ããŒã¹ã«å¯Ÿããæ°žç¶åãåããã®ã§ãããã©ãããæ¯èŒãããã®ãšãªã£ãŠããŸããç§»è¡åŸã®ãªã©ã€ããããã³ãŒãèŠç¹ã§ã¯ãµã³ãããã¯ã¹ã§ãããã®åºå¥ã¯ã§ããã ããããæ¬æ¥è¡ãã¹ãæ°žç¶ååŠçãè¡ã£ãŠãããã®ããã«æ¯ãèã£ãŠãã ãããDryRunãšããåœåãããŸããã ããªãåçŽåããããã®ã«ã¯ãªããŸãããæ¬äŒŒçãªPHPã®ã³ãŒãã§DryRunã®æåã瀺ããŸããš ç§»è¡å
ã®æ¬äŒŒã³ãŒã // ç§»è¡å
ã®æ©èœãžã®ãªã¯ãšã¹ã function requestNewFeature(): NewResult { } // æŽæ°ãããåããŒã¿ããŒã¹ã®æ¯èŒ function compareDatabase(NewResult $newResult, OriginResult $originResult): CompareResult { } // æ¬æ¥å®è¡ãããç§»è¡å
ã®åŠç function executeOrigin(): void { if ($isDryRun === true) { $newResult = requestNewFeature(); } // ç§»è¡å
ã®åŠçã®å®è¡ // DryRunã§ãã£ãŠããªããŠãå¿
ãå®è¡ãããŸã if ($isDryRun === true) { compareDatabase($newResult, $originResult) } } ç§»è¡å
ã®æ¬äŒŒã³ãŒã // ããŒã¿ããŒã¹ã«ã¢ã¯ã»ã¹ããæ ¹æ¬ã®interface interface DatabaseAccess { } // DryRunäžã®ããŒã¿ããŒã¹ã¢ã¯ã»ã¹ class DryRunDatabaseAccess implements DatabaseAccess { } // éåžžã®ããŒã¿ããŒã¹ã¢ã¯ã»ã¹ class OriginDatabaseAccess implements DatabaseAccess { } function getDatabaseAccess(): DatabaseAccess { return $isDryRun == true ? new DryRunDatabaseAccess() : new OriginDatabaseAccess(); } // DryRunåãã®åŠççµæãäœæãã function createDryRunResult(): DryRunResult { } // æ¬æ¥å®è¡ãããç§»è¡å
ã®åŠç function executeNewFeature(): void { $databaseAccess = getDatabaseAccess(); // ç§»è¡å
ã®åŠç // DryRunäžã ãšããŠããããããªããšããŠãæåã¯å€ãããŸããã return $isDryRun == true ? createDryRunResult() : $result } ãšãªããŸããå®éã«ã¯ç§»è¡å
ç°å¢ã§ã¯DoctrineãšããORMãå©çšããŠãããDoctrineã®DBã³ãã¯ã¿ããªãŒãã©ã€ãããŠããã®ãšãRay.DiãšããDIãã¬ãŒã ã¯ãŒã¯ãå©çšããŠãæ¬äŒŒã³ãŒãã®ãããªåœ¢ã§ããŒã¿ããŒã¹ã®åãå
ã倿ŽããŠãããŸãã ä»çµã¿äžããçšåºŠéšååãããã³ãŒããæºåãããŠãããã®ã®ãç§»è¡å¯Ÿè±¡ã®æ©èœããšã«ãµã³ãããã¯ã¹ãäžã€äžã€äœãäžããå¿
èŠããããããé »ç¹ã«äœ¿ããããŒã«ã§ã¯ãããŸãããããããªãããæºåã§ãããããã°åçš®ç°å¢ã§åäœãããããšãå¯èœã§ãããç§»è¡å
ã®ã³ãŒããå¿
ãå®è¡ãããããã«ãªãããã æ¬çªç°å¢ã§ãã ãåäœãããããšãã§ããŸãã çºéåŠçã«ãããDryRunã®å®éçš çºéåŠçã®ãªã¢ãŒããã¯ãã£ã¯å®åéšéãå¥éãããŸããŠãDryRunã¯PlatformããŒã ã«ãŠéçºãããããŸãããDryRunã®éçºãçµãã£ãã¿ã€ãã³ã°ã§ããªã¢ãŒããã¯ãã£ãããçºéåŠçã«å¯ŸããŠçްããåäœïŒå
·äœçã«ã¯ãæ¯æãæ¹æ³å¥ïŒã«åå²ããŠé 次DryRunãé©å¿ããŠãããæ¬çªç°å¢ãžã®DryRunãå®è¡ããŠãããŸããã æ¬çªç°å¢ã§åäœããããšããããšã§å®å
šã«åãããã«æ§ã
ãªã¬ãŒãåŠçãå ããŠããã®ã§ãããæå€ã«ãã¹ã ãŒãºã«åããŠããŸããå®å¿ãããšãšãã«ããããã®ãäœãåºããŠããŸã£ããªããšéçºåœæã«æã£ãŠããèšæ¶ããããŸãã ãŸãç¹ã«èŠåŽããç¹ãªãã§ãããBASEã®ãããã¯ãã®å¶éã§å人æ
å ±ãä¿åã§ããç°å¢ã«å¶éããããæ¯èŒçµæã®ãã°ã®åºãæ¹ããµã³ãããã¯ã¹ã«ä¿åããéã®ãã¹ã¯åŠçãªã©ã现ããåäœã§ã®å¯Ÿå¿ãå¿
èŠãªãšããã«èŠåŽããããŸãããæ¯ãè¿ããš1ã€ã®å
±éåããããŒããäœã蟌ãã§ãããšãããããã¯ãæ³¥èã现ãããµã³ãããã¯ã¹ãäœã蟌ãã§ãããšããäœæ¥ãã¡ã€ã³ã ã£ããªãšæããŸãã ããããŠé 次DryRunã皌åããŠããäžã§ãå®éã«éçºããŠããã ããŠãããšã³ãžãã¢ãšååããŠãèŠã€ãã£ãŠãã£ããã°ãªã©ã®ä¿®æ£ãå ããŠããããŸããã DryRunãå©çšããç®çãšããŠã ããŒã¿ããŒã¹ã«å¯Ÿããæ°žç¶åãåããã®ã§ãããã©ãã ãšãããã®ããããŸããããå®éçšããŠããããã§å¯æ¬¡çã«ãã®ãããªã¡ãªãããèŠã€ãã£ãŠããŸãã å®éã«æ¬çªã§éçšãããŠããããŒã¿ãšããèšå€§ãªãã¿ãŒã³ã®ããããŒã¿ã䜿ã£ãŠãªãªãŒã¹åã«ã³ãŒããèµ°ãããããšãã§ãã ãªã©ã€ãäžã«æ§æ©èœãžã®æ°èŠéçºãè¡ãããŠããŠãã®è¿œåŸããã¡ããšè¡ãããŠããã®ãã確èªã§ãã ããã«ãã£ãŠã现ãããã°ãªã©ããªãªãŒã¹ãŸã§ã«è§£æ¶ã§ãããŸãæ¬æ¥ã®ç®çã§ãããªã°ã¬ãã·ã§ã³ãžã®å¯Ÿå¿ãè¡ããŸãããBASEå
éšã®è©±ã«ãªã£ãŠããŸããŸããå®éã«éçºãè¡ã£ããšã³ãžãã¢ã®æ¹ã
ãç²ãæ§ã§ããã åçç¹ã課é¡ç¹ å®éã«éçšããŠã¿ãããã§ã¡ãªããã ãã¯ãªãããã¡ãªãããããã€ãåºãŠããŠããŸã£ãã®ã§ããããæ¯ãè¿ã£ãŠãããŸãã å°ã现ããç¹ãšãªã£ãŠããŸããŸããããããã£ã課é¡ããããŸããã ç§»è¡ååŸã§åæã«å®è¡ããããšã«ããããã©ãŒãã³ã¹ãžã®åœ±é¿ããã£ã ããŒã¿ããŒã¹ãžã®æžèŸŒã¯å®éã®RDBMSã«æžã蟌ãã§ããããšã«ãããä»ã®DryRunåŠçãžã®åœ±é¿ãå®å
šã«ã¯åé¢ã§ããŠããªãã£ã ããã« ä»ãžã®åœ±é¿ãå°ãªããµã³ãããã¯ã¹ãäœã蟌ãã§ããã¹ãã ãšããç¹ãéèŠã ã£ããã ãªãšäœã£ãŠã¿ãŠæ¹ããŠæããŸããã ç¹ã«ä»åãä»çµã¿ã¥ããã«äœ¿ãã人å¡ã³ã¹ããå å³ããŠãPHPã³ãŒãäžïŒã€ãŸãã¯ã¢ããªã±ãŒã·ã§ã³ã¬ã€ã€ãŒïŒã§ãµã³ãããã¯ã¹ãäœã蟌ãã§ããã®ã§ãããããããããŒã¿ããŒã¹ããåããããšãã¢ãã¯èªäœãHTTPãµãŒãåããŠPHPã³ãŒãå€ã§è¡ããªã©ãåãµã³ãããã¯ã¹ãåŸæãªéšåã§åå²ããŠäœã蟌ãã§ãããšããã®ãè¯ãã£ãã®ãããããªããšæã£ãŠããŸãããŸããä»ã®DryRunåŠçãžã®åœ±é¿ãšããæå³ã§ã¯ããŒãžã§ãã³ã°ããªããã圢ã§ããŒã¿ããŒã¹ãžã®æžèŸŒã¿ãè¡ãããšã§åé¿ã§ãããªãšããåçç¹ããããŸãã ãã®ãããã¯ãªã¢ãŒããã¯ãã£ãç¶ããŠããäžã§ããŸãDryRunæ©èœãäœ¿ãæ©äŒã¯ãããšæã£ãŠããã®ã§ãæ¹åããŠãããã°ãªãšæã£ãŠããŸãã ãããã« æ¬èšäºã§ã¯ããªã¢ãŒããã¯ãã£ããæäŒãããDryRunãšããããŒã«ã«ã€ããŠç޹ä»ãããŠããããŸããã ããäœã£ãŠåãããŠã¿ããšãã«æ³åããŠããããããã¡ããšåäœããŠããŸããæ¬çªç°å¢ã§ãããã°ããããšãããšãã§ããªããã®ãçã¿åºããŠããŸã£ããªãšããæèŠããããŸãããå人çã«ã¯äœã£ãŠãã£ãäžã§ãããããšåŠã³ããããŸããã BASEãšããç°å¢ã«ãããŠäœããããã®ã«ãªãã®ã§ãã©ããŸã§å€éšã®æ¹ã
ã«åèã«ãªãã®ãã¯ããããŸãããããããã£ããªã¢ãŒããã¯ãã£ã®æ¹æ³ããããã ãªãšããäžäŸãšããŠæ²ç€ºãããŠããã ããŸãã ã©ããã§ãããªæ¹æ³ã§ç§»è¡äœæ¥ãè¡ã£ãŠããã®ã ãªãšåèã«ãªããšããæ¥ãã°å¹žãã§ãã binc.jp
ã¯ããã« BASE Feature Dev1 Group ã® cureseven ã§ãã Google ãšç±³Yahoo ãå®ãã ãã¡ãŒã«éä¿¡è
ã®ã¬ã€ãã©ã€ã³ã ãã2024/06/01ã«å¯Ÿå¿ã®æçµç· ãåããè¿ããŸããã BASE ããéä¿¡ããŠããããã¢ãŒã·ã§ã³ã¡ãŒã«ã察å¿ãå®äºããŸããã®ã§ã察å¿ããéçšã§èµ·ãã£ããããã¯ã玹ä»ããŸãã ãã¡ãŒã«éä¿¡è
ã®ã¬ã€ãã©ã€ã³ããšã¯ãªã«ãç°¡åã«èª¬æ 1åã§ãæããã 5,000件以äžå人ã¡ãŒã«ã«ã¡ãŒã«ãéä¿¡ããããšããããã¡ã€ã³ãæã€ãäžæ¬éä¿¡è
ãã¯ã以äžã®èŠå®ã«åã£ãŠã¡ãŒã«ãéä¿¡ããå¿
èŠããããŸãã DMARC ã®å¯Ÿå¿ ããã¢ãŒã·ã§ã³ã¡ãŒã«ã«ã¯ã賌èªè§£é€ããããŒãæ¿å
¥ãããŠããããš è¿·æã¡ãŒã«çã 0.3%ãè¶
ããªãããš AWS ãåºããŠãã ãã¡ã ã®èšäºãã¹ãããªããŠããŠèªã¿ãããã§ãã ã¢ããªã±ãŒã·ã§ã³éçºããŒã ã®ç§ã¯ã賌èªè§£é€ããããŒã®æ¿å
¥ãäž»ã«æ
åœããŸããã è¿·æã¡ãŒã«çã¯å¹žéãªããšã« 0.3%æªæºã ã£ãã®ã§ãæžããããã®æœçãè¡ãããšã¯ãããŸããã§ããã ãµãŒãã¹é¢é£ã®ã¡ãŒã«ãå
šãŠæŽãåºã BASE ã§ã¯ã·ã¹ãã ããã¡ãŒã«ãéä¿¡ãã以å€ã«ããä»ç€ŸãµãŒãã¹ã䜿ã£ãŠããŸãã ãã€ãæ±ã£ãŠãããµãŒãã¹ã®ã³ãŒããèŠãã ãã§ã¯èŠèœãšããŠããŸããããªã¡ãŒã«ããã£ããããèªåã§ç»é²ããŠãã BASE ã¢ã«ãŠã³ãã«å¯ŸããŠæ¥ãã¡ãŒã«ãèŠãããããŸããŸãªããŒã ã«åãåããããããŠãå
šäœåãææ¡ããŠãããŸããã BASE ã«ã¯ã以äžã®çš®é¡ã®ããã¢ãŒã·ã§ã³ã¡ãŒã«ããããŸããã ãããã§éä¿¡ããŠãããªãŒããŒåãããã¢ãŒã·ã§ã³ã¡ãŒã« 賌å
¥è
ãã·ã§ããããåãåãã¡ã«ãã¬ãåå
¥è·èªåéç¥ãæé販売éç¥ã¡ãŒã« å¶æ¥ããŒã ã䜿ã£ãŠããã¡ãŒã«ãµãŒãã¹ïŒSendGrid, kintoneïŒããéä¿¡ããã¡ãŒã« æ©æ¢°åŠç¿ããŒã ãã·ã§ããéèšããæé©ãªã¿ã€ãã³ã°ã§éä¿¡ãããªãŒããŒåãæ©èœç޹ä»ã¡ãŒã«ïŒAmazon PinpointïŒ ãããã¢ãŒã·ã§ã³ã¡ãŒã«ããªã®ãããã©ã³ã¶ã¯ã·ã§ã³ã¡ãŒã«ããªã®ã ããã¢ãŒã·ã§ã³ ã¡ãŒã«ãšãã©ã³ã¶ã¯ã·ã§ã³ ã¡ãŒã«ã®åºå¥ã¯ãæ¥çãé©çšãããèŠå¶ã«ãã£ãŠç°ãªããŸããã¡ãŒã«ã®æ§è³ªã¯ãGoogle ã§ã¯ãªãåä¿¡è
ã倿ããŸããè¿·æã¡ãŒã«çãé«ããªãããšãé²ãããã«ãããŒã±ãã£ã³ã°ãããã¢ãŒã·ã§ã³é¢é£ã®ã¡ãŒã«é
ä¿¡ã®ç»é²ããŠãŒã¶ãŒãç°¡åã«è§£é€ã§ããããã«ããããšãæ€èšããŸãããããŸããã¡ãŒã«ãèšèšããéã¯ããŠãŒã¶ãŒã念é ã«çœ®ãããã«ããŠãã ããã ã¡ãŒã«éä¿¡è
ã®ã¬ã€ãã©ã€ã³ã«é¢ãããããã質å ããåŒçš ãšããããã«ããããã¢ãŒã·ã§ã³ã¡ãŒã«ãããæ¥çã«ãã£ãŠç°ãªãå®çŸ©ã§ããããšã倿ããã®ã¯ã¡ãŒã«ã®åãåãæã ãšããèšèŒããããŸãã ããŒã ã¡ã³ããŒã«æèŠãèããªãããéä¿¡ããŠããã¡ãŒã«ããããã¢ãŒã·ã§ã³ã¡ãŒã«ããªã®ãããã©ã³ã¶ã¯ã·ã§ã³ã¡ãŒã«ããªã®ãã倿ãåé¡ããŠãããŸããã AWSãšã³ãã¥ãã±ãŒã·ã§ã³ãåããªããã®å®è£
äºçŽããæå»ã«ã¡ãŒã«ãäžæ¬éä¿¡ããæ©èœã«ã¯ãAmazon SES ãæ¡çšããŠããŸããAmazon SESã® sendBulkEmailã¡ãœãã ã䜿ãã°è€æ°ã®ã¡ãŒã«ãäžæ¬ã§éä¿¡ã§ããŸãã AWS SDK for PHP 3.x ã®ããã¥ã¡ã³ãã«åŸã£ãŠå®è£
ããŸããããsendBulkEMailã®ä»æ§éãã«å®è£
ããŠãããããŒãé©å¿ããããå°ã£ããããAWS ã«åãåãããªããé²ããŸããã åãåããããšãã sendBulkEmail ããéä¿¡å
ããšã®ããããŒæ¿å
¥ã«å¯Ÿå¿ããã®ã¯ 3.305.9 以éãšã®ããšã§ãããŒãžã§ã³ã¢ãããããããšã§è§£æ±ºããŸãããAWS SDK for PHP 3ç³»ããã¥ã¡ã³ãã«æžããŠãã£ãããã3ç³»ã ã倧äžå€«ã ãããšæã£ãŠããŸããã 3.305.9 ããªãªãŒã¹ãããã®ã¯ãã¡ãŒã«ã®èŠå®ãéå§ãã2é±éåã§ããã List-Unsubscribeã§æå®ããURLã®èŠä»¶ãå³ãã ã¯ã³ã¯ãªãã¯è³Œèªè§£é€API㯠RFC8058 ã«ãããã£ãŠå®è£
ããå¿
èŠãããã以äžããã£ãããšã§ãå·¥æ°ãèšãã¿ãŸããã ãªã¯ãšã¹ããã©ã¡ãŒã¿ã䜿ã£ãŠããŒã¿ãéä¿¡ããªããã°ãªããªã å人ãç¹å®ã§ãããããªããŒã¿ãéä¿¡ããŠã¯ãªãããæå·åãããŠããªããã°ãªããªã æ¢åã®APIãå©çšããã°è³Œèªè§£é€ãã§ããªãããšæã£ãŠããŸããããã¡ãŒã«ã¯ã©ã€ã¢ã³ãããã¯ã³ã¯ãªãã¯ã§è³Œèªè§£é€ãè¡ãããã«äœ¿ã API ã¯ãªã¯ãšã¹ãããã£ã䜿ããªãã£ããããæ¢åã®API ãä¿®æ£ããå¿
èŠããããŸããã ãŸãããªã¯ãšã¹ããã©ã¡ãŒã¿ã«å«ããããã·ã¥å€ã®æå·åãšã埩å·åã®åŠçãæ°èŠã§äœæããããšã«ãªããŸããã AWS ã®ã¢ã«ãŠã³ãããŸããã§ãåãæ¹æ³ã§æå·åããããã·ã¥å€ã䜿ã£ãŠè³Œèªè§£é€APIã«ãªã¯ãšã¹ãããçºã AWS KMSã䜿ã£ãæ¹æ³ ãæ¡çšããŸããã AWS KMS ãå©çšããŠæå·åã埩å·åãã§ããããã«ã€ã³ãã©ããŒã ãšçžè«ããªããé²ããŸããã éçºç°å¢ã§è³Œèªè§£é€ãªã³ã¯ã衚瀺ãããªãããšããã éçºç°å¢ã§å©çšããŠãããã¡ã€ã³ããã®ã¡ãŒã«ã«ã¯ã賌èªè§£é€ããããŒãé©åã«è²ŒãããŠããŠã賌èªè§£é€ãªã³ã¯ãåºçŸããªãäºè±¡ããããŸããã ãã®ã«ãŒã«ãæç¢ºã«æç€ºãããŠãããã調æ»ã«å·¥æ°ãåãããŠããŸããŸããããã®ãã API ãçŽæ¥å©ãã賌èªè§£é€ã§ããã㚠賌èªè§£é€ããããŒãé©åã«è²ŒãããŠããããš ã確èªããäžã§ãªãªãŒã¹ããŸãããéçºç°å¢ã§è³Œèªè§£é€ãªã³ã¯ã衚瀺ãããŠããªããšããæ¬çªã§ã¯å
šãŠã®è³Œèªè§£é€ããããŒãæ¿å
¥ãããŠããã¡ãŒã«ã«è³Œèªè§£é€ãªã³ã¯ã衚瀺ãããŠããŸããã ä»åŸã察å¿ãããããã«ç€Ÿå
ãžåšç¥ ãšã³ãžãã¢å
šäœã«ãå¯Ÿå¿æ¹æ³ãåšç¥ããŸãããç°¡åã«å®è£
ããŠããããããã«ã以äžã工倫ããŸããã æå·åã埩å·åã®ãµãŒãã¹ãäœãããããå©çšããã ãã§ API ã®ãã©ã¡ãŒã¿ã«å©çšãã hash ãäœæã§ããããã«ããŸãã åã¡ãŒã«éä¿¡æ¹æ³ã«å¯Ÿå¿ããããã«ã賌èªè§£é€ããããŒã®æ¿å
¥æ¹æ³ãèšèŒããŸãã BASE以å€ã«ããBASE BANK, PayID ããŒã ãªã©ããããŸããåºãåšç¥ããŸãã äžèšã®è©°ãŸã£ãããšãããã¥ã¡ã³ãã«ããéçºè
ã®å¯Ÿå¿ãè©°ãŸããªãããã«ããŸãã ãããã« ããã¢ãŒã·ã§ã³ã¡ãŒã«ã®ã¯ã³ã¯ãªãã¯è³Œèªè§£é€ã¯ãã¡ãŒã«ã®åãåãæãããããšã䟿å©ã§ããæ©èœã§ããã ç§ã®ã¡ãŒã«ããã¯ã¹ããããã¢ãŒã·ã§ã³ã¡ãŒã«ã§ãã£ã±ãã«ãªã£ãŠããã®ã§ãããããè§£é€ããŠã¹ãããªãããããšãã§ãããã§ãã èŠå®ã®é©å¿ã¯éå§ãããŠããŸãããæããã 5,000 件以äžå人ã¡ãŒã«ã«éä¿¡ããŠããªããã¡ã€ã³ã¯è¿·æã¡ãŒã«ã«å
¥ããªã©ã®åŠçœ®ãåãããªããããæªå¯Ÿå¿ã®ã·ã¹ãã ããæã¡ã®æ¹ãããã£ããããšæããŸãã ä»åŸå¯Ÿå¿ããããšã«ãªã£ãéåèã«ããŠããã ãããšå¬ããã§ãã binc.jp
ã¯ããã« ããã«ã¡ã¯ãããã¯ãšã³ããšã³ãžãã¢ã®Sakiã§ãïŒããã¯ãšã³ãã§PHPãæžããããPHPãšããèšèªãã®ãã®ã®ã¡ã³ãããŒãããŠããŸãã ãã®åºŠã泚æããŒã¿ããŠã³ããŒãAppã®ããã©ãŒãã³ã¹ãã¢ãããããããããšãŠãå
¥å¿µã«ããŒã¿ããŒã¹ãŸããã®åŠçãèŠçŽããŸããããã®äžã§ãç¹ã«é床ã«é¢ãã£ãŠãããindexãã«ã€ããŠã®èãæ¹ããŸãšããããšæããŸãã ãã®èšäºã¯MySQLïŒInnoDBïŒã«ã€ããŠã®èšäºã§ãããä»ã®RDBã«ã€ããŠã¯åœãŠã¯ãŸããªãå Žåããããšããããšã«ã泚æãã ããã indexãšã¯äœãããããã ãåç¥ã®æ¹ããã¡ããå€ããšæããŸãããindexã«ã€ããŠãããããããŠãã ããã indexãšã¯èŸæžã§ãããšããã®ç®æ¬¡ã«çžåœãããã®ã§ãç®çã®ããŒã¿ããã¡æ©ãæ€çŽ¢ããããã«éèŠãªãã®ã§ããããèŸæžã«ç®æ¬¡ãååšããªãã£ãå Žåãç®çã®æ
å ±ãæ¢ãã®ã«ãšãŠãèŠåŽããã ãããšããã®ã¯æ³åãããããšæããŸãã ç¹å¥ãªindexããã©ã€ããªããŒindex DBããŒãã«ã«ã¯ã倧æµãã©ã€ããªããŒindexãšãããã®ãååšããŸããããã¯MySQLã§ã¯åããŒãã«ã«1ã€ãã€ããæã€ããšãã§ããªãç¹å¥ãªindexã§ãã ãã©ã€ããªããŒã®ã«ã©ã ã§æ§æãããããã¯ããŒãã«ã§å¿
ããŠããŒã¯ïŒäžæïŒã«ãªããŸãã å¿
èŠã«å¿ããŠè¿œå ããã»ã«ã³ããªindex æ€çŽ¢å¹çãäžãããã«ã©ã ã«å¯Ÿããå¶çŽã远å ãããªã©ãããŸããŸãªç®çã§å¿
èŠã«å¿ããŠè¿œå ããã®ãã»ã«ã³ããªindexã§ããèšãæãããšããã©ã€ããªããŒindexã§ã¯ãªãindexã¯ãå
šãŠã»ã«ã³ããªindexã§ããããã¯1ã«ã©ã ã®ã¿ã§æ§æãããããšãããã°ãè€æ°ã®ã«ã©ã ã®è€åã§æ§æãããããšããããããŸãããŸãããŠããŒã¯ãªindexã«ããããšããéè€ãèš±ãããšãã§ããŸãã è€åindexã䜿ããã·ãŒã³ã䜿ããªãã·ãŒã³ 次ã®ãããªindexããããšããŸãã åäžã«ã©ã ã®indexã§ããã°ãã©ã€ããªããŒindexãšäœ¿çšæã¯å€ãããªãã®ã§ãè€åindexã«ã€ããŠå°ã詳ããããããããŸãã // test table UNIQUE KEY `test_prefecture_city` (`prefecture`, `city`) // éœéåºçãšåžã®çµã¿åãã ãã®æãæ¬¡ã®2ã€ã®ã¯ãšãªãèããŠã¿ãŸãã SELECT * FROM test WHERE prefecture = ' Tokyo ' // äŸ 1 SELECT * FROM test WHERE city = ' Chiyoda ' // äŸ 2 ãåç¥ã®æ¹ã¯ãã¡ããå€ããšæããŸããããã®å ŽåãäŸ1ã§ã¯indexãå¹ããŸãããäŸ2ã§ã¯indexãå¹ããŸããïŒäœ¿ããŸããïŒã ãªããããªãã®ãã¯ãæ¬ã®ç®æ¬¡ãäŸã«ãããšããããããã§ãã倧ã«ããŽãªãšããŠéœéåºçã®äžŠã³ããããããããã®éœéåºçã®é
ç®ã®äžã§åžã䞊ãã§ãããšããŸãããã æ±äº¬ - è¶³ç«åº - èå·åº ...ïŒç¥ïŒ åè - åèåž ...ïŒç¥ïŒ ããŠããã®ãããªæ§æã®ç®æ¬¡ãããéœéåºçãç¡èŠããŠïŒçŽç²ã«åžã ãã§äžŠã¹ãå Žåã®ïŒäŸãã°ãããããããé ã§åžãæ¢ãããšã¯çã«ããªã£ãŠããã§ããããïŒç¡çãããããšããããããšæããŸãã ãããã£ãŠãè€åindexã䜿çšããå Žåãå¿
ãå·ŠåŽã®ã«ã©ã ããé ã«çµã蟌ãã§ãããã¯ãšãªã§ããå¿
èŠããããŸãã å¿
ãããã¡ãªããã°ããã§ã¯ãªã ã»ã«ã³ããªindexã¯ããã°ããã»ã©æ€çŽ¢å¹çã®åäžã«ç¹ãããŸãããåé¢ãããŒã¿ã®insertãupdateæã«å
šãŠã®indexãæŽæ°ããå¿
èŠããããããindexãå€ããã°å€ãã»ã©æžã蟌ã¿åŠçã®è² è·ãäžãããšãããã¬ãŒããªãã®é¢ä¿ã§ããããŸãã ã¯ãšãªã®åŠ¥åœæ§ã¯explainã§è©äŸ¡ãã å®éã«æ¥åã§äœ¿çšããã¯ãšãªã¯ãäŸã§ããèŠãã¯ãšãªã»ã©åçŽã§ã¯ãªãããšãå€ãã§ããå®éã«ã¯ãšãªãããã¡ããšindexã䜿ããããã©ããã¯ã explain ãšããæ©èœã䜿ã£ãŠè©äŸ¡ããŸãã explain ã®å®è¡æ¹æ³ãšçµæã®èŠæ¹ã¯èšäºãããããããã®ã§ãããã§ã¯å²æããŸãã æ¬é¡: explainã ãããããããªãããšããã ããããããã®èšäºã®æ¬é¡ã§ãã å®ã¯ã explain ã®çµæããšãŠãè¯ãã®ã«ããªããé
ããã¯ãšãªãšãããã®ãååšããŸããããã¯ãäž»ã«æ¬¡ã®ãããªç¶æ³ãé¢ä¿ããŸãïŒ Profile ãèŠãŠãããããŒã¿è»¢éãé
ãããšãããã£ããããããšããããããªãã£ããããïŒã ããŒãã«ã巚倧ïŒã¬ã³ãŒãæ°ãå€ãïŒ INå¥ã§å€§éã®æ¡ä»¶ãæå®ããŠããïŒåãããããŒã¿ã®å¯Ÿè±¡ãå€ãïŒ SELECTã§åãããã«ã©ã ã®ããŒã¿ååŸã³ã¹ããããã£ãŠãã ã©ãããããšãªã®ãããªãé
ããªãã®ãã詳ããèŠãŠã¿ãŸãããã INå¥ã¯é
ããªãããã äžçå·ã®ç¯å²æå®ãšéããINå¥ïŒç䟡ç¯å²ïŒæ€çŽ¢ã¯ãINå¥ã«æž¡ãå€ãå¢ããã°å¢ããã»ã©é
ããªããããåŸåããããŸãã äŸãšããŠã次ã®ãããªã¯ãšãªãèããŠã¿ãŸãããã // shipping_number = é
éçªå· // shipping_numberã®ãŠããŒã¯indexããããšãã SELECT * FROM test WHERE shipping_number IN ( ' 0000-0000-0000 ' , ' 0000-0000-0002 ' , ...ïŒç¥ïŒ ); ç䟡ç¯å²æ€çŽ¢ã®æ§è³ªäžãåã«ããããããããŸã§ããšããäžçå·çãªæ€çŽ¢æ¹æ³ã§ã¯ãªããINå¥ã®å€ã²ãšã€ã²ãšã€ã«ã€ããŠæ€çŽ¢ããå¿
èŠããããŸããäŸã®å Žåã 0000-0000-0000 ã 0000-0000-0002 ãšããäžçå·çãªç¯å²ã®æ€çŽ¢ã§ã¯éã® 0000-0000-0001 ãå«ãŸããŠããŸããŸãã ããŒãã«ã巚倧ã§ããã°ããã»ã©ãæ€çŽ¢ã³ã¹ãã倧ãããªããããããšãããããŸãã ãã ãããã®ãããªã¯ãšãªã§ãã£ããšããŠããindexãé©åã«äœ¿çšã§ããŠãããããexplainäžã§ã¯ããªãããçµæã«èŠããã¯ãã§ãããã®ã¯ãšãªã®åé¡ç¹ã¯ãindexã䜿çšããããšãã®ãã®ã«ã³ã¹ããããã£ãŠããããšããç¹ã§ãã ååŸãããã«ã©ã ã®ããŒã¿ååŸã³ã¹ããããã æ¬¡ã®ã¯ãšãªãã芧ãã ããã // prefecture = éœéåºç // city = åž // zip_code = éµäŸ¿çªå· // prefecture, cityã®è€åindexãæã€ãšãã SELECT prefecture, city, zip_code FROM test WHERE prefecture = ' Tokyo ' ; ãã®ã¯ãšãªããŸããindexãé©åã«äœ¿çšã§ãããããexplainã§ã¯è¯ãçµæãšãªããŸããããããããŒãã«èªäœã巚倧ã§ãã£ããååŸä»¶æ°ãå€ããšããªããé
ãããšããããšã«ãªããããã¯ãšãªã§ãã èããŒããšããæŠå¿µãèãã ããã§éèŠã«ãªãã®ã¯èããŒããšããæŠå¿µã§ããMySQLã®äœ¿çšããŠããindexã®æ§é ã¯æšã«äŸããããã®ã§ãããããããçããŠããããŒã¿ãªã®ã§ãèããšããããã§ããã èããŒãã«ã¯ãã«ã©ã ã®ããŒã¿ãå«ãŸããŠããŸããåé ã®ãããã§äœ¿çšãããéœéåºçãšåžã®ç®æ¬¡ã®äŸãèŠãŠã¿ãŸãããã æ±äº¬ - è¶³ç«åº - èå·åº ...ïŒç¥ïŒ åè - åèåž ...ïŒç¥ïŒ ãã®äŸã§ã¯ãç®æ¬¡ïŒindexïŒã§æå®ãããŠããæ¬ã®ããŒãžïŒããŒãã«ããŒã¿ïŒã«ã¢ã¯ã»ã¹ãããšããéœéåºçãšåžã®æ
å ±ã¯ç®æ¬¡ã®æç¹ã§æã«å
¥ãããšãããããŸããæ±äº¬ - è¶³ç«åºãšããããŒã¿ãååšããããšã¯ç®æ¬¡ãèŠãã ãã§ãããããšããããšã§ãã ãã®æ
å ±ããããªãã¡èããŒãã«å«ãŸããããŒã¿ã ãšèããŠãã ããã indexã¯ããã®indexã«äœ¿çšããã«ã©ã ã®ããŒã¿ãèããŒãã«æã£ãŠããŸãããã ããã©ã€ããªããŒindexã ãã¯äŸå€ã§ãå
šãŠã®ã«ã©ã ã®ããŒã¿ãæã£ãŠããŸãïŒãªã®ã§ç¹å¥ãªindexãªã®ã§ãïŒã ããã§è¿œå ã§ãéµäŸ¿çªå·ãã®ããŒã¿ãååŸãããšããŸãããã®å Žåç®æ¬¡ã«ã¯éµäŸ¿çªå·ã®æ
å ±ãæžãããŠããªããããå®éã«ç®æ¬¡ã®ç€ºãããŒãžãéããããããéµäŸ¿çªå·ãååŸããå¿
èŠããããŸãã ã»ã«ã³ããªindexã®äœ¿çšæã¯ãindexã«å«ãŸããªãã«ã©ã ã®ããŒã¿ãååŸããéã«ããŒãã«ããŒã¿ãžã®ã¢ã¯ã»ã¹ãçºçãããããã³ã¹ãã«ãªãããšèããããšãã§ããŸãïŒãã®ã³ã¹ãã¯1ä»¶ååŸçšåºŠã§ã¯èª€å·®ã§ãããæ°äžä»¶ååŸããšãããããªèŠæš¡ã«ãªã£ãŠãããšå€§ããªå·®ãšãªããŸãïŒã è§£æ±ºæ¹æ³ 倧éã®INå¥åé¡ãšååŸã«ã©ã åé¡ã2ã€ã®åé¡ãæç€ºããŸããããããã®è§£æ±ºçãèããŠã¿ãŸãããã INå¥åé¡: INå¥ã®çµã蟌ã¿ã®åã«ãçµããã ãçµã 次ã®ã¯ãšãªãã芧ãã ããã // shipping_number = é
éçªå· // prefecture = éœéåºç // prefecture, shipping_numberã®è€åãŠããŒã¯indexããããšãã SELECT * FROM test WHERE prefecture = ' Tokyo ' AND shipping_number IN ( ' 0000-0000-0000 ' , ' 0000-0000-0001 ' , ...ïŒç¥ïŒ ); åé¡ã®æç€ºã«äœ¿çšããã¯ãšãªãšã®å·®ã¯ãindexãšæ€çŽ¢æ¡ä»¶ã«éœéåºçãå ããŠããããšã§ããããããããšã§ãINå¥ã®çµã蟌ã¿ã®åã«éœéåºçã§çµã蟌ãã§ãããã®ã§ããããŒãã«ã®å
šãŠã®ã¬ã³ãŒããã«å¯ŸããŠINå¥ã®çµã蟌ã¿ãè¡ãã³ã¹ããããéœéåºçåã®ã¬ã³ãŒãã«å¯ŸããŠãã®èŠæš¡ãŸã§å°ãããªããŸãã å¯èœã§ããã°ããéœéåºç, é
éçªå·ããããéœéåºç, åž, é
éçªå·ãããšããindexã«ããŠãéœéåºçãŸã§çµã蟌ãã§ããé
éçªå·ãIN奿€çŽ¢ãã§ã¯ãªããåžãŸã§çµã蟌ãã§ããIN奿€çŽ¢ã«ãããšããã£ãšæ©ããªããŸãã ããªãããŒãªäŸ // prefecture, ordered, shipping_numberã®è€åãŠããŒã¯indexããããšãã // ãããããéœéåºçãæ³šææ¥æãé
éçªå· SELECT * FROM test WHERE prefecture = ' Tokyo ' AND ordered < {ã¯ãšãªå®è¡æãããååã«æªæ¥ã®æ¥æ} AND shipping_number IN ( ' 0000-0000-0000 ' , ' 0000-0000-0001 ' , ...ïŒç¥ïŒ ); æ®éã«èããŠãæªæ¥ã«æ³šæãããæ³šæããšãããã®ã¯ååšããã¯ãããããŸããïŒå°ãªããšããã®ããŒãã«ã®éçšã§ã¯ååšããªããšããŸãïŒã ãããªããŒã¿ããããããªãã®ã§ããããWHEREå¥ã«å«ããæå³ãªã©ãªãããã«æããŸãããäŸç€ºããindexã䜿çšããããã«ã¯ãå®ã¯ãã®æ¡ä»¶æå®ã¯æå¹ã§ãã ORDER BY å¥ã§æ¥æã«ã©ã ã䜿çšãããå Žåãªã©ãæ¥æç³»ã®å
¥ã£ãindexã䜿çšããããããããæ€çŽ¢æ¡ä»¶ãã®ãã®ã«æ¥æããŒã¿ã¯äžèŠâŠãšããã·ãŒã³ã¯ãããšæããŸãããã®ãããªå Žåã«æçšãªãå°ãããªãããŒãªæ¹æ³ã§ãã ååŸã«ã©ã åé¡: ååŸããã«ã©ã ãæ¬åœã«å¿
èŠããããèãã䜿çšããindexãããèãã ãŸããç¹ã«çç±ã®ãªã SELECT * ã¯é¿ããã¹ãã§ããããã¯ããã ããŒã¿ååŸã³ã¹ããå¢ããããšã«ç¹ãããŸãã åŠçã«å¿
èŠãªã«ã©ã ãäœã§ããã®ãããã£ããèããŠãæäœéã®ã«ã©ã ã ããååŸããããšãããã©ãŒãã³ã¹é¢ã§ã¯éèŠã§ãã ãããŠã䜿çšããindexãåå³ããããšããšãŠãéèŠã§ããã¯ãšãªã«äœ¿çšå¯èœãªindexãè€æ°ååšããã®ã¯ããããããšãªã®ã§ã䜿çšã§ããindexã®äžã§ãindexãžã®ã¢ã¯ã»ã¹ã®ã¿ã§å¿
èŠãªããŒã¿ãå
šãŠååŸã§ããªãããæ€èšããŸãã ãŸãããã®åŠçãã¢ããªã±ãŒã·ã§ã³ã®äžã§ãšãŠãéèŠã§ãindexã远å ããŠã§ãããã©ãŒãã³ã¹ãäžãããå Žåãindexãæ°ãã远å ããããšã¯ååã«äŸ¡å€ã®ããããšã§ãã äœè«ã§ãããç§ã®è©Šããäžã§ã¯ãindexã远å ããããšã§30ç§ãªãŒããŒã®ã¯ãšãªã1.6ç§ãŸã§ççž®ã§ããŸãããããã ãã®é床差ããã£ãŠããexplainã®çµæã«å·®ã¯ãããŸããã ãããŠã¯ãšãªãåå²ãããšããéžæè¢ æ¬¡ã®ã¯ãšãªãã芧äžããã // idã¯ãã©ã€ããªã㌠// shipping_number = é
éçªå· // prefecture = éœéåºç // zip_code = éµäŸ¿çªå· // name = 泚æãã人ã®åå // prefecture, shipping_number, zip_codeã®è€åãŠããŒã¯indexããããšãã // å¥ã§ãprefecture, shipping_number, nameã®è€åãŠããŒã¯indexããããšãã SELECT id, shipping_number, prefecture, zip_code, name FROM test USE INDEX (`test_prefecture_shipping_number_zip_code`) WHERE prefecture = ' Tokyo ' AND shipping_number IN ( ' 0000-0000-0000 ' , ' 0000-0000-0001 ' , ...ïŒç¥ïŒ ); USE INDEX ã䜿çšããŠã䜿çšããindexãåºå®ããŠããŸãã ãã®äŸã§ã¯ã name ã«ã©ã ã«ã€ããŠãããŒãã«ã¢ã¯ã»ã¹ããŠããŒã¿ãååŸããã³ã¹ããçºçããŸãïŒ id ã¯ã³ã¹ããããããŸãããInnoDBã§ã¯ãæé»çã«ã»ã«ã³ããªindexã®æåŸã«ãã©ã€ããªããŒãåæã«å
¥ããããèããŒãã« id ã¯åžžã«å«ãŸããŸãïŒã äžæ¹ã§ã䜿çšããindexã test_prefecture_shipping_number_name ã«ãããšãä»åºŠã¯éµäŸ¿çªå·ã®ååŸã³ã¹ããããããŸãã å®éã«ãã£ãŠã¿ãŠèšæž¬ããŠå€æããå¿
èŠããããŸãããããã¯ã次ã®ãããªæ¹æ³ã§è§£æ±ºã§ããå ŽåããããŸãã // ã¯ãšãª 1 SELECT id, shipping_number, prefecture, zip_code FROM test USE INDEX (`test_prefecture_shipping_number_zip_code`) WHERE prefecture = ' Tokyo ' AND shipping_number IN ( ' 0000-0000-0000 ' , ' 0000-0000-0001 ' , ...ïŒç¥ïŒ ); // ã¯ãšãª 2 SELECT id, name FROM test USE INDEX (`test_prefecture_shipping_number_name`) WHERE prefecture = ' Tokyo ' AND shipping_number IN ( ' 0000-0000-0000 ' , ' 0000-0000-0001 ' , ...ïŒç¥ïŒ ); ãã®ããã«ãindexã®ã¿ã§ããŒã¿ååŸãå®çµããããã«ã¯ãšãªãåå²ããåŸããã¢ããªã±ãŒã·ã§ã³åŽã§ id ã䜿çšããŠããŒã¿ãããŒãžããããšããæ¹æ³ã§ãã USE INDEX ã䜿çšããããšã§ãMySQLã®ãªããã£ãã€ã¶ã«ããèªåçãªindexéžæã«ä»»ããã䜿çšããindexãåžžã«åºå®ããããšãã§ããŸãã ç¹°ãè¿ãã«ãªããŸãããããã¯å®éã«éåºŠèšæž¬ãè¡ãªã£ãŠæ€èšããå¿
èŠããããŸããã«ã©ã ã®åããµã€ãºã«ãã£ãŠãçµæãç°ãªã£ãŠããããã§ãã äœè«ã«ãªããŸãããç§ãè²ã
ãšè©Šããäžã§ã¯10ç§ããã£ãŠãããã®ã1ç§æªæºãŸã§ççž®ãããšãããããªäŸããã£ãããã詊ããŠã¿ã䟡å€ã¯ååã«ãããŸãã ãããã« ãã¯ãšãªã§ã¡ãããšindexã䜿çšã§ãããããããã«äžæ©èžã¿åºããŠãããã©ãŒãã³ã¹ã®åºãã¯ãšãªãšindexã®çµã¿åãããæ€èšãããããšã§ãããé床ãåºãããšã§ããŸããã ã©ãããŠãè€éã«èŠããindexã§ãããèªã¿è§£ããŠãããšæå€ãšåçŽãªåŽé¢ããããåºæ¬ã«ç«ã¡è¿ã£ãŠãèŸæžã®ç®æ¬¡ãã®äŸã§èããŠã¿ããšçè§£ããããã£ãã§ãã ãããã®èšäºãèªãã§èå³ãæããããªãããã²ãã©ã€ããŠã¿ãŠãã ããïŒ