αžšαž”αŸ€αž”αžšαžŸαŸ‹αžšαžΆαž“αž˜αžΆαž“αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ SQL αž“αŸ…αžŸαžαžœαžαŸ’αžŸαžšαŸαž‘αžΈ 21: αž–αž–αž€ Kubernetes αž“αž·αž„ PostgreSQL multimaster

αž‡αŸ†αžšαžΆαž”αžŸαž½αžšαž’αŸ’αž“αž€αžŸαŸ’αžšαž»αž€ Khabrovsk αŸ” αžαŸ’αž“αžΆαž€αŸ‹αž“αŸ…αž€αŸ’αž“αž»αž„αž€αŸ’αžšαž»αž˜αž‘αžΈαž˜αž½αž™αž“αŸƒαžœαž‚αŸ’αž‚αžŸαž·αž€αŸ’αžŸαžΆαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αžαŸ’αž„αŸƒαž“αŸαŸ‡ "PostgreSQL". αž€αŸ’αž“αž»αž„αž“αŸαž™αž“αŸαŸ‡ αž™αžΎαž„αž…αž„αŸ‹αž”αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αž’αŸ†αž–αžΈαžšαž”αŸ€αž”αžŠαŸ‚αž›αžŸαž·αž€αŸ’αžαžΆαžŸαžΆαž›αžΆαž”αžΎαž€αž‘αžΌαž›αžΆαž™αž›αžΎαžœαž‚αŸ’αž‚αžŸαž·αž€αŸ’αžŸαžΆαž“αŸαŸ‡αž”αžΆαž“αž€αžΎαžαž‘αžΎαž„αŸ”

αžšαž”αŸ€αž”αžšαžŸαŸ‹αžšαžΆαž“αž˜αžΆαž“αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ SQL αž“αŸ…αžŸαžαžœαžαŸ’αžŸαžšαŸαž‘αžΈ 21: αž–αž–αž€ Kubernetes αž“αž·αž„ PostgreSQL multimaster

Π’ αž˜αŸαžšαŸ€αž“αž”αžΎαž€αž”αž“αŸ’αž‘αžΆαž”αŸ‹ αž™αžΎαž„αž”αžΆαž“αž“αž·αž™αžΆαž™αž’αŸ†αž–αžΈαž”αž‰αŸ’αž αžΆαž”αŸ’αžšαžˆαž˜αžŠαŸ‚αž›αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ SQL αž‡αž½αž”αž”αŸ’αžšαž‘αŸ‡αž“αŸ…αž€αŸ’αž“αž»αž„αž™αž»αž‚αžŸαž˜αŸαž™αž“αŸƒαž–αž–αž€ αž“αž·αž„ Kubernetes αŸ” αž€αŸ’αž“αž»αž„αž–αŸαž›αž‡αžΆαž˜αž½αž™αž‚αŸ’αž“αžΆαž“αŸαŸ‡ αž™αžΎαž„αž”αžΆαž“αž–αž·αž“αž·αžαŸ’αž™αž˜αžΎαž›αž–αžΈαžšαž”αŸ€αž”αžŠαŸ‚αž›αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ SQL αžŸαž˜αŸ’αžšαž”αžαŸ’αž›αž½αž“ αž“αž·αž„αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž“αŸ…αž€αŸ’αžšαŸ„αž˜αž₯αž‘αŸ’αž’αž·αž–αž›αž“αŸƒαž”αž‰αŸ’αž αžΆαž”αŸ’αžšαžˆαž˜αž‘αžΆαŸ†αž„αž“αŸαŸ‡αŸ”

webinar αžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αŸ’αžœαžΎαž‘αžΎαž„ Valery Bezrukovαž’αŸ’αž“αž€αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž€αžΆαžšαž…αŸ‚αž€αž…αžΆαž™αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αž Google Cloud αž“αŸ…αž”αŸ’αžšαž–αŸαž“αŸ’αž’ EPAM αŸ”

αž–αŸαž›αžŠαžΎαž˜αžˆαžΎαžαžΌαž…...

αž‡αžΆαžŠαŸ†αž”αžΌαž„ αž…αžΌαžšαž™αžΎαž„αž…αž„αž…αžΆαŸ†αž–αžΈαžšαž”αŸ€αž”αžŠαŸ‚αž›αž‡αž˜αŸ’αžšαžΎαžŸαž“αŸƒ DBMS αž”αžΆαž“αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž“αŸ…αž…αž»αž„αžŸαžαžœαžαŸ’αžŸαž…αž»αž„αž€αŸ’αžšαŸ„αž™αž“αŸαŸ‡αŸ” αž‘αŸ„αŸ‡αž‡αžΆαž™αŸ‰αžΆαž„αžŽαžΆαž€αŸαžŠαŸ„αž™αž“αŸαŸ‡αž“αžΉαž„αž˜αž·αž“αž–αž·αž”αžΆαž€αž‘αŸαž–αŸ’αžšαŸ„αŸ‡αž‡αž˜αŸ’αžšαžΎαžŸαž“αŸƒ DBMS αž“αŸ…αžŸαž˜αŸαž™αž“αŸ„αŸ‡αž”αžΆαž“αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž“αž·αž„αž”αž‰αŸ’αž…αž”αŸ‹ αž€αŸ’αžšαž»αž˜αž αŸŠαž»αž“ Oracle.

αžšαž”αŸ€αž”αžšαžŸαŸ‹αžšαžΆαž“αž˜αžΆαž“αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ SQL αž“αŸ…αžŸαžαžœαžαŸ’αžŸαžšαŸαž‘αžΈ 21: αž–αž–αž€ Kubernetes αž“αž·αž„ PostgreSQL multimaster

αž“αŸ…αž…αž»αž„αž‘αžŸαžœαžαŸ’αžŸαžšαŸαž‘αžΈ 90 αž“αž·αž„αžŠαžΎαž˜αž‘αžŸαžœαžαŸ’αžŸαžšαŸαž†αŸ’αž“αžΆαŸ† 2 αž˜αž·αž“αž˜αžΆαž“αž‡αž˜αŸ’αžšαžΎαžŸαž’αŸ’αžœαžΈαž‘αžΎαž™αž“αŸ…αž–αŸαž›αž“αž·αž™αžΆαž™αž’αŸ†αž–αžΈαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αžŠαŸ‚αž›αž’αžΆαž…αž’αŸ’αžœαžΎαž˜αžΆαžαŸ’αžšαžŠαŸ’αž‹αžΆαž“αž§αžŸαŸ’αžŸαžΆαž αž€αž˜αŸ’αž˜αŸ” αž”αžΆαž‘/αž…αžΆαžŸ αž˜αžΆαž“ IBM DBXNUMX, Sybase αž“αž·αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž˜αž½αž™αž…αŸ†αž“αž½αž“αž•αŸ’αžŸαŸαž„αž‘αŸ€αžαžŠαŸ‚αž›αž”αžΆαž“αž˜αž€ αž“αž·αž„αž”αžΆαž“αž‘αŸ… αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž‡αžΆαž‘αžΌαž‘αŸ… αž–αž½αž€αžœαžΆαž˜αž·αž“αžŸαžΌαžœαž‡αžΆαž‚αž½αžšαž±αŸ’αž™αž€αžαŸ‹αžŸαž˜αŸ’αž‚αžΆαž›αŸ‹αž‘αŸαž”αŸ’αžšαž†αžΆαŸ†αž„αž“αžΉαž„αž•αŸ’αž‘αŸƒαžαžΆαž„αž€αŸ’αžšαŸ„αž™αžšαž”αžŸαŸ‹ Oracle αŸ” αžŠαžΌαž…αŸ’αž“αŸ„αŸ‡αž αžΎαž™ αž‡αŸ†αž“αžΆαž‰αžšαž”αžŸαŸ‹αžœαž·αžŸαŸ’αžœαž€αžšαž“αŸ…αžŸαž˜αŸαž™αž“αŸ„αŸ‡αžαŸ’αžšαžΌαžœαž”αžΆαž“αž…αž„αž—αŸ’αž‡αžΆαž”αŸ‹αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž‡αž˜αŸ’αžšαžΎαžŸαžαŸ‚αž˜αž½αž™αž‚αžαŸ‹αžŠαŸ‚αž›αž˜αžΆαž“αŸ”

Oracle DBA αžαŸ’αžšαžΌαžœαžαŸ‚αž’αžΆαž…αŸ–

  • αžŠαŸ†αž‘αžΎαž„ Oracle Server αž–αžΈαž§αž”αž€αžšαžŽαŸαž…αŸ‚αž€αž…αžΆαž™;
  • αž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž˜αŸ OracleαŸ–

  • init.ora;
  • listener.ora;

- αž”αž„αŸ’αž€αžΎαž:

  • αž…αž“αŸ’αž›αŸ„αŸ‡αžαž»;
  • αž‚αŸ’αžšαŸ„αž„αž€αžΆαžšαžŽαŸ;
  • αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹;

- αž’αž“αž»αžœαžαŸ’αžαž€αžΆαžšαž”αž˜αŸ’αžšαž»αž„αž‘αž»αž€αž“αž·αž„αžŸαŸ’αžαžΆαžšαž‘αžΎαž„αžœαž·αž‰;
- αž’αž“αž»αžœαžαŸ’αžαž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™;
- αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž‡αžΆαž˜αž½αž™αžŸαŸ†αžŽαžΎαž›αŸ’αž’αž”αŸ†αž•αž»αžαŸ”

αž€αŸ’αž“αž»αž„αž–αŸαž›αž‡αžΆαž˜αž½αž™αž‚αŸ’αž“αžΆαž“αŸαŸ‡ αž˜αž·αž“αž˜αžΆαž“αžαž˜αŸ’αžšαžΌαžœαž€αžΆαžšαž–αž·αžŸαŸαžŸαž–αžΈ Oracle DBA αž‘αŸαŸ–

  • αž’αžΆαž…αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸ DBMS αž›αŸ’αž’αž”αŸ†αž•αž»αž αž¬αž”αž…αŸ’αž…αŸαž€αžœαž·αž‘αŸ’αž™αžΆαž•αŸ’αžŸαŸαž„αž‘αŸ€αžαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαžšαž€αŸ’αžŸαžΆαž‘αž»αž€ αž“αž·αž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‘αž·αž“αŸ’αž“αž“αŸαž™αŸ”
  • αž•αŸ’αžαž›αŸ‹αž“αžΌαžœαž—αžΆαž–αž’αžΆαž…αžšαž€αž”αžΆαž“αžαŸ’αž–αžŸαŸ‹ αž“αž·αž„αž›αž‘αŸ’αž’αž—αžΆαž–αž’αŸ’αžœαžΎαž˜αžΆαžαŸ’αžšαžŠαŸ’αž‹αžΆαž“αž•αŸ’αžŠαŸαž€ (αž“αŸαŸ‡αž˜αž·αž“αž˜αŸ‚αž“αžαŸ‚αž„αžαŸ‚αž‡αžΆαž”αž‰αŸ’αž αžΆ DBA αž‘αŸ);
  • αž…αŸ†αžŽαŸαŸ‡αžŠαžΉαž„αž›αŸ’αž’αž“αŸƒαž˜αž»αžαžœαž·αž‡αŸ’αž‡αžΆ αž αŸαžŠαŸ’αž‹αžΆαžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’ αžŸαŸ’αžαžΆαž”αžαŸ’αž™αž€αž˜αŸ’αž˜αž€αž˜αŸ’αž˜αžœαž·αž’αžΈ OS;
  • αž•αŸ’αž‘αž»αž€ αž“αž·αž„αžŠαž€αž‘αž·αž“αŸ’αž“αž“αŸαž™ αž•αŸ’αž‘αŸαžšαž‘αž·αž“αŸ’αž“αž“αŸαž™αžšαžœαžΆαž„ DBMSs αž•αŸ’αžŸαŸαž„αŸ—αž‚αŸ’αž“αžΆαŸ”

