ΠΡΠΈΠ²Π΅Ρ, Ρ
Π°Π±ΡΠΎΠ²ΡΠ°Π½Π΅. Π‘Π΅Π³ΠΎΠ΄Π½Ρ ΡΡΠ°ΡΡΡΡΡ Π·Π°Π½ΡΡΠΈΡ Π² ΠΏΠ΅ΡΠ²ΠΎΠΉ Π³ΡΡΠΏΠΏΠ΅ ΠΊΡΡΡΠ°
Π
ΠΠ΅Π±ΠΈΠ½Π°Ρ ΠΏΡΠΎΠ²ΡΠ»
ΠΠΎΠ³Π΄Π° Π΄Π΅ΡΠ΅Π²ΡΡ Π±ΡΠ»ΠΈ ΠΌΠ°Π»Π΅Π½ΡΠΊΠΈΠΌΠΈβ¦
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° Π΄Π°Π²Π°ΠΉΡΠ΅ Π²ΡΠΏΠΎΠΌΠ½ΠΈΠΌ, ΠΊΠ°ΠΊ Π½Π°ΡΠΈΠ½Π°Π»ΡΡ Π²ΡΠ±ΠΎΡ Π‘Π£ΠΠ Π² ΠΊΠΎΠ½ΡΠ΅ ΠΏΡΠΎΡΠ»ΠΎΠ³ΠΎ Π²Π΅ΠΊΠ°. ΠΠΏΡΠΎΡΠ΅ΠΌ, ΡΡΠΎ Π½Π΅ ΡΠΎΡΡΠ°Π²ΠΈΡ ΡΡΡΠ΄Π°, Π²Π΅Π΄Ρ Π²ΡΠ±ΠΎΡ Π‘Π£ΠΠ Π² ΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½Π° Π½Π°ΡΠΈΠ½Π°Π»ΡΡ ΠΈ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Π»ΡΡ Oracle.
Π ΠΊΠΎΠ½ΡΠ΅ 90-Ρ
β Π½Π°ΡΠ°Π»Π΅ Π½ΡΠ»Π΅Π²ΡΡ
, ΠΎΡΠΎΠ±ΠΎΠ³ΠΎ Π²ΡΠ±ΠΎΡΠ°, ΠΏΠΎ ΡΡΡΠΈ, Π½Π΅ Π±ΡΠ»ΠΎ, Π΅ΡΠ»ΠΈ Π³ΠΎΠ²ΠΎΡΠΈΡΡ ΠΏΡΠΎ ΠΏΡΠΎΠΌΡΡΠ»Π΅Π½Π½ΡΠ΅ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΡΠ΅ΠΌΡΠ΅ ΠΠ. ΠΠ°, ΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°Π»ΠΈ IBM DB2, Sybase ΠΈ Π΅ΡΡ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΡΠ²Π»ΡΠ»ΠΈΡΡ ΠΈ ΠΈΡΡΠ΅Π·Π°Π»ΠΈ, Π½ΠΎ Π² ΠΎΠ±ΡΠ΅ΠΌ ΠΈ ΡΠ΅Π»ΠΎΠΌ ΠΎΠ½ΠΈ Π±ΡΠ»ΠΈ Π½Π΅ ΡΠ°ΠΊ Π·Π°ΠΌΠ΅ΡΠ½Ρ Π½Π° ΡΠΎΠ½Π΅ Oracle. Π‘ΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ, Π½Π°Π²ΡΠΊΠΈ ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠΎΠ² ΡΠ΅Ρ
Π²ΡΠ΅ΠΌΡΠ½ Π±ΡΠ»ΠΈ ΡΠ°ΠΊ ΠΈΠ»ΠΈ ΠΈΠ½Π°ΡΠ΅ Π·Π°Π²ΡΠ·Π°Π½Ρ Π½Π° ΡΠΎ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΉ Π²ΡΠ±ΠΎΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°Π».
Oracle DBA Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΠ» ΡΠΌΠ΅ΡΡ:
- ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ Oracle Server ΠΈΠ· Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π°;
- Π½Π°ΡΡΡΠ°ΠΈΠ²Π°ΡΡ Oracle Server:
- init.ora;
- listener.ora;
β ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ:
- ΡΠ°Π±Π»ΠΈΡΠ½ΡΠ΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π°;
- ΡΡ Π΅ΠΌΡ;
- ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ;
β Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎΠ΅ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅;
β ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³;
β Π±ΠΎΡΠΎΡΡΡΡ Ρ Π½Π΅ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΌΠΈ Π·Π°ΠΏΡΠΎΡΠ°ΠΌΠΈ.
ΠΡΠΈ ΡΡΠΎΠΌ ΠΎΡ Oracle DBA ΠΎΡΠΎΠ±ΠΎ Π½Π΅ ΡΡΠ΅Π±ΠΎΠ²Π°Π»ΠΎΡΡ:
- ΡΠΌΠ΅ΡΡ Π²ΡΠ±ΠΈΡΠ°ΡΡ ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΡΡ Π‘Π£ΠΠ ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΡΡ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π΄Π°Π½Π½ΡΡ ;
- ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡ Π²ΡΡΠΎΠΊΡΡ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΡ ΠΈ Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΡΠ΅ΠΌΠΎΡΡΡ (ΡΡΠΎ Π½Π΅ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ» Π²ΠΎΠΏΡΠΎΡ DBA);
- Ρ ΠΎΡΠΎΡΠΎ Π·Π½Π°ΡΡ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠ½ΡΡ ΠΎΠ±Π»Π°ΡΡΡ, ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ, ΠΏΡΠΈΠΊΠ»Π°Π΄Π½ΡΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ, ΠΠ‘;
- Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π·Π°Π³ΡΡΠ·ΠΊΡ ΠΈ Π²ΡΠ³ΡΡΠ·ΠΊΡ Π΄Π°Π½Π½ΡΡ , ΠΌΠΈΠ³ΡΠ°ΡΠΈΡ Π΄Π°Π½Π½ΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π·Π½ΡΠΌΠΈ Π‘Π£ΠΠ.
Π ΠΎΠ±ΡΠ΅ΠΌ, Π΅ΡΠ»ΠΈ Π³ΠΎΠ²ΠΎΡΠΈΡΡ ΠΎ Π²ΡΠ±ΠΎΡΠ΅ Π² ΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½Π°, ΡΠΎ ΠΎΠ½ Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ Π²ΡΠ±ΠΎΡ Π² ΡΠΎΠ²Π΅ΡΡΠΊΠΎΠΌ ΠΌΠ°Π³Π°Π·ΠΈΠ½Π΅ Π² ΠΊΠΎΠ½ΡΠ΅ 80-Ρ :
ΠΠ°ΡΠ΅ Π²ΡΠ΅ΠΌΡ
Π‘ ΡΠ΅Ρ ΠΏΠΎΡ, ΡΠ°Π·ΡΠΌΠ΅Π΅ΡΡΡ, Π΄Π΅ΡΠ΅Π²ΡΡ ΠΏΠΎΠ΄ΡΠΎΡΠ»ΠΈ, ΠΌΠΈΡ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΡΡ, ΠΈ ΡΡΠ°Π»ΠΎ ΠΊΠ°ΠΊ-ΡΠΎ ΡΠ°ΠΊ:
ΠΠ·ΠΌΠ΅Π½ΠΈΠ»ΡΡ ΠΈ ΡΡΠ½ΠΎΠΊ Π‘Π£ΠΠ, ΡΡΠΎ Ρ
ΠΎΡΠΎΡΠΎ Π²ΠΈΠ΄Π½ΠΎ ΠΏΠΎ ΡΠ²Π΅ΠΆΠ΅ΠΌΡ Π΄ΠΎΠΊΠ»Π°Π΄Ρ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Gartner:
Π Π·Π΄Π΅ΡΡ Π½Π΅Π»ΡΠ·Ρ Π½Π΅ ΠΎΡΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ ΡΠ²ΠΎΡ Π½ΠΈΡΡ Π·Π°Π½ΡΠ»ΠΈ ΠΎΠ±Π»Π°ΠΊΠ°, ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΡΡΡ ΠΊΠΎΡΠΎΡΡΡ
ΡΠ°ΡΡΡΡ. ΠΡΠ»ΠΈ ΠΏΠΎΡΠΈΡΠ°ΡΡ ΡΠΎΡ ΠΆΠ΅ ΠΎΡΡΡΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Gartner, ΠΌΡ ΡΠ²ΠΈΠ΄ΠΈΠΌ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π²ΡΠ²ΠΎΠ΄Ρ:
- ΠΠ½ΠΎΠ³ΠΈΠ΅ Π·Π°ΠΊΠ°Π·ΡΠΈΠΊΠΈ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π½Π° ΠΏΡΡΠΈ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² ΠΎΠ±Π»Π°ΠΊΠΎ.
- ΠΠΎΠ²ΡΠ΅ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΡΠ½Π°ΡΠ°Π»Π° ΠΏΠΎΡΠ²Π»ΡΡΡΡΡ Π² ΠΎΠ±Π»Π°ΠΊΠ΅ ΠΈ Π½Π΅ ΡΠ°ΠΊΡ, ΡΡΠΎ ΠΎΠ½ΠΈ Π²ΠΎΠΎΠ±ΡΠ΅ ΠΊΠΎΠ³Π΄Π°-Π½ΠΈΠ±ΡΠ΄Ρ ΠΏΠ΅ΡΠ΅Π΅Π΄ΡΡ Π² Π½Π΅ΠΎΠ±Π»Π°ΡΠ½ΡΡ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ.
- Π‘ΡΠ°Π»Π° ΠΏΡΠΈΠ²ΡΡΠ½ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»Ρ ΡΠ΅Π½ΠΎΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ pay-as-you-go. ΠΡΠ΅ ΠΆΠ΅Π»Π°ΡΡ ΠΏΠ»Π°ΡΠΈΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π·Π° ΡΠΎ, ΡΠ΅ΠΌ ΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ, ΠΈ ΡΡΠΎ Π΄Π°ΠΆΠ΅ ΡΠΆΠ΅ Π½Π΅ ΡΡΠ΅Π½Π΄, Π° ΠΏΡΠΎΡΡΠΎ ΠΊΠΎΠ½ΡΡΠ°ΡΠ°ΡΠΈΡ ΡΠ°ΠΊΡΠ°.
Π§ΡΠΎ ΡΠ΅ΠΉΡΠ°Ρ?
Π‘Π΅Π³ΠΎΠ΄Π½Ρ Π²ΡΠ΅ ΠΌΡ Π² ΠΎΠ±Π»Π°ΠΊΠ΅. Π ΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Ρ Π½Π°Ρ ΠΏΠΎΡΠ²Π»ΡΡΡΡΡ, β ΡΡΠΎ Π²ΠΎΠΏΡΠΎΡΡ Π²ΡΠ±ΠΎΡΠ°. Π ΠΎΠ½ ΠΎΠ³ΡΠΎΠΌΠ½ΡΠΉ, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π³ΠΎΠ²ΠΎΡΠΈΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΎ Π²ΡΠ±ΠΎΡ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ Π‘Π£ΠΠ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ On-premises. Π Π΅ΡΡ Ρ Π½Π°Ρ Π΅ΡΡΡ managed services ΠΈ SaaS. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π²ΡΠ±ΠΎΡ Ρ ΠΊΠ°ΠΆΠ΄ΡΠΌ Π³ΠΎΠ΄ΠΎΠΌ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠ»ΠΎΠΆΠ½ΡΠ΅ΡΡΡ.
ΠΠ°ΡΡΠ΄Ρ Ρ Π²ΠΎΠΏΡΠΎΡΠ°ΠΌΠΈ Π²ΡΠ±ΠΎΡΠ°, Π΄Π΅ΠΉΡΡΠ²ΡΡΡ ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ°ΠΊΡΠΎΡΡ:
- ΡΠ΅Π½Π°. ΠΠ½ΠΎΠ³ΠΈΠ΅ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΏΠΎ-ΠΏΡΠ΅ΠΆΠ½Π΅ΠΌΡ ΡΡΠΎΡΡ Π΄Π΅Π½Π΅Π³;
- Π½Π°Π²ΡΠΊΠΈ. ΠΡΠ»ΠΈ ΠΌΡ Π³ΠΎΠ²ΠΎΡΠΈΠΌ ΠΎ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠΌ ΠΠ, ΡΠΎ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ Π²ΠΎΠΏΡΠΎΡ Π½Π°Π²ΡΠΊΠΎΠ², Ρ. ΠΊ. Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΡΠΉ ΡΠΎΡΡ ΡΡΠ΅Π±ΡΠ΅Ρ ΠΎΡ Π»ΡΠ΄Π΅ΠΉ, Π΅Π³ΠΎ ΡΠ°Π·Π²ΠΎΡΠ°ΡΠΈΠ²Π°ΡΡΠΈΡ ΠΈ ΡΠΊΡΠΏΠ»ΡΠ°ΡΠΈΡΡΡΡΠΈΡ , Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠ΅ΡΠ΅Π½ΡΠ½ΠΎΡΡΠΈ;
- ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π». ΠΠ΅ Π²ΡΠ΅ ΡΠ΅ΡΠ²ΠΈΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π΄ΠΎΡΡΡΠΏΠ½Ρ Π² ΠΎΠ±Π»Π°ΠΊΠ΅ ΠΈ ΠΏΠΎΡΡΡΠΎΠ΅Π½Ρ, ΡΠΊΠ°ΠΆΠ΅ΠΌ, Π΄Π°ΠΆΠ΅ Π½Π° Π±Π°Π·Π΅ ΡΠΎΠ³ΠΎ ΠΆΠ΅ Postgres, ΠΎΠ±Π»Π°Π΄Π°ΡΡ ΡΠ΅ΠΌΠΈ ΠΆΠ΅ ΡΠΈΡΠ°ΠΌΠΈ, ΡΡΠΎ ΠΈ Postgres On-premises. ΠΡΠΎ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΠΉ ΡΠ°ΠΊΡΠΎΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π½ΡΠΆΠ½ΠΎ Π·Π½Π°ΡΡ ΠΈ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ. ΠΠ°Π»ΠΎ ΡΠΎΠ³ΠΎ, ΡΡΠΎΡ ΡΠ°ΠΊΡΠΎΡ ΠΏΡΠΈΠΎΠ±ΡΠ΅ΡΠ°Π΅Ρ Π±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΡΠ΅ΠΌ Π·Π½Π°Π½ΠΈΠ΅ ΠΊΠ°ΠΊΠΈΡ -ΡΠΎ ΡΠΊΡΡΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ Π²Π·ΡΡΠΎΠΉ Π‘Π£ΠΠ.
Π§ΡΠΎ ΠΆΠ΄ΡΡ ΡΠ΅ΠΉΡΠ°Ρ ΠΎΡ DA/DE:
- Ρ ΠΎΡΠΎΡΠ΅Π³ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠ½ΠΎΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ ΠΈ ΠΏΡΠΈΠΊΠ»Π°Π΄Π½ΠΎΠΉ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ;
- ΡΠΌΠ΅Π½ΠΈΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ Π²ΡΠ±ΠΈΡΠ°ΡΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΡΡ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡ Π‘Π£ΠΠ Ρ ΡΡΡΡΠΎΠΌ ΠΏΠΎΡΡΠ°Π²Π»Π΅Π½Π½ΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ;
- ΡΠΌΠ΅Π½ΠΈΡ ΠΏΠΎΠ΄Π±ΠΈΡΠ°ΡΡ ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΠΌΠ΅ΡΠΎΠ΄ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠΉ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅ ΠΈΠΌΠ΅ΡΡΠΈΡ ΡΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ;
- ΡΠΌΠ΅Π½ΠΈΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΏΠ΅ΡΠ΅Π½ΠΎΡ ΠΈ ΠΌΠΈΠ³ΡΠ°ΡΠΈΡ Π΄Π°Π½Π½ΡΡ ;
- ΡΠΌΠ΅Π½ΠΈΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡ ΠΈ ΡΠΊΡΠΏΠ»ΡΠ°ΡΠΈΡΠΎΠ²Π°ΡΡ Π²ΡΠ±ΡΠ°Π½Π½ΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ.
ΠΠΈΠΆΠ΅ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ Π½Π° Π±Π°Π·Π΅ GCP Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΠ΅Ρ, ΠΊΠ°ΠΊ ΡΡΡΡΠΎΠ΅Π½ Π²ΡΠ±ΠΎΡ ΡΠΎΠΉ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΡΠ°Π±ΠΎΡΡ Ρ Π΄Π°Π½Π½ΡΠΌΠΈ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΠΈΡ ΡΡΡΡΠΊΡΡΡΡ:
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ Π² ΡΡ
Π΅ΠΌΠ΅ ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ PostgreSQL, Π° Π²ΡΡ ΠΏΠΎΡΠΎΠΌΡ, ΡΡΠΎ ΠΎΠ½ ΠΏΡΡΡΠ΅ΡΡΡ ΠΏΠΎΠ΄ ΡΠ΅ΡΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΠ΅ΠΉ Cloud SQL. Π ΠΊΠΎΠ³Π΄Π° ΠΌΡ ΠΏΠΎΠΏΠ°Π΄Π°Π΅ΠΌ Π² Cloud SQL, Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΎΠΏΡΡΡ ΡΠ΄Π΅Π»Π°ΡΡ Π²ΡΠ±ΠΎΡ:
Π‘Π»Π΅Π΄ΡΠ΅Ρ Π·Π°ΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ ΡΡΠΎΡ Π²ΡΠ±ΠΎΡ Π½Π΅ Π²ΡΠ΅Π³Π΄Π° ΠΏΠΎΠ½ΡΡΠ΅Π½, ΠΏΠΎΡΡΠΎΠΌΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π·Π°ΡΠ°ΡΡΡΡ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΡΡΡΡΡ ΠΈΠ½ΡΡΠΈΡΠΈΠ΅ΠΉ.
ΠΡΠΎΠ³ΠΎ:
- Π§Π΅ΠΌ Π΄Π°Π»ΡΡΠ΅, ΡΠ΅ΠΌ Π°ΠΊΡΡΠ°Π»ΡΠ½Π΅Π΅ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ Π²ΠΎΠΏΡΠΎΡ Π²ΡΠ±ΠΎΡΠ°. Π Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΡΠΌΠΎΡΡΠ΅ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° GCP, managed services ΠΈ SaaS, ΡΠΎ ΠΊΠ°ΠΊΠΎΠ΅-ΡΠΎ ΡΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅ Π Π‘Π£ΠΠ ΠΏΠΎΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΠΈΡΡ Π½Π° 4-ΠΌ ΡΠ°Π³Π΅ (Π° ΡΠ°ΠΌ Spanner ΡΡΠ΄ΠΎΠΌ). ΠΠ»ΡΡ, Π²ΡΠ±ΠΎΡ PostgreSQL ΠΏΠΎΡΠ²Π»ΡΠ΅ΡΡΡ Π²ΠΎΠΎΠ±ΡΠ΅ Π½Π° 5-ΠΌ ΡΠ°Π³Π΅, Π° ΡΡΠ΄ΠΎΠΌ Π΅ΡΡ MySQL ΠΈ SQL Server, ΡΠΎ Π΅ΡΡΡ Π²ΡΠ΅Π³ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ, Π° Π²ΡΠ±ΠΈΡΠ°ΡΡ Π½Π°Π΄ΠΎ.
- ΠΠ΅Π»ΡΠ·Ρ Π·Π°Π±ΡΠ²Π°ΡΡ ΠΈ ΠΏΡΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ Π½Π° ΡΠΎΠ½Π΅ ΡΠΎΠ±Π»Π°Π·Π½ΠΎΠ². Π ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ, Π²ΡΠ΅ Ρ ΠΎΡΡΡ Spanner, Π½ΠΎ ΠΎΠ½ Π΄ΠΎΡΠΎΠ³ΠΎΠΉ. Π ΠΈΡΠΎΠ³Π΅ ΡΠΈΠΏΠΎΠ²ΠΎΠΉ Π·Π°ΠΏΡΠΎΡ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ°ΠΊ: Β«Π‘Π΄Π΅Π»Π°ΠΉΡΠ΅ Π½Π°ΠΌ, ΠΏΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, Spanner Π½ΠΎ Π·Π° ΡΠ΅Π½Ρ Cloud SQL, Π½Ρ Π²Ρ ΠΆΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΠΈΠΎΠ½Π°Π»Ρ!Β»
Π ΡΡΠΎ Π΄Π΅Π»Π°ΡΡ-ΡΠΎ?
ΠΠ΅ ΠΏΡΠ΅ΡΠ΅Π½Π΄ΡΡ Π½Π° ΠΈΡΡΠΈΠ½Ρ Π² ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ ΠΈΠ½ΡΡΠ°Π½ΡΠΈΠΈ, ΡΠΊΠ°ΠΆΠ΅ΠΌ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
ΠΡΠΆΠ½ΠΎ ΠΌΠ΅Π½ΡΡΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΠΊ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ:
- ΡΡΠΈΡΡ, ΠΊΠ°ΠΊ ΡΡΠΈΠ»ΠΈ ΡΠ°Π½ΡΡΠ΅ DBA, Π½Π΅Ρ ΡΠΌΡΡΠ»Π°;
- Π·Π½Π°Π½ΠΈΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΄ΡΠΊΡΠ° ΡΠ΅ΠΉΡΠ°Ρ ΡΠΆΠ΅ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ;
- Π° Π·Π½Π°ΡΡ Π΄Π΅ΡΡΡΠΊΠΈ Π½Π° ΡΡΠΎΠ²Π½Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ β Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ.
ΠΡΠΆΠ½ΠΎ Π·Π½Π°ΡΡ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΈ Π½Π΅ ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΎΠ΄ΡΠΊΡ, Π°:
- use case Π΅Π³ΠΎ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ;
- ΡΠ°Π·Π½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ ΡΠ°Π·Π²ΡΡΡΡΠ²Π°Π½ΠΈΡ;
- ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° ΠΈ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ²;
- Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΡΠ΅ ΠΈ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΠ΅ ΠΏΡΠΎΠ΄ΡΠΊΡΡ, ΡΡΠΎΠ±Ρ Π΄Π΅Π»Π°ΡΡ ΠΎΡΠΎΠ·Π½Π°Π½Π½ΡΠΉ ΠΈ ΠΎΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ Π²ΡΠ±ΠΎΡ ΠΈ Π½Π΅ Π²ΡΠ΅Π³Π΄Π° Π² ΠΏΠΎΠ»ΡΠ·Ρ Π·Π½Π°ΠΊΠΎΠΌΠΎΠ³ΠΎ ΠΏΡΠΎΠ΄ΡΠΊΡΠ°.
Π Π΅ΡΡ Π½ΡΠΆΠ½ΠΎ ΡΠΌΠ΅ΡΡ ΠΌΠΈΠ³ΡΠΈΡΠΎΠ²Π°ΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΈ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ Π±Π°Π·ΠΎΠ²ΡΠ΅ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ Ρ ETL.
Π Π΅Π°Π»ΡΠ½ΡΠΉ ΡΠ»ΡΡΠ°ΠΉ
Π Π½Π΅Π΄Π°Π²Π½Π΅ΠΌ ΠΏΡΠΎΡΠ»ΠΎΠΌ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΠ»ΠΎΡΡ Π΄Π΅Π»Π°ΡΡ Π±ΡΠΊΠ΅Π½Π΄ Π΄Π»Ρ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. Π ΠΌΠΎΠΌΠ΅Π½ΡΡ Π½Π°ΡΠ°Π»Π° ΡΠ°Π±ΠΎΡΡ Π½Π°Π΄ Π½ΠΈΠΌ Π±ΡΠΊΠ΅Π½Π΄ ΡΠΆΠ΅ Π±ΡΠ» ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½ ΠΈ Π³ΠΎΡΠΎΠ² ΠΊ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΡ, Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΏΠΎΡΡΠ°ΡΠΈΠ»Π° Π½Π° ΡΡΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡ ΠΎΠΊΠΎΠ»ΠΎ Π΄Π²ΡΡ Π»Π΅Ρ. ΠΡΠΈ ΡΡΠΎΠΌ Π±ΡΠ»ΠΈ ΠΏΠΎΡΡΠ°Π²Π»Π΅Π½Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π·Π°Π΄Π°ΡΠΈ:
- ΠΏΠΎΡΡΡΠΎΠΈΡΡ CI/CD;
- ΡΠ΄Π΅Π»Π°ΡΡ review Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ;
- Π·Π°ΠΏΡΡΡΠΈΡΡ Π²ΡΡ ΡΡΠΎ Π² ΡΠΊΡΠΏΠ»ΡΠ°ΡΠ°ΡΠΈΡ.
Π‘Π°ΠΌΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π±ΡΠ»ΠΎ ΠΌΠΈΠΊΡΠΎΡΠ΅ΡΠ²ΠΈΡΠ½ΡΠΌ, Π° ΠΊΠΎΠ΄ Π½Π° Python/Django Π±ΡΠ» ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½ Ρ Π½ΡΠ»Ρ ΠΈ ΡΡΠ°Π·Ρ Π² GCP. Π§ΡΠΎ ΠΊΠ°ΡΠ°Π΅ΡΡΡ ΡΠ΅Π»Π΅Π²ΠΎΠΉ Π°ΡΠ΄ΠΈΡΠΎΡΠΈΠΈ, ΡΠΎ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π»ΠΎΡΡ, ΡΡΠΎ Π±ΡΠ΄Π΅Ρ Π΄Π²Π° ΡΠ΅Π³ΠΈΠΎΠ½Π° β US ΠΈ EU, Π° ΡΡΠ°ΡΠΈΠΊ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ»ΡΡ ΡΠ΅ΡΠ΅Π· Global Load balancer. ΠΡΠ΅ Workloads ΠΈ Π²ΡΡΠΈΡΠ»ΠΈΡΠ΅Π»ΡΠ½Π°Ρ Π½Π°Π³ΡΡΠ·ΠΊΠ° ΡΠ°Π±ΠΎΡΠ°Π»ΠΈ Π² Google Kubernetes Engine.
Π§ΡΠΎ ΠΊΠ°ΡΠ°Π΅ΡΡΡ Π΄Π°Π½Π½ΡΡ , ΡΠΎ Π±ΡΠ»ΠΈ 3 ΡΡΡΡΠΊΡΡΡΡ:
- Cloud Storage;
- Datastore;
- Cloud SQL (PostgreSQL).
ΠΠΎΠΆΠ΅Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡΡΡ Π²ΠΎΠΏΡΠΎΡ, ΠΏΠΎΡΠ΅ΠΌΡ Π±ΡΠ» Π²ΡΠ±ΡΠ°Π½ Cloud SQL? ΠΠΎΠ²ΠΎΡΡ ΠΏΠΎ ΠΏΡΠ°Π²Π΄Π΅, ΡΠ°ΠΊΠΎΠΉ Π²ΠΎΠΏΡΠΎΡ Π² ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ Π³ΠΎΠ΄Ρ Π²ΡΠ·ΡΠ²Π°Π΅Ρ ΠΊΠ°ΠΊΡΡ-ΡΠΎ Π½Π΅Π»ΠΎΠ²ΠΊΡΡ ΠΏΠ°ΡΠ·Ρ β Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ ΠΎΡΡΡΠ΅Π½ΠΈΠ΅, ΡΡΠΎ Π»ΡΠ΄ΠΈ ΡΡΠ°Π»ΠΈ ΡΡΠ΅ΡΠ½ΡΡΡΡΡ ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΡΡ
Π±Π°Π·, Π½ΠΎ ΡΠ΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ ΠΎΠ½ΠΈ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡΡ ΠΈΡ
Π°ΠΊΡΠΈΠ²Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ;-).
Π§ΡΠΎ ΠΊΠ°ΡΠ°Π΅ΡΡΡ Π½Π°ΡΠ΅Π³ΠΎ ΡΠ»ΡΡΠ°Ρ, ΡΠΎ Cloud SQL Π±ΡΠ» Π²ΡΠ±ΡΠ°Π½ ΠΏΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΏΡΠΈΡΠΈΠ½Π°ΠΌ:
- ΠΠ°ΠΊ Π±ΡΠ»ΠΎ ΡΠΏΠΎΠΌΡΠ½ΡΡΠΎ, ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°Π»ΠΎΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Django, Π° Π² Π½ΡΠΌ Π΅ΡΡΡ ΠΌΠΎΠ΄Π΅Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΏΠΎΡΡΠΎΡΠ½Π½ΡΡ Π΄Π°Π½Π½ΡΡ ΠΈΠ· SQL-Π±Π°Π·Ρ Π² ΠΎΠ±ΡΠ΅ΠΊΡΡ Python (Django ORM).
- Π‘Π°ΠΌ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π» Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΊΠΎΠ½Π΅ΡΠ½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ Π‘Π£ΠΠ:
- PostgreSQL;
- MariaDB;
- MySQL;
- Oracle;
- SQLite.
Π‘ΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ, PostgreSQL Π²ΡΠ±ΡΠ°Π»ΠΈ ΠΈΠ· ΡΡΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅ΡΠ½Ρ ΡΠΊΠΎΡΠ΅Π΅ ΠΈΠ½ΡΡΠΈΡΠΈΠ²Π½ΠΎ (Π½Ρ Π½Π΅ Oracle ΠΆΠ΅ Π²ΡΠ±ΠΈΡΠ°ΡΡ, Π² ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ ).
Π§Π΅Π³ΠΎ Π½Π΅ Ρ Π²Π°ΡΠ°Π»ΠΎ:
- ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π±ΡΠ»ΠΎ ΡΠ°Π·Π²Π΅ΡΠ½ΡΡΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π² 2-Ρ ΡΠ΅Π³ΠΈΠΎΠ½Π°Ρ , Π° Π² ΠΏΠ»Π°Π½Π°Ρ ΠΏΠΎΡΠ²ΠΈΠ»ΡΡ 3-ΠΉ (ΠΠ·ΠΈΡ);
- ΠΠ Π½Π°Ρ ΠΎΠ΄ΠΈΠ»Π°ΡΡ Π² ΡΠ΅Π²Π΅ΡΠΎΠ°ΠΌΠ΅ΡΠΈΠΊΠ°Π½ΡΠΊΠΎΠΌ ΡΠ΅Π³ΠΈΠΎΠ½Π΅ (Iowa);
- ΡΠΎ ΡΡΠΎΡΠΎΠ½Ρ Π·Π°ΠΊΠ°Π·ΡΠΈΠΊΠ° ΠΏΡΠΈΡΡΡΡΡΠ²ΠΎΠ²Π°Π»ΠΈ ΠΎΠΏΠ°ΡΠ΅Π½ΠΈΡ Π½Π°ΡΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ Π·Π°Π΄Π΅ΡΠΆΠ΅ΠΊ Ρ Π΄ΠΎΡΡΡΠΏΠΎΠΌ ΠΈΠ· ΠΠ²ΡΠΎΠΏΡ ΠΈ ΠΠ·ΠΈΠΈ ΠΈ ΠΏΠ΅ΡΠ΅Π±ΠΎΠ΅Π² Π² ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π½ΠΈΠΈ Π² ΡΠ»ΡΡΠ°Π΅ ΠΏΡΠΎΡΡΠΎΡ Π‘Π£ΠΠ.
ΠΡΠΈ ΡΠΎΠΌ, ΡΡΠΎ ΡΠ°ΠΌ Django ΠΌΠΎΠΆΠ΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΠΠ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎ ΠΈ Π΄Π΅Π»ΠΈΡΡ ΠΈΡ ΠΏΠΎ ΡΡΠ΅Π½ΠΈΡ ΠΈ Π·Π°ΠΏΠΈΡΠΈ, Π·Π°ΠΏΠΈΡΠΈ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π±ΡΠ»ΠΎ Π½Π΅ ΡΠ°ΠΊ ΡΠΆ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ (Π±ΠΎΠ»Π΅Π΅ 90 % β ΡΡΠ΅Π½ΠΈΠ΅). Π Π² ΠΎΠ±ΡΠ΅ΠΌ, ΠΈ Π² ΡΠ΅Π»ΠΎΠΌ, Π΅ΡΠ»ΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ read-ΡΠ΅ΠΏΠ»ΠΈΠΊΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π±Π°Π·Ρ Π² ΠΠ²ΡΠΎΠΏΠ΅ ΠΈ ΠΠ·ΠΈΠΈ, ΡΡΠΎ Π±ΡΠ»ΠΎ Π±Ρ ΠΊΠΎΠΌΠΏΡΠΎΠΌΠΈΡΡΠ½ΡΠΌ Π²Π°ΡΠΈΠ°Π½ΡΠΎΠΌ ΡΠ΅ΡΠ΅Π½ΠΈΡ. ΠΡ Π° ΡΡΠΎ ΡΡΡ ΡΠ°ΠΊΠΎΠ³ΠΎ ΡΠ»ΠΎΠΆΠ½ΠΎΠ³ΠΎ?
Π ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ Π·Π°ΠΊΠ»ΡΡΠ°Π»Π°ΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ Π·Π°ΠΊΠ°Π·ΡΠΈΠΊ Π½Π΅ Ρ ΠΎΡΠ΅Π» ΠΎΡΠΊΠ°Π·ΡΠ²Π°ΡΡΡΡ ΠΎΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ managed services ΠΈ Cloud SQL. Π Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Cloud SQL Π½Π° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Ρ. Cloud SQL ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ High availability (HA) ΠΈ Read Replica (RR), Π½ΠΎ ΡΠ° ΠΆΠ΅ RR ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ Π»ΠΈΡΡ Π² ΠΎΠ΄Π½ΠΎΠΌ ΡΠ΅Π³ΠΈΠΎΠ½Π΅. Π‘ΠΎΠ·Π΄Π°Π² ΠΠ Π² Π°ΠΌΠ΅ΡΠΈΠΊΠ°Π½ΡΠΊΠΎΠΌ ΡΠ΅Π³ΠΈΠΎΠ½Π΅, ΡΠ΄Π΅Π»Π°ΡΡ read-ΡΠ΅ΠΏΠ»ΠΈΠΊΡ Π² Π΅Π²ΡΠΎΠΏΠ΅ΠΉΡΠΊΠΎΠΌ ΡΠ΅Π³ΠΈΠΎΠ½Π΅ ΡΡΠ΅Π΄ΡΡΠ²Π°ΠΌΠΈ Cloud SQL Π½Π΅Π»ΡΠ·Ρ, Ρ ΠΎΡΡ ΡΠ°ΠΌ ΠΏΠΎΡΡΠ³ΡΠ΅Ρ ΡΡΠΎΠ³ΠΎ Π΄Π΅Π»Π°ΡΡ Π½Π΅ ΠΌΠ΅ΡΠ°Π΅Ρ. ΠΠ΅ΡΠ΅ΠΏΠΈΡΠΊΠ° Ρ ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠ°ΠΌΠΈ Google Π½ΠΈ ΠΊ ΡΠ΅ΠΌΡ Π½Π΅ ΠΏΡΠΈΠ²Π΅Π»Π° ΠΈ Π·Π°ΠΊΠΎΠ½ΡΠΈΠ»Π°ΡΡ ΠΎΠ±Π΅ΡΠ°Π½ΠΈΡΠΌΠΈ Π² ΡΡΠΈΠ»Π΅ Β«ΠΌΡ Π·Π½Π°Π΅ΠΌ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΈ ΡΠ°Π±ΠΎΡΠ°Π΅ΠΌ Π½Π°Π΄ Π½Π΅ΠΉ, ΠΊΠΎΠ³Π΄Π°-Π½ΠΈΠ±ΡΠ΄Ρ Π²ΠΎΠΏΡΠΎΡ Π±ΡΠ΄Π΅Ρ ΡΠ΅ΡΡΠ½Β».
ΠΡΠ»ΠΈ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΠΈΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Cloud SQL ΡΠ΅Π·ΠΈΡΠ½ΠΎ, ΡΠΎ ΡΡΠΎ Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΠΏΡΠΈΠ±Π»ΠΈΠ·ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ°ΠΊ:
1. High availability (HA):
- Π² ΡΠ°ΠΌΠΊΠ°Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ΅Π³ΠΈΠΎΠ½Π°;
- ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ Π΄ΠΈΡΠΊΠΎΠ²ΠΎΠΉ ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ;
- Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΡ PostgreSQL;
- Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΈ ΡΡΡΠ½ΠΎΠ΅ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ β failover/failback;
- ΠΏΡΠΈ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ Π‘Π£ΠΠ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ½Π° Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΌΠΈΠ½ΡΡ.
2. Read Replica (RR):
- Π² ΡΠ°ΠΌΠΊΠ°Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ΅Π³ΠΈΠΎΠ½Π°;
- hot standby;
- PostgreSQL streaming replication.
Π ΡΠΎΠΌΡ ΠΆΠ΅, ΠΊΠ°ΠΊ ΡΡΠΎ ΠΏΡΠΈΠ½ΡΡΠΎ, ΠΏΡΠΈ Π²ΡΠ±ΠΎΡΠ΅ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π²ΡΠ΅Π³Π΄Π° ΡΡΠ°Π»ΠΊΠΈΠ²Π°Π΅ΡΡΡΡ Ρ ΠΊΠ°ΠΊΠΈΠΌΠΈ-Π½ΠΈΠ±ΡΠ΄Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡΠΌΠΈ:
- Π·Π°ΠΊΠ°Π·ΡΠΈΠΊ Π½Π΅ Ρ ΠΎΡΠ΅Π» ΠΏΠ»ΠΎΠ΄ΠΈΡΡ ΡΡΡΠ½ΠΎΡΡΠΈ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ IaaS, ΠΊΡΠΎΠΌΠ΅ ΠΊΠ°ΠΊ ΡΠ΅ΡΠ΅Π· GKE;
- Π·Π°ΠΊΠ°Π·ΡΠΈΠΊ Π½Π΅ Ρ ΠΎΡΠ΅Π» Π±Ρ ΡΠ°Π·Π²ΠΎΡΠ°ΡΠΈΠ²Π°ΡΡ self service PostgreSQL/MySQL;
- Π½Ρ ΠΈ Π²ΠΎΠΎΠ±ΡΠ΅, Google Spanner Π²ΠΏΠΎΠ»Π½Π΅ Π±Ρ ΠΏΠΎΠ΄ΠΎΡΠ΅Π», Π΅ΡΠ»ΠΈ Π±Ρ Π½Π΅ Π΅Π³ΠΎ ΡΠ΅Π½Π°, ΠΏΡΠ°Π²Π΄Π°, Ρ Π½ΠΈΠΌ Django ORM ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ, Π° ΡΠ°ΠΊ ΡΡΡΠΊΠ°-ΡΠΎ Ρ ΠΎΡΠΎΡΠ°Ρ.
Π£ΡΠΈΡΡΠ²Π°Ρ ΡΠΈΡΡΠ°ΡΠΈΡ, ΠΎΡ Π·Π°ΠΊΠ°Π·ΡΠΈΠΊΠ° ΠΏΠΎΡΡΡΠΏΠΈΠ» Π²ΠΎΠΏΡΠΎΡ Π½Π° Π·Π°ΡΡΠΏΠΊΡ: Β«Π ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΡΠΎ-Π½ΠΈΠ±ΡΠ΄Ρ ΠΏΠΎΡ ΠΎΠΆΠ΅Π΅ ΡΠ΄Π΅Π»Π°ΡΡ, ΡΡΠΎΠ±Ρ Π±ΡΠ»ΠΎ, ΠΊΠ°ΠΊ Google Spanner, Π½ΠΎ ΡΠ°Π±ΠΎΡΠ°Π»ΠΎ Π΅ΡΡ ΠΈ Ρ Django ORM?Β»
ΠΠ°ΡΠΈΠ°Π½Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ β 0
ΠΠ΅ΡΠ²ΠΎΠ΅, ΡΡΠΎ ΠΏΡΠΈΡΠ»ΠΎ Π² Π³ΠΎΠ»ΠΎΠ²Ρ:
- ΠΎΡΡΠ°ΡΡΡΡ Π² ΡΠ°ΠΌΠΊΠ°Ρ CloudSQL;
- Π²ΡΡΡΠΎΠ΅Π½Π½ΠΎΠΉ ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ΅Π³ΠΈΠΎΠ½Π°ΠΌΠΈ Π½Π΅ Π±ΡΠ΄Π΅Ρ Π½ΠΈ Π² ΠΊΠ°ΠΊΠΎΠΌ Π²ΠΈΠ΄Π΅;
- ΠΏΠΎΠΏΡΡΠ°ΡΡΡΡ ΠΏΡΠΈΠΊΡΡΡΠΈΡΡ ΡΠ΅ΠΏΠ»ΠΈΠΊΡ ΠΊ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅ΠΌΡ Cloud SQL by PostgreSQL;
- Π³Π΄Π΅-ΡΠΎ ΠΈ ΠΊΠ°ΠΊ-ΡΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΈΠ½ΡΡΠ°Π½Ρ PostgreSQL, Π½ΠΎ Ρ ΠΎΡΡ Π±Ρ master Π½Π΅ ΡΡΠΎΠ³Π°ΡΡ.
Π£Π²Ρ, ΠΎΠΊΠ°Π·Π°Π»ΠΎΡΡ, ΡΡΠΎ ΡΠ°ΠΊ ΡΠ΄Π΅Π»Π°ΡΡ Π½Π΅Π»ΡΠ·Ρ, Ρ. ΠΊ. Π½Π΅Ρ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ Ρ ΠΎΡΡΡ (ΠΎΠ½ Π²ΠΎΠΎΠ±ΡΠ΅ Π² Π΄ΡΡΠ³ΠΎΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅) β pg_hba ΠΈ ΡΠ°ΠΊ Π΄Π°Π»Π΅Π΅, Π° Π΅ΡΡ Π½Π΅Ρ Π΄ΠΎΡΡΡΠΏΠ° ΠΏΠΎΠ΄ superuser.
ΠΠ°ΡΠΈΠ°Π½Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ β 1
ΠΠΎΡΠ»Π΅ ΠΎΡΠ΅ΡΠ΅Π΄Π½ΡΡ ΡΠ°Π·ΠΌΡΡΠ»Π΅Π½ΠΈΠΉ ΠΈ Ρ ΡΡΡΡΠΎΠΌ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΡ ΠΎΠ±ΡΡΠΎΡΡΠ΅Π»ΡΡΡΠ² Ρ ΠΎΠ΄ ΠΌΡΡΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΡΡ:
- Π²ΡΡ ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΡΠ°Π΅ΠΌΡΡ ΠΎΡΡΠ°ΡΡΡΡ Π² ΡΠ°ΠΌΠΊΠ°Ρ CloudSQL, Π½ΠΎ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ Π½Π° MySQL, Ρ. ΠΊ. Ρ Cloud SQL by MySQL Π΅ΡΡΡ external master, ΠΊΠΎΡΠΎΡΡΠΉ:
β ΡΠ²Π»ΡΠ΅ΡΡΡ proxy Π΄Π»Ρ Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ MySQL;
β Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΊΠ°ΠΊ ΠΈΠ½ΡΡΠ°Π½Ρ MySQL;
β ΠΏΡΠΈΠ΄ΡΠΌΠ°Π½ Π΄Π»Ρ ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ Π΄Π°Π½Π½ΡΡ
ΠΈΠ· Π΄ΡΡΠ³ΠΈΡ
ΠΎΠ±Π»Π°ΠΊΠΎΠ² ΠΈΠ»ΠΈ On-premises.
Π’Π°ΠΊ ΠΊΠ°ΠΊ Π½Π°ΡΡΡΠΎΠΉΠΊΠ° ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ MySQL Π½Π΅ ΡΡΠ΅Π±ΡΠ΅Ρ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ Ρ ΠΎΡΡΡ, Π² ΠΏΡΠΈΠ½ΡΠΈΠΏΠ΅ Π²ΡΡ ΡΠ°Π±ΠΎΡΠ°Π»ΠΎ, Π½ΠΎ ΠΎΡΠ΅Π½Ρ Π½Π΅ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎ ΠΈ Π½Π΅ΡΠ΄ΠΎΠ±Π½ΠΎ. Π ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΡΠ»ΠΈ Π΄Π°Π»ΡΡΠ΅, ΡΡΠ°Π»ΠΎ ΠΈ Π²ΠΎΠ²ΡΠ΅ ΡΡΡΠ°ΡΠ½ΠΎ, Ρ. ΠΊ. ΠΌΡ Π²ΡΡ ΡΡΡΡΠΊΡΡΡΡ ΡΠ°Π·Π²ΠΎΡΠ°ΡΠΈΠ²Π°Π»ΠΈ terraformβΠΎΠΌ, Π° Π²Π΄ΡΡΠ³ ΠΎΠΊΠ°Π·Π°Π»ΠΎΡΡ, ΡΡΠΎ external master Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ terraformβΠΎΠΌ. ΠΠ°, Ρ Google Π΅ΡΡΡ CLI, Π½ΠΎ ΠΏΠΎΡΠ΅ΠΌΡ-ΡΠΎ ΠΈ ΡΡΡ Π²ΡΡ ΡΠ°Π±ΠΎΡΠ°Π»ΠΎ ΡΠ΅ΡΠ΅Π· ΡΠ°Π· β ΡΠΎ ΡΠΎΠ·Π΄Π°ΡΡΡΡ, ΡΠΎ Π½Π΅ ΡΠΎΠ·Π΄Π°ΡΡΡΡ. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΏΠΎΡΠΎΠΌΡ, ΡΡΠΎ CLI ΠΏΡΠΈΠ΄ΡΠΌΡΠ²Π°Π»ΠΈ Π΄Π»Ρ ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ Π΄Π°Π½Π½ΡΡ ΡΠ½Π°ΡΡΠΆΠΈ, Π° Π½Π΅ Π΄Π»Ρ ΡΠ΅ΠΏΠ»ΠΈΠΊ.
Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ, Π½Π° ΡΡΠΎΠΌ ΡΡΠ°Π»ΠΎ ΠΏΠΎΠ½ΡΡΠ½ΠΎ, ΡΡΠΎ Cloud SQL Π½Π΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ ΠΎΡ ΡΠ»ΠΎΠ²Π° ΡΠΎΠ²ΡΠ΅ΠΌ. ΠΠ°ΠΊ Π³ΠΎΠ²ΠΎΡΠΈΡΡΡ, ΠΌΡ ΡΠ΄Π΅Π»Π°Π»ΠΈ Π²ΡΡ, ΡΡΠΎ ΡΠΌΠΎΠ³Π»ΠΈ.
ΠΠ°ΡΠΈΠ°Π½Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ β 2
Π’Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΡΡΠ°ΡΡΡΡ Π² ΡΠ°ΠΌΠΊΠ°Ρ Cloud SQL Π½Π΅ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΎΡΡ, ΠΏΠΎΠΏΡΡΠ°Π»ΠΈΡΡ ΡΡΠΎΡΠΌΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΊ ΠΊΠΎΠΌΠΏΡΠΎΠΌΠΈΡΡΠ½ΠΎΠΌΡ ΡΠ΅ΡΠ΅Π½ΠΈΡ. Π’ΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΎΠΊΠ°Π·Π°Π»ΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅:
- ΡΠ°Π±ΠΎΡΠ° Π² Kubernetes, ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΡΡΡΡΠΎΠ² ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ Kubernetes (DCS, …) ΠΈ GCP (LB, …);
- ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ Π±Π°Π»Π»Π°ΡΡΠ° ΠΈΠ· ΠΊΡΡΠΈ Π½Π΅Π½ΡΠΆΠ½ΡΡ Π² ΠΎΠ±Π»Π°ΠΊΠ΅ Π²Π΅ΡΠ΅ΠΉ ΡΠΈΠΏΠ° HA proxy;
- Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΡΠ΅Π³ΠΈΠΎΠ½Π΅ HA PostgreSQL ΠΈΠ»ΠΈ MySQL; Π² ΠΎΡΡΠ°Π»ΡΠ½ΡΡ ΡΠ΅Π³ΠΈΠΎΠ½Π°Ρ β HA ΠΈΠ· RR ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ³ΠΎ ΡΠ΅Π³ΠΈΠΎΠ½Π° ΠΏΠ»ΡΡ Π΅Ρ ΠΊΠΎΠΏΠΈΡ (Π΄Π»Ρ Π½Π°Π΄ΡΠΆΠ½ΠΎΡΡΠΈ);
- multi master (ΡΠ²ΡΠ·ΡΠ²Π°ΡΡΡΡ Ρ Π½ΠΈΠΌ Π½Π΅ Ρ ΠΎΡΠ΅Π»ΠΎΡΡ, Π½ΠΎ ΡΡΠΎ Π±ΡΠ»ΠΎ Π½Π΅ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΈΠ½ΡΠΈΠΏΠΈΠ°Π»ΡΠ½ΠΎ)
.
Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΡΡΠΈΡ
ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ Π½Π° Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ΅ Π½Π°ΠΊΠΎΠ½Π΅Ρ-ΡΠΎ ΠΏΠΎΡΠ²ΠΈΠ»ΠΈΡΡ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ΡΡΠΈΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΡ Π‘Π£ΠΠ ΠΈ ΠΎΠ±Π²ΡΠ·ΠΊΠΈ:
- MySQL Galera;
- CockroachDB;
- PostgreSQL tools
:
β pgpool-II;
β Patroni.
MySQL Galera
Π’Π΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡ MySQL Galera ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π° ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ Codership ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ plugin for InnoDB. ΠΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ:
- multi master;
- ΡΠΈΠ½Ρ ΡΠΎΠ½Π½Π°Ρ ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ;
- ΡΡΠ΅Π½ΠΈΠ΅ Ρ Π»ΡΠ±ΠΎΠ³ΠΎ ΡΠ·Π»Π°;
- Π·Π°ΠΏΠΈΡΡ Π½Π° Π»ΡΠ±ΠΎΠΉ ΡΠ·Π΅Π»;
- Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΉ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ HA;
- Π΅ΡΡΡ Helm chart ΠΎΡ Bitnami.
CockroachDB
ΠΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ Π²Π΅ΡΡ ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π½ΠΎ Π±ΠΎΠΌΠ±ΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ open source-ΠΏΡΠΎΠ΅ΠΊΡ, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΠΉ Π½Π° Go. ΠΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΡΠ°ΡΡΠ½ΠΈΠΊ β Cockroach Labs (ΠΎΡΠ½ΠΎΠ²Π°Π½Π° Π²ΡΡ ΠΎΠ΄ΡΠ°ΠΌΠΈ ΠΈΠ· Google). ΠΡΠ° ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½Π°Ρ Π‘Π£ΠΠ ΠΈΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π½Π° Π±ΡΡΡ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎΠΉ (Ρ Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½ΡΠΌ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Β«ΠΈΠ· ΠΊΠΎΡΠΎΠ±ΠΊΠΈΒ») ΠΈ ΠΎΡΠΊΠ°Π·ΠΎΡΡΡΠΎΠΉΡΠΈΠ²ΠΎΠΉ. ΠΡ Π°Π²ΡΠΎΡΡ ΠΈΠ· ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠΈΠ»ΠΈ ΡΠ΅Π»Ρ Β«ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΡΡ Π±ΠΎΠ³Π°ΡΡΡΠ²ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΠΈ SQL Ρ Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½ΠΎΠΉ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΡΡ, ΠΏΡΠΈΠ²ΡΡΠ½ΠΎΠΉ Π΄Π»Ρ NoSQL-ΡΠ΅ΡΠ΅Π½ΠΈΠΉΒ».
ΠΠ· ΠΏΡΠΈΡΡΠ½ΠΎΠ³ΠΎ Π±ΠΎΠ½ΡΡΠ° β ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΏΠΎΡΡΠ³ΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ.
Pgpool
ΠΡΠΎ Π½Π°Π΄ΡΡΡΠΎΠΉΠΊΠ° Π½Π°Π΄ PostgreSQL, Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅, Π½ΠΎΠ²Π°Ρ ΡΡΡΠ½ΠΎΡΡΡ, ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡΠ°Ρ Π½Π° ΡΠ΅Π±Ρ Π²ΡΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ ΠΈ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΠ°Ρ ΠΈΡ . ΠΠΌΠ΅Π΅Ρ ΡΠ²ΠΎΠΉ Π»ΠΎΠ°Π΄ Π±Π°Π»Π°Π½ΡΠ΅Ρ ΠΈ ΠΏΠ°ΡΡΠ΅Ρ, Π»ΠΈΡΠ΅Π½Π·ΠΈΡΡΠ΅ΡΡΡ ΠΏΠΎ Π»ΠΈΡΠ΅Π½Π·ΠΈΠΈ BSD. ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΈΡΠΎΠΊΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ, Π½ΠΎ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠ³Π°ΡΡΠ΅, Ρ. ΠΊ. Π½Π°Π»ΠΈΡΠΈΠ΅ Π½ΠΎΠ²ΠΎΠΉ ΡΡΡΠ½ΠΎΡΡΠΈ ΠΌΠΎΠ³Π»ΠΎ ΡΡΠ°ΡΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠΌ Π½Π΅ΠΊΠΈΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΏΡΠΈΠΊΠ»ΡΡΠ΅Π½ΠΈΠΉ.
Patroni
ΠΡΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π΅, Π½Π° ΡΡΠΎ ΡΠΏΠ°Π» Π²Π·Π³Π»ΡΠ΄, ΠΈ, ΠΊΠ°ΠΊ ΠΎΠΊΠ°Π·Π°Π»ΠΎΡΡ, Π½Π΅ Π·ΡΡ. Patroni β ΠΎΠΏΠ΅Π½ΡΠΎΡΡΠ½Π°Ρ ΡΡΠΈΠ»ΠΈΡΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ, ΠΏΠΎ ΡΡΡΠΈ, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ Π΄Π΅ΠΌΠΎΠ½ Π½Π° Python, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°ΡΡ ΠΊΠ»Π°ΡΡΠ΅ΡΡ PostgreSQL Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ ΡΠΈΠΏΠ°ΠΌΠΈ ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠΎΠ»Π΅ΠΉ. Π¨ΡΡΠΊΠ° ΠΎΠΊΠ°Π·Π°Π»Π°ΡΡ ΠΎΡΠ΅Π½Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎΠΉ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½Π° Ρ ΠΎΡΠΎΡΠΎ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΡΠ΅ΡΡΡ Ρ ΠΊΡΠ±Π΅ΡΠΎΠΌ ΠΈ Π½Π΅ Π½Π΅ΡΡΡ Π½ΠΈΠΊΠ°ΠΊΠΈΡ Π½ΠΎΠ²ΡΡ ΡΡΡΠ½ΠΎΡΡΠ΅ΠΉ.
Π§ΡΠΎ Π² ΠΈΡΠΎΠ³Π΅ Π²ΡΠ±ΡΠ°Π»ΠΈ
ΠΡΠ±ΠΎΡ Π΄Π°Π²Π°Π»ΡΡ Π½Π΅ΠΏΡΠΎΡΡΠΎ:
- CockroachDB β ΠΎΠ³ΠΎΠ½Ρ, Π½ΠΎ ΡΡΡΡΠΌΠ½ΠΎ;
- MySQL Galera β ΡΠΎΠΆΠ΅ Π½Π΅ΠΏΠ»ΠΎΡ ΠΎ, ΠΌΠ½ΠΎΠ³ΠΎ Π³Π΄Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ, Π½ΠΎ MySQL;
- Pgpool β ΠΌΠ½ΠΎΠ³ΠΎ Π»ΠΈΡΠ½ΠΈΡ ΡΡΡΠ½ΠΎΡΡΠ΅ΠΉ, ΡΠ°ΠΊ ΡΠ΅Π±Π΅ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ ΠΎΠ±Π»Π°ΠΊΠΎΠΌ ΠΈ K8s;
- Patroni β ΠΏΡΠ΅ΠΊΡΠ°ΡΠ½Π°Ρ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ K8s, Π½Π΅Ρ Π»ΠΈΡΠ½ΠΈΡ ΡΡΡΠ½ΠΎΡΡΠ΅ΠΉ, Ρ ΠΎΡΠΎΡΠΎ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΡΠ΅ΡΡΡ Ρ GCP LB.
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π²ΡΠ±ΠΎΡ ΠΏΠ°Π» Π½Π° Patroni.
ΠΡΠ²ΠΎΠ΄Ρ
ΠΡΠΈΡΠ»Π° ΠΏΠΎΡΠ° ΠΏΠΎΠ΄Π²Π΅ΡΡΠΈ ΠΊΡΠ°ΡΠΊΠΈΠ΅ ΠΈΡΠΎΠ³ΠΈ. ΠΠ°, ΠΌΠΈΡ ΠΠ’-ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ ΠΏΠΎΠΌΠ΅Π½ΡΠ»ΡΡ, ΠΈ ΡΡΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π½Π°ΡΠ°Π»ΠΎ. Π Π΅ΡΠ»ΠΈ ΡΠ°Π½ΡΡΠ΅ ΠΎΠ±Π»Π°ΠΊΠ° Π±ΡΠ»ΠΈ Π»ΠΈΡΡ Π΄ΡΡΠ³ΠΈΠΌ ΡΠΈΠΏΠΎΠΌ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ, ΡΠΎ ΡΠ΅ΠΏΠ΅ΡΡ Π²ΡΡ ΠΈΠ½Π°ΡΠ΅. ΠΠ°Π»ΠΎ ΡΠΎΠ³ΠΎ, ΠΈΠ½Π½ΠΎΠ²Π°ΡΠΈΠΈ Π² ΠΎΠ±Π»Π°ΠΊΠ°Ρ ΠΏΠΎΡΠ²Π»ΡΡΡΡΡ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ, ΠΏΠΎΡΠ²Π»ΡΡΡΡΡ Π±ΡΠ΄ΡΡ ΠΈ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΎΠ½ΠΈ Π±ΡΠ΄ΡΡ ΠΏΠΎΡΠ²Π»ΡΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΎΠ±Π»Π°ΠΊΠ°Ρ ΠΈ Π»ΠΈΡΡ ΠΏΠΎΡΠΎΠΌ, ΡΠΈΠ»Π°ΠΌΠΈ ΡΡΠ°ΡΡΠ°ΠΏΠΎΠ², Π±ΡΠ΄ΡΡ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΡΡΡΡ Π² On-premises.
Π§ΡΠΎ ΠΊΠ°ΡΠ°Π΅ΡΡΡ SQL, ΡΠΎ SQL Π±ΡΠ΄Π΅Ρ ΠΆΠΈΡΡ. ΠΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ PostgreSQL ΠΈ MySQL Π½Π°Π΄ΠΎ Π·Π½Π°ΡΡ ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π½ΠΈΠΌΠΈ Π½Π°Π΄ΠΎ ΡΠΌΠ΅ΡΡ, Π½ΠΎ Π΅ΡΠ΅ Π²Π°ΠΆΠ½Π΅Π΅ ΡΠΌΠ΅ΡΡ ΠΈΡ
ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: habr.com