ããããã¹ã¯åšäœã®çãããããã«ã¡ã¯ã ä»æ¥ããã³ãŒã¹ã®æåã®ã°ã«ãŒãã®ææ¥ãå§ãŸããŸã
Ð
ãŠã§ãããŒãéå¬ãããŸãã
æšãå°ããã£ãé âŠ
ãŸããDBMS ã®éžæãåäžçŽæ«ã«ã©ã®ããã«å§ãŸã£ãããæãåºããŠã¿ãŸãããã ãã ããåœæã® DBMS ã®éžæã¯å§ãŸããšçµããã§ãã£ããããããã¯é£ããããšã§ã¯ãããŸããã ãªã©ã¯ã«.
90 幎代åŸåãã 2 幎代åé ã«ãããŠãç£æ¥çšã®ã¹ã±ãŒã©ãã«ãªããŒã¿ããŒã¹ã«é¢ããŠã¯åºæ¬çã«éžæè¢ããããŸããã§ããã ã¯ããIBM DBXNUMXãSybaseãããã³ãã®ä»ã®ããŒã¿ããŒã¹ãç»å ŽããŠã¯æ¶ããŠãããŸããããäžè¬ã«ãããã㯠Oracle ã®èæ¯ã«å¯ŸããŠããã»ã©ç®ç«ã€ãã®ã§ã¯ãããŸããã§ããã ãããã£ãŠãåœæã®æè¡è
ã®ã¹ãã«ã¯äœããã®åœ¢ã§å¯äžã®éžæè¢ã«çµã³ã€ããŠããŸããã
Oracle DBA ã¯æ¬¡ã®ããšãã§ããå¿ èŠããããŸããã
- é åžããããã Oracle Server ãã€ã³ã¹ããŒã«ããŸãã
- Oracle ãµãŒããŒãæ§æããŸãã
- init.ora;
- ãªã¹ããŒ.ora;
- äœæããïŒ
- ããŒãã«ã¹ããŒã¹ã
- å³åŒ;
- ãŠãŒã¶ãŒ;
â ããã¯ã¢ãããšåŸ©å
ãå®è¡ããŸãã
â ã¢ãã¿ãªã³ã°ãå®æœããã
â æé©ã§ã¯ãªããªã¯ãšã¹ãã«å¯ŸåŠããŸãã
åæã«ãOracle DBA ããã¯ç¹å¥ãªèŠä»¶ã¯ãããŸããã§ããã
- ããŒã¿ã®ä¿åãšåŠçã«æé©ãª DBMS ãŸãã¯ãã®ä»ã®ãã¯ãããžãéžæã§ããã
- é«å¯çšæ§ãšæ°Žå¹³ã¹ã±ãŒã©ããªãã£ãæäŸããŸã (ããã¯åžžã« DBA ã®åé¡ã§ã¯ãããŸããã§ãã)ã
- äž»é¡åéãã€ã³ãã©ã¹ãã©ã¯ãã£ãã¢ããªã±ãŒã·ã§ã³ ã¢ãŒããã¯ãã£ãOS ã«é¢ããååãªç¥èã
- ããŒã¿ã®ããŒããšã¢ã³ããŒããç°ãªã DBMS éã§ã®ããŒã¿ã®ç§»è¡ã
äžè¬çã«ãåœæã®éžæã«ã€ããŠèšãã°ããã㯠80 幎代åŸåã®ãœé£ã®åºã§ã®éžæã«äŒŒãŠããŸãã
ç§ãã¡ã®æé
ãã以æ¥ããã¡ããæšã ã¯æé·ããäžçã¯å€åãã次ã®ããã«ãªããŸããã
Gartner ã®ææ°ã¬ããŒãããæãããªããã«ãDBMS åžå Žãå€åããŸããã
ãããŠããã§ã人æ°ãé«ãŸã£ãŠããã¯ã©ãŠãããã®ããããå ããŠããããšã«æ³šæããå¿
èŠããããŸãã åã Gartner ã¬ããŒããèªããšã次ã®çµè«ãåŸãããŸãã
- å€ãã®é¡§å®¢ãã¢ããªã±ãŒã·ã§ã³ãã¯ã©ãŠãã«ç§»è¡ããããšããŠããŸãã
- æ°ãããã¯ãããžãŒã¯æåã«ã¯ã©ãŠãã«ç»å ŽããŸãããããããéã¯ã©ãŠã ã€ã³ãã©ã¹ãã©ã¯ãã£ã«ç§»è¡ãããšããããšã¯äºå®ã§ã¯ãããŸããã
- åŸé課éå¶ã®æéã¢ãã«ã¯äžè¬çã«ãªã£ãŠããŸããã 誰ããèªåã䜿ã£ãåã ãæ¯æããããšèããŠããŸãããããã¯ãã¬ã³ãã§ãããªããåã«äºå®ãè¿°ã¹ãŠããã ãã§ãã
ä»äœïŒ
ä»æ¥ãç§ãã¡ã¯çã¯ã©ãŠãã®äžã«ããã®ã§ãã ãããŠãç§ãã¡ã«çãã質åã¯ãéžæãã質åã§ãã ãªã³ãã¬ãã¹åœ¢åŒã§ã® DBMS ãã¯ãããžã®éžæã«ã€ããŠã®ã¿è©±ãããšããŠããããã¯èšå€§ã§ãã ãããŒãžããµãŒãã¹ãSaaSãããããŸãã ãããã£ãŠãéžæã¯å¹Žã é£ãããªãã°ããã§ãã
éžæå¯èœãªè³ªåã®ã»ãã«ã å¶éèŠå :
- äŸ¡æ Œã å€ãã®ãã¯ãããžãŒã«ã¯äŸç¶ãšããŠè²»çšãããããŸãã
- ã¹ãã«ã ããªãŒ ãœãããŠã§ã¢ã«ã€ããŠè©±ããŠããå Žåãã¹ãã«ã®åé¡ãçããŸããããªãŒ ãœãããŠã§ã¢ã¯ããããå±éããŠéçšãã人ã ã«ååãªèœåãå¿ èŠãšããããã§ãã
- æ©èœçã ã¯ã©ãŠãã§å©çšã§ããåã Postgres äžã«æ§ç¯ããããã¹ãŠã®ãµãŒãã¹ãããªã³ãã¬ãã¹ã® Postgres ãšåãæ©èœãåããŠããããã§ã¯ãããŸããã ããã¯ãç¥ã£ãŠç解ããå¿ èŠãããéèŠãªèŠçŽ ã§ãã ããã«ããã®èŠçŽ ã¯ãåäžã® DBMS ã®é ããæ©èœã«é¢ããç¥èãããéèŠã«ãªããŸãã
çŸåš DA/DE ã«æåŸ ãããŠããããš:
- äž»é¡é åãšã¢ããªã±ãŒã·ã§ã³ ã¢ãŒããã¯ãã£ã«ã€ããŠã®ååãªç解ã
- åœé¢ã®ã¿ã¹ã¯ãèæ ®ããŠãé©å㪠DBMS ãã¯ãããžãæ£ããéžæããèœåã
- æ¢åã®å¶éã®äžã§ãéžæãããã¯ãããžãŒãå®è£ ããããã®æé©ãªæ¹æ³ãéžæããèœåã
- ããŒã¿ã®è»¢éãšç§»è¡ãå®è¡ããæ©èœã
- éžæããããœãªã¥ãŒã·ã§ã³ãå®è£ ããã³éçšããèœåã
以äžã®äŸ GCPã«åºã¥ã ããŒã¿ãæäœããããã®ãã¯ãããžã®éžæããããŒã¿ã®æ§é ã«å¿ããŠã©ã®ããã«æ©èœãããã瀺ããŠããŸãã
PostgreSQL ã¯ã¹ããŒãã«å«ãŸããŠããªãããšã«æ³šæããŠãã ãããããã¯ãçšèªã®äžã«é ãããŠããããã§ãã ã¯ã©ãŠãSQLã Cloud SQL ã«å°éããããããäžåºŠéžæããå¿
èŠããããŸãã
ãã®éžæã¯å¿
ãããæ確ã§ã¯ãªããããã¢ããªã±ãŒã·ã§ã³éçºè
ã¯çŽæã«é Œãããšãå€ãããšã«æ³šæããŠãã ããã
åèšïŒ
- ããã«é²ãã°é²ãã»ã©ãéžæã®åé¡ã¯ããå·®ãè¿«ã£ããã®ã«ãªããŸãã ãŸããGCPããããŒãžã ãµãŒãã¹ãSaaS ã ããèŠãŠããRDBMS ã«é¢ããèšå㯠4 çªç®ã®ã¹ãããã§ã®ã¿è¡šç€ºãããŸã (Spanner ã¯è¿ãã«ãããŸã)ã ããã«ãPostgreSQL ã®éžæ㯠5 çªç®ã®ã¹ãããã§è¡šç€ºããããã®é£ã«ã¯ MySQL ãš SQL Server ããããŸãã äœããããããããããã©ãéžã°ãªããã°ãããªã.
- èªæãèæ¯ãšããå¶éãå¿ããŠã¯ãªããŸããã åºæ¬çã«èª°ããã¹ããã欲ããããŸãããé«äŸ¡ã§ãã ãã®çµæãäžè¬çãªãªã¯ãšã¹ãã¯æ¬¡ã®ããã«ãªããŸãã ãç§ãã¡ã Spanner ã«ããŠãã ããããã ããCloud SQL ã®æéãæ¯æãã°ãããªããã¡ã¯ãããã§ãã·ã§ãã«ã§ããã
äœããã¹ããïŒ
究極ã®çå®ã§ãããšã¯äž»åŒµããŸãããã次ã®ããã«èšã£ãŠã¿ãŸãããã
ç§ãã¡ã¯åŠç¿ãžã®ã¢ãããŒããå€ããå¿ èŠããããŸãã
- DBA ã以åã«æããããŠããæ¹æ³ãæããããšã«ã¯æå³ããããŸããã
- XNUMX ã€ã®è£œåã«é¢ããç¥èã ãã§ã¯ãã¯ãååã§ã¯ãããŸããã
- ããããXNUMX 人ã®ã¬ãã«ã§äœåãã®ããšãç¥ãããšã¯äžå¯èœã§ãã
補åã®äŸ¡æ Œã ãã§ãªãã次ã®ããšãç¥ãå¿ èŠããããŸãã
- ãã®ã¢ããªã±ãŒã·ã§ã³ã®äœ¿çšäŸã
- ããŸããŸãªå±éæ¹æ³ã
- åæ¹æ³ã®é·æãšçæã
- åžžã«äœ¿ãæ £ãã補åãæ¯æããããã§ã¯ãªããååãªæ å ±ã«åºã¥ããæé©ãªéžæãè¡ãããã«ãé¡äŒŒè£œåã代æ¿è£œåãå©çšããå¿ èŠããããŸãã
ãŸããããŒã¿ã移è¡ããETL ãšã®çµ±åã®åºæ¬ååãç解ã§ããå¿ èŠããããŸãã
å®éã®ã±ãŒã¹
æè¿ã§ã¯ãã¢ãã€ã« ã¢ããªã±ãŒã·ã§ã³ã®ããã¯ãšã³ããäœæããå¿ èŠããããŸããã äœæ¥ãéå§ããããŸã§ã«ãããã¯ãšã³ãã¯ãã§ã«éçºãããå®è£ ã®æºåãã§ããŠããŸãããéçºããŒã ã¯ãã®ãããžã§ã¯ãã«çŽ XNUMX 幎ãè²»ãããŸããã 次ã®ã¿ã¹ã¯ãèšå®ãããŸããã
- CI/CD ãæ§ç¯ããŸãã
- ã¢ãŒããã¯ãã£ãã¬ãã¥ãŒããŸãã
- ãã¹ãŠãå®è¡ã«ç§»ããŸãã
ã¢ããªã±ãŒã·ã§ã³èªäœã¯ãã€ã¯ããµãŒãã¹ã§ãããPython/Django ã³ãŒã㯠GCP ã§çŽæ¥ã¹ã¯ã©ããããéçºãããŸããã 察象è ãšããŠã¯ç±³åœãšæ¬§å·ã® XNUMX ã€ã®ãªãŒãžã§ã³ãæ³å®ããã°ããŒãã« ããŒã ãã©ã³ãµãéããŠãã©ãã£ãã¯ãåæ£ããŸããã ãã¹ãŠã®ã¯ãŒã¯ããŒããšã³ã³ãã¥ãŒãã£ã³ã° ã¯ãŒã¯ããŒã㯠Google Kubernetes Engine äžã§å®è¡ãããŸããã
ããŒã¿ã«é¢ããŠã¯ã次㮠3 ã€ã®æ§é ããããŸããã
- ã¯ã©ãŠãã¹ãã¬ãŒãž;
- ããŒã¿ã¹ãã¢ã
- ã¯ã©ãŠã SQL (PostgreSQL)ã
ãªã Cloud SQL ãéžã°ããã®ãäžæè°ã«æã人ããããããããŸããã å®ãèšããšããã®ãããªè³ªåã¯è¿å¹Žãããçš®ã®æ°ãŸããäžæåæ¢ãåŒãèµ·ãããŠããŸãã人ã
ã¯ãªã¬ãŒã·ã§ãã« ããŒã¿ããŒã¹ã«å¯ŸããŠæ¥ãããããå±ã«ãªã£ãŠããããã«æããããŸãããããã§ããªããç©æ¥µçã«äœ¿çšãç¶ããŠããŸã ;-)ã
ç§ãã¡ã®ã±ãŒã¹ã§ã¯ã次ã®çç±ãã Cloud SQL ãéžæãããŸããã
- åè¿°ããããã«ããã®ã¢ããªã±ãŒã·ã§ã³ã¯ Django ã䜿çšããŠéçºãããŠãããSQL ããŒã¿ããŒã¹ã®æ°žç¶ããŒã¿ã Python ãªããžã§ã¯ã (Django ORM) ã«ãããã³ã°ããã¢ãã«ãåããŠããŸãã
- ãã¬ãŒã ã¯ãŒã¯èªäœã¯ãããªãéå®ããã DBMS ãªã¹ãããµããŒãããŠããŸããã
- PostgreSQL;
- ããªã¢DB;
- MySQL;
- ãªã©ã¯ã«
- SQLiteã®ã
ãããã£ãŠãPostgreSQL ã¯ãã®ãªã¹ãããããªãçŽæçã«éžæãããŸãã (ãŸããå®éã«éžæããã®ã¯ Oracle ã§ã¯ãããŸãã)ã
æ¬ ããŠãããã®:
- ã¢ããªã±ãŒã·ã§ã³ã¯ 2 ã€ã®ãªãŒãžã§ã³ã«ã®ã¿ãããã€ããã3 çªç®ã®ãªãŒãžã§ã³ãèšç»ã«ç»å ŽããŸãã (ã¢ãžã¢)ã
- ããŒã¿ããŒã¹ã¯åç±³å°å (ã¢ã€ãªã¯å·) ã«ãããŸããã
- 顧客åŽã§ã¯ã次ã®ãããªå¯èœæ§ããããšæžå¿µããŠããŸããã ã¢ã¯ã»ã¹ã®é 延 ãšãŒããããã¢ãžã¢ãããã äžæ ãµãŒãã¹äž DBMS ããŠã³ã¿ã€ã ã®å Žåã
Django èªäœã¯è€æ°ã®ããŒã¿ããŒã¹ã䞊è¡ããŠæäœããèªã¿åããšæžã蟌ã¿ã«åå²ã§ããã«ãããããããã¢ããªã±ãŒã·ã§ã³å ã§ã®æžã蟌ã¿ã¯ããã»ã©å€ããããŸããã§ãã (90% 以äžãèªã¿åã)ã ãããŠãäžè¬çã«ããããŠäžè¬çã«ããããå¯èœã§ããã° ãšãŒããããšã¢ãžã¢ã®äž»èŠæ ç¹ã®ãªãŒãã¬ããªã«ãããã¯åŠ¥åçãªè§£æ±ºçã«ãªããŸãã ããŠãäœããããªã«è€éãªã®ã§ããããïŒ
åé¡ã¯ãã客æ§ããããŒãžã ãµãŒãã¹ãš Cloud SQL ã®äœ¿çšãè«Šããããªãã£ãããšã§ãã ãŸããCloud SQL ã®æ©èœã¯çŸæç¹ã§ã¯å¶éãããŠããŸãã Cloud SQL ã¯é«å¯çšæ§ïŒHAïŒãšãªãŒãã¬ããªã«ïŒRRïŒããµããŒãããŸãããåã RR 㯠XNUMX ã€ã®ãªãŒãžã§ã³ã§ã®ã¿ãµããŒããããŸãã ã¢ã¡ãªã« ãªãŒãžã§ã³ã§ããŒã¿ããŒã¹ãäœæããå ŽåãCloud SQL ã䜿çšããŠãšãŒããã ãªãŒãžã§ã³ã§ãªãŒãã¬ããªã«ãäœæããããšã¯ã§ããŸããããã ããPostgres èªäœã¯ããã劚ãããã®ã§ã¯ãããŸããã Google åŸæ¥å¡ãšã®ããåãã¯äœã®ææããªãããç§ãã¡ã¯åé¡ãèªèããŠãããåãçµãã§ããŸãããã€ãåé¡ã¯è§£æ±ºãããã§ãããããšããã¹ã¿ã€ã«ã®çŽæã§çµãããŸããã
Cloud SQL ã®æ©èœãç°¡åã«ãªã¹ããããšã次ã®ããã«ãªããŸãã
1. é«å¯çšæ§ (HA):
- XNUMXã€ã®å°åå ã
- ãã£ã¹ã¯ã¬ããªã±ãŒã·ã§ã³çµç±ã
- PostgreSQL ãšã³ãžã³ã¯äœ¿çšãããŸããã
- èªåããã³æåå¶åŸ¡ãå¯èœ - ãã§ã€ã«ãªãŒããŒ/ãã§ã€ã«ããã¯ã
- åãæ¿ãããšãDBMS ã¯æ°åé䜿çšã§ããªããªããŸãã
2. ãªãŒãã¬ããªã« (RR):
- XNUMXã€ã®å°åå ã
- ãããã¹ã¿ã³ãã€ã
- PostgreSQL ã¹ããªãŒãã³ã° ã¬ããªã±ãŒã·ã§ã³ã
ããã«ãéåžžã®ããšã§ããããã¯ãããžãŒãéžæãããšãã¯åžžã«ããã€ãã®åé¡ã«çŽé¢ããŸãã å¶é:
- ã客æ§ã¯ãGKE ã䜿çšããå Žåãé€ãããšã³ãã£ãã£ãäœæã㊠IaaS ã䜿çšããããšãåžæããŠããŸããã§ããã
- 顧客ã¯ã»ã«ããµãŒãã¹ã® PostgreSQL/MySQL ã®å°å ¥ãæãã§ããŸããã
- ãŸããäžè¬çã«ãäŸ¡æ Œããªããã° Google Spanner ã¯éåžžã«é©ããŠããŸãããDjango ORM ã¯åäœããŸããããããã¯è¯ãããšã§ãã
ãã®ç¶æ³ãèæ ®ããŠãã客æ§ã¯æ¬¡ã®ãããªè¿œå ã®è³ªåãåããŸããã ãGoogle Spanner ã®ããã«ãDjango ORM ã§ãåäœãããããªåæ§ã®ããšã¯ã§ããŸããã?ã
解決çã®éžæè¢ No.0
æåã«æãã€ããã®ã¯:
- CloudSQL å ã«ãšã©ãŸããŸãã
- ã©ã®ãããªåœ¢åŒã§ãã£ãŠãããªãŒãžã§ã³éã«ã¯çµã¿èŸŒã¿ã®ã¬ããªã±ãŒã·ã§ã³ã¯ååšããŸããã
- PostgreSQL ã«ãã£ãŠæ¢åã® Cloud SQL ã«ã¬ããªã«ãã¢ã¿ããããŠã¿ãŸãã
- ã©ããã§äœããã®æ¹æ³ã§ PostgreSQL ã€ã³ã¹ã¿ã³ã¹ãèµ·åããŸãããå°ãªããšããã¹ã¿ãŒã«ã¯è§Šããªãã§ãã ããã
æ®å¿µãªããããã¹ã (ãŸã£ããå¥ã®ãããžã§ã¯ãã«ãã) - pg_hba ãªã©ãžã®ã¢ã¯ã»ã¹ããªããã¹ãŒããŒãŠãŒã¶ãŒã®äžã§ã®ã¢ã¯ã»ã¹ããªããããããã¯å®è¡ã§ããªãããšãå€æããŸããã
解決çã®éžæè¢ No.1
ããã«çèãã以åã®ç¶æ³ãèæ ®ããçµæãæèã®æµããè¥å¹²å€ãããŸããã
- ç§ãã¡ã¯äŸç¶ãšã㊠Cloud SQL å ã«çãŸãããšããŠããŸãããMySQL ã«åãæ¿ããŠããŸããããã¯ãCloud SQL by MySQL ã«ã¯æ¬¡ã®ãããªå€éšãã¹ã¿ãŒãããããã§ãã
â å€éš MySQL ã®ãããã·ã§ãã
- MySQL ã€ã³ã¹ã¿ã³ã¹ã®ããã«èŠããŸãã
- ä»ã®ã¯ã©ãŠããŸãã¯ãªã³ãã¬ãã¹ããããŒã¿ã移è¡ããããã«èæ¡ãããŸããã
MySQL ã¬ããªã±ãŒã·ã§ã³ã®ã»ããã¢ããã«ã¯ãã¹ããžã®ã¢ã¯ã»ã¹ãå¿ èŠãªããããåççã«ã¯ãã¹ãŠããŸããããŸããããéåžžã«äžå®å®ã§äžäŸ¿ã§ããã ããã«å ã«é²ããšãæ§é å šäœã terraform ã§ãããã€ãããšãããå€éšãã¹ã¿ãŒã terraform ã§ãµããŒããããŠããªãããšãçªç¶å€æãããããå®å šã«æããããªããŸããã ã¯ããGoogle ã«ã¯ CLI ããããŸãããäœããã®çç±ã§ãããã§ãã¹ãŠãæ©èœããããšããããŸãããäœæãããå Žåãããã°ãäœæãããªãå ŽåããããŸãã ãããããCLI ã¯ã¬ããªã«ã®ããã§ã¯ãªããå€éšããŒã¿ç§»è¡ã®ããã«çºæãããããã§ãããã
å®ã¯ãã®æç¹ã§ãCloud SQL ã¯ãŸã£ããé©ããŠããªãããšãæããã«ãªããŸããã 圌ããèšãããã«ãç§ãã¡ã¯ã§ããéãã®ããšãããŸããã
解決çã®éžæè¢ No.2
Cloud SQL ãã¬ãŒã ã¯ãŒã¯å ã«ãšã©ãŸãããšã¯äžå¯èœã ã£ãããã劥åçãªè§£æ±ºçã®èŠä»¶ãçå®ããããšããŸããã èŠä»¶ã¯æ¬¡ã®ãšããã§ããããšãå€æããŸããã
- Kubernetes ã§äœæ¥ããKubernetes (DCS ãªã©) ãš GCP (LB ãªã©) ã®ãªãœãŒã¹ãšæ©èœãæ倧éã«æŽ»çšããŸãã
- HA ãããã·ãªã©ãã¯ã©ãŠãå ã®å€æ°ã®äžå¿ èŠãªãã®ã«ãããã©ã¹ãã®äžè¶³ã
- ã¡ã€ã³ HA ãªãŒãžã§ã³ã§ PostgreSQL ãŸã㯠MySQL ãå®è¡ããæ©èœã ä»ã®ãªãŒãžã§ã³ - ã¡ã€ã³ãªãŒãžã§ã³ã® RR ãšãã®ã³ããŒããã® HA (ä¿¡é Œæ§ã®ãã)ã
- ãã«ããã¹ã¿ãŒ (é£çµ¡ããããªãã£ãããããã»ã©éèŠã§ã¯ãªãã£ã)
.
ãããã®èŠæ±ã®çµæãpé©å㪠DBMS ãšãã€ã³ã ãªãã·ã§ã³:
- MySQL ã¬ã¬ã©ã
- ãŽãããªDB;
- PostgreSQL ããŒã«
:
- pgpool-II;
â ããããŒãã
MySQL ã¬ã¬ã©
MySQL Galera ãã¯ãããžãŒã¯ Codership ã«ãã£ãŠéçºãããInnoDB ã®ãã©ã°ã€ã³ã§ãã ç¹åŸŽ:
- ãã«ããã¹ã¿ãŒã
- åæã¬ããªã±ãŒã·ã§ã³ã
- ä»»æã®ããŒãããã®èªã¿åãã
- ä»»æã®ããŒãã«èšé²ããŸãã
- çµã¿èŸŒã¿ã® HA ã¡ã«ããºã ã
- Bitnami ã® Helm ãã£ãŒãããããŸãã
ãŽãããªDB
説æã«ãããšãããã¯ãŸãã«ç匟ã§ãããGo ã§æžããããªãŒãã³ãœãŒã¹ ãããžã§ã¯ãã§ãã äž»ãªåå è 㯠Cockroach Labs (Google åºèº«è ã«ãã£ãŠèšç«) ã§ãã ãã®ãªã¬ãŒã·ã§ãã« DBMS ã¯ãããšããšåæ£å (ããã«äœ¿ããæ°Žå¹³ã¹ã±ãŒãªã³ã°) ãšãã©ãŒã«ã ãã¬ã©ã³ããç®çãšããŠèšèšãããŸããã å瀟ã®äœæè ã¯ããSQL æ©èœã®è±å¯ããšãNoSQL ãœãªã¥ãŒã·ã§ã³ã§ããªãã¿ã®æ°Žå¹³æ¹åã®ã¢ã¯ã»ã·ããªãã£ãçµã¿åãããããšããç®æšãæŠèª¬ããŸããã
çŽ æŽãããããŒãã¹ã¯ãpost-gress æ¥ç¶ãããã³ã«ã®ãµããŒãã§ãã
pgããŒã«
ãã㯠PostgreSQL ãžã®ã¢ããªã³ã§ãããå®éã«ã¯ãã¹ãŠã®æ¥ç¶ãåŒãç¶ãã§åŠçããæ°ãããšã³ãã£ãã£ã§ãã BSD ã©ã€ã»ã³ã¹ã«åºã¥ããŠã©ã€ã»ã³ã¹ãããç¬èªã®ããŒã ãã©ã³ãµãŒãšããŒãµãŒãåããŠããŸãã ããã¯ååãªæ©äŒãæäŸããŸãããæ°ããååšã®ååšãè¿œå ã®åéºã®æºã«ãªãå¯èœæ§ããããããããæãããããã«èŠããŸãã
ããããŒã
ããã¯ç§ãæåŸã«ç®ãçãããã®ã§ããããçµæçã«ã¯ç¡é§ã§ã¯ãããŸããã§ããã Patroni ã¯ãªãŒãã³ ãœãŒã¹ ãŠãŒãã£ãªãã£ã§ãããæ¬è³ªçã«ã¯ Python ããŒã¢ã³ã§ãããããŸããŸãªçš®é¡ã®ã¬ããªã±ãŒã·ã§ã³ãšèªåããŒã«åãæ¿ãã䜿çšã㊠PostgreSQL ã¯ã©ã¹ã¿ãŒãèªåçã«ä¿å®ã§ããããã«ãªããŸãã ãã㯠cuber ãšããŸãçµ±åãããŠãããæ°ãããšã³ãã£ãã£ãå°å ¥ããªããããéåžžã«èå³æ·±ãããšãããããŸããã
ããªãã¯æçµçã«äœãéžã³ãŸãããïŒ
éžæã¯ç°¡åã§ã¯ãããŸããã§ããã
- ãŽãããªDB - ç«ã ãæãã
- MySQL ã¬ã¬ã© - ãããæªããããŸãããå€ãã®å Žæã§äœ¿çšãããŠããŸãããMySQL;
- pgããŒã« â å€ãã®äžèŠãªãšã³ãã£ãã£ãã¯ã©ãŠããš K8 ãšã®çµ±åã¯ãŸããŸãã
- ããããŒã - K8 ãšã®åªããçµ±åãäžèŠãªãšã³ãã£ãã£ããªããGCP LB ãšããŸãçµ±åãããŸãã
ãããã£ãŠãéžæã¯ããããŒãã«å§ããããŸããã
æèŠ
ç°¡åã«ãŸãšããŠã¿ãŸãããã ã¯ããIT ã€ã³ãã©ã¹ãã©ã¯ãã£ã®äžçã¯å€§ããå€åããŸããããããã¯ã»ãã®å§ãŸãã«ãããŸããã ãããŠã以åã¯ã¯ã©ãŠããåãªãã€ã³ãã©ã¹ãã©ã¯ãã£ã®äžçš®ã§ãã£ããšããŠããä»ã§ã¯ãã¹ãŠãç°ãªããŸãã ããã«ãã¯ã©ãŠãã«ãããã€ãããŒã·ã§ã³ã¯çµ¶ããåºçŸããŠãããä»åŸãåºçŸããŸãããããããã¯ã©ãŠãäžã§ã®ã¿åºçŸããã¹ã¿ãŒãã¢ããã®åªåã«ãã£ãŠåããŠãªã³ãã¬ãã¹ã«ç§»è¡ãããããšã«ãªããŸãã
SQL ã«é¢ããŠã¯ãSQL ã¯çããŸãã ããã¯ãPostgreSQL ãš MySQL ã«ã€ããŠç解ããããããæäœã§ããå¿
èŠãããããšãæå³ããŸãããããã«éèŠãªã®ã¯ãããããæ£ãã䜿çšã§ããããšã§ãã
åºæïŒ habr.com