αž‡αžΆαž‘αžΌαž‘αŸ…αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž™αžΎαž„αž“αž·αž™αžΆαž™αž’αŸ†αž–αžΈαž‡αž˜αŸ’αžšαžΎαžŸαž“αŸ…αžŸαž˜αŸαž™αž“αŸ„αŸ‡αžœαžΆαž”αŸ’αžšαž αžΆαž€αŸ‹αž”αŸ’αžšαž αŸ‚αž›αž“αžΉαž„αž‡αž˜αŸ’αžšαžΎαžŸαž“αŸ…αž€αŸ’αž“αž»αž„αž αžΆαž„αžŸαžΌαžœαŸ€αžαž“αŸ…αž…αž»αž„αž‘αžŸαžœαžαŸ’αžŸαžšαŸαž‘αžΈ 80αŸ–

αžšαž”αŸ€αž”αžšαžŸαŸ‹αžšαžΆαž“αž˜αžΆαž“αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ SQL αž“αŸ…αžŸαžαžœαžαŸ’αžŸαžšαŸαž‘αžΈ 21: αž–αž–αž€ Kubernetes αž“αž·αž„ PostgreSQL multimaster

αž–αŸαž›αžœαŸαž›αžΆαžšαž”αžŸαŸ‹αž™αžΎαž„αŸ”

αžαžΆαŸ†αž„β€‹αž–αžΈβ€‹αž–αŸαž›β€‹αž“αŸ„αŸ‡β€‹αž˜αž€ αžŠαžΎαž˜αžˆαžΎβ€‹αž”αžΆαž“β€‹αžšαžΈαž€β€‹αž…αž˜αŸ’αžšαžΎαž“ αž–αž·αž—αž–αž›αŸ„αž€β€‹αž”αžΆαž“β€‹αž•αŸ’αž›αžΆαžŸαŸ‹β€‹αž”αŸ’αžαžΌαžš αž αžΎαž™β€‹αžœαžΆβ€‹αž”αžΆαž“β€‹αž€αŸ’αž›αžΆαž™β€‹αž‡αžΆβ€‹αž’αŸ’αžœαžΈβ€‹αž˜αž½αž™β€‹αžŠαžΌαž…β€‹αž“αŸαŸ‡αŸ–

αžšαž”αŸ€αž”αžšαžŸαŸ‹αžšαžΆαž“αž˜αžΆαž“αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ SQL αž“αŸ…αžŸαžαžœαžαŸ’αžŸαžšαŸαž‘αžΈ 21: αž–αž–αž€ Kubernetes αž“αž·αž„ PostgreSQL multimaster

αž‘αžΈαž•αŸ’αžŸαžΆαžš DBMS αž€αŸαž”αžΆαž“αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž•αž„αžŠαŸ‚αžš αžŠαžΌαž…αžŠαŸ‚αž›αž’αžΆαž…αž˜αžΎαž›αžƒαžΎαž‰αž™αŸ‰αžΆαž„αž…αŸ’αž”αžΆαžŸαŸ‹αž–αžΈαžšαž”αžΆαž™αž€αžΆαžšαžŽαŸαž…αž»αž„αž€αŸ’αžšαŸ„αž™αž–αžΈ GartnerαŸ–

αžšαž”αŸ€αž”αžšαžŸαŸ‹αžšαžΆαž“αž˜αžΆαž“αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ SQL αž“αŸ…αžŸαžαžœαžαŸ’αžŸαžšαŸαž‘αžΈ 21: αž–αž–αž€ Kubernetes αž“αž·αž„ PostgreSQL multimaster

αž αžΎαž™αž“αŸ…αž‘αžΈαž“αŸαŸ‡αžœαžΆαž‚αž½αžšαžαŸ‚αžαŸ’αžšαžΌαžœαž”αžΆαž“αž€αžαŸ‹αžŸαž˜αŸ’αž‚αžΆαž›αŸ‹αžαžΆαž–αž–αž€αžŠαŸ‚αž›αž”αŸ’αžšαž‡αžΆαž”αŸ’αžšαž·αž™αž—αžΆαž–αžšαž”αžŸαŸ‹αž–αž½αž€αž‚αŸαž€αŸ†αž–αž»αž„αž€αžΎαž“αž‘αžΎαž„αž”αžΆαž“αž€αžΆαž“αŸ‹αž€αžΆαž”αŸ‹αž‘αžΈαž•αŸ’αžŸαžΆαžšαž–αž·αžŸαŸαžŸαžšαž”αžŸαŸ‹αž–αž½αž€αž‚αŸαŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž™αžΎαž„αž’αžΆαž“αžšαž”αžΆαž™αž€αžΆαžšαžŽαŸ Gartner αžŠαžΌαž…αž‚αŸ’αž“αžΆ αž™αžΎαž„αž“αžΉαž„αžƒαžΎαž‰αž€αžΆαžšαžŸαž“αŸ’αž“αž·αžŠαŸ’αž‹αžΆαž“αžŠαžΌαž…αžαžΆαž„αž€αŸ’αžšαŸ„αž˜αŸ–

  1. αž’αžαž·αžαž·αž‡αž“αž‡αžΆαž…αŸ’αžšαžΎαž“αž€αŸ†αž–αž»αž„αžŸαŸ’αžαž·αžαž“αŸ…αž›αžΎαž•αŸ’αž›αžΌαžœαž‘αŸ…αž€αžΆαž“αŸ‹αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž‘αŸ…αž€αžΆαž“αŸ‹αž–αž–αž€αŸ”
  2. αž”αž…αŸ’αž…αŸαž€αžœαž·αž‘αŸ’αž™αžΆαžαŸ’αž˜αžΈαž›αŸαž…αž‘αžΎαž„αž‡αžΆαž›αžΎαž€αžŠαŸ†αž”αžΌαž„αž“αŸ…αž€αŸ’αž“αž»αž„αž–αž–αž€ αž αžΎαž™αžœαžΆαž˜αž·αž“αž˜αŸ‚αž“αž‡αžΆαž€αžΆαžšαž–αž·αžαžŠαŸ‚αž›αžαžΆαž–αž½αž€αž‚αŸαž“αžΉαž„αž•αŸ’αž›αžΆαžŸαŸ‹αž‘αžΈαž‘αŸ…αž αŸαžŠαŸ’αž‹αžΆαžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αžŠαŸ‚αž›αž˜αž·αž“αž˜αŸ‚αž“αž‡αžΆαž–αž–αž€αž“αŸ„αŸ‡αž‘αŸαŸ”
  3. αž‚αŸ†αžšαžΌαž€αŸ†αžŽαžαŸ‹αžαž˜αŸ’αž›αŸƒαžαžΆαž˜αžŠαŸ‚αž›αž’αŸ’αž“αž€αž‘αŸ…αž”αžΆαž“αž€αŸ’αž›αžΆαž™αž‡αžΆαžšαžΏαž„αž’αž˜αŸ’αž˜αžαžΆαŸ” αž˜αž“αž»αžŸαŸ’αžŸαž‚αŸ’αžšαž”αŸ‹αžšαžΌαž”αž…αž„αŸ‹αž…αŸ†αžŽαžΆαž™αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžαŸ‚αž’αŸ’αžœαžΈαžŠαŸ‚αž›αž–αž½αž€αž‚αŸαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡ αž αžΎαž™αž“αŸαŸ‡αž˜αž·αž“αž˜αŸ‚αž“αž‡αžΆαž“αž·αž“αŸ’αž“αžΆαž€αžΆαžšαž“αŸ„αŸ‡αž‘αŸ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž‚αŸ’αžšαžΆαž“αŸ‹αžαŸ‚αž‡αžΆαžŸαŸαž…αž€αŸ’αžαžΈαžαŸ’αž›αŸ‚αž„αž€αžΆαžšαžŽαŸαž“αŸƒαž€αžΆαžšαž–αž·αžαž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡αŸ”

αž…αž»αŸ‡αž–αŸαž›αž“αŸαŸ‡?

αžαŸ’αž„αŸƒαž“αŸαŸ‡αž™αžΎαž„αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž‚αŸ’αž“αžΆαž“αŸ…αž›αžΎαž–αž–αž€αŸ” αž αžΎαž™αžŸαŸ†αžŽαž½αžšαžŠαŸ‚αž›αž€αžΎαžαž‘αžΎαž„αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž™αžΎαž„αž‚αžΊαž‡αžΆαžŸαŸ†αžŽαž½αžšαž“αŸƒαž‡αž˜αŸ’αžšαžΎαžŸαŸ” αž αžΎαž™αžœαžΆαž˜αžΆαž“αž‘αŸ†αž αŸ†αž’αŸ† αž”αžΎαž‘αŸ„αŸ‡αž”αžΈαž‡αžΆαž™αžΎαž„αž“αž·αž™αžΆαž™αžαŸ‚αž’αŸ†αž–αžΈαž‡αž˜αŸ’αžšαžΎαžŸαž“αŸƒαž”αž…αŸ’αž…αŸαž€αžœαž·αž‘αŸ’αž™αžΆ DBMS αž€αŸ’αž“αž»αž„αž‘αž˜αŸ’αžšαž„αŸ‹ On-premises αž€αŸαžŠαŸ„αž™αŸ” αž™αžΎαž„αž€αŸαž˜αžΆαž“αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„ αž“αž·αž„ SaaS αž•αž„αžŠαŸ‚αžšαŸ” αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž‡αž˜αŸ’αžšαžΎαžŸαž€αžΆαž“αŸ‹αžαŸ‚αž–αž·αž”αžΆαž€αž‡αžΆαžšαŸ€αž„αžšαžΆαž›αŸ‹αž†αŸ’αž“αžΆαŸ†αŸ”

αžšαž½αž˜αž‡αžΆαž˜αž½αž™αž“αžΉαž„αžŸαŸ†αžŽαž½αžšαž“αŸƒαž‡αž˜αŸ’αžšαžΎαžŸαž€αŸαž˜αžΆαž“αž•αž„αžŠαŸ‚αžšαŸ” αž€αžαŸ’αžαžΆαž€αŸ†αžŽαžαŸ‹:

  • αžαž˜αŸ’αž›αŸƒ. αž”αž…αŸ’αž…αŸαž€αžœαž·αž‘αŸ’αž™αžΆαž‡αžΆαž…αŸ’αžšαžΎαž“αž“αŸ…αžαŸ‚αž…αŸ†αžŽαžΆαž™αž”αŸ’αžšαžΆαž€αŸ‹αŸ”
  • αž‡αŸ†αž“αžΆαž‰. αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž™αžΎαž„αž€αŸ†αž–αž»αž„αž“αž·αž™αžΆαž™αž’αŸ†αž–αžΈαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž₯αžαž‚αž·αžαžαŸ’αž›αŸƒ αž“αŸ„αŸ‡αžŸαŸ†αžŽαž½αžšαž“αŸƒαž‡αŸ†αž“αžΆαž‰αž€αžΎαžαž‘αžΎαž„ αž…αžΆαž”αŸ‹αžαžΆαŸ†αž„αž–αžΈαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž₯αžαž‚αž·αžαžαŸ’αž›αŸƒαžαž˜αŸ’αžšαžΌαžœαž±αŸ’αž™αž˜αžΆαž“αžŸαž˜αžαŸ’αžαž—αžΆαž–αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαžΆαž“αŸ‹αž–αžΈαž˜αž“αž»αžŸαŸ’αžŸαžŠαŸ‚αž›αžŠαžΆαž€αŸ‹αž–αž„αŸ’αžšαžΆαž™ αž“αž·αž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžœαžΆαŸ”
  • αž˜αž»αžαž„αžΆαžš. αž˜αž·αž“αž˜αŸ‚αž“αž‚αŸ’αžšαž”αŸ‹αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αžŠαŸ‚αž›αž˜αžΆαž“αž“αŸ…αž€αŸ’αž“αž»αž„αž–αž–αž€ αž“αž·αž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŸαžΆαž„αžŸαž„αŸ‹αž‘αŸ αž“αž·αž™αžΆαž™αžαžΆαžŸαžΌαž˜αŸ’αž”αžΈαžαŸ‚αž“αŸ…αž›αžΎ Postgres αžŠαžΌαž…αž‚αŸ’αž“αžΆαž€αŸαž˜αžΆαž“αž˜αž»αžαž„αžΆαžšαžŠαžΌαž…αž‚αŸ’αž“αžΆαž‘αŸ…αž“αžΉαž„ Postgres On-premises αžŠαŸ‚αžšαŸ” αž“αŸαŸ‡β€‹αž‡αžΆβ€‹αž€αžαŸ’αžαžΆβ€‹αžŸαŸ†αžαžΆαž“αŸ‹β€‹αžŠαŸ‚αž›β€‹αžαŸ’αžšαžΌαžœβ€‹αžŠαžΉαž„β€‹αž“αž·αž„β€‹αž™αž›αŸ‹αŸ” αž›αžΎαžŸαž–αžΈαž“αŸαŸ‡αž‘αŸ…αž‘αŸ€αž αž€αžαŸ’αžαžΆαž“αŸαŸ‡αž€αžΆαž“αŸ‹αžαŸ‚αžŸαŸ†αžαžΆαž“αŸ‹αž‡αžΆαž„αž…αŸ†αžŽαŸαŸ‡αžŠαžΉαž„αž’αŸ†αž–αžΈαžŸαž˜αžαŸ’αžαž—αžΆαž–αž›αžΆαž€αŸ‹αž€αŸ†αž”αžΆαŸ†αž„αž˜αž½αž™αž…αŸ†αž“αž½αž“αž“αŸƒ DBMS αžαŸ‚αž˜αž½αž™αŸ”

