ΠΠ΄ΡΠ°Π²Π΅ΠΉΡΠ΅.
ΠΠ°Π·Π²Π°ΠΌ ΡΠ΅ ΠΠ°Π½Ρ ΠΈ ΡΡΠΌ Java ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ. Π’Π°ΠΊΠ° ΡΠ΅ ΡΠ»ΡΡΠΈ, ΡΠ΅ ΡΠ°Π±ΠΎΡΡ ΠΌΠ½ΠΎΠ³ΠΎ Ρ PostgreSQL - Π½Π°ΡΡΡΠΎΠΉΠ²Π°ΠΌ Π±Π°Π·Π°ΡΠ° Π΄Π°Π½Π½ΠΈ, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°ΠΌ ΡΡΡΡΠΊΡΡΡΠ°ΡΠ°, ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° ΠΈ ΠΈΠ³ΡΠ°Ρ ΠΌΠ°Π»ΠΊΠΎ DBA ΠΏΡΠ΅Π· ΡΠΈΠΊΠ΅Π½Π΄ΠΈΡΠ΅.
ΠΠ°ΡΠΊΠΎΡΠΎ ΠΏΠΎΠ΄ΡΠ΅Π΄ΠΈΡ
Π½ΡΠΊΠΎΠ»ΠΊΠΎ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ Π² Π½Π°ΡΠΈΡΠ΅ ΠΌΠΈΠΊΡΠΎΡΠ΅ΡΠ²ΠΈΠ·ΠΈ ΠΈ Π½Π°ΠΏΠΈΡΠ°Ρ
java Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°
ΠΡΠΊΠ°Π· ΠΎΡ ΠΎΡΠ³ΠΎΠ²ΠΎΡΠ½ΠΎΡΡ
ΠΡΠ½ΠΎΠ²Π½Π°ΡΠ° Π²Π΅ΡΡΠΈΡ Π½Π° PostgreSQL, Ρ ΠΊΠΎΡΡΠΎ ΡΠ°Π±ΠΎΡΡ Π΅ 10. ΠΡΠΈΡΠΊΠΈ SQL Π·Π°ΡΠ²ΠΊΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌ, ΡΡΡΠΎ ΡΠ° ΡΠ΅ΡΡΠ²Π°Π½ΠΈ Π½Π° Π²Π΅ΡΡΠΈΡ 11. ΠΠΈΠ½ΠΈΠΌΠ°Π»Π½Π°ΡΠ° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Π½Π° Π²Π΅ΡΡΠΈΡ Π΅ 9.6.
ΠΏΡΠ°ΠΈΡΡΠΎΡΠΈΡ
ΠΡΠΈΡΠΊΠΎ Π·Π°ΠΏΠΎΡΠ½Π° ΠΏΡΠ΅Π΄ΠΈ ΠΏΠΎΡΡΠΈ Π³ΠΎΠ΄ΠΈΠ½Π° Ρ Π΅Π΄Π½Π° ΡΡΡΠ°Π½Π½Π° Π·Π° ΠΌΠ΅Π½ ΡΠΈΡΡΠ°ΡΠΈΡ: ΠΊΠΎΠ½ΠΊΡΡΠ΅Π½ΡΠ½ΠΎΡΠΎ ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΠΈΠ½Π΄Π΅ΠΊΡ Π²Π½Π΅Π·Π°ΠΏΠ½ΠΎ Π·Π°Π²ΡΡΡΠΈ Ρ Π³ΡΠ΅ΡΠΊΠ°. Π‘Π°ΠΌΠΈΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ, ΠΊΠ°ΠΊΡΠΎ ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ, ΠΎΡΡΠ°Π½Π° Π² Π±Π°Π·Π°ΡΠ° Π΄Π°Π½Π½ΠΈ Π² Π½Π΅Π²Π°Π»ΠΈΠ΄Π½ΠΎ ΡΡΡΡΠΎΡΠ½ΠΈΠ΅. ΠΠ½Π°Π»ΠΈΠ·ΡΡ Π½Π° ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΈΡ ΡΠ°ΠΉΠ» ΠΏΠΎΠΊΠ°Π·Π° Π½Π΅Π΄ΠΎΡΡΠΈΠ³
ΠΡΠΎΠ±Π»Π΅ΠΌ ΠΏΡΡΠ²ΠΈ - ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅
ΠΠ΅ΡΠΎΡΡΠ½ΠΎ Π²ΡΠΈΡΠΊΠΈ ΡΠ° Π΄ΠΎΡΡΠ° ΡΠΌΠΎΡΠ΅Π½ΠΈ ΠΎΡ ΠΌΠ΅ΡΠ°ΡΠΎΡΠ°ΡΠ° Π·Π° Postgres, ΠΊΠΎΠΉΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ°Π±ΠΎΡΠΈ Π½Π° ΠΊΠ°ΡΠ΅Π²Π°ΡΠΊΠ°, Π½ΠΎ... ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ Π½Π°ΠΈΡΡΠΈΠ½Π° ΠΏΠΎΠ²Π΄ΠΈΠ³Π° ΡΠ΅Π΄ΠΈΡΠ° Π²ΡΠΏΡΠΎΡΠΈ. ΠΠ°ΡΠΎ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ ΡΠΈ ΡΡΡΡΠ²Π° Π΄Π° ΡΠ΅ ΠΎΠ±ΡΡΠ½Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΏΠ°ΠΌΠ΅Ρ_Π·Π°_ΡΠ°Π±ΠΎΡΠ° ΠΏΠΎ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ°, ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅_Π½Π°_Π²ΡΠ΅ΠΌΠ΅Π½Π΅Π½_ΡΠ°ΠΉΠ», ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ_ΠΈΠ·ΡΠ°ΠΊΠ²Π°Π½Π΅ ΠΈ lock_timeout.
Π Π½Π°ΡΠΈΡ ΡΠ»ΡΡΠ°ΠΉ ΠΏΠ°ΠΌΠ΅Ρ_Π·Π°_ΡΠ°Π±ΠΎΡΠ° ΠΏΠΎ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π±Π΅ΡΠ΅ 64 MB ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅_Π½Π°_Π²ΡΠ΅ΠΌΠ΅Π½Π΅Π½_ΡΠ°ΠΉΠ» Π½Π΅ΡΠΎ ΠΎΠΊΠΎΠ»ΠΎ 2 GB - ΠΏΡΠΎΡΡΠΎ Π½ΡΠΌΠ°Ρ ΠΌΠ΅ Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΎ ΠΏΠ°ΠΌΠ΅Ρ, Π·Π° Π΄Π° ΡΡΠ·Π΄Π°Π΄Π΅ΠΌ ΠΈΠ½Π΄Π΅ΠΊΡ Π½Π° Π³ΠΎΠ»ΡΠΌΠ° ΡΠ°Π±Π»ΠΈΡΠ°.
Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎ, Π² pg-index-Π·Π΄ΡΠ°Π²Π΅ Π‘ΡΠ±ΡΠ°Ρ
ΡΠ΅ΡΠΈΡ
ΠΡΠΎΠ±Π»Π΅ΠΌ Π²ΡΠΎΡΠΈ - Π΄ΡΠ±Π»ΠΈΡΠ°ΡΠΈ ΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΈ
ΠΠ°ΡΠΈΡΠ΅ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ ΠΆΠΈΠ²Π΅ΡΡ Π½Π° SSD ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΈ Π½ΠΈΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ HA-ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠ΅Π½ΡΡΠΎΠ²Π΅ Π·Π° Π΄Π°Π½Π½ΠΈ, Π³Π»Π°Π²Π΅Π½ Ρ ΠΎΡΡ ΠΈ n- Π±ΡΠΎΠΉ ΡΠ΅ΠΏΠ»ΠΈΠΊΠΈ. ΠΠΈΡΠΊΠΎΠ²ΠΎΡΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ΅Π½Π΅Π½ ΡΠ΅ΡΡΡΡ Π·Π° Π½Π°Ρ; ΡΠΎΠ²Π° Π΅ Π½Π΅ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ Π²Π°ΠΆΠ½ΠΎ ΠΎΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° ΠΈ ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΏΡΠΎΡΠ΅ΡΠΎΡΠ°. Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎ, ΠΎΡ Π΅Π΄Π½Π° ΡΡΡΠ°Π½Π°, ΠΈΠΌΠ°ΠΌΠ΅ Π½ΡΠΆΠ΄Π° ΠΎΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΈ Π·Π° Π±ΡΡΠ·ΠΎ ΡΠ΅ΡΠ΅Π½Π΅, Π° ΠΎΡ Π΄ΡΡΠ³Π° ΡΡΡΠ°Π½Π°, Π½Π΅ ΠΈΡΠΊΠ°ΠΌΠ΅ Π΄Π° Π²ΠΈΠΆΠ΄Π°ΠΌΠ΅ Π½Π΅Π½ΡΠΆΠ½ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΈ Π² Π±Π°Π·Π°ΡΠ° Π΄Π°Π½Π½ΠΈ, ΡΡΠΉ ΠΊΠ°ΡΠΎ ΡΠ΅ ΠΈΠ·ΡΠΆΠ΄Π°Ρ ΠΌΡΡΡΠΎ ΠΈ Π·Π°Π±Π°Π²ΡΡ Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° Π΄Π°Π½Π½ΠΈΡΠ΅.
Π ΡΠ΅Π³Π°, ΡΠ»Π΅Π΄ ΠΊΠ°ΡΠΎ Π²ΡΠ·ΡΡΠ°Π½ΠΎΠ²ΠΈ Π²ΡΠΈΡΠΊΠΎ
ΠΡΠΎΠ±Π»Π΅ΠΌ ΡΡΠΈ - ΠΏΡΠ΅ΡΠΈΡΠ°ΡΠΈ ΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΈ
ΠΠΎΠ²Π΅ΡΠ΅ΡΠΎ Π½Π°ΡΠΈΠ½Π°Π΅ΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈ ΡΡΠ·Π΄Π°Π²Π°Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠΈ Π½Π° Π΅Π΄Π½Π° ΠΊΠΎΠ»ΠΎΠ½Π°. ΠΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΠΎ, ΡΠ»Π΅Π΄ ΠΊΠ°ΡΠΎ ΡΠ° ΠΈΠ·ΠΏΠΈΡΠ°Π»ΠΈ Π·Π°Π΄ΡΠ»Π±ΠΎΡΠ΅Π½ΠΎ ΡΠΎΠ·ΠΈ Π±ΠΈΠ·Π½Π΅Ρ, Ρ
ΠΎΡΠ°ΡΠ° Π·Π°ΠΏΠΎΡΠ²Π°Ρ Π΄Π° ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°Ρ ΡΠ²ΠΎΠΈΡΠ΅ Π·Π°ΡΠ²ΠΊΠΈ ΠΈ Π΄Π° Π΄ΠΎΠ±Π°Π²ΡΡ ΠΏΠΎ-ΡΠ»ΠΎΠΆΠ½ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΈ, ΠΊΠΎΠΈΡΠΎ Π²ΠΊΠ»ΡΡΠ²Π°Ρ Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΠΊΠΎΠ»ΠΎΠ½ΠΈ. ΠΡΠΎ ΠΊΠ°ΠΊ ΡΠ΅ ΠΏΠΎΡΠ²ΡΠ²Π°Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠ΅ Π½Π° ΠΊΠΎΠ»ΠΎΠ½ΠΈΡΠ΅ A, A + B, A+B+C ΠΈ ΡΠ°ΠΊΠ° Π½Π°ΡΠ°ΡΡΠΊ. ΠΡΡΠ²ΠΈΡΠ΅ Π΄Π²Π° ΠΎΡ ΡΠ΅Π·ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΈ ΠΌΠΎΠ³Π°Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎ Π΄Π° Π±ΡΠ΄Π°Ρ ΠΈΠ·Ρ
Π²ΡΡΠ»Π΅Π½ΠΈ, ΡΡΠΉ ΠΊΠ°ΡΠΎ ΡΠ΅ ΡΠ° ΠΏΡΠ΅ΡΠΈΠΊΡΠΈ Π½Π° ΡΡΠ΅ΡΠΈΡ. Π’ΠΎΠ²Π° ΡΡΡΠΎ ΡΠΏΠ΅ΡΡΡΠ²Π° ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΠΈΡΠΊΠΎΠ²ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ ΠΈ ΠΈΠΌΠ° Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΠΊΠ° Π·Π° ΡΠΎΠ²Π°
ΠΡΠΎΠ±Π»Π΅ΠΌ ΡΠ΅ΡΠΈΡΠΈ - Π²ΡΠ½ΡΠ½ΠΈ ΠΊΠ»ΡΡΠΎΠ²Π΅ Π±Π΅Π· ΠΈΠ½Π΄Π΅ΠΊΡΠΈ
Postgres Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΡΡΠ·Π΄Π°Π²Π°ΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ Π·Π° Π²ΡΠ½ΡΠ΅Π½ ΠΊΠ»ΡΡ, Π±Π΅Π· Π΄Π° ΠΏΠΎΡΠΎΡΠ²Π°ΡΠ΅ ΡΠ΅Π·Π΅ΡΠ²Π΅Π½ ΠΈΠ½Π΄Π΅ΠΊΡ. Π ΠΌΠ½ΠΎΠ³ΠΎ ΡΠΈΡΡΠ°ΡΠΈΠΈ ΡΠΎΠ²Π° Π½Π΅ Π΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΠΈ ΠΌΠΎΠΆΠ΅ Π΄ΠΎΡΠΈ Π΄Π° Π½Π΅ ΡΠ΅ ΠΏΡΠΎΡΠ²ΠΈ... ΠΠ° ΠΌΠΎΠΌΠ΅Π½ΡΠ°...
Π‘ΡΡΠΎΡΠΎ Π±Π΅ΡΠ΅ ΠΈ Ρ Π½Π°Ρ: ΠΏΡΠΎΡΡΠΎ Π² Π½ΡΠΊΠ°ΠΊΡΠ² ΠΌΠΎΠΌΠ΅Π½Ρ Π·Π°Π΄Π°ΡΠ°, ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π°ΡΠ° ΡΠ΅ ΠΏΠΎ Π³ΡΠ°ΡΠΈΠΊ ΠΈ ΠΈΠ·ΡΠΈΡΡΠ²Π°ΡΠ° Π±Π°Π·Π°ΡΠ° Π΄Π°Π½Π½ΠΈ ΠΎΡ ΡΠ΅ΡΡΠΎΠ²ΠΈ ΠΏΠΎΡΡΡΠΊΠΈ, Π·Π°ΠΏΠΎΡΠ½Π° Π΄Π° ΡΠ΅ βΠ΄ΠΎΠ±Π°Π²Ρβ ΠΊΡΠΌ Π½Π°Ρ ΠΎΡ Π³Π»Π°Π²Π½ΠΈΡ Ρ
ΠΎΡΡ. ΠΡΠΎΡΠ΅ΡΠΎΡΡΡ ΠΈ IO ΡΠ΅ Π³ΡΠ±ΡΡ, Π·Π°ΡΠ²ΠΊΠΈΡΠ΅ ΡΠ΅ Π·Π°Π±Π°Π²ΡΡ ΠΈ ΠΈΠ·ΡΠΈΡΠ°Ρ, ΡΡΠ»ΡΠ³Π°ΡΠ° Π΅ ΠΏΠ΅ΡΡΡΠΎΡΠΈΠ½. ΠΡΡΠ· Π°Π½Π°Π»ΠΈΠ·
delete from <table> where id in (β¦)
Π ΡΠΎΠ·ΠΈ ΡΠ»ΡΡΠ°ΠΉ, ΡΠ°Π·Π±ΠΈΡΠ° ΡΠ΅, ΠΈΠΌΠ°ΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΏΠΎ id Π² ΡΠ΅Π»Π΅Π²Π°ΡΠ° ΡΠ°Π±Π»ΠΈΡΠ° ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠ°Π»ΠΊΠΎ Π·Π°ΠΏΠΈΡΠΈ Π±ΡΡ Π° ΠΈΠ·ΡΡΠΈΡΠΈ ΡΠΏΠΎΡΠ΅Π΄ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ΡΠΎ. ΠΠ·Π³Π»Π΅ΠΆΠ΄Π°ΡΠ΅, ΡΠ΅ Π²ΡΠΈΡΠΊΠΎ ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ°Π±ΠΎΡΠΈ, Π½ΠΎ, ΡΠ²ΠΈ, Π½Π΅ ΡΡΠ°Π½Π°.
ΠΡΠ΅ΠΊΡΠ°ΡΠ½ΠΈΡΡ ΡΠ΅ ΠΏΡΠΈΡΠ΅ΡΠ΅ Π½Π° ΠΏΠΎΠΌΠΎΡ ΠΎΠ±ΡΡΠ½Π΅ΡΠ΅ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠ°ΠΉΡΠ΅ ΠΈ ΠΊΠ°Π·Π°, ΡΠ΅ Π² Π΄ΠΎΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΡΠΌ ΠΈΠ·ΡΡΠΈΠ²Π°Π½Π΅ΡΠΎ Π½Π° Π·Π°ΠΏΠΈΡΠΈ Π² ΡΠ΅Π»Π΅Π²Π°ΡΠ° ΡΠ°Π±Π»ΠΈΡΠ°, ΠΈΠΌΠ° ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° ΡΠ΅ΡΠ΅ΡΠ΅Π½ΡΠ½Π°ΡΠ° ΡΡΠ»ΠΎΡΡ ΠΈ Π½Π° Π΅Π΄Π½Π° ΠΎΡ ΡΠ²ΡΡΠ·Π°Π½ΠΈΡΠ΅ ΡΠ°Π±Π»ΠΈΡΠΈ ΡΠ°Π·ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π΅ Π½Π΅ΡΡΠΏΠ΅ΡΠ½Π° ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎ ΡΠΊΠ°Π½ΠΈΡΠ°Π½Π΅ ΠΏΠΎΡΠ°Π΄ΠΈ Π»ΠΈΠΏΡΠ° Π½Π° ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ. Π’Π°ΠΊΠ° ΡΠ΅ ΡΠΎΠ΄ΠΈ Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΠΊΠ°ΡΠ°
ΠΡΠΎΠ±Π»Π΅ΠΌ ΠΏΠ΅Ρ β Π½ΡΠ»Π΅Π²Π° ΡΡΠΎΠΉΠ½ΠΎΡΡ Π² ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠ΅
ΠΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ Postgres Π²ΠΊΠ»ΡΡΠ²Π° Π½ΡΠ»Π΅Π²ΠΈ ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ Π² btree ΠΈΠ½Π΄Π΅ΠΊΡΠΈ, Π½ΠΎ ΡΠ΅ ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ Π½Π΅ ΡΠ° Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΈ ΡΠ°ΠΌ. ΠΠ°ΡΠΎΠ²Π° ΡΡΡΡΠ΄Π½ΠΎ ΡΠ΅ ΠΎΠΏΠΈΡΠ²Π°ΠΌ Π΄Π° ΠΈΠ·Ρ
Π²ΡΡΠ»Ρ ΡΠ΅Π·ΠΈ Π½ΡΠ»ΠΈ (Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΠΊΠ° where <A> is not null
. ΠΠΎ ΡΠΎΠ·ΠΈ Π½Π°ΡΠΈΠ½ ΡΡΠΏΡΡ
Π΄Π° Π½Π°ΠΌΠ°Π»Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ° Π½Π° Π΅Π΄ΠΈΠ½ ΠΎΡ Π½Π°ΡΠΈΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΈ ΠΎΡ 1877 MB Π½Π° 16 KB. Π Π² Π΅Π΄Π½Π° ΠΎΡ ΡΡΠ»ΡΠ³ΠΈΡΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΡΡ Π½Π° Π±Π°Π·Π°ΡΠ° Π΄Π°Π½Π½ΠΈ Π½Π°ΠΌΠ°Π»Ρ ΠΎΠ±ΡΠΎ Ρ 16% (Ρ 4.3 GB Π² Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΈ ΡΠΈΡΠ»Π°) ΠΏΠΎΡΠ°Π΄ΠΈ ΠΈΠ·ΠΊΠ»ΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° Π½ΡΠ»Π΅Π²ΠΈ ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ ΠΎΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠ΅. ΠΠ³ΡΠΎΠΌΠ½ΠΈ ΡΠΏΠ΅ΡΡΡΠ²Π°Π½ΠΈΡ Π½Π° Π΄ΠΈΡΠΊΠΎΠ²ΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ Ρ ΠΌΠ½ΠΎΠ³ΠΎ Π»Π΅ΡΠ½ΠΈ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ. π
ΠΡΠΎΠ±Π»Π΅ΠΌ ΡΠ΅ΡΡ β Π»ΠΈΠΏΡΠ° Π½Π° ΠΏΡΡΠ²ΠΈΡΠ½ΠΈ ΠΊΠ»ΡΡΠΎΠ²Π΅
ΠΠΎΡΠ°Π΄ΠΈ Π΅ΡΡΠ΅ΡΡΠ²ΠΎΡΠΎ Π½Π° ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌΠ°
ΠΠ΄ΠΈΠ½ Π΄Π΅Π½ Π΅Π΄Π½Π° ΡΡΠ΄Π΅ΡΠ½Π° ΠΌΠΈΠ³ΡΠ°ΡΠΈΡ Π²Π·Π΅ ΠΈ Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ° Π²ΡΠΈΡΠΊΠΈ Π·Π°ΠΏΠΈΡΠΈ Π² Π³ΠΎΠ»ΡΠΌΠ° ΠΈ Π°ΠΊΡΠΈΠ²Π½ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° ΡΠ°Π±Π»ΠΈΡΠ°. ΠΠΎΠ»ΡΡΠΈΡ
ΠΌΠ΅ +100 GB ΠΊΡΠΌ ΡΠ°Π·ΠΌΠ΅ΡΠ° Π½Π° ΠΌΠ°ΡΠ°ΡΠ° Π½Π΅ΠΎΡΠ°ΠΊΠ²Π°Π½ΠΎ. ΠΠ΅ΡΠ΅ Π°Π΄ΡΠΊΠΈ ΠΆΠ°Π»ΠΊΠΎ, Π½ΠΎ Π·Π»ΠΎΠΏΠΎΠ»ΡΠΊΠΈΡΠ΅ Π½ΠΈ Π½Π΅ ΡΠ²ΡΡΡΠΈΡ
Π° Π΄ΠΎΡΡΠΊ. Π‘Π»Π΅Π΄ ΠΊΠ°ΡΠΎ Π°Π²ΡΠΎΠ²Π°ΠΊΡΡΠΌΡΡ Π½Π° ΡΠ°Π·ΠΈ ΠΌΠ°ΡΠ° ΠΏΡΠΈΠΊΠ»ΡΡΠΈ 15 ΡΠ°ΡΠ° ΠΏΠΎ-ΠΊΡΡΠ½ΠΎ, ΡΡΠ°Π½Π° ΡΡΠ½ΠΎ, ΡΠ΅ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΡΠΎ ΠΌΠ΅ΡΡΠΎΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½ΡΠΌΠ° Π΄Π° ΡΠ΅ Π²ΡΡΠ½Π΅. ΠΠ΅ ΠΌΠΎΠΆΠ°Ρ
ΠΌΠ΅ Π΄Π° ΡΠΏΡΠ΅ΠΌ ΡΡΠ»ΡΠ³Π°ΡΠ° ΠΈ Π΄Π° Π½Π°ΠΏΡΠ°Π²ΠΈΠΌ VACUUM FULL, Π·Π°ΡΠΎΠ²Π° ΡΠ΅ΡΠΈΡ
ΠΌΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅
ΠΡΠ² Π²Π΅ΡΡΠΈΡΡΠ° Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° 0.1.5 ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΡΡΠ±ΠΈΡΠ°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΎΡ ΡΠ°Π·Π΄ΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ°Π±Π»ΠΈΡΠΈ ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΈ ΠΈ ΡΠ΅Π°Π³ΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΡ ΡΠ²ΠΎΠ΅Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ.
ΠΡΠΎΠ±Π»Π΅ΠΌΠΈ ΡΠ΅Π΄ΠΌΠ° ΠΈ ΠΎΡΠΌΠ° - Π½Π΅Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΈ ΠΈ Π½Π΅ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΈ
Π‘Π»Π΅Π΄Π½ΠΈΡΠ΅ Π΄Π²Π΅ Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΠΊΠΈ ΡΠ°:
ΠΠ°ΠΊΡΠΎ Π²Π΅ΡΠ΅ ΠΏΠΈΡΠ°Ρ
, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Ρ Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΡΠ΅ΠΏΠ»ΠΈΠΊΠΈ ΠΈ Π½Π°ΡΠΎΠ²Π°ΡΠ²Π°Π½Π΅ΡΠΎ ΠΏΡΠΈ ΡΠ΅ΡΠ΅Π½Π΅ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈΡΠ΅ Ρ
ΠΎΡΡΠΎΠ²Π΅ Π΅ ΠΊΠΎΡΠ΅Π½Π½ΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΠΎ. Π ΡΠ΅Π·ΡΠ»ΡΠ°Ρ Π½Π° ΡΠΎΠ²Π° ΡΠΈΡΡΠ°ΡΠΈΡΡΠ° ΡΠ΅ ΠΎΠΊΠ°Π·Π²Π°, ΡΠ΅ Π½ΡΠΊΠΎΠΈ ΡΠ°Π±Π»ΠΈΡΠΈ ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΈ Π½Π° Π½ΡΠΊΠΎΠΈ Ρ
ΠΎΡΡΠΎΠ²Π΅ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π½Π΅ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΈ Π·Π° Π°Π½Π°Π»ΠΈΠ· ΡΡΡΠ±Π²Π° Π΄Π° ΡΡΠ±Π΅ΡΠ΅ΡΠ΅ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠ° ΠΎΡ Π²ΡΠΈΡΠΊΠΈ Ρ
ΠΎΡΡΠΎΠ²Π΅ Π² ΠΊΠ»ΡΡΡΠ΅ΡΠ°.
Π’ΠΎΠ·ΠΈ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Π½ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈ Π΄Π° ΡΠΏΠ΅ΡΡΠΈΠΌ Π½ΡΠΊΠΎΠ»ΠΊΠΎ Π΄Π΅ΡΠ΅ΡΠΊΠΈ Π³ΠΈΠ³Π°Π±Π°ΠΉΡΠ° ΡΡΠ΅Π· ΠΏΡΠ΅ΠΌΠ°Ρ Π²Π°Π½Π΅ Π½Π° ΠΈΠ½Π΄Π΅ΠΊΡΠΈ, ΠΊΠΎΠΈΡΠΎ Π½ΠΈΠΊΠΎΠ³Π° Π½Π΅ ΡΠ° Π±ΠΈΠ»ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ, ΠΊΠ°ΠΊΡΠΎ ΠΈ Π΄ΠΎΠ±Π°Π²ΡΠ½Π΅ Π½Π° Π»ΠΈΠΏΡΠ²Π°ΡΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΈ ΠΊΡΠΌ ΡΡΠ΄ΠΊΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ ΡΠ°Π±Π»ΠΈΡΠΈ.
ΠΠ°ΡΠΎ Π·Π°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π Π°Π·Π±ΠΈΡΠ° ΡΠ΅, Π·Π° ΠΏΠΎΡΡΠΈ Π²ΡΠΈΡΠΊΠΈ Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΠΊΠΈ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°ΡΠ΅
ΠΡΠΊΠΎΠΈ Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΠΊΠΈ ΠΌΠΎΠ³Π°Ρ Π΄Π° Π±ΡΠ΄Π°Ρ ΠΈΠ·Π²ΡΡΡΠ΅Π½ΠΈ Π²ΡΠ² ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΈ ΡΠ΅ΡΡΠΎΠ²Π΅ Π²Π΅Π΄Π½Π°Π³Π° ΡΠ»Π΅Π΄ Π²ΡΠ²Π΅ΠΆΠ΄Π°Π½Π΅ΡΠΎ Π½Π° ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ Π½Π° Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ. Π ΡΠΎΠ²Π° Π΅ ΠΌΠΎΠΆΠ΅ Π±ΠΈ Π΅Π΄Π½Π° ΠΎΡ Π½Π°ΠΉ-ΠΌΠΎΡΠ½ΠΈΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π½Π° ΠΌΠΎΡΡΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°. ΠΡΠΈΠΌΠ΅Ρ Π·Π° ΡΠΏΠΎΡΡΠ΅Π±Π° ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ Π½Π°ΠΌΠ΅ΡΠ΅Π½ Π²
ΠΠΌΠ° ΡΠΌΠΈΡΡΠ» Π΄Π° ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ²Π°Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π·Π° Π½Π΅ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ ΠΈΠ»ΠΈ Π»ΠΈΠΏΡΠ²Π°ΡΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΈ, ΠΊΠ°ΠΊΡΠΎ ΠΈ Π·Π° ΡΠ°Π·Π΄ΡΠ²Π°Π½Π΅, ΡΠ°ΠΌΠΎ Π½Π° ΡΠ΅Π°Π»Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ. Π‘ΡΠ±ΡΠ°Π½ΠΈΡΠ΅ ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ ΠΌΠΎΠ³Π°Ρ Π΄Π° Π±ΡΠ΄Π°Ρ Π·Π°ΠΏΠΈΡΠ°Π½ΠΈ Π²
Π‘ΠΈΠ»Π½ΠΎ ΡΠ΅ Π½Π°Π΄ΡΠ²Π°ΠΌ Π½Π° ΡΠΎΠ²Π° pg-index-Π·Π΄ΡΠ°Π²Π΅ ΡΠ΅ Π±ΡΠ΄Π΅ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΈ ΡΡΡΡΠ΅Π½ΠΎ. ΠΠΎΠΆΠ΅ΡΠ΅ ΡΡΡΠΎ ΡΠ°ΠΊΠ° Π΄Π° Π΄ΠΎΠΏΡΠΈΠ½Π΅ΡΠ΅ΡΠ΅ Π·Π° ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ΡΠΎ Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ°, ΠΊΠ°ΡΠΎ Π΄ΠΎΠΊΠ»Π°Π΄Π²Π°ΡΠ΅ Π·Π° ΠΎΡΠΊΡΠΈΡΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ ΠΈ ΠΏΡΠ΅Π΄Π»Π°Π³Π°ΡΠ΅ Π½ΠΎΠ²Π° Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΠΊΠ°.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: www.habr.com