
3åéããŒã¿ããŒã¹è¬åº§ 第10åïŒæçµåïŒ: ããŒã¿ããŒã¹ã®æªæ¥ãšåŠç¿ã®æ ãž
ç»å Žäººç©ïŒ
ãã£ããå çïŒéç§°:å çïŒïŒ ãªããžã§ã¯ãæåãã¹ã¿ãŒãæè¿ã¯ããŒã¿ããŒã¹ã®äžçã«ã詳ããã
ããã婿ïŒéç§°:ãããåïŒïŒ ããã°ã©ãã³ã°ãå§ããã°ããã®è¥æãããŒã¿ããŒã¹ã¯ãŸã æªç¥ã®äžçã
ãããåïŒå çããããŸã§ããŒã¿ããŒã¹ã®åºç€ãããSQLãèšèšãããã¯ã¢ããããããŠWebãšã®é£æºãŸã§ãããããã®ããšãæããŠããã ããŸããïŒã§ãããªãã ããŸã å šéšãçè§£ã§ããèªä¿¡ããªãã§ã...ã
å çïŒãããåãçŽ æŽãããããšã ïŒãå šéšãçè§£ã§ããããšèªä¿¡ãæã€ãããããã£ãšåŠã³ããããšæãæ°æã¡ããããæé·ãžã®ç¬¬äžæ©ãªãã ã仿¥ã¯ããããŸã§ã®åŠã³ãæ¯ãè¿ããªãããããŒã¿ããŒã¹ãã©ã®ããã«é²åããŠãããããããŠããããåãã©ããã£ãŠåŠãã§ããã°è¯ããã話ããŠãããã
1. ãããŸã§ã®åŠã³ã®æ¯ãè¿ã
å çïŒãããŸã§åŠãã ããšã¯ã倧ãã以äžã®5ã€ã«åããããã
ããŒã¿ããŒã¹ã®åºç€: ããŒã¿ããŒã¹ãšã¯äœããããŒãã«ãã¹ããŒããäž»ããŒãšå€éšããŒãšãã£ãåºæ¬æŠå¿µãåŠãã ã
SQLã®åºæ¬: ããŒã¿ãæäœããããã®èšèªãSELECTãINSERTãUPDATEãDELETEãšãã£ãåºæ¬çãªSQLæãåŠãã ã
ããŒã¿ããŒã¹èšèš: æ£èŠåããšã³ãã£ãã£ã»ãªã¬ãŒã·ã§ã³ã·ããå³ïŒERå³ïŒã䜿ã£ãŠãããŒã¿ãå¹ççã«ç®¡çããããã®èšè𿹿³ãåŠãã ã
éçšãšä¿å®: ããã¯ã¢ãããåé·åããã©ã³ã¶ã¯ã·ã§ã³ãšãã£ããããŒã¿ãå®ãããµãŒãã¹ãå®å®çšŒåãããããã®ç¥èãåŠãã ã
Webãšã®é£æº: Springãªã©Javaã®ãã¬ãŒã ã¯ãŒã¯ãäŸã«ãã¢ããªã±ãŒã·ã§ã³ããããŒã¿ããŒã¹ãå®å šãã€å¹ççã«äœ¿ãæ¹æ³ãåŠãã ãPythonãªãDjangoãFlaskã§ããåãèãæ¹ã§ããŒã¿ããŒã¹ãåŠãã§ããããšãã§ãããã
å çïŒãããã®ç¥èã¯ãã©ããªããŒã¿ããŒã¹ã䜿ãã«ããŠãéçšããæ®éçãªåºç€ã ããã®åºç€ããã£ããããŠããã°ãããããç»å Žããæ°ããæè¡ã«ãæè»ã«å¯Ÿå¿ã§ããã
2. çŸä»£ã®ããŒã¿ããŒã¹ã»ãšã³ã·ã¹ãã
å çïŒæã®ããŒã¿ããŒã¹ã¯ããã¹ãŠãããªã¬ãŒã·ã§ãã«ããŒã¿ããŒã¹ãäžæã ã£ããããããçŸä»£ã¯ããŒã¿ã®çš®é¡ãçšéã倿§åããŠããã
ãªã¬ãŒã·ã§ãã«ããŒã¿ããŒã¹ïŒRDBïŒ:
ç¹åŸŽ: å³å¯ãªã¹ããŒããšACIDç¹æ§ïŒæŽåæ§ãäžè²«æ§ãªã©ïŒã§ãããŒã¿ã®ä¿¡é Œæ§ãé«ãã
çšé: éèã·ã¹ãã ã顧客管çãECãµã€ãã®åå管çãªã©ãããŒã¿ã®æŽåæ§ãæãéèŠãªå Žé¢ã
NoSQLããŒã¿ããŒã¹:
ç¹åŸŽ: ã¹ããŒãå®çŸ©ãæè»ã§ãæ°Žå¹³ã¹ã±ãŒã«ïŒãµãŒããŒã®è¿œå ã«ããæ§èœåäžïŒã«åªãããçšéã«å¿ããŠé«ãããã©ãŒãã³ã¹ãçºæ®ããã
çšé: 倧éã®ãã°ããŒã¿ããªã¢ã«ã¿ã€ã åæãSNSã®æçš¿ããŒã¿ãªã©ãæè»æ§ãæ¡åŒµæ§ãå¿ èŠãªå Žé¢ã
泚æç¹: å€ãã®NoSQLã¯è€éãªJOINãå³å¯ãªãã©ã³ã¶ã¯ã·ã§ã³ãèŠæã ãããããæè¿ã®MongoDBãªã©äžéšã®NoSQLã¯ACIDãã©ã³ã¶ã¯ã·ã§ã³ããµããŒãããŠãããRDBãšã®å¢çç·ã¯æããææ§ã«ãªã£ãŠããã
ããŒã¿ãŠã§ã¢ããŠã¹ïŒDWHïŒ:
ç¹åŸŽ: éå»ã®å€§éããŒã¿ãèç©ããåæã«ç¹åããããŒã¿ããŒã¹ã
çšé: çµå¶å€æã®ããã®å£²äžåæã顧客è¡ååæãªã©ã
泚æç¹: äŒçµ±çã«ã¯åæå°çšã ã£ãããGoogle BigQueryãSnowflakeãšãã£ãã¯ã©ãŠãDWHã§ã¯ããªã¢ã«ã¿ã€ã åŠçã®é²åãé²ãã§ããã
ã°ã©ãããŒã¿ããŒã¹:
ç¹åŸŽ: ããŒã¿å士ã®é¢ä¿æ§ïŒã€ãªããïŒãå¹ççã«ç®¡çããã
çšé: SNSã®åéãããã¯ãŒã¯ãäžæ£æ€ç¥ãã¬ã³ã¡ã³ãã·ã¹ãã ãªã©ã
å çïŒçŸä»£ã®éçºã§ã¯ãECãµã€ããªããåå管çã¯RDBãã»ãã·ã§ã³æ å ±ã¯Redisãæ€çŽ¢ã¯Elasticsearchãã®ããã«ãçšéã«å¿ããŠè€æ°çš®é¡ã®ããŒã¿ããŒã¹ã䜿ãåããã®ãäž»æµã ãããã¯**ããªã°ãããã»ããŒã·ã¹ãã³ã¹ïŒPolyglot PersistenceïŒ**ãšåŒã°ããå€çš®å€æ§ãªããŒã¿ã¹ãã¬ãŒãžæè¡ã䜿ãåããããšãæå³ããã
3. å®è·µçãªåŠç¿ãã¹
å çïŒããŒã¿ããŒã¹ã®åŠç¿ã¯ã仿¥ã§çµãããããªãããããããæ¬çªã ïŒ
ãåçŽè åãïŒ3ïœ6ã¶æïŒã
1. åºç€åŠç¿: ããŒã¿ããŒã¹ã®æŠå¿µãæ±ã£ãŠããå ¥éçãªæžç±ãææã§åºç€ãåŠã¶ã
2. å®è·µç°å¢: Dockerã䜿ã£ãŠPostgreSQLãMySQLãªã©ã®ç°å¢ãæ§ç¯ããæãåããã
3. å®ç¿: ç°¡åãªWebã¢ããªã±ãŒã·ã§ã³ïŒToDoãªã¹ããããã°ãªã©ïŒãäœæããããŒã¿ããŒã¹ãšé£æºãããŠã¿ãã
ãäžçŽè åãïŒ6ïœ12ã¶æïŒã
1. ã¯ã©ãŠãäœéš: AWS RDSãGoogle Cloud SQLã§RDBããFirebase Firestoreã§NoSQLã詊ããªã©ããããŒãžãåãµãŒãã¹ã§ã®å®éçšãäœéšããã
2. ããã©ãŒãã³ã¹æé©å: ã€ã³ããã¯ã¹èšèšãã¯ãšãªãã¥ãŒãã³ã°ã®æŠå¿µãåŠã³ãå®è¡èšç»ãèªãã§ã¿ãã
3. è³æ ŒååŸ: å¿çšæ å ±æè¡è 詊éšã«ææŠããå¹ åºãç¥èãäœç³»çã«èº«ã«ã€ããã
ãäžçŽè åãïŒ1幎以äžïŒã
1. å°éç¹å: ããŒã¿ããŒã¹ã¹ãã·ã£ãªã¹ã詊éšã«ææŠããããæ·±ãå°éç¥èãç¿åŸããã
2. ææ°æè¡: ãã¯ãã«ããŒã¿ããŒã¹ããµãŒããŒã¬ã¹ããŒã¿ããŒã¹ãªã©ãææ°æè¡ãç ç©¶ããå®è·µããŠã¿ãã
3. èšèšçµéš: å€§èŠæš¡ã·ã¹ãã ã®èšèšãéçšã«æºãããå®åçµéšãç©ãã
4. ææ°æè¡ãã¬ã³ããšæªæ¥
å çïŒããŒã¿ããŒã¹ã¯ãä»ãé²åãç¶ããŠãããæè¿ã®å€§ããªæœ®æµã¯ãAIãšã®çµ±åã ã
ãããåïŒAIãšããŒã¿ããŒã¹ãã©ãã€ãªãããã§ããïŒ
å çïŒäŸãã°ããã¯ãã«ããŒã¿ããŒã¹ãšãããã®ããããããã¯ãç»åãæç« ãªã©ã®éæ§é åããŒã¿ãæ°å€ã®ãã¯ãã«ã«å€æããŠä¿åãã䌌ãŠãããã®ãé«éã«æ€çŽ¢ã§ããããã«ããããŒã¿ããŒã¹ã ã
å çïŒãããã¯ãAIã®ãæ€çŽ¢æ¡åŒµçæïŒRAGïŒãããé«åºŠãªã¬ã³ã¡ã³ãã·ã¹ãã ãäžæ£æ€ç¥ãªã©ã§äœ¿ãããŠãããå°çšã®ãã¯ãã«DBïŒPineconeãªã©ïŒã ãã§ãªããPostgreSQLã®æ¡åŒµæ©èœã§ããpgvectorã®ããã«ãæ¢åã®ããŒã¿ããŒã¹ã«ãçµã¿èŸŒãŸããŠããŠãããã ãããããã®ããŒã¿ããŒã¹ã¯ãããŒã¿ã管çããã ãã§ãªããããŒã¿ã掻çšããŠæ°ãã䟡å€ãçã¿åºãããã®åœ¹å²ãæ ã£ãŠããã
5. æåŸã«
å çïŒãããåããããŸã§è¬åº§ãããé 匵ã£ãããããŒã¿ããŒã¹ã®åŠç¿ã¯ãå¥¥ãæ·±ããæãŠããªãæ ã®ãããªãã®ã ããããããã®æ ãä¹ãè¶ããã°ãåã®ããã°ã©ãã³ã°ã®äžçã¯å€§ããåºããã
å çïŒããã§ããã£ããå çãšãããåã®ããŒã¿ããŒã¹è¬åº§ãã¯æçµåã ããããŸãäœãå°ã£ãããšããã£ããããã€ã§ã質åããŠãããåã®ä»åŸã®æŽ»èºã楜ãã¿ã«ããŠãããïŒ
å®
ããšãã
ãããŸã§ããã£ããå çãšãããåã®ããŒã¿ããŒã¹è¬åº§ããæåŸãŸã§ãèªã¿ããã ããæ¬åœã«ããããšãããããŸããïŒ
ITã·ã¹ãã ã«äžå¯æ¬ ãªãããŒã¿ã®ç®¡çãã«ã€ããŠãåºç€ããå®è·µãŸã§ãã玹ä»ããŠããŸãããçããã®ããã°ã©ãã³ã°åŠç¿ã®äžå©ã«ãªããã°å¹žãã§ãããã®è¬åº§ã§åŸãç¥èãšåŠã³ãžã®ã¢ãããŒã·ã§ã³ããçããã®ä»åŸã®åŠç¿ããã£ãªã¢ã®å€§ããªäžæ©ãšãªãããšãå¿ããé¡ã£ãŠããŸãã
ãããŠã次åããããã£ããå çãšãããåã®ãããã¯ãŒã¯è¬åº§ããéè¬ããŸããã³ã³ãã¥ãŒã¿å士ãã€ãªãéä¿¡æè¡ã«ã€ããŠãåºç€ããå®è·µãŸã§ãåããããã解説ããŠãããŸãã®ã§ãåŒãç¶ããããããé¡ãããããŸãã
ãŸã次åã®è¬åº§ã§ãäŒãã§ããããšã楜ãã¿ã«ããŠããŸãïŒ
#ããŒã¿ããŒã¹ #NoSQL #ããŒã¿ãŠã§ã¢ããŠã¹ #åŠç¿æ¹æ³ #ããã°ã©ãã³ã°åŠç¿ Â