αž’αŸ’αžœαžΈαžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αžšαŸ†αž–αžΉαž„αž‘αž»αž€αž₯αž‘αžΌαžœαž“αŸαŸ‡αž–αžΈ DA/DE:

  • αž€αžΆαžšαž™αž›αŸ‹αžŠαžΉαž„αž›αŸ’αž’αž“αŸƒαž”αŸ’αžšαž’αžΆαž“αž”αž‘αž“αž·αž„αžŸαŸ’αžαžΆαž”αžαŸ’αž™αž€αž˜αŸ’αž˜αž€αž˜αŸ’αž˜αžœαž·αž’αžΈ;
  • αžŸαž˜αžαŸ’αžαž—αžΆαž–αž€αŸ’αž“αž»αž„αž€αžΆαžšαž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž”αž…αŸ’αž…αŸαž€αžœαž·αž‡αŸ’αž‡αžΆ DBMS αž±αŸ’αž™αž”αžΆαž“αžαŸ’αžšαžΉαž˜αžαŸ’αžšαžΌαžœαžŠαŸ„αž™αž‚αž·αžαž‚αžΌαžšαž–αžΈαž€αž·αž…αŸ’αž…αž€αžΆαžšαž“αŸ…αž“αžΉαž„αžŠαŸƒαŸ”
  • αžŸαž˜αžαŸ’αžαž—αžΆαž–αž€αŸ’αž“αž»αž„αž€αžΆαžšαž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžšαŸ’αžαžŠαŸαž›αŸ’αž’αž”αŸ’αžšαžŸαžΎαžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαž”αž…αŸ’αž…αŸαž€αžœαž·αž‘αŸ’αž™αžΆαžŠαŸ‚αž›αž”αžΆαž“αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž“αŸ…αž€αŸ’αž“αž»αž„αž”αžšαž·αž”αž‘αž“αŸƒαžŠαŸ‚αž“αž€αŸ†αžŽαžαŸ‹αžŠαŸ‚αž›αž˜αžΆαž“αžŸαŸ’αžšαžΆαž”αŸ‹αŸ”
  • αžŸαž˜αžαŸ’αžαž—αžΆαž–αž€αŸ’αž“αž»αž„αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαž€αžΆαžšαž•αŸ’αž‘αŸαžšαž‘αž·αž“αŸ’αž“αž“αŸαž™αž“αž·αž„αž€αžΆαžšαž’αŸ’αžœαžΎαž…αŸ†αžŽαžΆαž€αžŸαŸ’αžšαž»αž€;
  • αžŸαž˜αžαŸ’αžαž—αžΆαž–αž€αŸ’αž“αž»αž„αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αž αž“αž·αž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αžŠαŸ‚αž›αž”αžΆαž“αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαŸ”

αž§αž‘αžΆαž αžšαžŽαŸαžαžΆαž„αž€αŸ’αžšαŸ„αž˜ αž•αŸ’αž’αŸ‚αž€αž›αžΎ GCP αž”αž„αŸ’αž αžΆαž‰αž–αžΈαžšαž”αŸ€αž”αžŠαŸ‚αž›αž‡αž˜αŸ’αžšαžΎαžŸαž“αŸƒαž”αž…αŸ’αž…αŸαž€αžœαž·αž‘αŸ’αž™αžΆαž˜αž½αž™ αž¬αž˜αž½αž™αž•αŸ’αžŸαŸαž„αž‘αŸ€αžαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αžœαžΎαž€αžΆαžšαž‡αžΆαž˜αž½αž™αž‘αž·αž“αŸ’αž“αž“αŸαž™αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαžŸαŸ’αžšαŸαž™αž›αžΎαžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αžšαž”αžŸαŸ‹αžœαžΆαŸ–

αžšαž”αŸ€αž”αžšαžŸαŸ‹αžšαžΆαž“αž˜αžΆαž“αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ SQL αž“αŸ…αžŸαžαžœαžαŸ’αžŸαžšαŸαž‘αžΈ 21: αž–αž–αž€ Kubernetes αž“αž·αž„ PostgreSQL multimaster

αžŸαžΌαž˜αž…αŸ†αžŽαžΆαŸ†αžαžΆ PostgreSQL αž˜αž·αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž“αŸ…αž€αŸ’αž“αž»αž„αž‚αŸ’αžšαŸ„αž„αž€αžΆαžšαžŽαŸαž“αŸ„αŸ‡αž‘αŸ αž αžΎαž™αž“αŸαŸ‡αž‚αžΊαžŠαŸ„αž™αžŸαžΆαžšαžαŸ‚αžœαžΆαžαŸ’αžšαžΌαžœαž”αžΆαž“αž›αžΆαž€αŸ‹αž“αŸ…αž€αŸ’αžšαŸ„αž˜αžœαžΆαž€αŸ’αž™αžŸαŸαž–αŸ’αž‘αŸ” αž–αž–αž€ SQL. αž αžΎαž™αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž™αžΎαž„αž‘αŸ…αžŠαž›αŸ‹ Cloud SQL αž™αžΎαž„αžαŸ’αžšαžΌαžœαž’αŸ’αžœαžΎαž€αžΆαžšαž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž˜αŸ’αžαž„αž‘αŸ€αžαŸ–

αžšαž”αŸ€αž”αžšαžŸαŸ‹αžšαžΆαž“αž˜αžΆαž“αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ SQL αž“αŸ…αžŸαžαžœαžαŸ’αžŸαžšαŸαž‘αžΈ 21: αž–αž–αž€ Kubernetes αž“αž·αž„ PostgreSQL multimaster

αžœαžΆαž‚αž½αžšαžαŸ‚αžαŸ’αžšαžΌαžœαž”αžΆαž“αž€αžαŸ‹αžŸαž˜αŸ’αž‚αžΆαž›αŸ‹αžαžΆαž‡αž˜αŸ’αžšαžΎαžŸαž“αŸαŸ‡αž˜αž·αž“αžαŸ‚αž„αžαŸ‚αž…αŸ’αž”αžΆαžŸαŸ‹αž›αžΆαžŸαŸ‹αž‘αŸαžŠαžΌαž…αŸ’αž“αŸαŸ‡αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαžαŸ‚αž„αžαŸ‚αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŽαŸ‚αž“αžΆαŸ†αžŠαŸ„αž™αžœαž·αž…αžΆαžšαžŽαž‰αžΆαžŽαŸ”

αžŸαžšαž»αž”:

  1. αž’αŸ’αž“αž€αž€αžΆαž“αŸ‹αžαŸ‚αž‘αŸ…αž˜αž»αž αžŸαŸ†αžŽαž½αžšαž“αŸƒαž‡αž˜αŸ’αžšαžΎαžŸαž€αžΆαž“αŸ‹αžαŸ‚αž…αž»αž…αŸ” αž αžΎαž™αž”αžΎαž‘αŸ„αŸ‡αž”αžΈαž‡αžΆαž’αŸ’αž“αž€αž˜αžΎαž›αžαŸ‚αž“αŸ… GCP, αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αžŠαŸ‚αž›αž”αžΆαž“αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„ αž“αž·αž„ SaaS αž€αŸαžŠαŸ„αž™ αž“αŸ„αŸ‡αž€αžΆαžšαž›αžΎαž€αž‘αžΎαž„αž˜αž½αž™αž…αŸ†αž“αž½αž“αž’αŸ†αž–αžΈ RDBMS αž›αŸαž…αž‘αžΎαž„αžαŸ‚αž“αŸ…αž‡αŸ†αž αžΆαž“αž‘αžΈ 4 αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡ (αž αžΎαž™αž˜αžΆαž“ Spanner αž“αŸ…αž€αŸ’αž”αŸ‚αžšαž“αŸ„αŸ‡)αŸ” αž›αžΎαžŸαž–αžΈαž“αŸαŸ‡ αž‡αž˜αŸ’αžšαžΎαžŸαž“αŸƒ PostgreSQL αž›αŸαž…αž‘αžΎαž„αž€αŸ’αž“αž»αž„αž‡αŸ†αž αžΆαž“αž‘αžΈ 5 αž αžΎαž™αž“αŸ…αž‡αžΆαž”αŸ‹αžœαžΆαž€αŸαž˜αžΆαž“ MySQL αž“αž·αž„ SQL Server αž•αž„αžŠαŸ‚αžš αž“αŸ„αŸ‡αž‚αžΊ αž˜αžΆαž“αž’αŸ’αžœαžΈαŸ—αž‚αŸ’αžšαž”αŸ‹αž™αŸ‰αžΆαž„ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸ.
  2. αž™αžΎαž„αž˜αž·αž“αžαŸ’αžšαžΌαžœαž—αŸ’αž›αŸαž…αž’αŸ†αž–αžΈαž€αžΆαžšαžšαžΉαžαž”αž“αŸ’αžαžΉαž„αž”αŸ’αžšαž†αžΆαŸ†αž„αž“αžΉαž„αž•αŸ’αž‘αŸƒαžαžΆαž„αž€αŸ’αžšαŸ„αž™αž“αŸƒαž€αžΆαžšαž›αŸ’αž”αž½αž„αž“αŸ„αŸ‡αž‘αŸαŸ” αž‡αžΆαž‘αžΌαž‘αŸ…αž˜αž“αž»αžŸαŸ’αžŸαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αž“αžΆαž…αž„αŸ‹αž”αžΆαž“ Spanner αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžœαžΆαž˜αžΆαž“αžαž˜αŸ’αž›αŸƒαžαŸ’αž›αŸƒαŸ” αž‡αžΆαž›αž‘αŸ’αž’αž•αž› αžŸαŸ†αžŽαžΎαž’αž˜αŸ’αž˜αžαžΆαž˜αžΎαž›αž‘αŸ…αžŠαžΌαž…αž“αŸαŸ‡αŸ– "αžŸαžΌαž˜αž’αŸ’αžœαžΎαž±αŸ’αž™αž™αžΎαž„αž€αŸ’αž›αžΆαž™αž‡αžΆ Spanner αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžαž˜αŸ’αž›αŸƒαž“αŸƒ Cloud SQL αž’αŸ’αž“αž€αž‚αžΊαž‡αžΆαž’αŸ’αž“αž€αž‡αŸ†αž“αžΆαž‰!"

αžšαž”αŸ€αž”αžšαžŸαŸ‹αžšαžΆαž“αž˜αžΆαž“αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ SQL αž“αŸ…αžŸαžαžœαžαŸ’αžŸαžšαŸαž‘αžΈ 21: αž–αž–αž€ Kubernetes αž“αž·αž„ PostgreSQL multimaster

αžαžΎαž™αžΎαž„αž‚αž½αžšαž’αŸ’αžœαžΎαž’αŸ’αžœαžΈ?

αžŠαŸ„αž™β€‹αž˜αž·αž“β€‹αž”αžΆαž“β€‹αž’αŸ‡αž’αžΆαž„β€‹αžαžΆβ€‹αž‡αžΆβ€‹αž€αžΆαžšβ€‹αž–αž·αžβ€‹αž”αŸ†αž•αž»αžβ€‹αž“αŸ„αŸ‡β€‹αž‘αŸβ€‹αžŸαžΌαž˜β€‹αž“αž·αž™αžΆαž™β€‹αžŠαžΌαž…β€‹αžαžΆαž„β€‹αž€αŸ’αžšαŸ„αž˜β€‹αž“αŸαŸ‡β€‹:

αž™αžΎαž„αžαŸ’αžšαžΌαžœαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžšαŸ’αžαžšαž”αžŸαŸ‹αž™αžΎαž„αž€αŸ’αž“αž»αž„αž€αžΆαžšαžšαŸ€αž“αŸ–

  • αž˜αž·αž“αž˜αžΆαž“αž…αŸ†αžŽαž»αž…αžŽαžΆαž˜αž½αž™αž€αŸ’αž“αž»αž„αž€αžΆαžšαž”αž„αŸ’αžšαŸ€αž“αž–αžΈαžšαž”αŸ€αž”αžŠαŸ‚αž› DBAs αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αžšαŸ€αž“αž–αžΈαž˜αž»αž“αž˜αž€αž“αŸ„αŸ‡αž‘αŸαŸ”
  • αž…αŸ†αžŽαŸαŸ‡αžŠαžΉαž„αž“αŸƒαž•αž›αž·αžαž•αž›αž˜αž½αž™αž‚αžΊαž˜αž·αž“αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαžΆαž“αŸ‹αž‘αŸ€αžαž‘αŸ;
  • αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž€αžΆαžšαžŠαžΉαž„αžšαžΆαž”αŸ‹αžŸαž·αž”αž“αžΆαž€αŸ‹αž“αŸ…αž€αž˜αŸ’αžšαž·αžαž˜αž½αž™αž‚αžΊαž˜αž·αž“αž’αžΆαž…αž‘αŸ…αžšαž½αž…αž‘αŸαŸ”

αž’αŸ’αž“αž€β€‹αžαŸ’αžšαžΌαžœβ€‹αžŠαžΉαž„β€‹αž˜αž·αž“β€‹αžαŸ’αžšαžΉαž˜β€‹αžαŸ‚β€‹αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡ αž αžΎαž™β€‹αž˜αž·αž“β€‹αžŠαžΉαž„β€‹αžαžΆβ€‹αž•αž›αž·αžαž•αž›β€‹αž˜αžΆαž“β€‹αžαž˜αŸ’αž›αŸƒβ€‹αž”αŸ‰αž»αž“αŸ’αž˜αžΆαž“β€‹αž“αŸ„αŸ‡β€‹αž‘αŸ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αŸ–

  • αž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž€αžšαžŽαžΈαž“αŸƒαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαžšαž”αžŸαŸ‹αžαŸ’αž›αž½αž“;
  • αžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžšαŸ’αžαž“αŸƒαž€αžΆαžšαžŠαžΆαž€αŸ‹αž–αž„αŸ’αžšαžΆαž™αž•αŸ’αžŸαŸαž„αž‚αŸ’αž“αžΆ;
  • αž‚αž»αžŽαžŸαž˜αŸ’αž”αžαŸ’αžαž·αž“αž·αž„αž‚αž»αžŽαžœαž·αž”αžαŸ’αžαž·αž“αŸƒαžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžšαŸ’αžαž“αžΈαž˜αž½αž™αŸ—;
  • αž•αž›αž·αžαž•αž›αžŸαŸ’αžšαžŠαŸ€αž„αž‚αŸ’αž“αžΆ αž“αž·αž„αž‡αž˜αŸ’αžšαžΎαžŸαžŠαžΎαž˜αŸ’αž”αžΈαž”αž„αŸ’αž€αžΎαžαž‡αžΆαž‡αž˜αŸ’αžšαžΎαžŸαžŠαŸ‚αž›αž˜αžΆαž“αž–αŸαžαŸŒαž˜αžΆαž“ αž“αž·αž„αž›αŸ’αž’αž”αŸ†αž•αž»αž αž“αž·αž„αž˜αž·αž“αžαŸ‚αž„αžαŸ‚αž–αŸαž‰αž…αž·αžαŸ’αžαž…αŸ†αž–αŸ„αŸ‡αž•αž›αž·αžαž•αž›αžŠαŸ‚αž›αž’αŸ’αž›αžΆαž”αŸ‹αžŸαŸ’αž‚αžΆαž›αŸ‹αž“αŸ„αŸ‡αž‘αŸαŸ”

αž’αŸ’αž“αž€αž€αŸαžαŸ’αžšαžΌαžœαž˜αžΆαž“αž›αž‘αŸ’αž’αž—αžΆαž–αž•αŸ’αž‘αŸαžšαž‘αž·αž“αŸ’αž“αž“αŸαž™ αž“αž·αž„αž™αž›αŸ‹αž–αžΈαž‚αŸ„αž›αž€αžΆαžšαžŽαŸαž‡αžΆαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž“αŸƒαž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž‡αžΆαž˜αž½αž™ ETL αŸ”

αž€αžšαžŽαžΈαž–αž·αž

αž€αžΆαž›αž–αžΈαž–αŸαž›αžαŸ’αž˜αžΈαŸ—αž“αŸαŸ‡ αžœαžΆαž…αžΆαŸ†αž”αžΆαž…αŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαž”αž„αŸ’αž€αžΎαžαž•αŸ’αž“αŸ‚αž€αžαžΆαž„αž€αŸ’αžšαŸ„αž™αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž‘αžΌαžšαžŸαŸαž–αŸ’αž‘αŸ” αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž€αžΆαžšαž„αžΆαžšαž”αžΆαž“αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž“αŸ…αž›αžΎαžœαžΆ αž•αŸ’αž“αŸ‚αž€αžαžΆαž„αž€αŸ’αžšαŸ„αž™αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαžšαž½αž…αž αžΎαž™ αž“αž·αž„αžšαž½αž…αžšαžΆαž›αŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αž αž αžΎαž™αž€αŸ’αžšαž»αž˜αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž”αžΆαž“αž…αŸ†αžŽαžΆαž™αž–αŸαž›αž”αŸ’αžšαž αŸ‚αž› 2 αž†αŸ’αž“αžΆαŸ†αž›αžΎαž‚αž˜αŸ’αžšαŸ„αž„αž“αŸαŸ‡αŸ” αž—αžΆαžšαž€αž·αž…αŸ’αž…αžαžΆαž„αž€αŸ’αžšαŸ„αž˜αžαŸ’αžšαžΌαžœαž”αžΆαž“αž€αŸ†αžŽαžαŸ‹αŸ–

  • αž”αž„αŸ’αž€αžΎαž CI/CD;
  • αž–αž·αž“αž·αžαŸ’αž™αž˜αžΎαž›αžŸαŸ’αžαžΆαž”αžαŸ’αž™αž€αž˜αŸ’αž˜;
  • αžŠαžΆαž€αŸ‹αžœαžΆαž±αŸ’αž™αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αŸ”

αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαžαŸ’αž›αž½αž“αžœαžΆαž‚αžΊαž‡αžΆαžŸαŸαžœαžΆαž˜αžΈαž€αŸ’αžšαžΌ αž αžΎαž™αž€αžΌαžŠ Python/Django αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž‘αžΎαž„αž–αžΈαžŠαŸ†αž”αžΌαž„ αž“αž·αž„αžŠαŸ„αž™αž•αŸ’αž‘αžΆαž›αŸ‹αž“αŸ…αž€αŸ’αž“αž»αž„ GCP αŸ” αž…αŸ†αž–αŸ„αŸ‡αž‘αžŸαŸ’αžŸαž“αž·αž€αž‡αž“αž‚αŸ„αž›αžŠαŸ… αžœαžΆαžαŸ’αžšαžΌαžœαž”αžΆαž“αž‚αŸαžŸαž“αŸ’αž˜αžαŸ‹αžαžΆαž“αžΉαž„αž˜αžΆαž“αžαŸ†αž”αž“αŸ‹αž–αžΈαžšαž‚αžΊαžŸαž αžšαžŠαŸ’αž‹αž’αžΆαž˜αŸαžšαž·αž€ αž“αž·αž„αžŸαž αž—αžΆαž–αž’αžΊαžšαŸ‰αž»αž” αž αžΎαž™αž…αžšαžΆαž…αžšαžŽαŸαžαŸ’αžšαžΌαžœαž”αžΆαž“αž…αŸ‚αž€αž…αžΆαž™αžαžΆαž˜αžšαž™αŸˆαž§αž”αž€αžšαžŽαŸαžαž»αž›αŸ’αž™αž—αžΆαž–αž”αž“αŸ’αž‘αž»αž€αžŸαž€αž›αŸ” αž”αž“αŸ’αž‘αž»αž€αž€αžΆαžšαž„αžΆαžš αž“αž·αž„αž€αžΆαžšαž‚αžŽαž“αžΆαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž“αŸ…αž›αžΎ Google Kubernetes Engine αŸ”

αž…αŸ†αž–αŸ„αŸ‡αž‘αž·αž“αŸ’αž“αž“αŸαž™αž˜αžΆαž“αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž…αŸ†αž“αž½αž“ αŸ£αŸ–

  • αžƒαŸ’αž›αžΆαŸ†αž„αž•αŸ’αž‘αž»αž€αž–αž–αž€;
  • αžƒαŸ’αž›αžΆαŸ†αž„αž‘αž·αž“αŸ’αž“αž“αŸαž™;
  • Cloud SQL (PostgreSQL) αŸ”

αžšαž”αŸ€αž”αžšαžŸαŸ‹αžšαžΆαž“αž˜αžΆαž“αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ SQL αž“αŸ…αžŸαžαžœαžαŸ’αžŸαžšαŸαž‘αžΈ 21: αž–αž–αž€ Kubernetes αž“αž·αž„ PostgreSQL multimaster

αž˜αž“αž»αžŸαŸ’αžŸαž˜αŸ’αž“αžΆαž€αŸ‹αž”αŸ’αžšαž αŸ‚αž›αž‡αžΆαž†αŸ’αž„αž›αŸ‹αžαžΆαž αŸαžαž»αž’αŸ’αžœαžΈαž”αžΆαž“αž‡αžΆ Cloud SQL αžαŸ’αžšαžΌαžœαž”αžΆαž“αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸ? αžŠαžΎαž˜αŸ’αž”αžΈαž”αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž–αž·αž αžŸαŸ†αžŽαž½αžšαž”αŸ‚αž”αž“αŸαŸ‡αž”αžΆαž“αž”αžŽαŸ’αžαžΆαž›αž±αŸ’αž™αž˜αžΆαž“αž€αžΆαžšαž•αŸ’αž’αžΆαž€αž˜αž½αž™αž…αŸ†αž“αž½αž“αžŠαŸ‚αž›αž†αŸ’αž‚αž„αž€αŸ’αž“αž»αž„αž”αŸ‰αž»αž“αŸ’αž˜αžΆαž“αž†αŸ’αž“αžΆαŸ†αžαŸ’αž˜αžΈαŸ—αž“αŸαŸ‡ - αž˜αžΆαž“αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸαžαžΆαž˜αž“αž»αžŸαŸ’αžŸαž˜αžΆαž“αž€αžΆαžšαžαŸ’αž˜αžΆαžŸαŸ‹αž’αŸ€αž“αž…αŸ†αž–αŸ„αŸ‡αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž‘αŸ†αž“αžΆαž€αŸ‹αž‘αŸ†αž“αž„ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž™αŸ‰αžΆαž„αžŽαžΆαž€αŸαžŠαŸ„αž™αž–αž½αž€αž‚αŸαž“αŸ…αžαŸ‚αž”αž“αŸ’αžαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžœαžΆαž™αŸ‰αžΆαž„αžŸαž€αž˜αŸ’αž˜ ;-)αŸ”

αž…αŸ†αž–αŸ„αŸ‡αž€αžšαžŽαžΈαžšαž”αžŸαŸ‹αž™αžΎαž„ Cloud SQL αžαŸ’αžšαžΌαžœαž”αžΆαž“αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž αŸαžαž»αž•αž›αžŠαžΌαž…αžαžΆαž„αž€αŸ’αžšαŸ„αž˜αŸ–

  1. αžŠαžΌαž…αžŠαŸ‚αž›αž”αžΆαž“αžšαŸ€αž”αžšαžΆαž”αŸ‹αžšαž½αž… αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž“αŸαŸ‡αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž‘αžΎαž„αžŠαŸ„αž™αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ Django αž αžΎαž™αžœαžΆαž˜αžΆαž“αž‚αŸ†αžšαžΌαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž‚αžΌαžŸαž•αŸ‚αž“αž‘αžΈαž‘αž·αž“αŸ’αž“αž“αŸαž™αž‡αžΆαž”αŸ‹αž›αžΆαž”αŸ‹αž–αžΈαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ SQL αž‘αŸ… Python objects (Django ORM)αŸ”
  2. αž€αŸ’αžšαž”αžαŸαžŽαŸ’αžŒαžαŸ’αž›αž½αž“αžœαžΆαž‚αžΆαŸ†αž‘αŸ’αžšαž”αž‰αŸ’αž‡αžΈαž€αŸ†αžŽαžαŸ‹αžŠαŸ„αž™αž™αž»αžαŸ’αžαž·αž’αž˜αŸŒαž“αŸƒ DBMSsαŸ–

  • PostgreSQL;
  • αž˜αŸ‰αžΆαžšαžΈαž™αŸ‰αžΆαžŒαžΈαž”αŸŠαžΈ;
  • MySQL;
  • oracles;
  • SQLite αŸ”

αžŠαžΌαž…αŸ’αž“αŸ„αŸ‡αž αžΎαž™ PostgreSQL αžαŸ’αžšαžΌαžœαž”αžΆαž“αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž–αžΈαž”αž‰αŸ’αž‡αžΈαž“αŸαŸ‡αžŠαŸ„αž™αžœαž·αž…αžΆαžšαžŽαž‰αžΆαžŽ (αž‡αžΆαž€αžΆαžšαž”αŸ’αžšαžŸαžΎαžšαžŽαžΆαžŸαŸ‹ αžœαžΆαž˜αž·αž“αž˜αŸ‚αž“αž‡αžΆ Oracle αžŠαžΎαž˜αŸ’αž”αžΈαž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž‘αŸ)αŸ”

αž’αŸ’αžœαžΈαžŠαŸ‚αž›αž”αžΆαžαŸ‹αŸ–

  • αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž“αŸαŸ‡αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŠαžΆαž€αŸ‹αž–αž„αŸ’αžšαžΆαž™αžαŸ‚αž“αŸ…αž€αŸ’αž“αž»αž„αžαŸ†αž”αž“αŸ‹αž…αŸ†αž“αž½αž“ 2 αž αžΎαž™αž‘αžΈ 3 αž”αžΆαž“αž”αž„αŸ’αž αžΆαž‰αžαŸ’αž›αž½αž“αž“αŸ…αž€αŸ’αž“αž»αž„αž•αŸ‚αž“αž€αžΆαžš (ធអស៊ី);
  • αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž˜αžΆαž“αž‘αžΈαžαžΆαŸ†αž„αž“αŸ…αžαŸ†αž”αž“αŸ‹αž’αžΆαž˜αŸαžšαž·αž€αžαžΆαž„αž‡αžΎαž„ (Iowa);
  • αž“αŸ…αž›αžΎαž•αŸ’αž“αŸ‚αž€αž“αŸƒαž’αžαž·αžαž·αž‡αž“αž˜αžΆαž“αž€αžΆαžšαž–αŸ’αžšαž½αž™αž”αžΆαžšαž˜αŸ’αž—αž’αŸ†αž–αžΈαž›αž‘αŸ’αž’αž—αžΆαž– αž€αžΆαžšαž–αž“αŸ’αž™αžΆαž–αŸαž›αž…αžΌαž›αž”αŸ’αžšαžΎ αž–αžΈαž’αžΊαžšαŸ‰αž»αž” αž“αž·αž„αž’αžΆαžŸαŸŠαžΈ αž“αž·αž„ αž€αžΆαžšαžšαŸ†αžαžΆαž“ αž“αŸ…αž€αŸ’αž“αž»αž„αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜ αž€αŸ’αž“αž»αž„αž€αžšαžŽαžΈ DBMS αžˆαž”αŸ‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαŸ”

αž‘αŸ„αŸ‡αž”αžΈαž‡αžΆαž€αžΆαžšαž–αž·αžαžŠαŸ‚αž›αžαžΆ Django αžαŸ’αž›αž½αž“αžœαžΆαž’αžΆαž…αž’αŸ’αžœαžΎαž€αžΆαžšαž‡αžΆαž˜αž½αž™αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž‡αžΆαž…αŸ’αžšαžΎαž“αžŸαŸ’αžšαž”αž‚αŸ’αž“αžΆαž“αž·αž„αž”αŸ‚αž„αž…αŸ‚αž€αžœαžΆαž‘αŸ…αž‡αžΆαž€αžΆαžšαž’αžΆαž“αž“αž·αž„αž€αžΆαžšαžŸαžšαžŸαŸαžšαž€αŸαžŠαŸ„αž™αž€αŸαž˜αž·αž“αž˜αžΆαž“αž€αžΆαžšαžŸαžšαžŸαŸαžšαž…αŸ’αžšαžΎαž“αž“αŸ…αž€αŸ’αž“αž»αž„αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž‘αŸ (αž…αŸ’αžšαžΎαž“αž‡αžΆαž„ 90% αž€αŸ†αž–αž»αž„αž’αžΆαž“) αŸ” αž αžΎαž™αž‡αžΆαž‘αžΌαž‘αŸ…αž“αž·αž„αž‡αžΆαž‘αžΌαž‘αŸ…αž”αŸ’αžšαžŸαž·αž“αž”αžΎαžœαžΆαž’αžΆαž…αž’αŸ’αžœαžΎαž‘αŸ…αž”αžΆαž“ αž’αžΆαž“-αž…αž˜αŸ’αž›αž„αž“αŸƒαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αžŸαŸ†αžαžΆαž“αŸ‹αž“αŸ…αž’αžΊαžšαŸ‰αž»αž” αž“αž·αž„αž’αžΆαžŸαŸŠαžΈαž“αŸαŸ‡αž“αžΉαž„αž‡αžΆαžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αžŸαž˜αŸ’αžšαž”αžŸαž˜αŸ’αžšαž½αž›αŸ” αž’αž‰αŸ’αž…αžΉαž„αžαžΎαž˜αžΆαž“αž’αŸ’αžœαžΈαžŸαŸ’αž˜αž»αž‚αžŸαŸ’αž˜αžΆαž‰αž’αŸ†αž–αžΈαžœαžΆ?

αž€αžΆαžšαž›αŸ†αž”αžΆαž€αž‚αžΊαžαžΆαž’αžαž·αžαž·αž‡αž“αž˜αž·αž“αž…αž„αŸ‹αž”αŸ„αŸ‡αž”αž„αŸ‹αžŠαŸ„αž™αž”αŸ’αžšαžΎαžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„ αž“αž·αž„ Cloud SQL αŸ” αž αžΎαž™αžŸαž˜αžαŸ’αžαž—αžΆαž–αžšαž”αžŸαŸ‹ Cloud SQL αž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž˜αžΆαž“αž€αž˜αŸ’αžšαž·αžαŸ” Cloud SQL αž‚αžΆαŸ†αž‘αŸ’αžšαž—αžΆαž–αž’αžΆαž…αžšαž€αž”αžΆαž“αžαŸ’αž–αžŸαŸ‹ (HA) αž“αž·αž„ Read Replica (RR) αž”αŸ‰αž»αž“αŸ’αžαŸ‚ RR αžŠαžΌαž…αž‚αŸ’αž“αžΆαžαŸ’αžšαžΌαžœαž”αžΆαž“αž‚αžΆαŸ†αž‘αŸ’αžšαžαŸ‚αž“αŸ…αž€αŸ’αž“αž»αž„αžαŸ†αž”αž“αŸ‹αž˜αž½αž™αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡αŸ” αžŠαŸ„αž™αž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž“αŸ…αž€αŸ’αž“αž»αž„αžαŸ†αž”αž“αŸ‹αž’αžΆαž˜αŸαžšαž·αž€ αž’αŸ’αž“αž€αž˜αž·αž“αž’αžΆαž…αž”αž„αŸ’αž€αžΎαžαž€αžΆαžšαž…αž˜αŸ’αž›αž„αž€αžΆαžšαž’αžΆαž“αž“αŸ…αž€αŸ’αž“αž»αž„αžαŸ†αž”αž“αŸ‹αž’αŸŠαžΊαžšαŸ‰αž»αž”αžŠαŸ„αž™αž”αŸ’αžšαžΎ Cloud SQL αž‘αŸ„αŸ‡αž”αžΈαž‡αžΆ Postgres αžαŸ’αž›αž½αž“αžœαžΆαž˜αž·αž“αžšαžΆαžšαžΆαŸ†αž„αž’αŸ’αž“αž€αž–αžΈαž€αžΆαžšαž’αŸ’αžœαžΎαžœαžΆαž€αŸαžŠαŸ„αž™αŸ” αž€αžΆαžšαž†αŸ’αž›αžΎαž™αž†αŸ’αž›αž„αž‡αžΆαž˜αž½αž™αž“αž·αž™αŸ„αž‡αž·αžαžšαž”αžŸαŸ‹ Google αž”αžΆαž“αžŠαžΉαž€αž“αžΆαŸ†αž€αž“αŸ’αž›αŸ‚αž„αžŽαžΆ αž αžΎαž™αž”αž‰αŸ’αž…αž”αŸ‹αžŠαŸ„αž™αž€αžΆαžšαžŸαž“αŸ’αž™αžΆαž€αŸ’αž“αž»αž„αž‘αž˜αŸ’αžšαž„αŸ‹ "αž™αžΎαž„αžŠαžΉαž„αž–αžΈαž”αž‰αŸ’αž αžΆ αž αžΎαž™αž€αŸ†αž–αž»αž„αž’αŸ’αžœαžΎαž€αžΆαžšαž›αžΎαžœαžΆ αžαŸ’αž„αŸƒαžŽαžΆαž˜αž½αž™αž”αž‰αŸ’αž αžΆαž“αžΉαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™"αŸ”

αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž™αžΎαž„αžšαžΆαž™αž”αž‰αŸ’αž‡αžΈαžŸαž˜αžαŸ’αžαž—αžΆαž–αžšαž”αžŸαŸ‹ Cloud SQL αžŠαŸ„αž™αžŸαž„αŸ’αžαŸαž” αžœαžΆαž“αžΉαž„αž˜αžΎαž›αž‘αŸ…αžŠαžΌαž…αž“αŸαŸ‡αŸ–

1. αž—αžΆαž–αž’αžΆαž…αžšαž€αž”αžΆαž“αžαŸ’αž–αžŸαŸ‹ (HA):

  • αž“αŸ…αž€αŸ’αž“αž»αž„αžαŸ†αž”αž“αŸ‹αž˜αž½αž™;
  • αžαžΆαž˜αžšαž™αŸˆαž€αžΆαžšαž…αž˜αŸ’αž›αž„αžαžΆαžŸ;
  • αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“ PostgreSQL αž˜αž·αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαžΎαž‘αŸαŸ”
  • αž€αžΆαžšαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αžŠαŸ„αž™αžŸαŸ’αžœαŸαž™αž”αŸ’αžšαžœαžαŸ’αžαž·αž“αž·αž„αžŠαŸ„αž™αžŠαŸƒαž’αžΆαž…αž’αŸ’αžœαžΎαž‘αŸ…αž”αžΆαž“ - αž”αžšαžΆαž‡αŸαž™ / αž”αžšαžΆαž‡αŸαž™;
  • αž“αŸ…αž–αŸαž›αž”αŸ’αžαžΌαžš DBMS αž˜αž·αž“αž’αžΆαž…αž”αŸ’αžšαžΎαž”αžΆαž“αž…αŸ’αžšαžΎαž“αž“αžΆαž‘αžΈαŸ”

2. αž’αžΆαž“αž…αž˜αŸ’αž›αž„ (RR)αŸ–

  • αž“αŸ…αž€αŸ’αž“αž»αž„αžαŸ†αž”αž“αŸ‹αž˜αž½αž™;
  • αžšαž„αŸ‹αž…αžΆαŸ†αž€αŸ’αžαŸ…;
  • αž€αžΆαžšαž…αž˜αŸ’αž›αž„αžŸαŸ’αž‘αŸ’αžšαžΈαž˜ PostgreSQL αŸ”

αž›αžΎαžŸαž–αžΈαž“αŸαŸ‡αž‘αŸ€αžαžŠαžΌαž…αž‘αž˜αŸ’αž›αžΆαž”αŸ‹αž“αŸ…αž–αŸαž›αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž”αž…αŸ’αž…αŸαž€αžœαž·αž‘αŸ’αž™αžΆαž’αŸ’αž“αž€αžαŸ‚αž„αžαŸ‚αž”αŸ’αžšαžˆαž˜αž˜αž»αžαž“αžΉαž„αž˜αž½αž™αž…αŸ†αž“αž½αž“ αž€αžΆαžšαžšαžΉαžαž”αž“αŸ’αžαžΉαž„:

  • αž’αžαž·αžαž·αž‡αž“αž˜αž·αž“αž…αž„αŸ‹αž”αž„αŸ’αž€αžΎαžαž’αž„αŸ’αž‚αž—αžΆαž– αž“αž·αž„αž”αŸ’αžšαžΎ IaaS αž‘αŸ αž›αžΎαž€αž›αŸ‚αž„αžαŸ‚αžαžΆαž˜αžšαž™αŸˆ GKE αŸ”
  • αž’αžαž·αžαž·αž‡αž“αž˜αž·αž“αž…αž„αŸ‹αžŠαžΆαž€αŸ‹αž–αž„αŸ’αžšαžΆαž™αžŸαŸαžœαžΆαžαŸ’αž›αž½αž“αž―αž„ PostgreSQL/MySQL αž‘αŸαŸ”
  • αž‡αžΆαž€αžΆαžšαž”αŸ’αžšαžŸαžΎαžšαžŽαžΆαžŸαŸ‹, αž‡αžΆαž‘αžΌαž‘αŸ…, Google Spanner αž“αžΉαž„αž–αž·αžαž‡αžΆαžŸαž˜αžšαž˜αŸ’αž™αž”αŸ’αžšαžŸαž·αž“αž”αžΎαžœαžΆαž˜αž·αž“αž˜αŸ‚αž“αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžαž˜αŸ’αž›αŸƒαžšαž”αžŸαŸ‹αžœαžΆ, αž‘αŸ„αŸ‡αž‡αžΆαž™αŸ‰αžΆαž„αžŽαžΆ, Django ORM αž˜αž·αž“αž’αžΆαž…αž’αŸ’αžœαžΎαž€αžΆαžšαž‡αžΆαž˜αž½αž™αžœαžΆ, αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžœαžΆαž‡αžΆαžšαžΏαž„αž›αŸ’αž’αŸ”

αžŠαŸ„αž™αž–αž·αž…αžΆαžšαžŽαžΆαž›αžΎαžŸαŸ’αžαžΆαž“αž—αžΆαž–αž“αŸαŸ‡ αž’αžαž·αžαž·αž‡αž“αž”αžΆαž“αž‘αž‘αž½αž›αžŸαŸ†αžŽαž½αžšαž”αž“αŸ’αž‘αžΆαž”αŸ‹αŸ– "αžαžΎβ€‹αž’αŸ’αž“αž€β€‹αž’αžΆαž…β€‹αž’αŸ’αžœαžΎβ€‹αž’αŸ’αžœαžΈβ€‹αžŠαŸ‚αž›β€‹αžŸαŸ’αžšαžŠαŸ€αž„β€‹αž‚αŸ’αž“αžΆβ€‹αž“αŸαŸ‡β€‹αžŠαžΎαž˜αŸ’αž”αžΈβ€‹αž±αŸ’αž™β€‹αžœαžΆβ€‹αžŠαžΌαž…β€‹αž‡αžΆ Google Spanner αž”αŸ‰αž»αž“αŸ’αžαŸ‚β€‹αž€αŸβ€‹αž’αžΆαž…β€‹αž’αŸ’αžœαžΎβ€‹αž€αžΆαžšβ€‹αž‡αžΆαž˜αž½αž™ Django ORM αžŠαŸ‚αžš?"

αž‡αž˜αŸ’αžšαžΎαžŸαžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž›αŸαž 0

αžšαžΏαž„αžŠαŸ†αž”αžΌαž„αžŠαŸ‚αž›αž…αžΌαž›αž˜αž€αž€αŸ’αž“αž»αž„αž‚αŸ†αž“αž·αžαŸ–

  • αžŸαŸ’αž“αžΆαž€αŸ‹αž“αŸ…αž€αŸ’αž“αž»αž„ CloudSQL;
  • αžœαžΆαž“αžΉαž„αž˜αž·αž“αž˜αžΆαž“αž€αžΆαžšαž…αž˜αŸ’αž›αž„αž–αžΈαž‚αŸ’αž“αžΆαžšαžœαžΆαž„αžαŸ†αž”αž“αŸ‹αž€αŸ’αž“αž»αž„αž‘αž˜αŸ’αžšαž„αŸ‹αžŽαžΆαž˜αž½αž™αž‘αžΎαž™αŸ”
  • αž–αŸ’αž™αžΆαž™αžΆαž˜αž—αŸ’αž‡αžΆαž”αŸ‹αž€αžΆαžšαž…αž˜αŸ’αž›αž„αž‘αŸ… Cloud SQL αžŠαŸ‚αž›αž˜αžΆαž“αžŸαŸ’αžšαžΆαž”αŸ‹αžŠαŸ„αž™ PostgreSQL;
  • αž”αžΎαž€αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžœαžαŸ’αžαž» PostgreSQL αž“αŸ…αž€αž“αŸ’αž›αŸ‚αž„αžŽαžΆαž˜αž½αž™ αž“αž·αž„αžŠαŸ„αž™αžšαž”αŸ€αž”αžŽαžΆ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž™αŸ‰αžΆαž„αž αŸ„αž…αžŽαžΆαžŸαŸ‹αž€αž»αŸ†αž”αŸ‰αŸ‡αž˜αŸαŸ”

Alas αžœαžΆαž”αžΆαž“αž”αŸ’αžšαŸ‚αž€αŸ’αž›αžΆαž™αžαžΆαžœαžΆαž˜αž·αž“αž’αžΆαž…αž’αŸ’αžœαžΎαž”αžΆαž“αž‘αŸαž–αŸ’αžšαŸ„αŸ‡αž˜αž·αž“αž˜αžΆαž“αž€αžΆαžšαž…αžΌαž›αž”αŸ’αžšαžΎαž˜αŸ‰αžΆαžŸαŸŠαžΈαž“ (αžœαžΆαž‚αžΊαž“αŸ…αž€αŸ’αž“αž»αž„αž‚αž˜αŸ’αžšαŸ„αž„αž•αŸ’αžŸαŸαž„αž‚αŸ’αž“αžΆαž‘αžΆαŸ†αž„αžŸαŸ’αžšαž»αž„) - pg_hba αž“αž·αž„αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž“αŸ…αž›αžΎαž αžΎαž™αžœαžΆαž€αŸαž˜αž·αž“αž˜αžΆαž“αžŸαž·αž‘αŸ’αž’αž·αž…αžΌαž›αž”αŸ’αžšαžΎαž€αŸ’αžšαŸ„αž˜ superuser αžŠαŸ‚αžšαŸ”

αž‡αž˜αŸ’αžšαžΎαžŸαžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž›αŸαž 1

αž€αŸ’αžšαŸ„αž™β€‹αž–αžΈβ€‹αž€αžΆαžšβ€‹αž‚αž·αžβ€‹αž–αž·αž…αžΆαžšαžŽαžΆβ€‹αž”αž“αŸ’αžαŸ‚αž˜β€‹αž‘αŸ€αž αž“αž·αž„β€‹αž‚αž·αžβ€‹αž–αžΈβ€‹αžŸαŸ’αžαžΆαž“αž—αžΆαž–β€‹αž˜αž»αž“αŸ— αžŠαŸ†αžŽαžΎαžšβ€‹αž“αŸƒβ€‹αž€αžΆαžšβ€‹αž‚αž·αžβ€‹αž”αžΆαž“β€‹αž•αŸ’αž›αžΆαžŸαŸ‹β€‹αž”αŸ’αžŠαžΌαžšβ€‹αžαŸ’αž›αŸ‡β€‹αŸ—αŸ–

  • αž™αžΎαž„αž“αŸ…αžαŸ‚αž–αŸ’αž™αžΆαž™αžΆαž˜αžŸαŸ’αž“αžΆαž€αŸ‹αž“αŸ…αž€αŸ’αž“αž»αž„ CloudSQL αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž™αžΎαž„αž€αŸ†αž–αž»αž„αž”αŸ’αžαžΌαžšαž‘αŸ… MySQL αž–αŸ’αžšαŸ„αŸ‡ Cloud SQL αžŠαŸ„αž™ MySQL αž˜αžΆαž“αž˜αŸαžαžΆαž„αž€αŸ’αžšαŸ… αžŠαŸ‚αž›αŸ–

- αž‚αžΊαž‡αžΆαž”αŸ’αžšαžΌαž€αžŸαŸŠαžΈαžŸαž˜αŸ’αžšαžΆαž”αŸ‹ MySQL αžαžΆαž„αž€αŸ’αžšαŸ…αŸ”
- αž˜αžΎαž›αž‘αŸ…αžŠαžΌαž…αž‡αžΆαž§αž‘αžΆαž αžšαžŽαŸ MySQL αŸ”
- αž”αž„αŸ’αž€αžΎαžβ€‹αž‘αžΎαž„β€‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹β€‹αž€αžΆαžšβ€‹αž•αŸ’αž‘αŸαžšβ€‹αž‘αž·αž“αŸ’αž“αž“αŸαž™β€‹αž–αžΈβ€‹αž–αž–αž€β€‹αž•αŸ’αžŸαŸαž„β€‹αž‘αŸ€αžβ€‹αž¬β€‹αž“αŸ…β€‹αž€αŸ’αž“αž»αž„β€‹αž”αžšαž·αžœαŸαžŽβ€‹αŸ”

αžŠαŸ„αž™αžŸαžΆαžšαž€αžΆαžšαžŠαŸ†αž‘αžΎαž„αž€αžΆαžšαž…αž˜αŸ’αž›αž„ MySQL αž˜αž·αž“αžαž˜αŸ’αžšαžΌαžœαž±αŸ’αž™αž˜αžΆαž“αž€αžΆαžšαž…αžΌαž›αž”αŸ’αžšαžΎαž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž‘αŸ αž‡αžΆαž‚αŸ„αž›αž€αžΆαžšαžŽαŸαž’αŸ’αžœαžΈαž‚αŸ’αžšαž”αŸ‹αž™αŸ‰αžΆαž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžœαžΆαž˜αž·αž“αžŸαŸ’αžαž·αžαžŸαŸ’αžαŸαžš αž“αž·αž„αžšαž’αžΆαž€αŸ‹αžšαž’αž½αž›αžαŸ’αž›αžΆαŸ†αž„αŸ” αž αžΎαž™αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž™αžΎαž„αž”αž“αŸ’αžαž‘αŸ…αž˜αž»αžαž‘αŸ€αž αžœαžΆαž”αžΆαž“αž€αŸ’αž›αžΆαž™αž‘αŸ…αž‡αžΆαž‚αž½αžšαž±αŸ’αž™αžαŸ’αž›αžΆαž…αž‘αžΆαŸ†αž„αžŸαŸ’αžšαž»αž„ αžŠαŸ„αž™αžŸαžΆαžšαžαŸ‚αž™αžΎαž„αžŠαžΆαž€αŸ‹αž–αž„αŸ’αžšαžΆαž™αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž‘αžΆαŸ†αž„αž˜αžΌαž›αž‡αžΆαž˜αž½αž™αž“αžΉαž„ terraform αž αžΎαž™αž—αŸ’αž›αžΆαž˜αŸ—αž“αŸ„αŸ‡αžœαžΆαž”αžΆαž“αž”αŸ’αžšαŸ‚αž€αŸ’αž›αžΆαž™αžαžΆαž˜αŸαžαžΆαž„αž€αŸ’αžšαŸ…αž˜αž·αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž‚αžΆαŸ†αž‘αŸ’αžšαžŠαŸ„αž™ terraform αŸ” αž”αžΆαž‘, Google αž˜αžΆαž“ CLI αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž αŸαžαž»αž•αž›αž˜αž½αž™αž…αŸ†αž“αž½αž“ αž’αŸ’αžœαžΈαž‚αŸ’αžšαž”αŸ‹αž™αŸ‰αžΆαž„αž”αžΆαž“αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž“αŸ…αž‘αžΈαž“αŸαŸ‡ αž αžΎαž™αž“αŸ…αž–αŸαž›αž“αŸ„αŸ‡ - αž–αŸαž›αžαŸ’αž›αŸ‡αžœαžΆαžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαž αž–αŸαž›αžαŸ’αž›αŸ‡αžœαžΆαž˜αž·αž“αž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαŸ” αž”αŸ’αžšαž αŸ‚αž›αž‡αžΆαžŠαŸ„αž™αžŸαžΆαžšαžαŸ‚ CLI αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž‘αžΎαž„αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž•αŸ’αž‘αŸαžšαž‘αž·αž“αŸ’αž“αž“αŸαž™αžαžΆαž„αž€αŸ’αžšαŸ… αž αžΎαž™αž˜αž·αž“αž˜αŸ‚αž“αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž…αž˜αŸ’αž›αž„αž“αŸ„αŸ‡αž‘αŸαŸ”

αžαžΆαž˜αž–αž·αžαž“αŸ…αž…αŸ†αžŽαž»αž…αž“αŸαŸ‡ αžœαžΆαž…αŸ’αž”αžΆαžŸαŸ‹αžŽαžΆαžŸαŸ‹αžαžΆ Cloud SQL αž˜αž·αž“αžŸαž˜αžšαž˜αŸ’αž™αž‘αžΆαž›αŸ‹αžαŸ‚αžŸαŸ„αŸ‡αŸ” αžŠαžΌαž…αžŠαŸ‚αž›αž–αž½αž€αž‚αŸαž“αž·αž™αžΆαž™ αž™αžΎαž„αž”αžΆαž“αž’αŸ’αžœαžΎαž’αŸ’αžœαžΈαž‚αŸ’αžšαž”αŸ‹αž™αŸ‰αžΆαž„αžŠαŸ‚αž›αž™αžΎαž„αž’αžΆαž…αž’αŸ’αžœαžΎαž”αžΆαž“αŸ”

αž‡αž˜αŸ’αžšαžΎαžŸαžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž›αŸαž 2

αžŠαŸ„αž™αžŸαžΆαžšαžœαžΆαž˜αž·αž“αž’αžΆαž…αžŸαŸ’αžαž·αžαž“αŸ…αž€αŸ’αž“αž»αž„αž€αŸ’αžšαž”αžαžŽαŸ’αžŒ Cloud SQL αž™αžΎαž„αž–αŸ’αž™αžΆαž™αžΆαž˜αž”αž„αŸ’αž€αžΎαžαžαž˜αŸ’αžšαžΌαžœαž€αžΆαžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αžŸαž˜αŸ’αžšαž”αžŸαž˜αŸ’αžšαž½αž›αŸ” αžαž˜αŸ’αžšαžΌαžœαž€αžΆαžšαž”αžΆαž“αž”αŸ’αžšαŸ‚αž‘αŸ…αž‡αžΆαžŠαžΌαž…αžαžΆαž„αž€αŸ’αžšαŸ„αž˜:

  • αž’αŸ’αžœαžΎαž€αžΆαžšαž“αŸ…αž€αŸ’αž“αž»αž„ Kubernetes αž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž’αžαž·αž”αžšαž˜αžΆαž“αŸƒαž’αž“αž’αžΆαž“ αž“αž·αž„αžŸαž˜αžαŸ’αžαž—αžΆαž–αžšαž”αžŸαŸ‹ Kubernetes (DCS, ...) αž“αž·αž„ GCP (LB, ...);
  • αž€αž„αŸ’αžœαŸ‡ ballast αž–αžΈ bunch αž“αŸƒαž’αŸ’αžœαžΈαžŠαŸ‚αž›αž˜αž·αž“αž…αžΆαŸ†αž”αžΆαž…αŸ‹αž“αŸ…αž€αŸ’αž“αž»αž„αž–αž–αž€αžŠαžΌαž…αž‡αžΆ HA αž”αŸ’αžšαžΌαž€αžŸαŸŠαžΈ;
  • αžŸαž˜αžαŸ’αžαž—αžΆαž–αž€αŸ’αž“αž»αž„αž€αžΆαžšαžŠαŸ†αžŽαžΎαžšαž€αžΆαžš PostgreSQL ឬ MySQL αž“αŸ…αž€αŸ’αž“αž»αž„αžαŸ†αž”αž“αŸ‹ HA αžŸαŸ†αžαžΆαž“αŸ‹; αž“αŸ…αž€αŸ’αž“αž»αž„αžαŸ†αž”αž“αŸ‹αž•αŸ’αžŸαŸαž„αž‘αŸ€αž - HA αž–αžΈ RR αž“αŸƒαžαŸ†αž”αž“αŸ‹αžŸαŸ†αžαžΆαž“αŸ‹αž”αžΌαž€αž“αžΉαž„αž…αŸ’αž”αžΆαž”αŸ‹αž…αž˜αŸ’αž›αž„αžšαž”αžŸαŸ‹αžœαžΆ (αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž—αžΆαž–αž‡αžΏαž‡αžΆαž€αŸ‹);
  • multi master (αžαŸ’αž‰αž»αŸ†β€‹αž˜αž·αž“β€‹αž…αž„αŸ‹β€‹αž‘αžΆαž€αŸ‹αž‘αž„β€‹αž‚αžΆαžαŸ‹β€‹αž‘αŸ αž”αŸ‰αž»αž“αŸ’αžαŸ‚β€‹αžœαžΆβ€‹αž˜αž·αž“β€‹αžŸαŸ†αžαžΆαž“αŸ‹β€‹αžαŸ’αž›αžΆαŸ†αž„β€‹αžŽαžΆαžŸαŸ‹β€‹)

.
αž‡αžΆαž›αž‘αŸ’αž’αž•αž›αž“αŸƒαž€αžΆαžšαž‘αžΆαž˜αž‘αžΆαžšαž‘αžΆαŸ†αž„αž“αŸαŸ‡ αž‘αŸ†DBMS αžŸαž˜αžšαž˜αŸ’αž™ αž“αž·αž„αž‡αž˜αŸ’αžšαžΎαžŸαž…αž„:

  • MySQL Galera;
  • αžŸαžαŸ’αžœαž€αž“αŸ’αž›αžΆαžDB;
  • αž§αž”αž€αžšαžŽαŸ PostgreSQL

:
- pgpool-II;
β€” Patroni αŸ”

MySQL Galera

αž”αž…αŸ’αž…αŸαž€αžœαž·αž‘αŸ’αž™αžΆ MySQL Galera αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž‘αžΎαž„αžŠαŸ„αž™ Codership αž“αž·αž„αž‡αžΆαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž‡αŸ†αž“αž½αž™αžŸαž˜αŸ’αžšαžΆαž”αŸ‹ InnoDB αŸ” αž›αž€αŸ’αžαžŽαŸˆαž–αž·αžŸαŸαžŸαŸ–

  • αž˜αŸαž…αŸ’αžšαžΎαž“;
  • αž€αžΆαžšαž…αž˜αŸ’αž›αž„αžαžΆαž˜αž€αžΆαž›αž€αŸ†αžŽαžαŸ‹;
  • αž€αžΆαžšαž’αžΆαž“αž–αžΈαžαŸ’αž“αžΆαŸ†αž„αžŽαžΆαž˜αž½αž™;
  • αž€αžαŸ‹αžαŸ’αžšαžΆαž‘αŸ…αžαŸ’αž“αžΆαŸ†αž„αžŽαžΆαž˜αž½αž™;
  • αž™αž“αŸ’αžαž€αžΆαžš HA αžŠαŸ‚αž›αž˜αžΆαž“αžŸαŸ’αžšαžΆαž”αŸ‹;
  • αž˜αžΆαž“αžαžΆαžšαžΆαž„ Helm αž–αžΈ Bitnami αŸ”

αž€αž“αŸ’αž›αžΆαžDB

αž™αŸ„αž„αžαžΆαž˜αž€αžΆαžšαž–αž·αž–αžŽαŸŒαž“αžΆ αžšαžΏαž„αž“αŸαŸ‡αž‚αžΊαž–αž·αžαž‡αžΆαž‚αŸ’αžšαžΆαž”αŸ‹αž”αŸ‚αž€ αž“αž·αž„αž‡αžΆαž‚αž˜αŸ’αžšαŸ„αž„αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αžŠαŸ‚αž›αžŸαžšαžŸαŸαžšαž“αŸ…αž€αŸ’αž“αž»αž„ Go αŸ” αž’αŸ’αž“αž€αž…αžΌαž›αžšαž½αž˜αžŸαŸ†αžαžΆαž“αŸ‹αž‚αžΊ Cockroach Labs (αž”αž„αŸ’αž€αžΎαžαž‘αžΎαž„αžŠαŸ„αž™αž˜αž“αž»αžŸαŸ’αžŸαž˜αž€αž–αžΈ Google) αŸ” DBMS αž‘αŸ†αž“αžΆαž€αŸ‹αž‘αŸ†αž“αž„αž“αŸαŸ‡αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž‘αžΎαž„αžŠαŸ†αž”αžΌαž„αžŠαžΎαž˜αŸ’αž”αžΈαž…αŸ‚αž€αž…αžΆαž™ (αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž€αžΆαžšαž’αŸ’αžœαžΎαž˜αžΆαžαŸ’αžšαžŠαŸ’αž‹αžΆαž“αž•αŸ’αžαŸαž€αž…αŸαž‰αž–αžΈαž”αŸ’αžšαž’αž”αŸ‹) αž“αž·αž„αž˜αžΆαž“αž—αžΆαž–αž’αžαŸ‹αž’αŸ’αž˜αžαŸ‹αž…αŸ†αž–αŸ„αŸ‡αž€αŸ†αž αž»αžŸαŸ” αž’αŸ’αž“αž€αž“αž·αž–αž“αŸ’αž’αžšαž”αžŸαŸ‹αžαŸ’αž›αž½αž“αž˜αž€αž–αžΈαž€αŸ’αžšαž»αž˜αž αŸŠαž»αž“αž”αžΆαž“αž‚αžΌαžŸαž”αž‰αŸ’αž‡αžΆαž€αŸ‹αž–αžΈαž‚αŸ„αž›αžŠαŸ…αž“αŸƒ "αž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž—αžΆαž–αžŸαž˜αŸ’αž”αžΌαžšαž”αŸ‚αž”αž“αŸƒαž˜αž»αžαž„αžΆαžš SQL αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž›αž‘αŸ’αž’αž—αžΆαž–αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž•αŸ’αžŠαŸαž€αžŠαŸ‚αž›αžŸαŸŠαžΆαŸ†αž“αžΉαž„αžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™ NoSQL"αŸ”

αž”αŸ’αžšαžΆαž€αŸ‹αžšαž„αŸ’αžœαžΆαž“αŸ‹αžŠαŸαž›αŸ’αž’αž˜αž½αž™αž‚αžΊαž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž–αž·αž’αžΈαž€αžΆαžšαž€αžΆαžšαžαž—αŸ’αž‡αžΆαž”αŸ‹αž€αŸ’αžšαŸ„αž™αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαŸ”

Pgpool

αž“αŸαŸ‡β€‹αž‡αžΆβ€‹αž€αž˜αŸ’αž˜αžœαž·αž’αžΈβ€‹αž”αž“αŸ’αžαŸ‚αž˜β€‹αž‘αŸ…β€‹αž€αžΆαž“αŸ‹ PostgreSQL αžαžΆαž˜αž–αž·αžβ€‹αž‡αžΆβ€‹αž’αž„αŸ’αž‚αž—αžΆαž–β€‹αžαŸ’αž˜αžΈβ€‹αžŠαŸ‚αž›β€‹αž‘αž‘αž½αž›β€‹αž”αž“αŸ’αž‘αž»αž€β€‹αž›αžΎβ€‹αž€αžΆαžšβ€‹αžαž—αŸ’αž‡αžΆαž”αŸ‹β€‹αž‘αžΆαŸ†αž„αž’αžŸαŸ‹ αž“αž·αž„β€‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšβ€‹αž–αž½αž€αžœαžΆαŸ” αžœαžΆαž˜αžΆαž“αž§αž”αž€αžšαžŽαŸαž•αŸ’αž‘αž»αž€αžαž»αž›αŸ’αž™αž—αžΆαž– αž“αž·αž„αž§αž”αž€αžšαžŽαŸαž‰αŸ‚αž€αžšαž”αžŸαŸ‹αžœαžΆ αžŠαŸ‚αž›αž˜αžΆαž“αž’αžΆαž‡αŸ’αž‰αžΆαž”αŸαžŽαŸ’αžŽαž€αŸ’αžšαŸ„αž˜αž’αžΆαž‡αŸ’αž‰αžΆαž”αŸαžŽαŸ’αžŽ BSD αŸ” αžœαžΆαž•αŸ’αžαž›αŸ‹αž±αž€αžΆαžŸαž…αŸ’αžšαžΎαž“ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž˜αžΎαž›αž‘αŸ…αž‚αž½αžšαž±αŸ’αž™αžαŸ’αž›αžΆαž…αž”αž“αŸ’αžαž·αž… αž–αžΈαž–αŸ’αžšαŸ„αŸ‡αžœαžαŸ’αžαž˜αžΆαž“αžšαž”αžŸαŸ‹αž’αž„αŸ’αž‚αž—αžΆαž–αžαŸ’αž˜αžΈαž’αžΆαž…αž€αŸ’αž›αžΆαž™αž‡αžΆαž”αŸ’αžšαž—αž–αž“αŸƒαžŠαŸ†αžŽαžΎαžšαž•αŸ’αžŸαž„αž–αŸ’αžšαŸαž„αž”αž“αŸ’αžαŸ‚αž˜αž˜αž½αž™αž…αŸ†αž“αž½αž“αŸ”

αž”αŸ‰αžΆαžαžΌαž“αžΈ

αž“αŸαŸ‡β€‹αž‡αžΆβ€‹αžšαžΏαž„β€‹αž…αž»αž„β€‹αž€αŸ’αžšαŸ„αž™β€‹αžŠαŸ‚αž›β€‹αž—αŸ’αž“αŸ‚αž€β€‹αžαŸ’αž‰αž»αŸ†β€‹αž”αžΆαž“β€‹αž’αŸ’αž›αžΆαž€αŸ‹β€‹αž…αž»αŸ‡ αž αžΎαž™β€‹αžŠαžΌαž…β€‹αžŠαŸ‚αž›β€‹αžœαžΆβ€‹αž”αžΆαž“β€‹αž…αŸαž‰β€‹αž˜αž€ αž˜αž·αž“αž˜αŸ‚αž“β€‹αž₯αžβ€‹αž”αŸ’αžšαž™αŸ„αž‡αž“αŸβ€‹αž‘αŸαŸ” Patroni αž‚αžΊαž‡αžΆαž§αž”αž€αžšαžŽαŸαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž  αžŠαŸ‚αž›αžŸαŸ†αžαžΆαž“αŸ‹αž‚αžΊ Python daemon αžŠαŸ‚αž›αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž’αŸ’αž“αž€αžšαž€αŸ’αžŸαžΆαž…αž„αŸ’αž€αŸ„αž˜ PostgreSQL αžŠαŸ„αž™αžŸαŸ’αžœαŸαž™αž”αŸ’αžšαžœαžαŸ’αžαž·αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž”αŸ’αžšαž—αŸαž‘αž•αŸ’αžŸαŸαž„αŸ—αž“αŸƒαž€αžΆαžšαž…αž˜αŸ’αž›αž„ αž“αž·αž„αž€αžΆαžšαž”αŸ’αžαžΌαžšαžαž½αž“αžΆαž‘αžΈαžŠαŸ„αž™αžŸαŸ’αžœαŸαž™αž”αŸ’αžšαžœαžαŸ’αžαž·αŸ” αžšαžΏαž„αž“αŸαŸ‡αž”αžΆαž“αž”αŸ’αžšαŸ‚αž‘αŸ…αž‡αžΆαž‚αž½αžšαž±αŸ’αž™αž…αžΆαž”αŸ‹αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸαžαŸ’αž›αžΆαŸ†αž„αžŽαžΆαžŸαŸ‹αž–αŸ’αžšαŸ„αŸ‡αžœαžΆαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž™αŸ‰αžΆαž„αž›αŸ’αž’αž‡αžΆαž˜αž½αž™ cuber αž“αž·αž„αž˜αž·αž“αžŽαŸ‚αž“αžΆαŸ†αž’αž„αŸ’αž‚αž—αžΆαž–αžαŸ’αž˜αžΈαžŽαžΆαž˜αž½αž™αž‘αžΎαž™αŸ”

αžαžΎαž’αŸ’αž“αž€αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž’αŸ’αžœαžΈαž“αŸ…αž‘αžΈαž”αž‰αŸ’αž…αž”αŸ‹?

αž‡αž˜αŸ’αžšαžΎαžŸαž˜αž·αž“αž„αžΆαž™αžŸαŸ’αžšαž½αž›αž‘αŸαŸ–

  1. αž€αž“αŸ’αž›αžΆαžDB - αž—αŸ’αž›αžΎαž„αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž„αž„αžΉαž;
  2. MySQL Galera - αž€αŸαž˜αž·αž“αž’αžΆαž€αŸ’αžšαž€αŸ‹αžŠαŸ‚αžš αžœαžΆαžαŸ’αžšαžΌαžœαž”αžΆαž“αž‚αŸαž”αŸ’αžšαžΎαž“αŸ…αž€αž“αŸ’αž›αŸ‚αž„αž‡αžΆαž…αŸ’αžšαžΎαž“ αž”αŸ‰αž»αž“αŸ’αžαŸ‚ MySQL;
  3. Pgpool - αž’αž„αŸ’αž‚αž—αžΆαž–αžŠαŸ‚αž›αž˜αž·αž“αž…αžΆαŸ†αž”αžΆαž…αŸ‹αž‡αžΆαž…αŸ’αžšαžΎαž“ αž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž‡αžΆαž˜αž½αž™αž–αž–αž€ αž“αž·αž„ K8s αŸ”
  4. αž”αŸ‰αžΆαžαžΌαž“αžΈ - αž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αžŠαŸαž›αŸ’αž’αž‡αžΆαž˜αž½αž™ K8s αž‚αŸ’αž˜αžΆαž“αž’αž„αŸ’αž‚αž—αžΆαž–αžŠαŸ‚αž›αž˜αž·αž“αž…αžΆαŸ†αž”αžΆαž…αŸ‹ αžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž™αŸ‰αžΆαž„αž›αŸ’αž’αž‡αžΆαž˜αž½αž™ GCP LB αŸ”

αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž‡αž˜αŸ’αžšαžΎαžŸαž”αžΆαž“αž’αŸ’αž›αžΆαž€αŸ‹αž›αžΎ Patroni αŸ”

αž€αžΆαžšαžšαž€αžƒαžΎαž‰

αžœαžΆαžŠαž›αŸ‹αž–αŸαž›αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαžŸαžšαž»αž”αžŠαŸ„αž™αžŸαž„αŸ’αžαŸαž”αŸ” αž”αžΆαž‘ αž–αž·αž—αž–αž›αŸ„αž€αž“αŸƒαž αŸαžŠαŸ’αž‹αžΆαžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’ IT αž”αžΆαž“αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž™αŸ‰αžΆαž„αžαŸ’αž›αžΆαŸ†αž„ αž αžΎαž™αž“αŸαŸ‡αž‚αŸ’αžšαžΆαž“αŸ‹αžαŸ‚αž‡αžΆαž€αžΆαžšαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡αŸ” αž αžΎαž™αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž–αžΈαž˜αž»αž“αž–αž–αž€αž‚αŸ’αžšαžΆαž“αŸ‹αžαŸ‚αž‡αžΆαž”αŸ’αžšαž—αŸαž‘αž αŸαžŠαŸ’αž‹αžΆαžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž•αŸ’αžŸαŸαž„αž‘αŸ€αžαž“αŸ„αŸ‡ αž₯αž‘αžΌαžœαž“αŸαŸ‡αž’αŸ’αžœαžΈαŸ—αž‚αžΊαžαž»αžŸαž‚αŸ’αž“αžΆαŸ” αž‡αžΆαž„αž“αŸαŸ‡αž‘αŸ…αž‘αŸ€αž αž€αžΆαžšαž…αŸ’αž“αŸƒαž”αŸ’αžšαžŒαž·αžαž“αŸ…αž€αŸ’αž“αž»αž„αž–αž–αž€αž€αŸ†αž–αž»αž„αž›αŸαž…αž‘αžΎαž„αž₯αžαžˆαž”αŸ‹αžˆαžš αž–αž½αž€αž‚αŸαž“αžΉαž„αž›αŸαž…αž‘αžΎαž„ αž αžΎαž™αž”αŸ’αžšαž αŸ‚αž›αž‡αžΆαž–αž½αž€αž‚αŸαž“αžΉαž„αž›αŸαž…αž‘αžΎαž„αžαŸ‚αž“αŸ…αž€αŸ’αž“αž»αž„αž–αž–αž€αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡ αž αžΎαž™αž“αŸ…αž–αŸαž›αž“αŸ„αŸ‡αžŠαŸ„αž™αž€αžΆαžšαžαž·αžαžαŸ†αž”αŸ’αžšαžΉαž„αž”αŸ’αžšαŸ‚αž„αž“αŸƒαž€αžΆαžšαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜ αžαžΎαž–αž½αž€αž‚αŸαž“αžΉαž„αž•αŸ’αž‘αŸαžšαž‘αŸ…αž€αž“αŸ’αž›αŸ‚αž„αž’αŸ’αžœαžΎαž€αžΆαžšαž¬αž’αžαŸ‹αŸ”

αžŸαž˜αŸ’αžšαžΆαž”αŸ‹ SQL, SQL αž“αžΉαž„αžšαžŸαŸ‹αž“αŸ…αŸ” αž“αŸαŸ‡αž˜αžΆαž“αž“αŸαž™αžαžΆαž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαžŸαŸ’αž‚αžΆαž›αŸ‹ PostgreSQL αž“αž·αž„ MySQL αž αžΎαž™αž’αžΆαž…αž’αŸ’αžœαžΎαž€αžΆαžšαž‡αžΆαž˜αž½αž™αž–αž½αž€αž‚αŸαž”αžΆαž“ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž’αŸ’αžœαžΈαžŠαŸ‚αž›αžŸαŸ†αžαžΆαž“αŸ‹αž‡αžΆαž„αž“αŸαŸ‡αž‘αŸ…αž‘αŸ€αžαž“αŸ„αŸ‡αž‚αžΊαž’αžΆαž…αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžœαžΆαž”αžΆαž“αžαŸ’αžšαžΉαž˜αžαŸ’αžšαžΌαžœαŸ”

αž”αŸ’αžšαž—αž–: www.habr.com

αž‘αž·αž‰αž€αžΆαžšαž”αž„αŸ’αž αŸ„αŸ‡αžŠαŸ‚αž›αž’αžΆαž…αž‘αž»αž€αž…αž·αžαŸ’αžαž”αžΆαž“αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž‚αŸαž αž‘αŸ†αž–αŸαžšαžŠαŸ‚αž›αž˜αžΆαž“αž€αžΆαžšαž€αžΆαžšαž–αžΆαžš DDoS, αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž˜αŸ VPS VDS πŸ”₯ αž‘αž·αž‰αžŸαŸαžœαžΆαž”αž„αŸ’αž αŸ„αŸ‡αž‚αŸαž αž‘αŸ†αž–αŸαžšαžŠαŸ‚αž›αž’αžΆαž…αž‘αž»αž€αž…αž·αžαŸ’αžαž”αžΆαž“αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž€αžΆαžšαž€αžΆαžšαž–αžΆαžš DDoS αž“αž·αž„αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž˜αŸ VPS VDS | ProHoster