Π’ΡΠΉ ΠΊΠ°ΡΠΎ ClickHouse Π΅ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°, Π΅ Π²Π°ΠΆΠ½ΠΎ Π΄Π° ΡΠ΅ Π²Π·Π΅ΠΌΠ°Ρ ΠΏΡΠ΅Π΄Π²ΠΈΠ΄ ΠΎΡΠΎΠ±Π΅Π½ΠΎΡΡΠΈΡΠ΅ Π½Π° Π½Π΅ΠΉΠ½Π°ΡΠ° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ° ΠΏΡΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ ΠΉ. Π ΡΠΎΠ·ΠΈ Π΄ΠΎΠΊΠ»Π°Π΄ ΠΠ»Π΅ΠΊΡΠ΅ΠΉ ΡΠ΅ Π³ΠΎΠ²ΠΎΡΠΈ Π·Π° ΠΏΡΠΈΠΌΠ΅ΡΠΈ Π·Π° ΡΠΈΠΏΠΈΡΠ½ΠΈ Π³ΡΠ΅ΡΠΊΠΈ ΠΏΡΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ClickHouse, ΠΊΠΎΠΈΡΠΎ ΠΌΠΎΠ³Π°Ρ Π΄Π° Π΄ΠΎΠ²Π΅Π΄Π°Ρ Π΄ΠΎ Π½Π΅Π΅ΡΠ΅ΠΊΡΠΈΠ²Π½Π° ΡΠ°Π±ΠΎΡΠ°. ΠΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΡΠΈΠΌΠ΅ΡΠΈ, ΡΠ΅ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ ΠΊΠ°ΠΊ ΠΈΠ·Π±ΠΎΡΡΡ Π½Π° Π΅Π΄Π½Π° ΠΈΠ»ΠΈ Π΄ΡΡΠ³Π° ΡΡ Π΅ΠΌΠ° Π·Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Π΄Π°Π½Π½ΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΡΠΎΠΌΠ΅Π½ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° Ρ ΠΏΠΎΡΡΠ΄ΡΡΠΈ.
ΠΠ΄ΡΠ°Π²Π΅ΠΉΡΠ΅ Π²ΡΠΈΡΠΊΠΈ! ΠΠ°Π·Π²Π°ΠΌ ΡΠ΅ ΠΠ»Π΅ΠΊΡΠ΅ΠΉ, ΠΏΡΠ°Π²Ρ ClickHouse.
ΠΡΡΠ²ΠΎ, Π±ΡΡΠ·Π°ΠΌ Π΄Π° Π²ΠΈ Π·Π°ΡΠ°Π΄Π²Π°ΠΌ Π²Π΅Π΄Π½Π°Π³Π°, Π΄Π½Π΅Ρ Π½ΡΠΌΠ° Π΄Π° Π²ΠΈ ΠΊΠ°ΠΆΠ° ΠΊΠ°ΠΊΠ²ΠΎ Π΅ ClickHouse. Π§Π΅ΡΡΠ½ΠΎ ΠΊΠ°Π·Π°Π½ΠΎ, ΡΠΌΠΎΡΠΈΡ ΡΠ΅ ΠΎΡ ΡΠΎΠ²Π°. ΠΡΠ΅ΠΊΠΈ ΠΏΡΡ ΡΠΈ ΠΊΠ°Π·Π²Π°ΠΌ ΠΊΠ°ΠΊΠ²ΠΎ Π΅. Π Π²Π΅ΡΠΎΡΡΠ½ΠΎ Π²ΡΠΈΡΠΊΠΈ Π²Π΅ΡΠ΅ Π·Π½Π°ΡΡ.
ΠΠΌΠ΅ΡΡΠΎ ΡΠΎΠ²Π° ΡΠ΅ Π²ΠΈ ΠΊΠ°ΠΆΠ° ΠΊΠ°ΠΊΡΠ² Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΈΡΡ ΡΠ΅ΠΉΠΊ, Ρ.Π΅. ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ Π·Π»ΠΎΡΠΏΠΎΡΡΠ΅Π±ΡΠ²Π° Ρ ClickHouse. ΠΡΡΡΠ½ΠΎΡΡ Π½Π΅ ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ΅ ΡΡΡΠ°Ρ ΡΠ²Π°ΡΠ΅, Π·Π°ΡΠΎΡΠΎ Π½ΠΈΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ²Π°ΠΌΠ΅ ClickHouse ΠΊΠ°ΡΠΎ ΡΠΈΡΡΠ΅ΠΌΠ°, ΠΊΠΎΡΡΠΎ Π΅ ΠΏΡΠΎΡΡΠ°, ΡΠ΄ΠΎΠ±Π½Π° ΠΈ ΡΠ°Π±ΠΎΡΠΈ ΠΈΠ·Π²ΡΠ½ ΠΊΡΡΠΈΡΡΠ°. ΠΠ½ΡΡΠ°Π»ΠΈΡΠ° Π²ΡΠΈΡΠΊΠΎ, Π½ΡΠΌΠ° ΠΏΡΠΎΠ±Π»Π΅ΠΌ.
ΠΠΎ Π²ΡΠ΅ ΠΏΠ°ΠΊ ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ΅ ΠΈΠΌΠ° ΠΏΡΠ΅Π΄Π²ΠΈΠ΄, ΡΠ΅ ΡΠ°Π·ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ° Π΅ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° ΠΈ Π»Π΅ΡΠ½ΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΏΠΎΠΏΠ°Π΄Π½Π΅ΡΠ΅ Π½Π° Π½Π΅ΠΎΠ±ΠΈΡΠ°Π΅Π½ ΡΠ»ΡΡΠ°ΠΉ Π½Π° ΡΠΏΠΎΡΡΠ΅Π±Π°, ΠΊΠΎΠΉΡΠΎ Π΄Π° ΠΈΠ·Π²Π°Π΄ΠΈ ΡΠ°Π·ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΎΡ Π·ΠΎΠ½Π°ΡΠ° ΠΉ Π½Π° ΠΊΠΎΠΌΡΠΎΡΡ.
Π ΡΠ°ΠΊΠ°, ΠΊΠ°ΠΊΠ²ΠΈ ΡΠ° ΡΠ΅ΠΉΠΊΠΎΠ²Π΅ΡΠ΅? ΠΠΎ ΠΏΡΠΈΠ½ΡΠΈΠΏ ΡΠ΅ Π³ΠΎΠ²ΠΎΡΡ Π·Π° ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΈΡΠ΅ Π½Π΅ΡΠ°. ΠΡΠΈΡΠΊΠΎ Π΅ ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΎ Π·Π° Π²ΡΠΈΡΠΊΠΈ, Π²ΡΠ΅ΠΊΠΈ ΡΠ°Π·Π±ΠΈΡΠ° Π²ΡΠΈΡΠΊΠΎ ΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΡΠ°Π΄Π²Π°, ΡΠ΅ Π΅ ΡΠΎΠ»ΠΊΠΎΠ²Π° ΡΠΌΠ΅Π½, Π° ΠΊΠΎΠΉΡΠΎ Π½Π΅ ΡΠ°Π·Π±ΠΈΡΠ°, ΡΠ΅ Π½Π°ΡΡΠΈ Π½Π΅ΡΠΎ Π½ΠΎΠ²ΠΎ.
ΠΡΡΠ²ΠΈΡΡ Π½Π°ΠΉ-ΠΏΡΠΎΡΡ ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΎΠΉΡΠΎ Π·Π° ΡΡΠΆΠ°Π»Π΅Π½ΠΈΠ΅ ΡΠ΅ΡΡΠΎ ΡΠ΅ ΡΡΠ΅ΡΠ°, Π΅ Π³ΠΎΠ»ΡΠΌ Π±ΡΠΎΠΉ Π²Π»ΠΎΠΆΠΊΠΈ Ρ ΠΌΠ°Π»ΠΊΠΈ ΠΏΠ°ΡΡΠΈΠ΄ΠΈ, Ρ.Π΅. Π³ΠΎΠ»ΡΠΌ Π±ΡΠΎΠΉ ΠΌΠ°Π»ΠΊΠΈ Π²Π»ΠΎΠΆΠΊΠΈ.
ΠΠΊΠΎ ΡΠ°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ ΠΊΠ°ΠΊ ClickHouse ΠΈΠ·Π²ΡΡΡΠ²Π° Π²ΠΌΡΠΊΠ²Π°Π½Π΅, ΡΠΎΠ³Π°Π²Π° ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΈΠ·ΠΏΡΠ°ΡΠΈΡΠ΅ ΠΏΠΎΠ½Π΅ ΡΠ΅ΡΠ°Π±Π°ΠΉΡ Π΄Π°Π½Π½ΠΈ Π² Π΅Π΄Π½Π° Π·Π°ΡΠ²ΠΊΠ°. ΠΠ΅ Π΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌ.
Π Π΄Π° Π²ΠΈΠ΄ΠΈΠΌ ΠΊΠ°ΠΊΠ²ΠΎ ΡΠ΅ Π±ΡΠ΄Π΅ ΡΠΈΠΏΠΈΡΠ½ΠΎΡΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΡΠ½Π΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠΌΠ°ΠΌΠ΅ ΡΠ°Π±Π»ΠΈΡΠ° Ρ Π΄Π°Π½Π½ΠΈ Π½Π° Yandex.Metrica. Π₯ΠΈΡΠΎΠ²Π΅. 105 Π½ΡΠΊΠΎΠΈ ΠΊΠΎΠ»ΠΎΠ½ΠΈ. 700 Π±Π°ΠΉΡΠ° Π½Π΅ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡΠ°Π½ΠΈ. Π Π½ΠΈΠ΅ ΡΠ΅ Π²ΠΌΡΠΊΠ½Π΅ΠΌ ΠΏΠΎ Π΄ΠΎΠ±ΡΡ Π½Π°ΡΠΈΠ½ ΠΏΠ°ΡΡΠΈΠ΄ΠΈ ΠΎΡ Π΅Π΄ΠΈΠ½ ΠΌΠΈΠ»ΠΈΠΎΠ½ ΡΠ΅Π΄Π°.
ΠΠΌΡΠΊΠ²Π°ΠΌΠ΅ Π² ΡΠ°Π±Π»ΠΈΡΠ°ΡΠ° MergeTree, ΠΏΠΎΠ»ΡΡΠ°Π²Π°Ρ ΡΠ΅ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½ ΠΌΠΈΠ»ΠΈΠΎΠ½ ΡΠ΅Π΄Π° Π² ΡΠ΅ΠΊΡΠ½Π΄Π°. Π‘ΡΡΠ°Ρ ΠΎΡΠ΅Π½. Π ΡΠ΅ΠΏΠ»ΠΈΠΊΠΈΡΠ°Π½Π° ΡΠ°Π±Π»ΠΈΡΠ° - ΡΠ΅ Π±ΡΠ΄Π΅ ΠΌΠ°Π»ΠΊΠΎ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ, ΠΎΠΊΠΎΠ»ΠΎ 400 000 ΡΠ΅Π΄Π° Π² ΡΠ΅ΠΊΡΠ½Π΄Π°.
Π Π°ΠΊΠΎ Π²ΠΊΠ»ΡΡΠΈΡΠ΅ Π²ΠΌΡΠΊΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΊΠ²ΠΎΡΡΠΌΠ°, ΠΏΠΎΠ»ΡΡΠ°Π²Π°ΡΠ΅ ΠΌΠ°Π»ΠΊΠΎ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ, Π½ΠΎ Π²ΡΠ΅ ΠΏΠ°ΠΊ ΠΏΡΠΈΠ»ΠΈΡΠ½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡ, 250 000 ΠΏΡΡΠΈ Π² ΡΠ΅ΠΊΡΠ½Π΄Π°. ΠΠΌΡΠΊΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΊΠ²ΠΎΡΡΠΌ Π΅ Π½Π΅Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΠ°Π½Π° ΡΡΠ½ΠΊΡΠΈΡ Π² ClickHouse*.
* ΠΊΡΠΌ 2020 Π³.,
ΠΠ°ΠΊΠ²ΠΎ ΡΠ΅ ΡΠ»ΡΡΠ²Π°, Π°ΠΊΠΎ Π³ΠΎ Π½Π°ΠΏΡΠ°Π²ΠΈΡΠ΅ ΠΏΠΎΠ³ΡΠ΅ΡΠ½ΠΎ? ΠΠΌΡΠΊΠ²Π°ΠΌΠ΅ Π΅Π΄ΠΈΠ½ ΡΠ΅Π΄ Π² ΡΠ°Π±Π»ΠΈΡΠ°ΡΠ° MergeTree ΠΈ ΠΏΠΎΠ»ΡΡΠ°Π²Π°ΠΌΠ΅ 59 ΡΠ΅Π΄Π° Π² ΡΠ΅ΠΊΡΠ½Π΄Π°. Π’ΠΎΠ²Π° Π΅ 10 000 ΠΏΡΡΠΈ Π±Π°Π²Π½ΠΎ. Π ReplicatedMergeTree - 6 ΡΠ΅Π΄Π° Π² ΡΠ΅ΠΊΡΠ½Π΄Π°. Π Π°ΠΊΠΎ ΠΊΠ²ΠΎΡΡΠΌΡΡ ΡΠ΅ Π²ΠΊΠ»ΡΡΠΈ, ΡΠΎΠ³Π°Π²Π° ΡΠ΅ ΠΏΠΎΠ»ΡΡΠ°Π²Π°Ρ 2 ΡΠ΅Π΄Π° Π² ΡΠ΅ΠΊΡΠ½Π΄Π°. Π‘ΠΏΠΎΡΠ΅Π΄ ΠΌΠ΅Π½ ΡΠΎΠ²Π° Π΅ Π½ΡΠΊΠ°ΠΊΠ²Π° ΠΏΡΠ»Π½Π° Π³Π»ΡΠΏΠΎΡΡ. ΠΠ°ΠΊ ΠΌΠΎΠΆΠ΅Ρ Π΄Π° Π·Π°Π±Π°Π²ΠΈΡ ΡΠ°ΠΊΠ°? ΠΠΎΡΠΈ Π½Π° ΡΠ΅Π½ΠΈΡΠΊΠ°ΡΠ° ΠΌΠΈ ΠΏΠΈΡΠ΅, ΡΠ΅ ClickHouse Π½Π΅ ΡΡΡΠ±Π²Π° Π΄Π° Π·Π°Π±Π°Π²Ρ. ΠΠΎ Π²ΡΠΏΡΠ΅ΠΊΠΈ ΡΠΎΠ²Π° ΠΏΠΎΠ½ΡΠΊΠΎΠ³Π° ΡΠ΅ ΡΠ»ΡΡΠ²Π°.
ΠΡΡΡΠ½ΠΎΡΡ ΡΠΎΠ²Π° Π΅ Π½Π°ΡΠΈΡΡ Π½Π΅Π΄ΠΎΡΡΠ°ΡΡΠΊ. ΠΠΎΠΆΠ΅Ρ ΠΌΠ΅ Π΄Π° Π³ΠΎ Π½Π°ΠΊΠ°ΡΠ°ΠΌΠ΅ Π΄Π° ΡΠ°Π±ΠΎΡΠΈ Π΄ΠΎΠ±ΡΠ΅, Π½ΠΎ Π½Π΅ Π³ΠΎ Π½Π°ΠΏΡΠ°Π²ΠΈΡ ΠΌΠ΅. Π Π½ΠΈΠ΅ Π½ΡΠΌΠ°Ρ ΠΌΠ΅, Π·Π°ΡΠΎΡΠΎ Π½Π°ΡΠΈΡΡ ΡΡΠ΅Π½Π°ΡΠΈΠΉ Π½ΡΠΌΠ°ΡΠ΅ Π½ΡΠΆΠ΄Π° ΠΎΡ ΡΠΎΠ²Π°. ΠΠ΅ΡΠ΅ ΠΈΠΌΠ°Ρ ΠΌΠ΅ ΠΏΠ°ΡΡΠΈΠ΄ΠΈ. Π’ΠΎΠΊΡ-ΡΠΎ ΠΏΠΎΠ»ΡΡΠΈΡ ΠΌΠ΅ ΠΏΠ°ΡΡΠΈΠ΄ΠΈ Π½Π° Π²Ρ ΠΎΠ΄Π° ΠΈ Π½ΡΠΌΠ° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ. ΠΠΊΠ»ΡΡΠ΅ΡΠ΅ Π³ΠΎ ΠΈ Π²ΡΠΈΡΠΊΠΎ ΡΠ°Π±ΠΎΡΠΈ Π΄ΠΎΠ±ΡΠ΅. ΠΠΎ, ΡΠ°Π·Π±ΠΈΡΠ° ΡΠ΅, Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΈ ΡΠ° Π²ΡΡΠΊΠ°ΠΊΠ²ΠΈ ΡΡΠ΅Π½Π°ΡΠΈΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΎΠ³Π°ΡΠΎ ΠΈΠΌΠ°ΡΠ΅ ΠΊΡΠΏ ΡΡΡΠ²ΡΡΠΈ, Π½Π° ΠΊΠΎΠΈΡΠΎ ΡΠ΅ Π³Π΅Π½Π΅ΡΠΈΡΠ°Ρ Π΄Π°Π½Π½ΠΈ. Π ΡΠ΅ Π½Π΅ Π²ΠΌΡΠΊΠ²Π°Ρ Π΄Π°Π½Π½ΠΈ ΡΠΎΠ»ΠΊΠΎΠ²Π° ΡΠ΅ΡΡΠΎ, Π½ΠΎ Π²ΡΠ΅ ΠΏΠ°ΠΊ ΠΏΠΎΠ»ΡΡΠ°Π²Π°Ρ ΡΠ΅ΡΡΠΈ Π²ΠΌΡΠΊΠ²Π°Π½ΠΈΡ. Π ΡΡΡΠ±Π²Π° ΠΏΠΎ Π½ΡΠΊΠ°ΠΊΡΠ² Π½Π°ΡΠΈΠ½ Π΄Π° ΠΈΠ·Π±Π΅Π³Π½Π΅ΡΠ΅ ΡΠΎΠ²Π°.
ΠΡ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠ° Π³Π»Π΅Π΄Π½Π° ΡΠΎΡΠΊΠ° Π½Π°ΠΉ-Π²Π°ΠΆΠ½ΠΎΡΠΎ Π΅, ΡΠ΅ ΠΊΠΎΠ³Π°ΡΠΎ ΠΏΡΠ°Π²ΠΈΡΠ΅ Π²ΠΌΡΠΊΠ²Π°Π½Π΅ Π² ClickHouse, Π΄Π°Π½Π½ΠΈΡΠ΅ Π½Π΅ Π²Π»ΠΈΠ·Π°Ρ Π² Π½ΠΈΡΠΎ Π΅Π΄Π½Π° memtable. ΠΠΎΡΠΈ Π½ΡΠΌΠ°ΠΌΠ΅ ΠΈΡΡΠΈΠ½ΡΠΊΠ° Π»ΠΎΠ³ ΡΡΡΡΠΊΡΡΡΠ° Π½Π° MergeTree, Π° ΡΠ°ΠΌΠΎ MergeTree, Π·Π°ΡΠΎΡΠΎ Π½ΡΠΌΠ° Π½ΠΈΡΠΎ log, Π½ΠΈΡΠΎ memTable. ΠΡΠΎΡΡΠΎ Π½Π΅Π·Π°Π±Π°Π²Π½ΠΎ Π·Π°ΠΏΠΈΡΠ²Π°ΠΌΠ΅ Π΄Π°Π½Π½ΠΈΡΠ΅ Π²ΡΠ² ΡΠ°ΠΉΠ»ΠΎΠ²Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ°, Π²Π΅ΡΠ΅ ΡΠ°Π·Π»ΠΎΠΆΠ΅Π½Π° Π½Π° ΠΊΠΎΠ»ΠΎΠ½ΠΈ. Π Π°ΠΊΠΎ ΠΈΠΌΠ°ΡΠ΅ 100 ΠΊΠΎΠ»ΠΎΠ½ΠΈ, ΡΠΎΠ³Π°Π²Π° ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΎΡ 200 ΡΠ°ΠΉΠ»Π° ΡΠ΅ ΡΡΡΠ±Π²Π° Π΄Π° Π±ΡΠ΄Π°Ρ Π·Π°ΠΏΠΈΡΠ°Π½ΠΈ Π² ΠΎΡΠ΄Π΅Π»Π½Π° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ. ΠΡΠΈΡΠΊΠΎ ΡΠΎΠ²Π° Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΡΡΠΎΠΌΠ°Π²ΠΎ.
Π Π²ΡΠ·Π½ΠΈΠΊΠ²Π° Π²ΡΠΏΡΠΎΡΡΡ: βΠΠ°ΠΊ Π΄Π° Π³ΠΎ Π½Π°ΠΏΡΠ°Π²Ρ ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ?β ΠΠΊΠΎ Π²ΡΠ·Π½ΠΈΠΊΠ½Π΅ ΡΠ°ΠΊΠ°Π²Π° ΡΠΈΡΡΠ°ΡΠΈΡ, Π²ΡΠ΅ ΠΎΡΠ΅ ΡΡΡΠ±Π²Π° ΠΏΠΎ Π½ΡΠΊΠ°ΠΊΡΠ² Π½Π°ΡΠΈΠ½ Π΄Π° Π·Π°ΠΏΠΈΡΠ΅ΡΠ΅ Π΄Π°Π½Π½ΠΈ Π² ClickHouse.
ΠΠ΅ΡΠΎΠ΄ 1. Π’ΠΎΠ²Π° Π΅ Π½Π°ΠΉ-Π»Π΅ΡΠ½ΠΈΡΡ Π½Π°ΡΠΈΠ½. ΠΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅ Π½ΡΠΊΠ°ΠΊΡΠ² Π²ΠΈΠ΄ ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π° ΠΎΠΏΠ°ΡΠΊΠ°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ ΠΠ°ΡΠΊΠ°. ΠΡΠΎΡΡΠΎ ΠΈΠ·Π²Π°ΠΆΠ΄Π°ΡΠ΅ Π΄Π°Π½Π½ΠΈ ΠΎΡ Kafka, Π½ΠΈΠ΅ Π³ΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ°ΠΌΠ΅ Π²Π΅Π΄Π½ΡΠΆ Π½Π° ΡΠ΅ΠΊΡΠ½Π΄Π°. Π Π²ΡΠΈΡΠΊΠΎ ΡΠ΅ Π±ΡΠ΄Π΅ Π½Π°ΡΠ΅Π΄, Π·Π°ΠΏΠΈΡΠ²Π°ΡΠ΅, Π²ΡΠΈΡΠΊΠΎ ΡΠ°Π±ΠΎΡΠΈ Π΄ΠΎΠ±ΡΠ΅.
ΠΠ΅Π΄ΠΎΡΡΠ°ΡΡΡΠΈΡΠ΅ ΡΠ°, ΡΠ΅ Kafka Π΅ Π΄ΡΡΠ³Π° ΡΡΠΎΠΌΠ°Π²Π° ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°. Π Π°Π·Π±ΠΈΡΠ°ΠΌ ΡΡΡΠΎ ΡΠ°ΠΊΠ°, Π°ΠΊΠΎ Π²Π΅ΡΠ΅ ΠΈΠΌΠ°ΡΠ΅ ΠΠ°ΡΠΊΠ° Π²ΡΠ² Π²Π°ΡΠ°ΡΠ° ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ. ΠΠΎΠ±ΡΠ΅ Π΅, ΡΠ΄ΠΎΠ±Π½ΠΎ Π΅. ΠΠΎ Π°ΠΊΠΎ Π½Π΅ Π΅ ΡΠ°ΠΌ, ΡΠΎΠ³Π°Π²Π° ΡΡΡΠ±Π²Π° Π΄Π° ΠΏΠΎΠΌΠΈΡΠ»ΠΈΡΠ΅ ΡΡΠΈ ΠΏΡΡΠΈ, ΠΏΡΠ΅Π΄ΠΈ Π΄Π° ΠΏΠ»ΡΠ·Π½Π΅ΡΠ΅ Π΄ΡΡΠ³Π° ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ° Π²ΡΠ² Π²Π°ΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡ. Π Π·Π°ΡΠΎΠ²Π° ΡΠΈ ΡΡΡΡΠ²Π° Π΄Π° ΠΎΠ±ΠΌΠΈΡΠ»ΠΈΠΌ Π°Π»ΡΠ΅ΡΠ½Π°ΡΠΈΠ²ΠΈ.
ΠΠ΅ΡΠΎΠ΄ 2. ΠΡΠΎ Π΅Π΄Π½Π° Π°Π»ΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π° ΠΎΡ ΡΡΠ°ΡΠ°ΡΠ° ΡΠΊΠΎΠ»Π° ΠΈ Π² ΡΡΡΠΎΡΠΎ Π²ΡΠ΅ΠΌΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΠ°. ΠΠΌΠ°ΡΠ΅ Π»ΠΈ Π½ΡΠΊΠ°ΠΊΡΠ² ΡΡΡΠ²ΡΡ, ΠΊΠΎΠΉΡΠΎ Π³Π΅Π½Π΅ΡΠΈΡΠ° Π²Π°ΡΠΈΡΠ΅ Π»ΠΎΠ³ΠΎΠ²Π΅. Π ΠΏΡΠΎΡΡΠΎ Π·Π°ΠΏΠΈΡΠ²Π° Π²Π°ΡΠΈΡΠ΅ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π²ΡΠ² ΡΠ°ΠΉΠ». Π Π²Π΅Π΄Π½ΡΠΆ Π² ΡΠ΅ΠΊΡΠ½Π΄Π°, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠ΅ΠΈΠΌΠ΅Π½ΡΠ²Π°ΠΌΠ΅ ΡΠΎΠ·ΠΈ ΡΠ°ΠΉΠ», ΠΎΡΠ²Π°ΡΡΠΌΠ΅ Π½ΠΎΠ². Π ΠΎΡΠ΄Π΅Π»Π΅Π½ ΡΠΊΡΠΈΠΏΡ ΠΈΠ»ΠΈ ΠΎΡ cron, ΠΈΠ»ΠΈ ΠΎΡ Π½ΡΠΊΠ°ΠΊΡΠ² Π΄Π΅ΠΌΠΎΠ½ Π²Π·Π΅ΠΌΠ° Π½Π°ΠΉ-ΡΡΠ°ΡΠΈΡ ΡΠ°ΠΉΠ» ΠΈ Π³ΠΎ Π·Π°ΠΏΠΈΡΠ²Π° Π² ClickHouse. ΠΠΊΠΎ ΠΏΠΈΡΠ΅ΡΠ΅ Π»ΠΎΠ³ΠΎΠ²Π΅ Π²Π΅Π΄Π½ΡΠΆ Π½Π° ΡΠ΅ΠΊΡΠ½Π΄Π°, ΡΠΎΠ³Π°Π²Π° Π²ΡΠΈΡΠΊΠΎ ΡΠ΅ Π±ΡΠ΄Π΅ Π½Π°ΡΠ΅Π΄.
ΠΠΎ Π½Π΅Π΄ΠΎΡΡΠ°ΡΡΠΊΡΡ Π½Π° ΡΠΎΠ·ΠΈ ΠΌΠ΅ΡΠΎΠ΄ Π΅, ΡΠ΅ Π°ΠΊΠΎ Π²Π°ΡΠΈΡΡ ΡΡΡΠ²ΡΡ, Π½Π° ΠΊΠΎΠΉΡΠΎ ΡΠ΅ Π³Π΅Π½Π΅ΡΠΈΡΠ°Ρ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΈΡΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅, Π΅ ΠΈΠ·ΡΠ΅Π·Π½Π°Π» Π½ΡΠΊΡΠ΄Π΅, ΡΠΎΠ³Π°Π²Π° Π΄Π°Π½Π½ΠΈΡΠ΅ ΡΡΡΠΎ ΡΠ΅ ΠΈΠ·ΡΠ΅Π·Π½Π°Ρ.
ΠΠ΅ΡΠΎΠ΄ 3. ΠΠΌΠ° ΠΎΡΠ΅ Π΅Π΄ΠΈΠ½ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ΅Π½ Π½Π°ΡΠΈΠ½, ΠΊΠΎΠΉΡΠΎ Π΅ Π±Π΅Π· Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠΌΠ°ΡΠ΅ Π½ΡΠΊΠ°ΠΊΡΠ² ΡΠ΅ΠΊΠ»Π°ΠΌΠ΅Π½ ΡΠΏΠΈΠ½Π΅Ρ ΠΈΠ»ΠΈ Π½ΡΠΊΠ°ΠΊΡΠ² Π΄ΡΡΠ³ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ΅Π½ Π΄Π΅ΠΌΠΎΠ½, ΠΊΠΎΠΉΡΠΎ Π³Π΅Π½Π΅ΡΠΈΡΠ° Π΄Π°Π½Π½ΠΈ. Π ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π½Π°ΡΡΡΠΏΠ°ΡΠ΅ ΠΊΡΠΏ Π΄Π°Π½Π½ΠΈ Π½Π°ΠΏΡΠ°Π²ΠΎ Π² RAM, Π² Π±ΡΡΠ΅ΡΠ°. Π ΠΊΠΎΠ³Π°ΡΠΎ ΠΌΠΈΠ½Π΅ Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΎ Π²ΡΠ΅ΠΌΠ΅, ΠΎΡΡΠ°Π²ΡΡΠ΅ ΡΠΎΠ·ΠΈ Π±ΡΡΠ΅Ρ Π½Π°ΡΡΡΠ°Π½Π°, ΡΡΠ·Π΄Π°Π²Π°ΡΠ΅ Π½ΠΎΠ² ΠΈ Π²ΠΌΡΠΊΠ²Π°ΡΠ΅ Π²Π΅ΡΠ΅ Π½Π°ΡΡΡΠΏΠ°Π½ΠΎΡΠΎ Π² ClickHouse Π² ΠΎΡΠ΄Π΅Π»Π½Π° Π½ΠΈΡΠΊΠ°.
ΠΡ Π΄ΡΡΠ³Π° ΡΡΡΠ°Π½Π°, Π΄Π°Π½Π½ΠΈΡΠ΅ ΡΡΡΠΎ ΠΈΠ·ΡΠ΅Π·Π²Π°Ρ Ρ kill -9. ΠΠΊΠΎ Π²Π°ΡΠΈΡΡ ΡΡΡΠ²ΡΡ ΡΠ΅ ΠΏΠΎΠ²ΡΠ΅Π΄ΠΈ, Π²ΠΈΠ΅ ΡΠ΅ Π·Π°Π³ΡΠ±ΠΈΡΠ΅ ΡΠ΅Π·ΠΈ Π΄Π°Π½Π½ΠΈ. Π Π΄ΡΡΠ³ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Π΅, ΡΠ΅ Π°ΠΊΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΏΠΈΡΠ΅ΡΠ΅ Π² Π±Π°Π·Π°ΡΠ° Π΄Π°Π½Π½ΠΈ, Π²Π°ΡΠΈΡΠ΅ Π΄Π°Π½Π½ΠΈ ΡΠ΅ ΡΠ΅ Π½Π°ΡΡΡΠΏΠ°Ρ Π² RAM. Π ΠΈΠ»ΠΈ RAM ΠΏΠ°ΠΌΠ΅ΡΡΠ° ΡΠ²ΡΡΡΠ²Π°, ΠΈΠ»ΠΈ ΠΏΡΠΎΡΡΠΎ Π³ΡΠ±ΠΈΡΠ΅ Π΄Π°Π½Π½ΠΈ.
ΠΠ΅ΡΠΎΠ΄ 4. ΠΡΡΠ³ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ΅Π½ Π½Π°ΡΠΈΠ½. ΠΠΌΠ°ΡΠ΅ Π»ΠΈ Π½ΡΠΊΠ°ΠΊΡΠ² ΡΡΡΠ²ΡΡΠ΅Π½ ΠΏΡΠΎΡΠ΅Ρ. Π ΡΠΎΠΉ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠ·ΠΏΡΠ°ΡΠ° Π΄Π°Π½Π½ΠΈ Π½Π° ClickHouse Π½Π°Π²Π΅Π΄Π½ΡΠΆ, Π½ΠΎ Π³ΠΎ ΠΏΡΠ°Π²ΠΈ Π² Π΅Π΄Π½Π° Π²ΡΡΠ·ΠΊΠ°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠ·ΠΏΡΠ°ΡΠΈΡ http Π·Π°ΡΠ²ΠΊΠ° Ρ ΡΡΠ°Π½ΡΡΠ΅Ρ-ΠΊΠΎΠ΄ΠΈΡΠ°Π½Π΅: Π½Π° ΠΏΠ°ΡΡΠ΅ΡΠ° Ρ Π²ΠΌΡΠΊΠ²Π°Π½Π΅. Π ΡΠΎΠΉ Π³Π΅Π½Π΅ΡΠΈΡΠ° ΡΠ°ΡΡΠΈ Π½Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΡΡΠ΄ΠΊΠΎ, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΈΠ·ΠΏΡΠ°ΡΠΈΡΠ΅ Π²ΡΠ΅ΠΊΠΈ ΡΠ΅Π΄, Π²ΡΠΏΡΠ΅ΠΊΠΈ ΡΠ΅ ΡΠ΅ ΠΈΠΌΠ° Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ ΡΠ°Π·Ρ ΠΎΠ΄ΠΈ Π·Π° ΡΠ°ΠΌΠΊΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ΅Π·ΠΈ Π΄Π°Π½Π½ΠΈ.
Π ΡΠΎΠ·ΠΈ ΡΠ»ΡΡΠ°ΠΉ ΠΎΠ±Π°ΡΠ΅ Π΄Π°Π½Π½ΠΈΡΠ΅ ΡΠ΅ Π±ΡΠ΄Π°Ρ ΠΈΠ·ΠΏΡΠ°ΡΠ΅Π½ΠΈ Π½Π΅Π·Π°Π±Π°Π²Π½ΠΎ Π΄ΠΎ ClickHouse. Π ΡΠ°ΠΌΠ°ΡΠ° ClickHouse ΡΠ΅ Π³ΠΈ Π±ΡΡΠ΅ΡΠΈΡΠ°.
ΠΠΎ ΠΈΠΌΠ° ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ. Π‘Π΅Π³Π° ΡΠ΅ Π·Π°Π³ΡΠ±ΠΈΡΠ΅ Π΄Π°Π½Π½ΠΈ, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ ΠΊΠΎΠ³Π°ΡΠΎ ΠΏΡΠΎΡΠ΅ΡΡΡ Π²ΠΈ Π±ΡΠ΄Π΅ ΡΠ±ΠΈΡ ΠΈ Π°ΠΊΠΎ ΠΏΡΠΎΡΠ΅ΡΡΡ ClickHouse Π±ΡΠ΄Π΅ ΡΠ±ΠΈΡ, Π·Π°ΡΠΎΡΠΎ ΡΠΎΠ²Π° ΡΠ΅ Π±ΡΠ΄Π΅ Π½Π΅ΠΏΡΠ»Π½ΠΎ Π²ΠΌΡΠΊΠ²Π°Π½Π΅. Π Π² ClickHouse Π²ΠΌΡΠΊΠ²Π°Π½ΠΈΡΡΠ° ΡΠ° Π°ΡΠΎΠΌΠ°ΡΠ½ΠΈ Π΄ΠΎ Π½ΡΠΊΠ°ΠΊΡΠ² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ ΠΏΡΠ°Π³ Π² ΡΠ°Π·ΠΌΠ΅ΡΠ° Π½Π° ΡΠ΅Π΄ΠΎΠ²Π΅ΡΠ΅. ΠΠΎ ΠΏΡΠΈΠ½ΡΠΈΠΏ ΡΠΎΠ²Π° Π΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ΅Π½ Π½Π°ΡΠΈΠ½. Π‘ΡΡΠΎ ΡΠ°ΠΊΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°.
ΠΠ΅ΡΠΎΠ΄ 5. ΠΡΠΎ ΠΎΡΠ΅ Π΅Π΄ΠΈΠ½ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ΅Π½ Π½Π°ΡΠΈΠ½. Π’ΠΎΠ²Π° Π΅ Π½ΡΠΊΠ°ΠΊΡΠ² ΡΡΡΠ²ΡΡ, ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ΅Π½ ΠΎΡ ΠΎΠ±ΡΠ½ΠΎΡΡΡΠ° Π·Π° Π³ΡΡΠΏΠΈΡΠ°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ. ΠΠ· Π»ΠΈΡΠ½ΠΎ Π½Π΅ ΡΡΠΌ Π³ΠΎ Π³Π»Π΅Π΄Π°Π», ΡΠ°ΠΊΠ° ΡΠ΅ Π½Π΅ ΠΌΠΎΠ³Π° Π΄Π° Π³Π°ΡΠ°Π½ΡΠΈΡΠ°ΠΌ Π½ΠΈΡΠΎ. ΠΠ° ΡΠ°ΠΌΠΈΡ ClickHouse ΠΎΠ±Π°ΡΠ΅ Π½ΡΠΌΠ° Π³Π°ΡΠ°Π½ΡΠΈΠΈ. Π’ΠΎΠ²Π° ΡΡΡΠΎ Π΅ Ρ ΠΎΡΠ²ΠΎΡΠ΅Π½ ΠΊΠΎΠ΄, Π½ΠΎ ΠΎΡ Π΄ΡΡΠ³Π° ΡΡΡΠ°Π½Π° ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΠ²ΠΈΠΊΠ½Π΅ΡΠ΅ Ρ Π½ΡΠΊΠ°ΠΊΡΠ² ΡΡΠ°Π½Π΄Π°ΡΡ Π·Π° ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎ, ΠΊΠΎΠΉΡΠΎ ΡΠ΅ ΠΎΠΏΠΈΡΠ²Π°ΠΌΠ΅ Π΄Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΠΌ. ΠΠΎ Π·Π° ΡΠΎΠ²Π° Π½Π΅ΡΠΎ - Π½Π΅ Π·Π½Π°ΠΌ, ΠΎΡΠΈΠ΄Π΅ΡΠ΅ Π² GitHub, Π²ΠΈΠΆΡΠ΅ ΠΊΠΎΠ΄Π°. ΠΠΎΠΆΠ΅ Π±ΠΈ ΡΠ° Π½Π°ΠΏΠΈΡΠ°Π»ΠΈ Π½Π΅ΡΠΎ Π΄ΠΎΠ±ΡΠΎ.
*ΠΎΡ 2020 Π³. ΡΡΡΠΎ ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈ ΠΊΡΠΌ ΡΠ°Π·Π³Π»Π΅ΠΆΠ΄Π°Π½Π΅ΡΠΎ
ΠΠ΅ΡΠΎΠ΄ 6. ΠΡΡΠ³ Π½Π°ΡΠΈΠ½ Π΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ Π±ΡΡΠ΅ΡΠ½ΠΈ ΡΠ°Π±Π»ΠΈΡΠΈ. ΠΡΠ΅Π΄ΠΈΠΌΡΡΠ²ΠΎΡΠΎ Π½Π° ΡΠΎΠ·ΠΈ ΠΌΠ΅ΡΠΎΠ΄ Π΅, ΡΠ΅ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π»Π΅ΡΠ½ΠΎ Π΄Π° Π·Π°ΠΏΠΎΡΠ½Π΅ΡΠ΅ Π΄Π° Π³ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅. Π‘ΡΠ·Π΄Π°ΠΉΡΠ΅ Π±ΡΡΠ΅ΡΠ½Π° ΡΠ°Π±Π»ΠΈΡΠ° ΠΈ Π²ΠΌΡΠΊΠ½Π΅ΡΠ΅ Π² Π½Π΅Ρ.
ΠΠΎ Π½Π΅Π΄ΠΎΡΡΠ°ΡΡΠΊΡΡ Π΅, ΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡΡ Π½Π΅ Π΅ Π½Π°ΠΏΡΠ»Π½ΠΎ ΡΠ΅ΡΠ΅Π½. ΠΠΊΠΎ ΠΏΡΠΈ ΡΠΊΠΎΡΠΎΡΡ ΠΎΡ ΡΠΈΠΏΠ° MergeTree ΡΡΡΠ±Π²Π° Π΄Π° Π³ΡΡΠΏΠΈΡΠ°ΡΠ΅ Π΄Π°Π½Π½ΠΈ ΠΏΠΎ Π΅Π΄Π½Π° ΠΏΠ°ΡΡΠΈΠ΄Π° Π² ΡΠ΅ΠΊΡΠ½Π΄Π°, ΡΠΎΠ³Π°Π²Π° ΠΏΡΠΈ ΡΠΊΠΎΡΠΎΡΡ Π² Π±ΡΡΠ΅ΡΠ½Π° ΡΠ°Π±Π»ΠΈΡΠ° ΡΡΡΠ±Π²Π° Π΄Π° Π³ΡΡΠΏΠΈΡΠ°ΡΠ΅ ΠΏΠΎΠ½Π΅ Π΄ΠΎ Π½ΡΠΊΠΎΠ»ΠΊΠΎ Ρ ΠΈΠ»ΡΠ΄ΠΈ Π² ΡΠ΅ΠΊΡΠ½Π΄Π°. ΠΠΊΠΎ ΠΈΠΌΠ° ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΎΡ 10 000 Π² ΡΠ΅ΠΊΡΠ½Π΄Π°, ΠΏΠ°ΠΊ ΡΠ΅ Π΅ Π»ΠΎΡΠΎ. Π Π°ΠΊΠΎ Π²ΠΌΡΠΊΠ½Π΅ΡΠ΅ Π½Π° ΠΏΠ°ΡΡΠΈΠ΄ΠΈ, ΡΠΎΠ³Π°Π²Π° Π²ΠΈΠ΄ΡΡ ΡΠ΅, ΡΠ΅ ΡΠ°ΠΌ ΡΠ΅ ΠΏΠΎΠ»ΡΡΠ°Π²Π°Ρ ΡΡΠΎ Ρ ΠΈΠ»ΡΠ΄ΠΈ ΡΠ΅Π΄Π° Π² ΡΠ΅ΠΊΡΠ½Π΄Π°. Π ΡΠΎΠ²Π° Π²Π΅ΡΠ΅ Π΅ Π½Π° Π΄ΠΎΡΡΠ° ΡΠ΅ΠΆΠΊΠΈ Π΄Π°Π½Π½ΠΈ.
Π ΡΡΡΠΎ ΡΠ°ΠΊΠ° Π±ΡΡΠ΅ΡΠ½ΠΈΡΠ΅ ΡΠ°Π±Π»ΠΈΡΠΈ Π½ΡΠΌΠ°Ρ ΠΆΡΡΠ½Π°Π». Π Π°ΠΊΠΎ Π½Π΅ΡΠΎ Π½Π΅ Π΅ Π½Π°ΡΠ΅Π΄ Ρ Π²Π°ΡΠΈΡ ΡΡΡΠ²ΡΡ, ΡΠΎΠ³Π°Π²Π° Π΄Π°Π½Π½ΠΈΡΠ΅ ΡΠ΅ Π±ΡΠ΄Π°Ρ Π·Π°Π³ΡΠ±Π΅Π½ΠΈ.
Π ΠΊΠ°ΡΠΎ Π±ΠΎΠ½ΡΡ Π½Π°ΡΠΊΠΎΡΠΎ ΠΈΠΌΠ°Ρ ΠΌΠ΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π΄Π° ΡΡΠ±ΠΈΡΠ°ΠΌΠ΅ Π΄Π°Π½Π½ΠΈ ΠΎΡ Kafka Π² ClickHouse. ΠΠΌΠ° Π½Π°ΡΡΠΎΠ»Π΅Π½ Π΄Π²ΠΈΠ³Π°ΡΠ΅Π» - ΠΠ°ΡΠΊΠ°. ΠΠΈΠ΅ ΠΏΡΠΎΡΡΠΎ ΡΡΠ·Π΄Π°Π²Π°ΡΠ΅. Π ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΎΠΊΠ°ΡΠΈΡΠ΅ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΠΈΠ·Π³Π»Π΅Π΄ΠΈ Π²ΡΡΡ Ρ Π½Π΅Π³ΠΎ. Π ΡΠΎΠ·ΠΈ ΡΠ»ΡΡΠ°ΠΉ ΡΠΎΠΉ ΡΠ΅ ΠΈΠ·Π²Π°Π΄ΠΈ Π΄Π°Π½Π½ΠΈΡΠ΅ ΠΎΡ Kafka ΠΈ ΡΠ΅ Π³ΠΈ Π²ΠΌΡΠΊΠ½Π΅ Π² Π½ΡΠΆΠ½ΠΈΡΠ΅ Π²ΠΈ ΡΠ°Π±Π»ΠΈΡΠΈ.
Π ΡΠΎΠ²Π°, ΠΊΠΎΠ΅ΡΠΎ Π΅ ΠΎΡΠΎΠ±Π΅Π½ΠΎ ΡΠ°Π΄ΠΎΡΡΠ½ΠΎ Π² ΡΠ°Π·ΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π΅, ΡΠ΅ Π½Π΅ ΡΡΠΏΡΡ ΠΌΠ΅. Π’ΠΎΠ²Π° Π΅ ΡΡΠ½ΠΊΡΠΈΡ Π½Π° ΠΎΠ±ΡΠ½ΠΎΡΡΡΠ°. Π ΠΊΠΎΠ³Π°ΡΠΎ ΠΊΠ°Π·Π²Π°ΠΌ βΡΡΠ½ΠΊΡΠΈΡ Π½Π° ΠΎΠ±ΡΠ½ΠΎΡΡΡΠ°β, Π³ΠΎ ΠΊΠ°Π·Π²Π°ΠΌ Π±Π΅Π· Π½ΠΈΠΊΠ°ΠΊΠ²ΠΎ ΠΏΡΠ΅Π·ΡΠ΅Π½ΠΈΠ΅. ΠΡΠΎΡΠ΅ΡΠΎΡ ΠΌΠ΅ ΠΊΠΎΠ΄Π°, Π½Π°ΠΏΡΠ°Π²ΠΈΡ ΠΌΠ΅ ΠΏΡΠ΅Π³Π»Π΅Π΄, ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ°Π±ΠΎΡΠΈ Π΄ΠΎΠ±ΡΠ΅.
* ΠΎΡ 2020 Π³. ΠΈΠΌΠ° ΠΏΠΎΠ΄ΠΎΠ±Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π°
ΠΠ°ΠΊΠ²ΠΎ Π΄ΡΡΠ³ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ Π½Π΅ΡΠ΄ΠΎΠ±Π½ΠΎ ΠΈΠ»ΠΈ Π½Π΅ΠΎΡΠ°ΠΊΠ²Π°Π½ΠΎ ΠΏΡΠΈ Π²ΠΌΡΠΊΠ²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ? ΠΠΊΠΎ Π½Π°ΠΏΡΠ°Π²ΠΈΡΠ΅ Π·Π°ΡΠ²ΠΊΠ° Π·Π° Π²ΠΌΡΠΊΠ²Π°Π½Π΅ Π½Π° ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ ΠΈ Π½Π°ΠΏΠΈΡΠ΅ΡΠ΅ Π½ΡΠΊΠΎΠΈ ΠΈΠ·ΡΠΈΡΠ»Π΅Π½ΠΈ ΠΈΠ·ΡΠ°Π·ΠΈ Π² ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, now() ΡΡΡΠΎ Π΅ ΠΎΡΠ΅Π½Π΅Π½ ΠΈΠ·ΡΠ°Π·. Π Π² ΡΠΎΠ·ΠΈ ΡΠ»ΡΡΠ°ΠΉ ClickHouse Π΅ ΠΏΡΠΈΠ½ΡΠ΄Π΅Π½ Π΄Π° ΡΡΠ°ΡΡΠΈΡΠ° ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΠ° Π½Π° ΡΠ΅Π·ΠΈ ΠΈΠ·ΡΠ°Π·ΠΈ Π·Π° Π²ΡΠ΅ΠΊΠΈ ΡΠ΅Π΄ ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° ΡΠ΅ ΡΠΏΠ°Π΄Π½Π΅ Ρ ΠΏΠΎΡΡΠ΄ΡΡΠΈ. ΠΠΎ-Π΄ΠΎΠ±ΡΠ΅ Π΄Π° Π³ΠΎ ΠΈΠ·Π±ΡΠ³Π²Π°ΡΠ΅.
* Π² ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΠΏΡΠΎΠ±Π»Π΅ΠΌΡΡ Π΅ Π½Π°ΠΏΡΠ»Π½ΠΎ ΡΠ΅ΡΠ΅Π½, Π½ΡΠΌΠ° ΠΏΠΎΠ²Π΅ΡΠ΅ ΡΠ΅Π³ΡΠ΅ΡΠΈΡ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° ΠΏΡΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΠΈΠ·ΡΠ°Π·ΠΈ Π² VALUES.
ΠΡΡΠ³ ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈ ΠΊΠΎΠΉΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠΌΠ° Π½ΡΠΊΠΎΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ, Π΅ ΠΊΠΎΠ³Π°ΡΠΎ Π²Π°ΡΠΈΡΠ΅ Π΄Π°Π½Π½ΠΈ Π² Π΅Π΄Π½Π° ΠΏΠ°ΡΡΠΈΠ΄Π° ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ ΠΊΡΠΌ ΠΊΡΠΏ Π΄ΡΠ»ΠΎΠ²Π΅. ΠΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ ClickHouse ΡΠ°Π·Π΄Π΅Π»Ρ ΠΏΠΎ ΠΌΠ΅ΡΠ΅ΡΠΈ. Π Π°ΠΊΠΎ Π²ΠΌΡΠΊΠ½Π΅ΡΠ΅ ΠΏΠ°ΡΡΠΈΠ΄Π° ΠΎΡ ΠΌΠΈΠ»ΠΈΠΎΠ½ ΡΠ΅Π΄Π° ΠΈ ΠΈΠΌΠ° Π΄Π°Π½Π½ΠΈ Π·Π° Π½ΡΠΊΠΎΠ»ΠΊΠΎ Π³ΠΎΠ΄ΠΈΠ½ΠΈ, ΡΠΎΠ³Π°Π²Π° ΡΠ΅ ΠΈΠΌΠ°ΡΠ΅ Π½ΡΠΊΠΎΠ»ΠΊΠΎ Π΄ΡΠ·ΠΈΠ½ΠΈ Π΄ΡΠ»ΠΎΠ²Π΅ ΡΠ°ΠΌ. Π ΡΠΎΠ²Π° Π΅ Π΅ΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΠΎ Π½Π° ΡΠ°ΠΊΡΠ°, ΡΠ΅ ΡΠ΅ ΠΈΠΌΠ° ΠΏΠ°ΡΡΠΈΠ΄ΠΈ Π½ΡΠΊΠΎΠ»ΠΊΠΎ Π΄Π΅ΡΠ΅ΡΠΊΠΈ ΠΏΡΡΠΈ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΈ, Π·Π°ΡΠΎΡΠΎ Π²ΡΡΡΠ΅ Π²ΠΈΠ½Π°Π³ΠΈ ΠΏΡΡΠ²ΠΎ ΡΠ΅ ΡΠ°Π·Π΄Π΅Π»ΡΡ Π½Π° Π΄ΡΠ»ΠΎΠ²Π΅.
* Π½Π°ΡΠΊΠΎΡΠΎ Π² ClickHouse Π² Π΅ΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»Π΅Π½ ΡΠ΅ΠΆΠΈΠΌ Π±Π΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΊΠΎΠΌΠΏΠ°ΠΊΡΠ΅Π½ ΡΠΎΡΠΌΠ°Ρ Π½Π° ΠΏΠ°ΡΡΠ΅ΡΠ° ΠΈ ΠΏΠ°ΡΡΠ΅ΡΠ° Π² RAM Ρ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»Π½ΠΎ Π·Π°ΠΏΠΈΡΠ²Π°Ρ Π»ΠΎΠ³, ΠΊΠΎΠ΅ΡΠΎ ΠΏΠΎΡΡΠΈ Π½Π°ΠΏΡΠ»Π½ΠΎ ΡΠ΅ΡΠ°Π²Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°.
Π‘Π΅Π³Π° ΡΠ°Π·Π³Π»Π΅Π΄Π°ΠΉΡΠ΅ Π²ΡΠΎΡΠΈΡ Π²ΠΈΠ΄ ΠΏΡΠΎΠ±Π»Π΅ΠΌ - Π²ΡΠ²Π΅ΠΆΠ΄Π°Π½Π΅ΡΠΎ Π½Π° Π΄Π°Π½Π½ΠΈ.
ΠΡΠ²Π΅ΠΆΠ΄Π°Π½Π΅ΡΠΎ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΡΡΡΠΎΠ³ΠΎ, Π° ΠΏΠΎΠ½ΡΠΊΠΎΠ³Π° ΠΈ Π½ΠΈΠ·ΠΎΠ²ΠΎ. ΠΠΈΠ· - ΡΠΎΠ²Π° Π΅, ΠΊΠΎΠ³Π°ΡΠΎ ΠΏΡΠΎΡΡΠΎ ΡΡΠ΅ Π²Π·Π΅Π»ΠΈ ΠΈ Π΄Π΅ΠΊΠ»Π°ΡΠΈΡΠ°Π»ΠΈ, ΡΠ΅ ΠΈΠΌΠ°ΡΠ΅ Π²ΡΠΈΡΠΊΠΈ ΠΏΠΎΠ»Π΅ΡΠ° ΠΎΡ ΡΠΈΠΏ Π½ΠΈΠ·. ΠΠ°Π΄Π½ΠΎ Π΅. ΠΠ΅ Π΅ Π½ΡΠΆΠ½ΠΎ Π΄Π° ΠΏΡΠ°Π²ΠΈΡΠ΅ ΡΠΎΠ²Π°.
ΠΠ΅ΠΊΠ° Π΄Π° ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌ ΠΊΠ°ΠΊ Π΄Π° Π³ΠΎ Π½Π°ΠΏΡΠ°Π²ΠΈΠΌ ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ Π² ΡΠ»ΡΡΠ°ΠΈΡΠ΅, ΠΊΠΎΠ³Π°ΡΠΎ ΠΈΡΠΊΠ°ΡΠ΅ Π΄Π° ΠΊΠ°ΠΆΠ΅ΡΠ΅, ΡΠ΅ ΠΈΠΌΠ°ΠΌΠ΅ Π½ΡΠΊΠ°ΠΊΠ²ΠΎ ΠΏΠΎΠ»Π΅, Π½ΠΈΠ· ΠΈ Π½Π΅ΠΊΠ° ClickHouse Π΄Π° Π³ΠΎ ΡΠ°Π·Π±Π΅ΡΠ΅ ΡΠ°ΠΌ, Π½ΠΎ Π°Π· Π½ΡΠΌΠ° Π΄Π° ΠΏΡΠ°Π²Ρ ΠΏΠ°ΡΠ½Π° Π±Π°Π½Ρ. ΠΠΎ Π²ΡΠ΅ ΠΏΠ°ΠΊ ΡΠΈ ΡΡΡΡΠ²Π° Π΄Π° ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅ ΠΌΠ°Π»ΠΊΠΎ ΡΡΠΈΠ»ΠΈΡ.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ ΠΈΠΌΠ°ΠΌΠ΅ IP Π°Π΄ΡΠ΅Ρ. Π Π΅Π΄ΠΈΠ½ ΡΠ»ΡΡΠ°ΠΉ Π³ΠΎ Π·Π°ΠΏΠΈΡΠ°Ρ ΠΌΠ΅ ΠΊΠ°ΡΠΎ Π½ΠΈΠ·. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ 192.168.1.1. Π ΠΏΡΠΎΡΠΈΠ²Π΅Π½ ΡΠ»ΡΡΠ°ΠΉ ΡΠΎΠ²Π° ΡΠ΅ Π±ΡΠ΄Π΅ ΡΠΈΡΠ»ΠΎ ΠΎΡ ΡΠΈΠΏ UInt32*. 32 Π±ΠΈΡΠ° ΡΠ° Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΈ Π·Π° IPv4 Π°Π΄ΡΠ΅Ρ.
ΠΡΡΠ²ΠΎ, ΠΊΠΎΠ»ΠΊΠΎΡΠΎ ΠΈ Π΄Π° Π΅ ΡΡΡΠ°Π½Π½ΠΎ, Π΄Π°Π½Π½ΠΈΡΠ΅ ΡΠ΅ Π±ΡΠ΄Π°Ρ ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡΠ°Π½ΠΈ ΠΏΡΠΈΠ±Π»ΠΈΠ·ΠΈΡΠ΅Π»Π½ΠΎ ΠΏΠΎ ΡΡΡΠΈΡ Π½Π°ΡΠΈΠ½. Π©Π΅ ΠΈΠΌΠ° ΡΠ°Π·Π»ΠΈΠΊΠ°, ΡΠ°Π·Π±ΠΈΡΠ° ΡΠ΅, Π½ΠΎ Π½Π΅ ΡΠΎΠ»ΠΊΠΎΠ²Π° Π³ΠΎΠ»ΡΠΌΠ°. Π’Π°ΠΊΠ° ΡΠ΅ Π½ΡΠΌΠ° ΡΠΏΠ΅ΡΠΈΠ°Π»Π½ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ Ρ I/O Π½Π° Π΄ΠΈΡΠΊΠ°.
ΠΠΎ ΠΈΠΌΠ° ΡΠ΅ΡΠΈΠΎΠ·Π½Π° ΡΠ°Π·Π»ΠΈΠΊΠ° Π² ΠΏΡΠΎΡΠ΅ΡΠΎΡΠ½ΠΎΡΠΎ Π²ΡΠ΅ΠΌΠ΅ ΠΈ Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π·Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° Π·Π°ΡΠ²ΠΊΠ°ΡΠ°.
ΠΠ΅ΠΊΠ° ΠΏΡΠ΅Π±ΡΠΎΠΈΠΌ Π±ΡΠΎΡ Π½Π° ΡΠ½ΠΈΠΊΠ°Π»Π½ΠΈΡΠ΅ IP Π°Π΄ΡΠ΅ΡΠΈ, Π°ΠΊΠΎ ΡΠ΅ ΡΠ΅ ΡΡΡ ΡΠ°Π½ΡΠ²Π°Ρ ΠΊΠ°ΡΠΎ ΡΠΈΡΠ»Π°. ΠΠΎΠ»ΡΡΠ°Π²Π° ΡΠ΅ 137 ΠΌΠΈΠ»ΠΈΠΎΠ½Π° ΡΠ΅Π΄Π° Π² ΡΠ΅ΠΊΡΠ½Π΄Π°. ΠΠΊΠΎ Π΅ ΡΡΡΠΎΡΠΎ ΠΊΠ°ΡΠΎ Π»ΠΈΠ½ΠΈΠΈΡΠ΅, ΡΠΎΠ³Π°Π²Π° 37 ΠΌΠΈΠ»ΠΈΠΎΠ½Π° ΡΠ΅Π΄Π° Π² ΡΠ΅ΠΊΡΠ½Π΄Π°. ΠΠ΅ Π·Π½Π°ΠΌ Π·Π°ΡΠΎ ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈ ΡΠΎΠ²Π° ΡΡΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΠ΅. Π‘Π°ΠΌ ΡΡΠΌ ΠΏΡΠ°Π²ΠΈΠ» ΡΠ΅Π·ΠΈ ΠΈΡΠΊΠ°Π½ΠΈΡ. ΠΠΎ Π²ΡΠΏΡΠ΅ΠΊΠΈ ΡΠΎΠ²Π° ΠΎΠΊΠΎΠ»ΠΎ 4 ΠΏΡΡΠΈ ΠΏΠΎ-Π±Π°Π²Π½ΠΎ.
Π Π°ΠΊΠΎ ΠΈΠ·ΡΠΈΡΠ»ΠΈΡΠ΅ ΡΠ°Π·Π»ΠΈΠΊΠ°ΡΠ° Π² Π΄ΠΈΡΠΊΠΎΠ²ΠΎΡΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ, ΡΠΎΠ³Π°Π²Π° ΡΡΡΠΎ ΠΈΠΌΠ° ΡΠ°Π·Π»ΠΈΠΊΠ°. Π ΡΠ°Π·Π»ΠΈΠΊΠ°ΡΠ° Π΅ ΠΎΠΊΠΎΠ»ΠΎ Π΅Π΄Π½Π° ΡΠ΅ΡΠ²ΡΡΡ, Π·Π°ΡΠΎΡΠΎ ΠΈΠΌΠ° Π΄ΠΎΡΡΠ° ΡΠ½ΠΈΠΊΠ°Π»Π½ΠΈ IP Π°Π΄ΡΠ΅ΡΠΈ. Π Π°ΠΊΠΎ ΠΈΠΌΠ°ΡΠ΅ ΡΠ΅Π΄ΠΎΠ²Π΅ Ρ ΠΌΠ°Π»ΡΠΊ Π±ΡΠΎΠΉ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ, ΡΠ΅ ΡΡΡ Π° Π΄Π° Π±ΡΠ΄Π°Ρ ΡΠΈΡ ΠΎ ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡΠ°Π½ΠΈ Π² ΡΠ΅ΡΠ½ΠΈΠΊΠ° Π² ΠΏΡΠΈΠ±Π»ΠΈΠ·ΠΈΡΠ΅Π»Π½ΠΎ ΡΡΡΠΈΡ ΠΎΠ±Π΅ΠΌ.
Π ΡΠ΅ΡΠΈΡΠΈΠΊΡΠ°ΡΠ½Π°ΡΠ° ΡΠ°Π·Π»ΠΈΠΊΠ° Π²ΡΠ² Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π½Π΅ Π»Π΅ΠΆΠΈ Π½Π° ΠΏΡΡΡ. ΠΠΎΠΆΠ΅ Π±ΠΈ, ΡΠ°Π·Π±ΠΈΡΠ° ΡΠ΅, Π½Π΅ Π²ΠΈ ΠΏΡΠΊΠ°, Π½ΠΎ ΠΊΠΎΠ³Π°ΡΠΎ Π²ΠΈΠ΄Ρ ΡΠ°ΠΊΠ°Π²Π° ΡΠ°Π·Π»ΠΈΠΊΠ°, ΡΠ΅ ΡΡΠ²ΡΡΠ²Π°ΠΌ ΡΡΠΆΠ½Π°.
ΠΠ΅ΠΊΠ° ΡΠ°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΡΠ»ΡΡΠ°ΠΈ.
1. ΠΠ΄ΠΈΠ½ ΡΠ»ΡΡΠ°ΠΉ, ΠΊΠΎΠ³Π°ΡΠΎ ΠΈΠΌΠ°ΡΠ΅ Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΡΠ½ΠΈΠΊΠ°Π»Π½ΠΈ ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ. Π ΡΠΎΠ·ΠΈ ΡΠ»ΡΡΠ°ΠΉ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ ΠΏΡΠΎΡΡΠ° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ°, ΠΊΠΎΡΡΠΎ Π²Π΅ΡΠΎΡΡΠ½ΠΎ Π·Π½Π°Π΅ΡΠ΅ ΠΈ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ Π·Π° Π²ΡΡΠΊΠ° Π‘Π£ΠΠ. ΠΡΠΈΡΠΊΠΎ ΡΠΎΠ²Π° ΠΈΠΌΠ° ΡΠΌΠΈΡΡΠ» Π½Π΅ ΡΠ°ΠΌΠΎ Π·Π° ClickHouse. ΠΡΠΎΡΡΠΎ Π·Π°ΠΏΠΈΡΠ΅ΡΠ΅ ΡΠΈΡΡΠΎΠ²ΠΈΡΠ΅ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΈ Π² Π±Π°Π·Π°ΡΠ° Π΄Π°Π½Π½ΠΈ. Π ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΠ°ΡΠ΅ Π² Π½ΠΈΠ·ΠΎΠ²Π΅ ΠΈ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ ΠΎΡΡΡΡΠ°Π½ΠΈ Π½Π° Π²Π°ΡΠ΅ΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠΌΠ°ΡΠ΅ ΡΠ΅Π³ΠΈΠΎΠ½. Π Π²ΠΈΠ΅ ΡΠ΅ ΠΎΠΏΠΈΡΠ²Π°ΡΠ΅ Π΄Π° Π³ΠΎ Π·Π°ΠΏΠ°Π·ΠΈΡΠ΅ ΠΊΠ°ΡΠΎ Π½ΠΈΠ·. Π ΡΠ°ΠΌ ΡΠ΅ Π±ΡΠ΄Π΅ Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ: ΠΠΎΡΠΊΠ²Π° ΠΈ ΠΠΎΡΠΊΠΎΠ²ΡΠΊΠ° ΠΎΠ±Π»Π°ΡΡ. Π ΠΊΠ°ΡΠΎ Π²ΠΈΠ΄Ρ, ΡΠ΅ ΡΠ°ΠΌ ΠΏΠΈΡΠ΅ βΠΠΎΡΠΊΠ²Π°β, Π·Π½Π°ΡΠΈ ΡΠΎΠ²Π° ΠΏΠ°ΠΊ Π΅ Π½ΠΈΡΠΎ, Π° ΠΊΠ°ΡΠΎ Π΅ ΠΠ, Π½ΡΠΊΠ°ΠΊ ΡΠΈ ΡΡΠ°Π²Π° ΡΡΠ²ΡΠ΅ΠΌ ΡΡΠΆΠ½ΠΎ. Π’ΠΎΠ²Π° Π΅ ΠΊΠΎΠ»ΠΊΠΎ Π±Π°ΠΉΡΠ°.
ΠΠΌΠ΅ΡΡΠΎ ΡΠΎΠ²Π° Π½ΠΈΠ΅ ΠΏΡΠΎΡΡΠΎ Π·Π°ΠΏΠΈΡΠ²Π°ΠΌΠ΅ Π½ΠΎΠΌΠ΅ΡΠ° Ulnt32 ΠΈ 250. ΠΠΌΠ°ΠΌΠ΅ 250 Π² Yandex, Π½ΠΎ Π²Π°ΡΠΈΡΡ ΠΌΠΎΠΆΠ΅ Π΄Π° Π΅ ΡΠ°Π·Π»ΠΈΡΠ΅Π½. ΠΠ° Π²ΡΠ΅ΠΊΠΈ ΡΠ»ΡΡΠ°ΠΉ ΡΠ΅ ΠΊΠ°ΠΆΠ°, ΡΠ΅ ClickHouse ΠΈΠΌΠ° Π²Π³ΡΠ°Π΄Π΅Π½Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΡΠ°Π±ΠΎΡΠ° Ρ Π³Π΅ΠΎΠ±Π°Π·Π°. ΠΡΠΎΡΡΠΎ Π·Π°ΠΏΠΈΡΠ²Π°ΡΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ Ρ ΡΠ΅Π³ΠΈΠΎΠ½ΠΈ, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ ΠΉΠ΅ΡΠ°ΡΡ ΠΈΡΠ½Π°, Ρ.Π΅. ΡΠ΅ ΠΈΠΌΠ° ΠΠΎΡΠΊΠ²Π°, ΠΠΎΡΠΊΠΎΠ²ΡΠΊΠ° ΠΎΠ±Π»Π°ΡΡ ΠΈ Π²ΡΠΈΡΠΊΠΎ, ΠΎΡ ΠΊΠΎΠ΅ΡΠΎ ΡΠ΅ Π½ΡΠΆΠ΄Π°Π΅ΡΠ΅. Π ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΠ°ΡΠ΅ Π½Π° Π½ΠΈΠ²ΠΎ Π·Π°ΡΠ²ΠΊΠ°.
ΠΡΠΎΡΠΈΡΡ Π²Π°ΡΠΈΠ°Π½Ρ Π΅ ΠΏΠΎΡΡΠΈ ΡΡΡΠΈΡΡ, Π½ΠΎ Ρ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π² ClickHouse. Π’ΠΎΠ²Π° Π΅ ΡΠΈΠΏ Π΄Π°Π½Π½ΠΈ Enum. ΠΠΈΠ΅ ΠΏΡΠΎΡΡΠΎ ΠΏΠΈΡΠ΅ΡΠ΅ Π²ΡΠΈΡΠΊΠΈ ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ, ΠΎΡ ΠΊΠΎΠΈΡΠΎ ΡΠ΅ Π½ΡΠΆΠ΄Π°Π΅ΡΠ΅, Π² Enum. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΈΠΏΠ° Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎΡΠΎ ΠΈ Π½Π°ΠΏΠΈΡΠ΅ΡΠ΅ ΡΠ°ΠΌ: Π½Π°ΡΡΠΎΠ»Π΅Π½ ΠΊΠΎΠΌΠΏΡΡΡΡ, ΠΌΠΎΠ±ΠΈΠ»Π΅Π½ ΡΠ΅Π»Π΅ΡΠΎΠ½, ΡΠ°Π±Π»Π΅Ρ, ΡΠ΅Π»Π΅Π²ΠΈΠ·ΠΎΡ. Π‘Π°ΠΌΠΎ 4 Π²Π°ΡΠΈΠ°Π½ΡΠ°.
ΠΠ΅Π΄ΠΎΡΡΠ°ΡΡΠΊΡΡ Π΅, ΡΠ΅ ΡΡΡΠ±Π²Π° ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ½ΠΎ Π΄Π° ΠΏΡΠΎΠΌΠ΅Π½ΡΡΠ΅. ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΡΠ°ΠΌΠΎ Π΅Π΄Π½Π° ΠΎΠΏΡΠΈΡ. ΠΠ·ΡΠ°Π±ΠΎΡΠ²Π°ΠΌΠ΅ Π°Π»ΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½Π° ΠΌΠ°ΡΠ°. ΠΡΡΡΠ½ΠΎΡΡ alter table Π² ClickHouse Π΅ Π±Π΅Π·ΠΏΠ»Π°ΡΠ΅Π½. ΠΡΠΎΠ±Π΅Π½ΠΎ Π±Π΅Π·ΠΏΠ»Π°ΡΠ½ΠΎ Π·Π° Enum, Π·Π°ΡΠΎΡΠΎ Π΄Π°Π½Π½ΠΈΡΠ΅ Π½Π° Π΄ΠΈΡΠΊΠ° Π½Π΅ ΡΠ΅ ΠΏΡΠΎΠΌΠ΅Π½ΡΡ. ΠΠΎ Π²ΡΠΏΡΠ΅ΠΊΠΈ ΡΠΎΠ²Π° alter ΠΏΡΠΈΠ΄ΠΎΠ±ΠΈΠ²Π° Π·Π°ΠΊΠ»ΡΡΠ²Π°Π½Π΅ * Π½Π° ΠΌΠ°ΡΠ°ΡΠ° ΠΈ ΡΡΡΠ±Π²Π° Π΄Π° ΠΈΠ·ΡΠ°ΠΊΠ°, Π΄ΠΎΠΊΠ°ΡΠΎ Π²ΡΠΈΡΠΊΠΈ ΡΠ΅Π»Π΅ΠΊΡΠΈΠΈ Π±ΡΠ΄Π°Ρ Π·Π°Π²ΡΡΡΠ΅Π½ΠΈ. Π Π΅Π΄Π²Π° ΡΠ»Π΅Π΄ ΠΊΠ°ΡΠΎ ΡΠ°Π·ΠΈ ΠΏΡΠΎΠΌΡΠ½Π° ΡΠ΅ Π±ΡΠ΄Π΅ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½Π°, Ρ.Π΅. Π²ΡΠ΅ ΠΎΡΠ΅ ΠΈΠΌΠ° Π½ΡΠΊΠΎΠΈ Π½Π΅ΡΠ΄ΠΎΠ±ΡΡΠ²Π°.
* Π² ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ Π²Π΅ΡΡΠΈΠΈ Π½Π° ClickHouse, ALTER Π΅ Π½Π°ΠΏΡΠ°Π²Π΅Π½ Π½Π°ΠΏΡΠ»Π½ΠΎ Π½Π΅Π±Π»ΠΎΠΊΠΈΡΠ°Ρ.
ΠΡΡΠ³Π° Π΄ΠΎΡΡΠ° ΡΠ½ΠΈΠΊΠ°Π»Π½Π° ΠΎΠΏΡΠΈΡ Π·Π° ClickHouse Π΅ ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ΡΠΎ Π½Π° Π²ΡΠ½ΡΠ½ΠΈ ΡΠ΅ΡΠ½ΠΈΡΠΈ. ΠΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΏΠΈΡΠ΅ΡΠ΅ ΡΠΈΡΠ»Π° Π² ClickHouse ΠΈ Π΄Π° ΡΡΡ ΡΠ°Π½ΡΠ²Π°ΡΠ΅ Π²Π°ΡΠΈΡΠ΅ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ Π²ΡΠ² Π²ΡΡΠΊΠ° ΡΠ΄ΠΎΠ±Π½Π° Π·Π° Π²Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅: MySQL, Mongo, Postgres. ΠΠΎΠΆΠ΅ΡΠ΅ Π΄ΠΎΡΠΈ Π΄Π° ΡΡΠ·Π΄Π°Π΄Π΅ΡΠ΅ ΡΠ²ΠΎΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π° ΠΌΠΈΠΊΡΠΎΡΡΠ»ΡΠ³Π°, ΠΊΠΎΡΡΠΎ ΡΠ΅ ΠΈΠ·ΠΏΡΠ°ΡΠ° ΡΠ΅Π·ΠΈ Π΄Π°Π½Π½ΠΈ ΡΡΠ΅Π· http. Π Π½Π° Π½ΠΈΠ²ΠΎ ClickHouse ΠΏΠΈΡΠ΅ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΡΠΎ ΡΠ΅ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ²Π° ΡΠ΅Π·ΠΈ Π΄Π°Π½Π½ΠΈ ΠΎΡ ΡΠΈΡΠ»Π° Π² Π½ΠΈΠ·ΠΎΠ²Π΅.
Π’ΠΎΠ²Π° Π΅ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½, Π½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ Π΅ΡΠ΅ΠΊΡΠΈΠ²Π΅Π½ Π½Π°ΡΠΈΠ½ Π·Π° ΠΈΠ·Π²ΡΡΡΠ²Π°Π½Π΅ Π½Π° ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ Π½Π° Π²ΡΠ½ΡΠ½Π° ΡΠ°Π±Π»ΠΈΡΠ°. Π ΠΈΠΌΠ° Π΄Π²Π° Π²Π°ΡΠΈΠ°Π½ΡΠ°. Π Π΅Π΄Π½Π° ΠΎΠΏΡΠΈΡ ΡΠ΅Π·ΠΈ Π΄Π°Π½Π½ΠΈ ΡΠ΅ Π±ΡΠ΄Π°Ρ Π½Π°ΠΏΡΠ»Π½ΠΎ ΠΊΠ΅ΡΠΈΡΠ°Π½ΠΈ, Π½Π°ΠΏΡΠ»Π½ΠΎ ΠΏΡΠΈΡΡΡΡΠ²Π°ΡΠΈ Π² RAM ΠΈ Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ Π½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»ΠΈ. Π Π² Π΄ΡΡΠ³Π° ΠΎΠΏΡΠΈΡ, Π°ΠΊΠΎ ΡΠ΅Π·ΠΈ Π΄Π°Π½Π½ΠΈ Π½Π΅ ΡΠ΅ ΠΏΠΎΠ±ΠΈΡΠ°Ρ Π² RAM, ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ°ΡΡΠΈΡΠ½ΠΎ Π΄Π° Π³ΠΈ ΠΊΠ΅ΡΠΈΡΠ°ΡΠ΅.
ΠΡΠΎ Π΅Π΄ΠΈΠ½ ΠΏΡΠΈΠΌΠ΅Ρ. ΠΠΌΠ° Yandex.Direct. Π ΠΈΠΌΠ° ΡΠ΅ΠΊΠ»Π°ΠΌΠ½Π° ΡΠΈΡΠΌΠ° ΠΈ Π±Π°Π½Π΅ΡΠΈ. ΠΠ΅ΡΠΎΡΡΠ½ΠΎ ΠΈΠΌΠ° Π΄Π΅ΡΠ΅ΡΠΊΠΈ ΠΌΠΈΠ»ΠΈΠΎΠ½ΠΈ ΡΠ΅ΠΊΠ»Π°ΠΌΠ½ΠΈ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ. Π Π³ΡΡΠ±ΠΎ ΡΠ΅ ΠΏΠΎΠ±ΠΈΡΠ° Π² RAM. Π ΠΈΠΌΠ° ΠΌΠΈΠ»ΠΈΠ°ΡΠ΄ΠΈ Π±Π°Π½Π΅ΡΠΈ, ΡΠ΅ Π½Π΅ ΡΠ΅ ΠΏΠΎΠ±ΠΈΡΠ°Ρ. Π Π½ΠΈΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ ΠΊΠ΅ΡΠΈΡΠ°Π½ ΡΠ΅ΡΠ½ΠΈΠΊ ΠΎΡ MySQL.
ΠΠ΄ΠΈΠ½ΡΡΠ²Π΅Π½ΠΈΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Π΅, ΡΠ΅ ΠΊΠ΅ΡΠΈΡΠ°Π½ΠΈΡΡ ΡΠ΅ΡΠ½ΠΈΠΊ ΡΠ΅ ΡΠ°Π±ΠΎΡΠΈ Π΄ΠΎΠ±ΡΠ΅, Π°ΠΊΠΎ ΡΠ΅ΡΡΠΎΡΠ°ΡΠ° Π½Π° ΠΏΠΎΠΏΠ°Π΄Π΅Π½ΠΈΠ΅ Π΅ Π±Π»ΠΈΠ·ΠΎ Π΄ΠΎ 100%. ΠΠΊΠΎ Π΅ ΠΏΠΎ-ΠΌΠ°Π»ΡΠΊ, ΡΠΎΠ³Π°Π²Π° ΠΏΡΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ°ΡΠ° Π½Π° Π·Π°ΡΠ²ΠΊΠΈ Π·Π° Π²ΡΠ΅ΠΊΠΈ ΠΏΠ°ΠΊΠ΅Ρ Π΄Π°Π½Π½ΠΈ ΡΠ΅ Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»Π½ΠΎ Π΄Π° Π²Π·Π΅ΠΌΠ΅ΡΠ΅ Π»ΠΈΠΏΡΠ²Π°ΡΠΈΡΠ΅ ΠΊΠ»ΡΡΠΎΠ²Π΅ ΠΈ Π΄Π° ΠΎΡΠΈΠ΄Π΅ΡΠ΅ Π΄Π° Π²Π·Π΅ΠΌΠ΅ΡΠ΅ Π΄Π°Π½Π½ΠΈ ΠΎΡ MySQL. ΠΠ° ClickHouse Π²ΡΠ΅ ΠΎΡΠ΅ ΠΌΠΎΠ³Π° Π΄Π° Π³Π°ΡΠ°Π½ΡΠΈΡΠ°ΠΌ, ΡΠ΅ - Π΄Π°, Π½Π΅ Π·Π°Π±Π°Π²Ρ, Π½ΡΠΌΠ° Π΄Π° Π³ΠΎΠ²ΠΎΡΡ Π·Π° Π΄ΡΡΠ³ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ.
Π ΠΊΠ°ΡΠΎ Π±ΠΎΠ½ΡΡ, ΡΠ΅ΡΠ½ΠΈΡΠΈΡΠ΅ ΡΠ° ΠΌΠ½ΠΎΠ³ΠΎ Π»Π΅ΡΠ΅Π½ Π½Π°ΡΠΈΠ½ Π·Π° Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ Π² ClickHouse ΡΡΡ Π·Π°Π΄Π½Π° Π΄Π°ΡΠ°. Π’ΠΎΠ΅ΡΡ, ΠΈΠΌΠ°Ρ ΡΠ΅ ΠΎΡΡΠ΅Ρ Π·Π° ΡΠ΅ΠΊΠ»Π°ΠΌΠ½ΠΈΡΠ΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ, ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΡ ΠΏΡΠΎΡΡΠΎ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ ΡΠ΅ΠΊΠ»Π°ΠΌΠ½Π°ΡΠ° ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ ΠΈ Π²ΡΠ² Π²ΡΠΈΡΠΊΠΈ ΡΡΠ°ΡΠΈ Π΄Π°Π½Π½ΠΈ, Π²ΡΠ² Π²ΡΠΈΡΠΊΠΈ ΠΎΡΡΠ΅ΡΠΈ, ΡΠ΅Π·ΠΈ Π΄Π°Π½Π½ΠΈ ΡΡΡΠΎ ΡΠ΅ ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡ Π°. ΠΠΊΠΎ ΠΏΠΈΡΠ΅ΡΠ΅ ΡΠ΅Π΄ΠΎΠ²Π΅ Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ Π² ΡΠ°Π±Π»ΠΈΡΠ°ΡΠ°, ΡΠΎΠ³Π°Π²Π° Π½ΡΠΌΠ° Π΄Π° ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π³ΠΈ Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°ΡΠ΅.
ΠΡΡΠ³ Π½Π°ΡΠΈΠ½, ΠΊΠΎΠ³Π°ΡΠΎ Π½Π΅ Π·Π½Π°Π΅ΡΠ΅ ΠΎΡΠΊΡΠ΄Π΅ Π΄Π° Π²Π·Π΅ΠΌΠ΅ΡΠ΅ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΈΡΠ΅ Π·Π° Π²Π°ΡΠΈΡΠ΅ Π½ΠΈΠ·ΠΎΠ²Π΅. ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΡΠΎ Π΄Π° Ρ Π΅ΡΠΈΡΠ°ΡΠ΅. Π Π½Π°ΠΉ-Π»Π΅ΡΠ½ΠΈΡΡ Π²Π°ΡΠΈΠ°Π½Ρ Π΅ Π΄Π° Π²Π·Π΅ΠΌΠ΅ΡΠ΅ 64-Π±ΠΈΡΠΎΠ² Ρ Π΅Ρ.
ΠΠ΄ΠΈΠ½ΡΡΠ²Π΅Π½ΠΈΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Π΅, ΡΠ΅ Π°ΠΊΠΎ Ρ Π΅ΡΡΡ Π΅ 64-Π±ΠΈΡΠΎΠ², ΡΠΎΠ³Π°Π²Π° ΠΏΠΎΡΡΠΈ ΡΠΈΠ³ΡΡΠ½ΠΎ ΡΠ΅ ΠΈΠΌΠ°ΡΠ΅ ΡΠ±Π»ΡΡΡΡΠΈ. ΠΠ°ΡΠΎΡΠΎ Π°ΠΊΠΎ ΠΈΠΌΠ° ΠΌΠΈΠ»ΠΈΠ°ΡΠ΄ ΡΠ΅Π΄Π°, ΡΠΎΠ³Π°Π²Π° Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΡΠ° Π²Π΅ΡΠ΅ ΡΡΠ°Π²Π° ΠΎΡΠ΅Π·Π°Π΅ΠΌΠ°.
Π Π½Π΅ Π±ΠΈ Π±ΠΈΠ»ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΠΎΠ±ΡΠ΅ Π΄Π° ΡΠ΅ Ρ Π²ΡΡΡΠ°Ρ ΡΠ°ΠΊΠ° ΠΈΠΌΠ΅Π½Π°ΡΠ° Π½Π° ΡΠ΅ΠΊΠ»Π°ΠΌΠ½ΠΈΡΠ΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ. ΠΠΊΠΎ ΡΠ΅ ΡΠΌΠ΅ΡΡΡ ΡΠ΅ΠΊΠ»Π°ΠΌΠ½ΠΈΡΠ΅ ΠΊΠ°ΠΌΠΏΠ°Π½ΠΈΠΈ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ, ΡΠΎΠ³Π°Π²Π° ΡΠ΅ ΠΈΠΌΠ° Π½Π΅ΡΠΎ Π½Π΅ΡΠ°Π·Π±ΠΈΡΠ°Π΅ΠΌΠΎ.
Π ΠΈΠΌΠ° Π΅Π΄ΠΈΠ½ ΠΏΡΠΎΡΡ ΡΡΠΈΠΊ. ΠΡΡΠ½ΠΎ Π΅, ΡΠ΅ ΡΡΡΠΎ Π½Π΅ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡ Π·Π° ΡΠ΅ΡΠΈΠΎΠ·Π½ΠΈ Π΄Π°Π½Π½ΠΈ, Π½ΠΎ Π°ΠΊΠΎ Π½Π΅ΡΠΎ Π½Π΅ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ΅ΡΠΈΠΎΠ·Π½ΠΎ, ΡΠΎΠ³Π°Π²Π° ΠΏΡΠΎΡΡΠΎ Π΄ΠΎΠ±Π°Π²Π΅ΡΠ΅ Π΄ΡΡΠ³ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π½Π° ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΊΡΠΌ ΠΊΠ»ΡΡΠ° Π½Π° ΡΠ΅ΡΠ½ΠΈΠΊΠ°. Π ΡΠΎΠ³Π°Π²Π° ΡΠ΅ ΠΈΠΌΠ°ΡΠ΅ ΡΠ±Π»ΡΡΡΡΠΈ, Π½ΠΎ ΡΠ°ΠΌΠΎ Π² ΡΠ°ΠΌΠΊΠΈΡΠ΅ Π½Π° Π΅Π΄ΠΈΠ½ ΠΊΠ»ΠΈΠ΅Π½Ρ. Π Π½ΠΈΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ ΡΠΎΠ·ΠΈ ΠΌΠ΅ΡΠΎΠ΄ Π·Π° ΠΊΠ°ΡΡΠ°ΡΠ° Π½Π° Π²ΡΡΠ·ΠΊΠΈΡΠ΅ Π² Yandex.Metrica. ΠΠΌΠ°ΠΌΠ΅ url Π°Π΄ΡΠ΅ΡΠΈ ΡΠ°ΠΌ, ΡΡΡ ΡΠ°Π½ΡΠ²Π°ΠΌΠ΅ Ρ Π΅ΡΠΎΠ²Π΅. Π Π·Π½Π°Π΅ΠΌ, ΡΠ΅ ΠΈΠΌΠ° ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΈ, ΡΠ°Π·Π±ΠΈΡΠ° ΡΠ΅. ΠΠΎ ΠΊΠΎΠ³Π°ΡΠΎ ΡΠ΅ ΠΏΠΎΠΊΠ°ΠΆΠ΅ ΡΡΡΠ°Π½ΠΈΡΠ°, ΡΠΎΠ³Π°Π²Π° Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΡΠ° Π½Π° Π΅Π΄Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ° Π·Π° Π΅Π΄ΠΈΠ½ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π» Π½ΡΠΊΠΎΠΈ URL Π°Π΄ΡΠ΅ΡΠΈ Π΄Π° ΡΠ΅ ΡΠ»Π΅ΠΏΡΡ ΠΈ ΡΠΎΠ²Π° Π΄Π° Π±ΡΠ΄Π΅ Π·Π°Π±Π΅Π»ΡΠ·Π°Π½ΠΎ, ΡΠΎΠ³Π°Π²Π° ΡΠΎΠ²Π° ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΠΏΡΠ΅Π½Π΅Π±ΡΠ΅Π³Π½Π°ΡΠΎ.
ΠΠ°ΡΠΎ Π±ΠΎΠ½ΡΡ, Π·Π° ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΡΠ° Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΈ ΡΠ°ΠΌΠΎ Ρ Π΅ΡΠΎΠ²Π΅ ΠΈ ΡΠ°ΠΌΠΈΡΠ΅ Π½ΠΈΠ·ΠΎΠ²Π΅ Π½Π΅ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΡΡΡ ΡΠ°Π½ΡΠ²Π°Ρ Π½ΠΈΠΊΡΠ΄Π΅.
ΠΡΡΠ³ ΠΏΡΠΈΠΌΠ΅Ρ, Π°ΠΊΠΎ Π½ΠΈΠ·ΠΎΠ²Π΅ΡΠ΅ ΡΠ° ΠΊΡΠ°ΡΠΊΠΈ, ΠΊΠ°ΡΠΎ Π΄ΠΎΠΌΠ΅ΠΉΠ½ΠΈ Π½Π° ΡΠ΅Π±ΡΠ°ΠΉΡΠΎΠ²Π΅. Π’Π΅ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΡΡΡ ΡΠ°Π½ΡΠ²Π°Ρ ΠΊΠ°ΠΊΡΠΎ ΡΠ°. ΠΠ»ΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅Π·ΠΈΠΊΡΡ Π½Π° Π±ΡΠ°ΡΠ·ΡΡΠ° ru Π΅ 2 Π±Π°ΠΉΡΠ°. Π Π°Π·Π±ΠΈΡΠ° ΡΠ΅, ΡΡΠΆΠ°Π»ΡΠ²Π°ΠΌ Π·Π° Π±Π°ΠΉΡΠΎΠ²Π΅ΡΠ΅, Π½ΠΎ Π½Π΅ ΡΠ΅ ΠΏΡΠΈΡΠ΅ΡΠ½ΡΠ²Π°ΠΉΡΠ΅, 2 Π±Π°ΠΉΡΠ° Π½Π΅ ΡΠ° ΠΆΠ°Π»ΠΊΠΎ. ΠΠΎΠ»Ρ, Π·Π°ΠΏΠ°Π·Π΅ΡΠ΅ Π³ΠΎ ΠΊΠ°ΠΊΡΠΎ Π΅, Π½Π΅ ΡΠ΅ ΠΏΡΠΈΡΠ΅ΡΠ½ΡΠ²Π°ΠΉΡΠ΅.
ΠΡΡΠ³ ΡΠ»ΡΡΠ°ΠΉ Π΅, ΠΊΠΎΠ³Π°ΡΠΎ, Π½Π°ΠΏΡΠΎΡΠΈΠ², ΠΈΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ Π½ΠΈΠ·ΠΎΠ²Π΅ ΠΈ Π² ΡΡΡΠΎΡΠΎ Π²ΡΠ΅ΠΌΠ΅ ΠΈΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ½ΠΈΠΊΠ°Π»Π½ΠΈ Π² ΡΡΡ ΠΈ Π΄ΠΎΡΠΈ Π½Π°Π±ΠΎΡΡΡ Π΅ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»Π½ΠΎ Π½Π΅ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½. Π’ΠΈΠΏΠΈΡΠ΅Π½ ΠΏΡΠΈΠΌΠ΅Ρ ΡΠ° ΡΡΠ°Π·ΠΈ Π·Π° ΡΡΡΡΠ΅Π½Π΅ ΠΈΠ»ΠΈ URL Π°Π΄ΡΠ΅ΡΠΈ. Π€ΡΠ°Π·ΠΈ Π·Π° ΡΡΡΡΠ΅Π½Π΅, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ ΠΏΠΎΡΠ°Π΄ΠΈ ΠΏΡΠ°Π²ΠΎΠΏΠΈΡΠ½ΠΈ Π³ΡΠ΅ΡΠΊΠΈ. ΠΠ΅ΠΊΠ° Π΄Π° Π²ΠΈΠ΄ΠΈΠΌ ΠΊΠΎΠ»ΠΊΠΎ ΡΠ½ΠΈΠΊΠ°Π»Π½ΠΈ ΡΡΠ°Π·ΠΈ Π·Π° ΡΡΡΡΠ΅Π½Π΅ Π½Π° Π΄Π΅Π½. Π ΡΠ΅ ΠΎΠΊΠ°Π·Π²Π°, ΡΠ΅ ΡΠ΅ ΡΠ° ΠΏΠΎΡΡΠΈ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π°ΡΠ° ΠΎΡ Π²ΡΠΈΡΠΊΠΈ ΡΡΠ±ΠΈΡΠΈΡ. Π Π² ΡΠΎΠ·ΠΈ ΡΠ»ΡΡΠ°ΠΉ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠΈ ΠΏΠΎΠΌΠΈΡΠ»ΠΈΡΠ΅, ΡΠ΅ ΡΡΡΠ±Π²Π° Π΄Π° Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΈΡΠ°ΡΠ΅ Π΄Π°Π½Π½ΠΈΡΠ΅, Π΄Π° ΠΏΡΠ΅Π±ΡΠΎΠΈΡΠ΅ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΈΡΠ΅, Π΄Π° Π³ΠΈ ΠΏΠΎΡΡΠ°Π²ΠΈΡΠ΅ Π² ΠΎΡΠ΄Π΅Π»Π½Π° ΡΠ°Π±Π»ΠΈΡΠ°. ΠΠΎ Π½Π΅ Π΅ Π½ΡΠΆΠ½ΠΎ Π΄Π° ΠΏΡΠ°Π²ΠΈΡΠ΅ ΡΠΎΠ²Π°. ΠΡΠΎΡΡΠΎ Π·Π°ΠΏΠ°Π·Π΅ΡΠ΅ ΡΠ΅Π·ΠΈ ΡΠ΅Π΄ΠΎΠ²Π΅ ΠΊΠ°ΠΊΡΠΎ ΡΠ°.
ΠΠΎ-Π΄ΠΎΠ±ΡΠ΅ - Π½Π΅ ΠΈΠ·ΠΌΠΈΡΠ»ΡΠΉΡΠ΅ Π½ΠΈΡΠΎ, Π·Π°ΡΠΎΡΠΎ Π°ΠΊΠΎ Π³ΠΎ ΡΡΡ ΡΠ°Π½ΡΠ²Π°ΡΠ΅ ΠΎΡΠ΄Π΅Π»Π½ΠΎ, ΡΠ΅ ΡΡΡΠ±Π²Π° Π΄Π° Π½Π°ΠΏΡΠ°Π²ΠΈΡΠ΅ ΠΏΡΠΈΡΡΠ΅Π΄ΠΈΠ½ΡΠ²Π°Π½Π΅. Π ΡΠΎΠ²Π° ΠΏΡΠΈΡΡΠ΅Π΄ΠΈΠ½ΡΠ²Π°Π½Π΅ Π΅ Π² Π½Π°ΠΉ-Π΄ΠΎΠ±ΡΠΈΡ ΡΠ»ΡΡΠ°Π΅Π½ Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ ΠΏΠ°ΠΌΠ΅ΡΡΠ°, Π°ΠΊΠΎ Π²ΡΠ΅ ΠΎΡΠ΅ ΡΠ΅ ΠΏΠΎΠ±ΠΈΡΠ° Π² ΠΏΠ°ΠΌΠ΅ΡΡΠ°. ΠΠΊΠΎ Π½Π΅ ΠΏΠ°ΡΠ½Π΅, ΡΠΎΠ³Π°Π²Π° ΡΠ΅ ΠΈΠΌΠ° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ ΠΊΠ°ΡΠΎ ΡΡΠ»ΠΎ.
Π Π°ΠΊΠΎ Π΄Π°Π½Π½ΠΈΡΠ΅ ΡΠ΅ ΡΡΡ ΡΠ°Π½ΡΠ²Π°Ρ Π½Π° ΠΌΡΡΡΠΎ, ΡΠ΅ ΠΏΡΠΎΡΡΠΎ ΡΠ΅ ΡΠ΅ΡΠ°Ρ Π² ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΈΡ ΡΠ΅Π΄ ΠΎΡ ΡΠ°ΠΉΠ»ΠΎΠ²Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ° ΠΈ Π²ΡΠΈΡΠΊΠΎ Π΅ Π½Π°ΡΠ΅Π΄.
ΠΠΊΠΎ ΠΈΠΌΠ°ΡΠ΅ url Π°Π΄ΡΠ΅ΡΠΈ ΠΈΠ»ΠΈ Π½ΡΠΊΠ°ΠΊΡΠ² Π΄ΡΡΠ³ ΡΠ»ΠΎΠΆΠ΅Π½ Π΄ΡΠ»ΡΠ³ Π½ΠΈΠ·, ΡΠΎΠ³Π°Π²Π° ΡΡΡΠ±Π²Π° Π΄Π° ΠΏΠΎΠΌΠΈΡΠ»ΠΈΡΠ΅ Π·Π° ΡΠ°ΠΊΡΠ°, ΡΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΈΠ·ΡΠΈΡΠ»ΠΈΡΠ΅ ΠΌΠ°Π»ΠΊΠΎ ΡΠ²ΠΈΠ²Π°Π½Π΅ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΈ Π΄Π° Π³ΠΎ Π·Π°ΠΏΠΈΡΠ΅ΡΠ΅ Π² ΠΎΡΠ΄Π΅Π»Π½Π° ΠΊΠΎΠ»ΠΎΠ½Π°.
ΠΠ° url Π°Π΄ΡΠ΅ΡΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΡΡ ΡΠ°Π½ΡΠ²Π°ΡΠ΅ Π΄ΠΎΠΌΠ΅ΠΉΠ½Π° ΠΎΡΠ΄Π΅Π»Π½ΠΎ. Π Π°ΠΊΠΎ Π½Π°ΠΈΡΡΠΈΠ½Π° ΠΈΠΌΠ°ΡΠ΅ Π½ΡΠΆΠ΄Π° ΠΎΡ Π΄ΠΎΠΌΠ΅ΠΉΠ½, ΠΏΡΠΎΡΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅ ΡΠ°Π·ΠΈ ΠΊΠΎΠ»ΠΎΠ½Π° ΠΈ URL Π°Π΄ΡΠ΅ΡΠΈΡΠ΅ ΡΠ΅ Π»ΡΠΆΠ°Ρ ΠΈ Π΄ΠΎΡΠΈ Π½ΡΠΌΠ° Π΄Π° Π³ΠΈ Π΄ΠΎΠΊΠΎΡΠ½Π΅ΡΠ΅.
ΠΠ° Π²ΠΈΠ΄ΠΈΠΌ ΠΊΠ°ΠΊΠ²Π° Π΅ ΡΠ°Π·Π»ΠΈΠΊΠ°ΡΠ°. ClickHouse ΠΈΠΌΠ° ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΡΠΎ ΠΈΠ·ΡΠΈΡΠ»ΡΠ²Π° Π΄ΠΎΠΌΠ΅ΠΉΠ½Π°. ΠΠ½ΠΎΠ³ΠΎ Π΅ Π±ΡΡΠ·, ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°Ρ ΠΌΠ΅ Π³ΠΎ. Π, ΡΠ΅ΡΡΠ½ΠΎ ΠΊΠ°Π·Π°Π½ΠΎ, Π΄ΠΎΡΠΈ Π½Π΅ ΠΎΡΠ³ΠΎΠ²Π°ΡΡ Π½Π° RFC, Π½ΠΎ Π²ΡΠΏΡΠ΅ΠΊΠΈ ΡΠΎΠ²Π° Π²Π·Π΅ΠΌΠ° ΠΏΡΠ΅Π΄Π²ΠΈΠ΄ Π²ΡΠΈΡΠΊΠΎ, ΠΎΡ ΠΊΠΎΠ΅ΡΠΎ ΡΠ΅ Π½ΡΠΆΠ΄Π°Π΅ΠΌ.
Π Π² Π΅Π΄ΠΈΠ½ ΡΠ»ΡΡΠ°ΠΉ Π½ΠΈΠ΅ ΠΏΡΠΎΡΡΠΎ ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΠΌ URL Π°Π΄ΡΠ΅ΡΠΈΡΠ΅ ΠΈ ΡΠ΅ ΠΈΠ·ΡΠΈΡΠ»ΠΈΠΌ Π΄ΠΎΠΌΠ΅ΠΉΠ½Π°. ΠΠΊΠ°Π·Π²Π° ΡΠ΅ 166 ΠΌΠΈΠ»ΠΈΡΠ΅ΠΊΡΠ½Π΄ΠΈ. Π Π°ΠΊΠΎ Π²Π·Π΅ΠΌΠ΅ΡΠ΅ Π³ΠΎΡΠΎΠ² Π΄ΠΎΠΌΠ΅ΠΉΠ½, ΡΠΎΠ³Π°Π²Π° ΡΠ΅ ΠΎΠΊΠ°Π·Π²Π° ΡΠ°ΠΌΠΎ 67 ΠΌΠΈΠ»ΠΈΡΠ΅ΠΊΡΠ½Π΄ΠΈ, ΡΠΎΠ΅ΡΡ ΠΏΠΎΡΡΠΈ ΡΡΠΈ ΠΏΡΡΠΈ ΠΏΠΎ-Π±ΡΡΠ·ΠΎ. Π ΠΏΠΎ-Π±ΡΡΠ·ΠΎ, Π½Π΅ Π·Π°ΡΠΎΡΠΎ ΡΡΡΠ±Π²Π° Π΄Π° ΠΏΡΠ°Π²ΠΈΠΌ Π½ΡΠΊΠ°ΠΊΠ²ΠΈ ΠΈΠ·ΡΠΈΡΠ»Π΅Π½ΠΈΡ, Π° Π·Π°ΡΠΎΡΠΎ ΡΠ΅ΡΠ΅ΠΌ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ Π΄Π°Π½Π½ΠΈ.
ΠΠΎ Π½ΡΠΊΠ°ΠΊΠ²Π° ΠΏΡΠΈΡΠΈΠ½Π° Π΅Π΄Π½Π° Π·Π°ΡΠ²ΠΊΠ°, ΠΊΠΎΡΡΠΎ Π΅ ΠΏΠΎ-Π±Π°Π²Π½Π°, ΠΏΠΎΠ»ΡΡΠ°Π²Π° ΠΏΠΎ-Π³ΠΎΠ»ΡΠΌΠ° ΡΠΊΠΎΡΠΎΡΡ Π² Π³ΠΈΠ³Π°Π±Π°ΠΉΡΠΈ Π² ΡΠ΅ΠΊΡΠ½Π΄Π°. ΠΠ°ΡΠΎΡΠΎ ΡΠ΅ΡΠ΅ ΠΏΠΎΠ²Π΅ΡΠ΅ Π³ΠΈΠ³Π°Π±Π°ΠΉΡΠΈ. Π’ΠΎΠ²Π° ΡΠ° Π½Π°ΠΏΡΠ»Π½ΠΎ ΠΈΠ·Π»ΠΈΡΠ½ΠΈ Π΄Π°Π½Π½ΠΈ. ΠΠ°ΡΠ²ΠΊΠ°ΡΠ° ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° ΡΠ΅ ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π° ΠΏΠΎ-Π±ΡΡΠ·ΠΎ, Π½ΠΎ ΠΎΡΠ½Π΅ΠΌΠ° ΠΏΠΎΠ²Π΅ΡΠ΅ Π²ΡΠ΅ΠΌΠ΅ Π·Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅.
Π Π°ΠΊΠΎ ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅ΡΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΡΠΎ Π΄Π°Π½Π½ΠΈ Π½Π° Π΄ΠΈΡΠΊΠ°, ΡΠ΅ ΠΎΠΊΠ°Π·Π²Π°, ΡΠ΅ URL Π°Π΄ΡΠ΅ΡΡΡ Π΅ 126 ΠΌΠ΅Π³Π°Π±Π°ΠΉΡΠ°, Π° Π΄ΠΎΠΌΠ΅ΠΉΠ½ΡΡ Π΅ ΡΠ°ΠΌΠΎ 5 ΠΌΠ΅Π³Π°Π±Π°ΠΉΡΠ°. ΠΠΊΠ°Π·Π²Π° ΡΠ΅ 25 ΠΏΡΡΠΈ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ. ΠΡΠΏΡΠ΅ΠΊΠΈ ΡΠΎΠ²Π°, Π·Π°ΡΠ²ΠΊΠ°ΡΠ° Π²ΡΠ΅ ΠΎΡΠ΅ Π΅ ΡΠ°ΠΌΠΎ 4 ΠΏΡΡΠΈ ΠΏΠΎ-Π±ΡΡΠ·Π°. ΠΠΎ ΡΠΎΠ²Π° Π΅, Π·Π°ΡΠΎΡΠΎ Π΄Π°Π½Π½ΠΈΡΠ΅ ΡΠ° Π³ΠΎΡΠ΅ΡΠΈ. Π Π°ΠΊΠΎ Π±Π΅ΡΠ΅ ΡΡΡΠ΄Π΅Π½ΠΎ, Π²Π΅ΡΠΎΡΡΠ½ΠΎ ΡΠ΅ΡΠ΅ Π΄Π° Π΅ 25 ΠΏΡΡΠΈ ΠΏΠΎ-Π±ΡΡΠ·ΠΎ ΠΏΠΎΡΠ°Π΄ΠΈ Π΄ΠΈΡΠΊΠΎΠ² I/O.
ΠΠ΅ΠΆΠ΄Ρ Π΄ΡΡΠ³ΠΎΡΠΎ, Π°ΠΊΠΎ ΠΏΡΠ΅ΡΠ΅Π½ΠΈΡΠ΅ ΠΊΠΎΠ»ΠΊΠΎ Π΄ΠΎΠΌΠ΅ΠΉΠ½ΡΡ Π΅ ΠΏΠΎ-ΠΌΠ°Π»ΡΠΊ ΠΎΡ URL Π°Π΄ΡΠ΅ΡΠ°, ΡΠΎΠ³Π°Π²Π° ΡΠ΅ ΠΎΠΊΠ°Π·Π²Π°, ΡΠ΅ Π΅ ΠΎΠΊΠΎΠ»ΠΎ 4 ΠΏΡΡΠΈ, Π½ΠΎ ΠΏΠΎ Π½ΡΠΊΠ°ΠΊΠ²Π° ΠΏΡΠΈΡΠΈΠ½Π° Π΄Π°Π½Π½ΠΈΡΠ΅ Π½Π° Π΄ΠΈΡΠΊΠ° ΠΎΡΠ½Π΅ΠΌΠ°Ρ 25 ΠΏΡΡΠΈ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ. ΠΠ°ΡΠΎ? ΠΠΎΡΠ°Π΄ΠΈ ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡ. Π URL Π°Π΄ΡΠ΅ΡΡΡ Π΅ ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡΠ°Π½, ΠΈ Π΄ΠΎΠΌΠ΅ΠΉΠ½ΡΡ Π΅ ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡΠ°Π½. ΠΠΎ ΡΠ΅ΡΡΠΎ URL Π°Π΄ΡΠ΅ΡΡΡ ΡΡΠ΄ΡΡΠΆΠ° ΠΊΡΠΏ Π±ΠΎΠΊΠ»ΡΠΊ.
Π, ΡΠ°Π·Π±ΠΈΡΠ° ΡΠ΅, ΡΡΡΡΠ²Π° ΡΠΈ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΈΡΠ΅ ΡΠΈΠΏΠΎΠ²Π΅ Π΄Π°Π½Π½ΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ° ΡΠΏΠ΅ΡΠΈΠ°Π»Π½ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠ°Π½ΠΈ Π·Π° ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΈΡΠ΅ ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ ΠΈΠ»ΠΈ ΠΊΠΎΠΈΡΠΎ ΠΏΠ°ΡΠ²Π°Ρ. ΠΠΊΠΎ ΡΡΠ΅ Π² IPv4, Π·Π°ΠΏΠ°Π·Π΅ΡΠ΅ UInt32*. ΠΠΊΠΎ IPv6, ΡΠΎΠ³Π°Π²Π° FixedString(16), ΡΡΠΉ ΠΊΠ°ΡΠΎ IPv6 Π°Π΄ΡΠ΅ΡΡΡ Π΅ 128 Π±ΠΈΡΠ°, Ρ.Π΅. ΡΡΡ ΡΠ°Π½ΡΠ²Π° ΡΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ Π² Π΄Π²ΠΎΠΈΡΠ΅Π½ ΡΠΎΡΠΌΠ°Ρ.
ΠΠΎ ΠΊΠ°ΠΊΠ²ΠΎ ΡΠ΅ ΡΡΠ°Π½Π΅, Π°ΠΊΠΎ ΠΏΠΎΠ½ΡΠΊΠΎΠ³Π° ΠΈΠΌΠ°ΡΠ΅ IPv4 Π°Π΄ΡΠ΅ΡΠΈ, Π° ΠΏΠΎΠ½ΡΠΊΠΎΠ³Π° IPv6? ΠΠ°, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π·Π°ΠΏΠ°Π·ΠΈΡΠ΅ ΠΈ Π΄Π²Π΅ΡΠ΅. ΠΠ΄Π½Π° ΠΊΠΎΠ»ΠΎΠ½Π° Π·Π° IPv4, Π΄ΡΡΠ³Π° Π·Π° IPv6. Π Π°Π·Π±ΠΈΡΠ° ΡΠ΅, ΠΈΠΌΠ° ΠΎΠΏΡΠΈΡ Π·Π° ΡΡΠΏΠΎΡΡΠ°Π²ΡΠ½Π΅ Π½Π° IPv4 ΠΊΡΠΌ IPv6. Π’ΠΎΠ²Π° ΡΡΡΠΎ ΡΠ΅ ΡΠ°Π±ΠΎΡΠΈ, Π½ΠΎ Π°ΠΊΠΎ ΡΠ΅ΡΡΠΎ ΡΠ΅ Π½ΡΠΆΠ΄Π°Π΅ΡΠ΅ ΠΎΡ IPv4 Π°Π΄ΡΠ΅Ρ Π²ΡΠ² Π²Π°ΡΠΈΡΠ΅ Π·Π°ΡΠ²ΠΊΠΈ, ΡΠΎΠ³Π°Π²Π° Π±ΠΈ Π±ΠΈΠ»ΠΎ Ρ ΡΠ±Π°Π²ΠΎ Π΄Π° Π³ΠΎ ΠΏΠΎΡΡΠ°Π²ΠΈΡΠ΅ Π² ΠΎΡΠ΄Π΅Π»Π½Π° ΠΊΠΎΠ»ΠΎΠ½Π°.
* Π‘Π΅Π³Π° ClickHouse ΠΈΠΌΠ° ΠΎΡΠ΄Π΅Π»Π½ΠΈ ΡΠΈΠΏΠΎΠ²Π΅ Π΄Π°Π½Π½ΠΈ IPv4, IPv6, ΠΊΠΎΠΈΡΠΎ ΡΡΡ ΡΠ°Π½ΡΠ²Π°Ρ Π΄Π°Π½Π½ΠΈ ΡΠΎΠ»ΠΊΠΎΠ²Π° Π΅ΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ, ΠΊΠΎΠ»ΠΊΠΎΡΠΎ ΡΠΈΡΠ»Π°ΡΠ°, Π½ΠΎ Π³ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΡΡ ΡΠΎΠ»ΠΊΠΎΠ²Π° ΡΠ΄ΠΎΠ±Π½ΠΎ, ΠΊΠΎΠ»ΠΊΠΎΡΠΎ Π½ΠΈΠ·ΠΎΠ²Π΅.
Π‘ΡΡΠΎ ΡΠ°ΠΊΠ° Π΅ Π²Π°ΠΆΠ½ΠΎ Π΄Π° ΡΠ΅ ΠΎΡΠ±Π΅Π»Π΅ΠΆΠΈ, ΡΠ΅ ΡΠΈ ΡΡΡΡΠ²Π° Π΄Π°Π½Π½ΠΈΡΠ΅ Π΄Π° Π±ΡΠ΄Π°Ρ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ΅Π½ΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π½ΡΠΊΠΎΠΈ Π½Π΅ΠΎΠ±ΡΠ°Π±ΠΎΡΠ΅Π½ΠΈ ΡΡΡΠΏΠΈ ΠΈΠ΄Π²Π°Ρ ΠΏΡΠΈ Π²Π°Ρ. Π ΠΌΠΎΠΆΠ΅ Π±ΠΈ Π½Π΅ ΡΡΡΠ±Π²Π° Π΄Π° Π³ΠΈ ΠΏΠΎΡΡΠ°Π²ΡΡΠ΅ Π²Π΅Π΄Π½Π°Π³Π° Π² ClickHouse, Π²ΡΠΏΡΠ΅ΠΊΠΈ ΡΠ΅ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ·ΠΊΡΡΠ°Π²Π°ΡΠΎ Π΄Π° Π½Π΅ ΠΏΡΠ°Π²ΠΈΡΠ΅ Π½ΠΈΡΠΎ ΠΈ Π²ΡΠΈΡΠΊΠΎ ΡΠ΅ ΡΠ°Π±ΠΎΡΠΈ. ΠΠΎ Π²ΡΠ΅ ΠΏΠ°ΠΊ ΡΠΈ ΡΡΡΡΠ²Π° Π΄Π° ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ°Ρ ΡΠ΅Π·ΠΈ ΠΈΠ·ΡΠΈΡΠ»Π΅Π½ΠΈΡ, ΠΊΠΎΠΈΡΠΎ ΡΠ° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΈ.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ Π²Π΅ΡΡΠΈΡ Π½Π° Π±ΡΠ°ΡΠ·ΡΡΠ°. Π Π½ΡΠΊΠΎΠΉ ΡΡΡΠ΅Π΄Π΅Π½ ΠΎΡΠ΄Π΅Π», ΠΊΠΎΠΉΡΠΎ Π½Π΅ ΠΈΡΠΊΠ°ΠΌ Π΄Π° ΡΠΎΡΠ° Ρ ΠΏΡΡΡΡ, Π²Π΅ΡΡΠΈΡΡΠ° Π½Π° Π±ΡΠ°ΡΠ·ΡΡΠ° ΡΠ΅ ΡΡΡ ΡΠ°Π½ΡΠ²Π° ΡΠ°ΠΌ ΡΠ°ΠΊΠ°, ΡΠΎΠ΅ΡΡ ΠΊΠ°ΡΠΎ Π½ΠΈΠ·: 12.3. Π ΡΠ»Π΅Π΄ ΡΠΎΠ²Π°, Π·Π° Π΄Π° Π½Π°ΠΏΡΠ°Π²ΡΡ ΠΎΡΡΠ΅Ρ, ΡΠ΅ Π²Π·Π΅ΠΌΠ°Ρ ΡΠΎΠ·ΠΈ Π½ΠΈΠ· ΠΈ Π³ΠΎ ΡΠ°Π·Π΄Π΅Π»ΡΡ Π½Π° ΠΌΠ°ΡΠΈΠ², Π° ΡΠ»Π΅Π΄ ΡΠΎΠ²Π° Π½Π° ΠΏΡΡΠ²ΠΈΡ Π΅Π»Π΅ΠΌΠ΅Π½Ρ ΠΎΡ ΠΌΠ°ΡΠΈΠ²Π°. ΠΡΡΠ΅ΡΡΠ²Π΅Π½ΠΎ Π²ΡΠΈΡΠΊΠΎ ΡΠ΅ Π·Π°Π±Π°Π²Ρ. ΠΠΎΠΏΠΈΡΠ°Ρ Π·Π°ΡΠΎ Π³ΠΎ ΠΏΡΠ°Π²ΡΡ. ΠΠ°Π·Π°Ρ Π° ΠΌΠΈ, ΡΠ΅ Π½Π΅ ΠΎΠ±ΠΈΡΠ°Ρ ΠΏΡΠ΅ΠΆΠ΄Π΅Π²ΡΠ΅ΠΌΠ΅Π½Π½Π°ΡΠ° ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ. Π Π½Π΅ ΠΎΠ±ΠΈΡΠ°ΠΌ ΠΏΡΠ΅ΠΆΠ΄Π΅Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΈΡ ΠΏΠ΅ΡΠΈΠΌΠΈΠ·ΡΠΌ.
Π’Π°ΠΊΠ° ΡΠ΅ Π² ΡΠΎΠ·ΠΈ ΡΠ»ΡΡΠ°ΠΉ Π±ΠΈ Π±ΠΈΠ»ΠΎ ΠΏΠΎ-ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ Π΄Π° ΡΠ΅ ΡΠ°Π·Π΄Π΅Π»ΠΈ Π½Π° 4 ΠΊΠΎΠ»ΠΎΠ½ΠΈ. Π’ΡΠΊ Π½Π΅ ΡΠ΅ ΡΡΡΠ°Ρ ΡΠ²Π°ΠΉΡΠ΅, Π·Π°ΡΠΎΡΠΎ ΡΠΎΠ²Π° Π΅ ClickHouse. ClickHouse Π΅ ΠΊΠΎΠ»ΠΎΠ½Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ. Π ΠΊΠΎΠ»ΠΊΠΎΡΠΎ ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΊΠΎΠΊΠ΅ΡΠ½ΠΈ ΠΌΠ°Π»ΠΊΠΈ ΠΊΠΎΠ»ΠΎΠ½ΠΈ, ΡΠΎΠ»ΠΊΠΎΠ²Π° ΠΏΠΎ-Π΄ΠΎΠ±ΡΠ΅. Π©Π΅ ΠΈΠΌΠ° 5 BrowserVersion, Π½Π°ΠΏΡΠ°Π²Π΅ΡΠ΅ 5 ΠΊΠΎΠ»ΠΎΠ½ΠΈ. Π’ΠΎΠ²Π° Π΅ Π΄ΠΎΠ±ΡΠ΅.
Π‘Π΅Π³Π° ΠΏΠΎΠΌΠΈΡΠ»Π΅ΡΠ΅ ΠΊΠ°ΠΊΠ²ΠΎ Π΄Π° Π½Π°ΠΏΡΠ°Π²ΠΈΡΠ΅, Π°ΠΊΠΎ ΠΈΠΌΠ°ΡΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΡΠ»Π³ΠΈ Π½ΠΈΠ·ΠΎΠ²Π΅, ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΡΠ»Π³ΠΈ ΠΌΠ°ΡΠΈΠ²ΠΈ. ΠΠ·ΠΎΠ±ΡΠΎ Π½Π΅ Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π° ΡΠ΅ ΡΡΡ ΡΠ°Π½ΡΠ²Π°Ρ Π² ClickHouse. ΠΠΌΠ΅ΡΡΠΎ ΡΠΎΠ²Π° ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΡΡ ΡΠ°Π½ΡΠ²Π°ΡΠ΅ ΡΠ°ΠΌΠΎ Π½ΡΠΊΠ°ΠΊΡΠ² ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π² ClickHouse. Π ΡΠ΅Π·ΠΈ Π΄ΡΠ»Π³ΠΈ ΠΎΠΏΠ°ΡΠΊΠΈ Π³ΠΈ Π½Π°Π±ΡΡΠ²Π°Ρ Π² Π½ΡΠΊΠ°ΠΊΠ²Π° Π΄ΡΡΠ³Π° ΡΠΈΡΡΠ΅ΠΌΠ°.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅Π΄Π½Π° ΠΎΡ Π½Π°ΡΠΈΡΠ΅ ΡΡΠ»ΡΠ³ΠΈ Π·Π° Π°Π½Π°Π»ΠΈΠ· ΠΈΠΌΠ° Π½ΡΠΊΠΎΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ Π½Π° ΡΡΠ±ΠΈΡΠΈΡ. Π Π°ΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ ΠΈΠ΄Π²Π°Ρ ΠΊΡΠΌ ΡΡΠ±ΠΈΡΠΈΡ, Π½ΠΈΠ΅ ΠΏΡΠΎΡΡΠΎ Π·Π°ΠΏΠ°Π·Π²Π°ΠΌΠ΅ ΠΏΡΡΠ²ΠΈΡΠ΅ 512, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ Π½Π°ΡΡΠΊΠ½Π°Ρ. ΠΠ°ΡΠΎΡΠΎ 512 Π½Π΅ Π΅ ΠΆΠ°Π»ΠΊΠΎ.
Π Π°ΠΊΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π²Π·Π΅ΠΌΠ΅ΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π·Π° Π²Π°ΡΠΈΡΠ΅ ΡΠΈΠΏΠΎΠ²Π΅ Π΄Π°Π½Π½ΠΈ, ΡΠΎΠ³Π°Π²Π° ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΡΡΠΎ Π΄Π° Π·Π°ΠΏΠΈΡΠ²Π°ΡΠ΅ Π΄Π°Π½Π½ΠΈ Π² ClickHouse, Π½ΠΎ Π²ΡΠ² Π²ΡΠ΅ΠΌΠ΅Π½Π½Π° ΡΠ°Π±Π»ΠΈΡΠ° ΠΎΡ ΡΠΈΠΏΠ° Log, ΠΊΠΎΡΡΠΎ Π΅ ΡΠΏΠ΅ΡΠΈΠ°Π»Π½Π° Π·Π° Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΈ Π΄Π°Π½Π½ΠΈ. Π‘Π»Π΅Π΄ ΡΠΎΠ²Π° ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠ°ΡΠ΅ ΠΊΠ°ΠΊΡΠ² Π²ΠΈΠ΄ ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈΡΠ΅ ΠΈΠΌΠ°ΡΠ΅ ΡΠ°ΠΌ, ΠΊΠ°ΠΊΠ²ΠΎ ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ ΠΈΠΌΠ° ΠΈ Π΄Π° ΡΡΡΡΠ°Π²ΠΈΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΈΡΠ΅ ΡΠΈΠΏΠΎΠ²Π΅.
* Π‘Π΅Π³Π° ClickHouse ΠΈΠΌΠ° ΡΠΈΠΏ Π΄Π°Π½Π½ΠΈ
Π‘Π΅Π³Π° ΡΠ°Π·Π³Π»Π΅Π΄Π°ΠΉΡΠ΅ Π΄ΡΡΠ³ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ΅Π½ ΡΠ»ΡΡΠ°ΠΉ. ΠΠΎΠ½ΡΠΊΠΎΠ³Π° Π½Π΅ΡΠ°ΡΠ° ΡΠ°Π±ΠΎΡΡΡ ΠΏΠΎ ΡΡΡΠ°Π½Π΅Π½ Π½Π°ΡΠΈΠ½ Π·Π° Ρ ΠΎΡΠ°ΡΠ°. ΠΡΠΈΠ²Π°ΠΌ ΠΈ Π²ΠΈΠΆΠ΄Π°ΠΌ ΡΠΎΠ²Π°. Π Π²Π΅Π΄Π½Π°Π³Π° ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π°, ΡΠ΅ ΡΠΎΠ²Π° Π΅ Π½Π°ΠΏΡΠ°Π²Π΅Π½ΠΎ ΠΎΡ Π½ΡΠΊΠ°ΠΊΡΠ² ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠΏΠΈΡΠ΅Π½, ΡΠΌΠ΅Π½ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡ, ΠΊΠΎΠΉΡΠΎ ΠΈΠΌΠ° Π±ΠΎΠ³Π°Ρ ΠΎΠΏΠΈΡ Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΡΠ° Π½Π° MySQL Π²Π΅ΡΡΠΈΡ 3.23.
Π’ΡΠΊ Π²ΠΈΠΆΠ΄Π°ΠΌΠ΅ Ρ ΠΈΠ»ΡΠ΄Π° ΡΠ°Π±Π»ΠΈΡΠΈ, Π²ΡΡΠΊΠ° ΠΎΡ ΠΊΠΎΠΈΡΠΎ ΡΡΠ΄ΡΡΠΆΠ° ΠΎΡΡΠ°ΡΡΠΊΠ° ΠΎΡ Π΄Π΅Π»Π΅Π½Π΅ΡΠΎ Π½Π° Π½Π΅ΡΡΠ½ΠΎ ΠΊΠ°ΠΊΠ²ΠΎ Π½Π° Ρ ΠΈΠ»ΡΠ΄Π°.
ΠΠΎ ΠΏΡΠΈΠ½ΡΠΈΠΏ ΡΠ²Π°ΠΆΠ°Π²Π°ΠΌ ΠΎΠΏΠΈΡΠ° Π½Π° Π΄ΡΡΠ³ΠΈΡΠ΅ Ρ ΠΎΡΠ°, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΠΊΠ°ΠΊΠ²ΠΈ ΡΡΡΠ°Π΄Π°Π½ΠΈΡ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ Π½Π°ΡΡΡΠΏΠ° ΡΠΎΠ·ΠΈ ΠΎΠΏΠΈΡ.
Π ΠΏΡΠΈΡΠΈΠ½ΠΈΡΠ΅ ΡΠ° ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΈΠ»ΠΈ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ ΡΡΠ½ΠΈ. Π’ΠΎΠ²Π° ΡΠ° ΡΡΠ°ΡΠΈ ΡΡΠ΅ΡΠ΅ΠΎΡΠΈΠΏΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ° ΡΠ΅ Π½Π°ΡΡΡΠΏΠ°Π»ΠΈ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ° Ρ Π΄ΡΡΠ³ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ MyISAM ΡΠ°Π±Π»ΠΈΡΠΈΡΠ΅ Π½ΡΠΌΠ°Ρ ΠΊΠ»ΡΡΡΠ΅ΡΠ΅Π½ ΠΏΡΡΠ²ΠΈΡΠ΅Π½ ΠΊΠ»ΡΡ. Π ΡΠΎΠ·ΠΈ Π½Π°ΡΠΈΠ½ Π½Π° ΡΠΏΠΎΠ΄Π΅Π»ΡΠ½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΠΎΡΡΠ°ΡΠ½ ΠΎΠΏΠΈΡ Π΄Π° ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ ΡΡΡΠ°ΡΠ° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡ.
ΠΡΡΠ³Π° ΠΏΡΠΈΡΠΈΠ½Π° Π΅, ΡΠ΅ Π΅ ΡΡΡΠ΄Π½ΠΎ Π΄Π° ΡΠ΅ ΠΏΡΠ°Π²ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π·Π° ΠΏΡΠΎΠΌΡΠ½Π° Π½Π° Π³ΠΎΠ»Π΅ΠΌΠΈ ΠΌΠ°ΡΠΈ. ΠΡΠΈΡΠΊΠΎ ΡΠ΅ Π±ΡΠ΄Π΅ Π±Π»ΠΎΠΊΠΈΡΠ°Π½ΠΎ. ΠΡΠΏΡΠ΅ΠΊΠΈ ΡΠ΅ Π² ΡΡΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΈΡΠ΅ Π²Π΅ΡΡΠΈΠΈ Π½Π° MySQL ΡΠΎΠ·ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Π²Π΅ΡΠ΅ Π½Π΅ Π΅ ΡΠΎΠ»ΠΊΠΎΠ²Π° ΡΠ΅ΡΠΈΠΎΠ·Π΅Π½.
ΠΠ»ΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, microsharding, Π½ΠΎ ΠΏΠΎΠ²Π΅ΡΠ΅ Π·Π° ΡΠΎΠ²Π° ΠΏΠΎ-ΠΊΡΡΠ½ΠΎ.
Π ClickHouse Π½Π΅ Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π° ΠΏΡΠ°Π²ΠΈΡΠ΅ ΡΠΎΠ²Π°, Π·Π°ΡΠΎΡΠΎ, ΠΏΡΡΠ²ΠΎ, ΠΏΡΡΠ²ΠΈΡΠ½ΠΈΡΡ ΠΊΠ»ΡΡ Π΅ Π³ΡΡΠΏΠΈΡΠ°Π½, Π΄Π°Π½Π½ΠΈΡΠ΅ ΡΠ° ΠΏΠΎΠ΄ΡΠ΅Π΄Π΅Π½ΠΈ ΠΏΠΎ ΠΏΡΡΠ²ΠΈΡΠ½ΠΈΡ ΠΊΠ»ΡΡ.
Π ΠΏΠΎΠ½ΡΠΊΠΎΠ³Π° Ρ ΠΎΡΠ°ΡΠ° ΠΌΠ΅ ΠΏΠΈΡΠ°Ρ: βΠΠ°ΠΊ ΡΠ΅ ΠΏΡΠΎΠΌΠ΅Π½Ρ Π΅ΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡΠ° Π½Π° Π·Π°ΡΠ²ΠΊΠΈΡΠ΅ Π·Π° ΠΎΠ±Ρ Π²Π°Ρ Π² ClickHouse Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ° Π½Π° ΡΠ°Π±Π»ΠΈΡΠ°ΡΠ°?β. ΠΠ°Π·Π²Π°ΠΌ, ΡΠ΅ ΠΈΠ·ΠΎΠ±ΡΠΎ Π½Π΅ ΡΠ΅ ΠΏΡΠΎΠΌΠ΅Π½Ρ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠΌΠ°ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΠ° Ρ ΠΌΠΈΠ»ΠΈΠ°ΡΠ΄ ΡΠ΅Π΄Π° ΠΈ ΡΠ΅ΡΠ΅ΡΠ΅ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΠΎΡ Π΅Π΄ΠΈΠ½ ΠΌΠΈΠ»ΠΈΠΎΠ½ ΡΠ΅Π΄Π°. ΠΡΠΈΡΠΊΠΎ Π΅ Π½Π°ΡΠ΅Π΄. ΠΠΊΠΎ ΡΠ°Π±Π»ΠΈΡΠ°ΡΠ° ΠΈΠΌΠ° ΡΡΠΈΠ»ΠΈΠΎΠ½ ΡΠ΅Π΄Π° ΠΈ Π²ΠΈΠ΅ ΡΠ΅ΡΠ΅ΡΠ΅ Π΅Π΄ΠΈΠ½ ΠΌΠΈΠ»ΠΈΠΎΠ½ ΡΠ΅Π΄Π°, ΡΠΎΠ³Π°Π²Π° ΡΠ΅ Π±ΡΠ΄Π΅ ΠΏΠΎΡΡΠΈ ΡΡΡΠΎΡΠΎ.
Π, Π²ΡΠΎΡΠΎ, Π½Π΅ ΡΠ° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΈ Π½ΠΈΠΊΠ°ΠΊΠ²ΠΈ ΡΠ°ΡΡΠΈ ΠΊΠ°ΡΠΎ ΡΡΡΠ½ΠΈ ΠΏΡΠ΅Π³ΡΠ°Π΄ΠΈ. ΠΠΊΠΎ Π²Π»Π΅Π·Π΅ΡΠ΅ ΠΈ ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅ΡΠ΅ ΠΊΠ°ΠΊΠ²ΠΎ ΠΈΠΌΠ° Π²ΡΠ² ΡΠ°ΠΉΠ»ΠΎΠ²Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ°, ΡΠ΅ Π²ΠΈΠ΄ΠΈΡΠ΅, ΡΠ΅ ΡΠ°Π±Π»ΠΈΡΠ°ΡΠ° Π΅ Π΄ΠΎΡΡΠ° ΡΠ΅ΡΠΈΠΎΠ·Π½ΠΎ Π½Π΅ΡΠΎ. Π ΡΠ°ΠΌ Π²ΡΡΡΠ΅ ΠΈΠΌΠ° Π½Π΅ΡΠΎ ΠΊΠ°ΡΠΎ ΠΏΡΠ΅Π³ΡΠ°Π΄ΠΈ. Π’ΠΎΠ΅ΡΡ ClickHouse ΠΏΡΠ°Π²ΠΈ Π²ΡΠΈΡΠΊΠΎ Π²ΠΌΠ΅ΡΡΠΎ Π²Π°Ρ ΠΈ Π½Π΅ Π΅ Π½ΡΠΆΠ½ΠΎ Π΄Π° ΡΡΡΠ°Π΄Π°ΡΠ΅.
ΠΡΠΎΠΌΡΠ½Π°ΡΠ° Π² ClickHouse Π΅ Π±Π΅Π·ΠΏΠ»Π°ΡΠ½Π°, Π°ΠΊΠΎ ΡΠ΅ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ ΠΊΠΎΠ»ΠΎΠ½Π° Π·Π° Π΄ΠΎΠ±Π°Π²ΡΠ½Π΅/ΠΏΡΡΠΊΠ°Π½Π΅.
Π Π½Π΅ ΡΡΡΠ±Π²Π° Π΄Π° ΠΏΡΠ°Π²ΠΈΡΠ΅ ΠΌΠ°Π»ΠΊΠΈ ΡΠ°Π±Π»ΠΈΡΠΈ, Π·Π°ΡΠΎΡΠΎ Π°ΠΊΠΎ ΠΈΠΌΠ°ΡΠ΅ 10 ΡΠ΅Π΄Π° ΠΈΠ»ΠΈ 10 000 ΡΠ΅Π΄Π° Π² ΡΠ°Π±Π»ΠΈΡΠ°ΡΠ° ΡΠΈ, ΡΠΎΠ³Π°Π²Π° ΡΠΎΠ²Π° Π½ΡΠΌΠ° Π½ΠΈΠΊΠ°ΠΊΠ²ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅. ClickHouse Π΅ ΡΠΈΡΡΠ΅ΠΌΠ°, ΠΊΠΎΡΡΠΎ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ° ΠΏΡΠΎΠΏΡΡΠΊΠ°ΡΠ΅Π»Π½Π°ΡΠ° ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ, Π° Π½Π΅ Π»Π°ΡΠ΅Π½ΡΠ½ΠΎΡΡΡΠ°, ΡΠ°ΠΊΠ° ΡΠ΅ Π½ΡΠΌΠ° ΡΠΌΠΈΡΡΠ» Π΄Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠ²Π°ΡΠ΅ 10 ΡΠ΅Π΄Π°.
ΠΡΠ°Π²ΠΈΠ»Π½ΠΎ Π΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π΅Π΄Π½Π° Π³ΠΎΠ»ΡΠΌΠ° ΠΌΠ°ΡΠ°. ΠΡΠ²ΠΎΠ±ΠΎΠ΄Π΅ΡΠ΅ ΡΠ΅ ΠΎΡ ΡΡΠ°ΡΠΈΡΠ΅ ΡΡΠ΅ΡΠ΅ΠΎΡΠΈΠΏΠΈ, Π²ΡΠΈΡΠΊΠΎ ΡΠ΅ Π±ΡΠ΄Π΅ Π½Π°ΡΠ΅Π΄.
Π ΠΊΠ°ΡΠΎ Π±ΠΎΠ½ΡΡ, Π² Π½Π°ΠΉ-Π½ΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ ΠΈΠΌΠ°ΠΌΠ΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π΄Π° Π½Π°ΠΏΡΠ°Π²ΠΈΠΌ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»Π΅Π½ ΠΊΠ»ΡΡ Π·Π° ΡΠ°Π·Π΄Π΅Π»ΡΠ½Π΅, Π·Π° Π΄Π° ΠΈΠ·Π²ΡΡΡΠ²Π°ΠΌΠ΅ Π²ΡΡΠΊΠ°ΠΊΠ²ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΠΏΠΎ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΠΎΡΠ΄Π΅Π»Π½ΠΈ Π΄ΡΠ»ΠΎΠ²Π΅.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠΌΠ°ΡΠ΅ Π½ΡΠΆΠ΄Π° ΠΎΡ ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠ°Π»ΠΊΠΈ ΡΠ°Π±Π»ΠΈΡΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΎΠ³Π°ΡΠΎ ΠΈΠΌΠ° Π½ΡΠΆΠ΄Π° Π΄Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΈΡΠ΅ Π½ΡΠΊΠΎΠΈ ΠΌΠ΅ΠΆΠ΄ΠΈΠ½Π½ΠΈ Π΄Π°Π½Π½ΠΈ, ΠΏΠΎΠ»ΡΡΠ°Π²Π°ΡΠ΅ ΠΏΠ°ΡΡΠ΅ΡΠ° ΠΈ ΡΡΡΠ±Π²Π° Π΄Π° ΠΈΠ·Π²ΡΡΡΠΈΡΠ΅ ΡΡΠ°Π½ΡΡΠΎΡΠΌΠ°ΡΠΈΡ Π²ΡΡΡ Ρ ΡΡΡ , ΠΏΡΠ΅Π΄ΠΈ Π΄Π° Π·Π°ΠΏΠΈΡΠ΅ΡΠ΅ Π² ΠΊΡΠ°ΠΉΠ½Π°ΡΠ° ΡΠ°Π±Π»ΠΈΡΠ°. ΠΠ° ΡΠΎΠ·ΠΈ ΡΠ»ΡΡΠ°ΠΉ ΠΈΠΌΠ° ΡΡΠ΄Π΅ΡΠ΅Π½ Π΄Π²ΠΈΠ³Π°ΡΠ΅Π» Π·Π° ΠΌΠ°ΡΠ° - StripeLog. Π’ΠΎΠ²Π° Π΅ ΠΊΠ°ΡΠΎ TinyLog, ΡΠ°ΠΌΠΎ ΡΠ΅ Π΅ ΠΏΠΎ-Π΄ΠΎΠ±ΡΠΎ.
* Π‘Π΅Π³Π° ClickHouse ΠΈΠΌΠ° ΠΏΠΎΠ²Π΅ΡΠ΅
ΠΡΡΠ³ Π°Π½ΡΠΈ-ΠΌΠΎΠ΄Π΅Π» Π΅ microsharding. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ°ΡΠ΄ΠΈΡΠ΅ Π΄Π°Π½Π½ΠΈ ΠΈ ΠΈΠΌΠ°ΡΠ΅ 5 ΡΡΡΠ²ΡΡΠ°, Π° ΡΡΡΠ΅ ΡΠ΅ ΠΈΠΌΠ° 6 ΡΡΡΠ²ΡΡΠ°. Π ΠΌΠΈΡΠ»ΠΈΡΠ΅ ΠΊΠ°ΠΊ Π΄Π° Π±Π°Π»Π°Π½ΡΠΈΡΠ°ΡΠ΅ ΠΎΡΠ½ΠΎΠ²ΠΎ ΡΠ΅Π·ΠΈ Π΄Π°Π½Π½ΠΈ. Π Π²ΠΌΠ΅ΡΡΠΎ ΡΠΎΠ²Π° Π½Π΅ ΡΠ΅ ΡΠ°Π·Π΄Π΅Π»ΡΡΠ΅ Π½Π° 5 ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°, Π° Π½Π° 1 ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°. Π ΡΠ»Π΅Π΄ ΡΠΎΠ²Π° ΠΊΠ°ΡΡΠΎΠ³ΡΠ°ΡΠΈΡΠ°ΡΠ΅ Π²ΡΠ΅ΠΊΠΈ ΠΎΡ ΡΠ΅Π·ΠΈ ΠΌΠΈΠΊΡΠΎΡΠ°ΡΠ΄ΠΎΠ²Π΅ ΠΊΡΠΌ ΠΎΡΠ΄Π΅Π»Π΅Π½ ΡΡΡΠ²ΡΡ. Π ΡΠ΅ ΡΡΠΏΠ΅Π΅ΡΠ΅ Π½Π° Π΅Π΄ΠΈΠ½ ΡΡΡΠ²ΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ 000 ClickHouse, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ. ΠΡΠ΄Π΅Π»Π΅Π½ Π΅ΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ Π½Π° ΠΎΡΠ΄Π΅Π»Π½ΠΈ ΠΏΠΎΡΡΠΎΠ²Π΅ ΠΈΠ»ΠΈ ΠΎΡΠ΄Π΅Π»Π½ΠΈ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ.
ΠΠΎ Π² ClickHouse ΡΠΎΠ²Π° Π½Π΅ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΠΎΠ±ΡΠ΅. ΠΠ°ΡΠΎΡΠΎ Π΄ΠΎΡΠΈ Π΅Π΄Π½ΠΎ ΠΊΠΎΠΏΠΈΠ΅ Π½Π° ClickHouse ΡΠ΅ ΠΎΠΏΠΈΡΠ²Π° Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π²ΡΠΈΡΠΊΠΈ Π½Π°Π»ΠΈΡΠ½ΠΈ ΡΠ΅ΡΡΡΡΠΈ Π½Π° ΡΡΡΠ²ΡΡΠ°, Π·Π° Π΄Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΈ Π΅Π΄Π½Π° Π·Π°ΡΠ²ΠΊΠ°. Π’ΠΎΠ΅ΡΡ ΠΈΠΌΠ°ΡΠ΅ Π½ΡΠΊΠ°ΠΊΡΠ² ΡΡΡΠ²ΡΡ ΠΈ ΡΠ°ΠΌ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, 56 ΠΏΡΠΎΡΠ΅ΡΠΎΡΠ½ΠΈ ΡΠ΄ΡΠ°. ΠΠ·ΠΏΡΠ»Π½ΡΠ²Π°ΡΠ΅ Π·Π°ΡΠ²ΠΊΠ°, ΠΊΠΎΡΡΠΎ ΠΎΡΠ½Π΅ΠΌΠ° Π΅Π΄Π½Π° ΡΠ΅ΠΊΡΠ½Π΄Π° ΠΈ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° 56 ΡΠ΄ΡΠ°. Π Π°ΠΊΠΎ ΠΏΠΎΡΡΠ°Π²ΠΈΡΠ΅ 200 ClickHouses Π½Π° Π΅Π΄ΠΈΠ½ ΡΡΡΠ²ΡΡ ΡΠ°ΠΌ, ΡΠΎΠ³Π°Π²Π° ΡΠ΅ ΠΎΠΊΠ°Π·Π²Π°, ΡΠ΅ ΡΠ΅ ΡΡΠ°ΡΡΠΈΡΠ°Ρ 10 000 Π½ΠΈΡΠΊΠΈ. ΠΠ°ΡΠΎ ΡΡΠ»ΠΎ Π²ΡΠΈΡΠΊΠΎ ΡΠ΅ Π±ΡΠ΄Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π·Π»Π΅.
ΠΡΡΠ³Π° ΠΏΡΠΈΡΠΈΠ½Π° Π΅, ΡΠ΅ ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΡΠ°Π±ΠΎΡΠ°ΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ΅Π·ΠΈ ΠΈΠ½ΡΡΠ°Π½ΡΠΈΠΈ ΡΠ΅ Π±ΡΠ΄Π΅ Π½Π΅ΡΠ°Π²Π½ΠΎΠΌΠ΅ΡΠ½ΠΎ. ΠΡΠΊΠΎΠΈ ΡΠ΅ ΡΠ²ΡΡΡΠ°Ρ ΠΏΠΎ-ΡΠ°Π½ΠΎ, Π΄ΡΡΠ³ΠΈ ΠΏΠΎ-ΠΊΡΡΠ½ΠΎ. ΠΠΊΠΎ Π²ΡΠΈΡΠΊΠΎ ΡΠΎΠ²Π° ΡΠ΅ ΡΠ»ΡΡΠΈ Π² Π΅Π΄ΠΈΠ½ ΡΠ»ΡΡΠ°ΠΉ, ΡΠΎΠ³Π°Π²Π° ΡΠ°ΠΌΠΈΡΡ ClickHouse ΡΠ΅ΡΠ΅ Π΄Π° ΠΈΠ·ΠΌΠΈΡΠ»ΠΈ ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ Π΄Π° ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»ΠΈ Π΄Π°Π½Π½ΠΈΡΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΠΎΡΠΎΡΠΈΡΠ΅.
Π Π΄ΡΡΠ³Π° ΠΏΡΠΈΡΠΈΠ½Π° Π΅, ΡΠ΅ ΡΠ΅ ΠΈΠΌΠ°ΡΠ΅ ΠΌΠ΅ΠΆΠ΄ΡΠΏΡΠΎΡΠ΅ΡΠΎΡΠ½Π° ΠΊΠΎΠΌΡΠ½ΠΈΠΊΠ°ΡΠΈΡ ΠΏΡΠ΅Π· TCP. ΠΠ°Π½Π½ΠΈΡΠ΅ ΡΠ΅ ΡΡΡΠ±Π²Π° Π΄Π° Π±ΡΠ΄Π°Ρ ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ, Π΄Π΅ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΠΈ ΡΠΎΠ²Π° Π΅ ΠΎΠ³ΡΠΎΠΌΠ΅Π½ Π±ΡΠΎΠΉ ΠΌΠΈΠΊΡΠΎΡΠ°ΡΠ΄ΠΎΠ²Π΅. ΠΡΠΎΡΡΠΎ Π½ΡΠΌΠ° Π΄Π° ΡΠ°Π±ΠΎΡΠΈ.
ΠΡΡΠ³ Π°Π½ΡΠΈΡΠ°Π±Π»ΠΎΠ½, ΠΌΠ°ΠΊΠ°Ρ ΡΠ΅ ΡΡΡΠ΄Π½ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ Π½Π°ΡΠ΅ΡΠ΅ Π°Π½ΡΠΈΡΠ°Π±Π»ΠΎΠ½. Π’ΠΎΠ²Π° Π΅ Π³ΠΎΠ»ΡΠΌΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»Π½ΠΎ Π°Π³ΡΠ΅Π³ΠΈΡΠ°Π½Π΅.
ΠΠ°ΡΠΎ ΡΡΠ»ΠΎ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»Π½ΠΎΡΠΎ Π°Π³ΡΠ΅Π³ΠΈΡΠ°Π½Π΅ Π΅ Π΄ΠΎΠ±ΡΠΎ. ΠΠΌΠ°Ρ ΡΠ΅ ΠΌΠΈΠ»ΠΈΠ°ΡΠ΄ ΡΠ΅Π΄Π°, ΡΡΠ±ΡΠ°Ρ ΡΠ΅ Π³ΠΈ ΠΈ ΡΡΠ°Π½Π°Ρ Π° 1 ΡΠ΅Π΄Π° ΠΈ ΡΠ΅Π³Π° Π·Π°ΡΠ²ΠΊΠ°ΡΠ° ΡΠ΅ ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π° Π½Π΅Π·Π°Π±Π°Π²Π½ΠΎ. ΠΡΠΈΡΠΊΠΎ Π΅ ΡΡΡΠ°Ρ ΠΎΡΠ½ΠΎ. ΠΡΠΎ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π³ΠΎ Π½Π°ΠΏΡΠ°Π²ΠΈΡΠ΅. Π Π·Π° ΡΠΎΠ²Π° Π΄ΠΎΡΠΈ ClickHouse ΠΈΠΌΠ° ΡΠΏΠ΅ΡΠΈΠ°Π»Π΅Π½ ΡΠΈΠΏ ΡΠ°Π±Π»ΠΈΡΠ° AggregatingMergeTree, ΠΊΠΎΠΉΡΠΎ ΠΈΠ·Π²ΡΡΡΠ²Π° ΠΏΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΠΎ Π°Π³ΡΠ΅Π³ΠΈΡΠ°Π½Π΅ ΠΏΡΠΈ Π²ΠΌΡΠΊΠ²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ.
ΠΠΎ ΠΈΠΌΠ° ΠΌΠΎΠΌΠ΅Π½ΡΠΈ, Π² ΠΊΠΎΠΈΡΠΎ ΡΠΈ ΠΌΠΈΡΠ»ΠΈΡΠ΅, ΡΠ΅ Π½ΠΈΠ΅ ΡΠ΅ ΡΡΠ±ΠΈΡΠ°ΠΌΠ΅ Π΄Π°Π½Π½ΠΈ ΠΊΠ°ΡΠΎ ΡΠ΅Π·ΠΈ ΠΈ ΡΠ΅ ΡΡΠ±ΠΈΡΠ°ΠΌΠ΅ Π΄Π°Π½Π½ΠΈ ΠΊΠ°ΡΠΎ ΡΠ΅Π·ΠΈ. Π Π² Π½ΡΠΊΠΎΠΉ ΡΡΡΠ΅Π΄Π΅Π½ ΠΎΡΠ΄Π΅Π», ΡΡΡΠΎ Π½Π΅ ΠΈΡΠΊΠ°ΠΌ Π΄Π° ΠΊΠ°Π·Π²Π°ΠΌ ΠΊΠΎΠΉ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ SummingMergeTree ΡΠ°Π±Π»ΠΈΡΠΈ Π·Π° ΡΡΠΌΠΈΡΠ°Π½Π΅ ΠΏΠΎ ΠΏΡΡΠ²ΠΈΡΠ½ΠΈΡ ΠΊΠ»ΡΡ ΠΈ 20 ΠΊΠΎΠ»ΠΎΠ½ΠΈ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΊΠ°ΡΠΎ ΠΏΡΡΠ²ΠΈΡΠ΅Π½ ΠΊΠ»ΡΡ. ΠΠ° Π²ΡΠ΅ΠΊΠΈ ΡΠ»ΡΡΠ°ΠΉ ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡ ΠΈΠΌΠ΅Π½Π°ΡΠ° Π½Π° Π½ΡΠΊΠΎΠΈ ΠΊΠΎΠ»ΠΎΠ½ΠΈ Π·Π° ΠΊΠΎΠ½ΡΠΏΠΈΡΠ°ΡΠΈΡ, Π½ΠΎ ΡΠΎΠ²Π° Π΅ Π²ΡΠΈΡΠΊΠΎ.
Π Π²ΡΠ·Π½ΠΈΠΊΠ²Π°Ρ ΡΠ°ΠΊΠΈΠ²Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ. ΠΡΡΠ²ΠΎ, ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΡΠΎ Π΄Π°Π½Π½ΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΈΠΌΠ°ΡΠ΅, Π½Π΅ ΡΠ΅ Π½Π°ΠΌΠ°Π»ΡΠ²Π° ΡΠ²ΡΡΠ΄Π΅ ΠΌΠ½ΠΎΠ³ΠΎ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΎΠΉ ΡΠ΅ Π½Π°ΠΌΠ°Π»ΡΠ²Π° ΡΡΠΈ ΠΏΡΡΠΈ. Π’ΡΠΈ ΠΏΡΡΠΈ Π±ΠΈ Π±ΠΈΠ»ΠΎ Π΄ΠΎΠ±ΡΠ° ΡΠ΅Π½Π°, Π·Π° Π΄Π° ΡΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡΠ΅ Π½Π΅ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ Π°Π½Π°Π»ΠΈΠ·, ΠΊΠΎΠΉΡΠΎ ΠΈΠ΄Π²Π° Ρ Π½Π°Π»ΠΈΡΠΈΠ΅ΡΠΎ Π½Π° Π½Π΅ΠΎΠ±ΠΎΠ±ΡΠ΅Π½ΠΈ Π΄Π°Π½Π½ΠΈ. ΠΠΊΠΎ Π΄Π°Π½Π½ΠΈΡΠ΅ ΡΠ° Π°Π³ΡΠ΅Π³ΠΈΡΠ°Π½ΠΈ, ΡΠΎΠ³Π°Π²Π° ΠΏΠΎΠ»ΡΡΠ°Π²Π°ΡΠ΅ ΡΠ°ΠΌΠΎ ΠΌΠΈΠ·Π΅ΡΠ½ΠΈ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠΈ Π²ΠΌΠ΅ΡΡΠΎ Π°Π½Π°Π»ΠΈΠ·ΠΈ.
Π ΠΊΠ°ΠΊΠ²ΠΎ Π΅ ΠΎΡΠΎΠ±Π΅Π½ΠΎ Π΄ΠΎΠ±ΡΠΎ? Π§Π΅ ΡΠ΅Π·ΠΈ Ρ ΠΎΡΠ° ΠΎΡ ΡΡΡΠ΅Π΄Π½ΠΈΡ ΠΎΡΠ΄Π΅Π» ΠΎΡΠΈΠ²Π°Ρ ΠΈ ΠΏΠΈΡΠ°Ρ ΠΏΠΎΠ½ΡΠΊΠΎΠ³Π° Π΄Π° Π΄ΠΎΠ±Π°Π²ΡΡ ΠΎΡΠ΅ Π΅Π΄Π½Π° ΠΊΠΎΠ»ΠΎΠ½Π° ΠΊΡΠΌ ΠΏΡΡΠ²ΠΈΡΠ½ΠΈΡ ΠΊΠ»ΡΡ. Π’ΠΎΠ΅ΡΡ ΡΡΠ±ΡΠ°Ρ ΠΌΠ΅ Π΄Π°Π½Π½ΠΈΡΠ΅ ΡΠ°ΠΊΠ° ΠΈ ΡΠ΅Π³Π° ΠΈΡΠΊΠ°ΠΌΠ΅ ΠΌΠ°Π»ΠΊΠΎ ΠΏΠΎΠ²Π΅ΡΠ΅. ΠΠΎ Π² ClickHouse Π½ΡΠΌΠ° Π°Π»ΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π΅Π½ ΠΏΡΡΠ²ΠΈΡΠ΅Π½ ΠΊΠ»ΡΡ. Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎ ΡΡΡΠ±Π²Π° Π΄Π° Π½Π°ΠΏΠΈΡΠ΅ΡΠ΅ Π½ΡΠΊΠΎΠΈ ΡΠΊΡΠΈΠΏΡΠΎΠ²Π΅ Π½Π° C ++. Π Π°Π· Π½Π΅ Ρ Π°ΡΠ΅ΡΠ²Π°ΠΌ ΡΠΊΡΠΈΠΏΡΠΎΠ²Π΅, Π΄ΠΎΡΠΈ ΠΈ Π΄Π° ΡΠ° Π½Π° C++.
Π Π°ΠΊΠΎ ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅ΡΠ΅ Π·Π° ΠΊΠ°ΠΊΠ²ΠΎ Π΅ ΡΡΠ·Π΄Π°Π΄Π΅Π½ ClickHouse, ΡΠΎΠ³Π°Π²Π° Π½Π΅Π°Π³ΡΠ΅Π³ΠΈΡΠ°Π½ΠΈΡΠ΅ Π΄Π°Π½Π½ΠΈ ΡΠ° ΡΠΎΡΠ½ΠΎ ΡΡΠ΅Π½Π°ΡΠΈΡΡ, Π·Π° ΠΊΠΎΠΉΡΠΎ ΡΠ° ΡΠΎΠ΄Π΅Π½ΠΈ. ΠΠΊΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ClickHouse Π·Π° Π½Π΅Π°Π³ΡΠ΅Π³ΠΈΡΠ°Π½ΠΈ Π΄Π°Π½Π½ΠΈ, ΡΠΎΠ³Π°Π²Π° ΠΏΡΠ°Π²ΠΈΡΠ΅ Π²ΡΠΈΡΠΊΠΎ ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ. ΠΠΊΠΎ ΡΡΠ±ΠΈΡΠ°ΡΠ΅, ΡΠΎΠ²Π° ΠΏΠΎΠ½ΡΠΊΠΎΠ³Π° Π΅ ΠΏΡΠΎΡΡΠΈΠΌΠΎ.
ΠΡΡΠ³ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ΅Π½ ΡΠ»ΡΡΠ°ΠΉ ΡΠ° Π·Π°ΡΠ²ΠΊΠΈΡΠ΅ Π² Π±Π΅Π·ΠΊΡΠ°Π΅Π½ ΡΠΈΠΊΡΠ». ΠΠΎΠ½ΡΠΊΠΎΠ³Π° ΠΎΡΠΈΠ²Π°ΠΌ Π½Π° Π½ΡΠΊΠΎΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π΅Π½ ΡΡΡΠ²ΡΡ ΠΈ Π³Π»Π΅Π΄Π°ΠΌ show processlist ΡΠ°ΠΌ. Π Π²ΡΠ΅ΠΊΠΈ ΠΏΡΡ ΠΎΡΠΊΡΠΈΠ²Π°ΠΌ, ΡΠ΅ ΡΠ΅ ΡΠ»ΡΡΠ²Π° Π½Π΅ΡΠΎ ΡΠΆΠ°ΡΠ½ΠΎ.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠΎ ΡΠΎΠ²Π°. ΠΠ΅Π΄Π½Π°Π³Π° ΡΡΠ°Π²Π° ΡΡΠ½ΠΎ, ΡΠ΅ Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΄Π° ΡΠ΅ Π½Π°ΠΏΡΠ°Π²ΠΈ Π²ΡΠΈΡΠΊΠΎ Ρ Π΅Π΄Π½Π° Π·Π°ΡΠ²ΠΊΠ°. ΠΡΠΎΡΡΠΎ Π½Π°ΠΏΠΈΡΠ΅ΡΠ΅ URL Π°Π΄ΡΠ΅ΡΠ° ΠΈ ΡΠΏΠΈΡΡΠΊΠ° ΡΠ°ΠΌ.
ΠΠ°ΡΠΎ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ°ΠΊΠΈΠ²Π° Π·Π°ΡΠ²ΠΊΠΈ Π² Π±Π΅Π·ΠΊΡΠ°Π΅Π½ ΡΠΈΠΊΡΠ» ΡΠ° Π»ΠΎΡΠΈ? ΠΠΊΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΡΡ Π½Π΅ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°, ΡΠΎΠ³Π°Π²Π° ΡΠ΅ ΠΈΠΌΠ°ΡΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠ΅ΠΌΠΈΠ½Π°Π²Π°Π½ΠΈΡ Π½Π° Π΅Π΄Π½ΠΈ ΠΈ ΡΡΡΠΈ Π΄Π°Π½Π½ΠΈ. ΠΠΎ Π°ΠΊΠΎ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΈΠ½Π΄Π΅ΠΊΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠΌΠ°ΡΠ΅ ΠΏΡΡΠ²ΠΈΡΠ΅Π½ ΠΊΠ»ΡΡ Π½Π° ru ΠΈ ΡΠ°ΠΌ ΠΏΠΈΡΠ΅ΡΠ΅ url = Π½Π΅ΡΠΎ. Π ΠΌΠΈΡΠ»ΠΈΡΠ΅, ΡΠ΅ Π΅Π΄ΠΈΠ½ url ΡΠ΅ Π±ΡΠ΄Π΅ ΠΏΡΠΎΡΠ΅ΡΠ΅Π½ ΠΏΠΎ ΡΠΎΡΠΊΠΈ ΠΎΡ ΡΠ°Π±Π»ΠΈΡΠ°ΡΠ°, Π²ΡΠΈΡΠΊΠΎ ΡΠ΅ Π±ΡΠ΄Π΅ Π½Π°ΡΠ΅Π΄. ΠΠΎ Π½Π°ΠΈΡΡΠΈΠ½Π° Π½Π΅. ΠΠ°ΡΠΎΡΠΎ ClickHouse ΠΏΡΠ°Π²ΠΈ Π²ΡΠΈΡΠΊΠΎ Π½Π° ΠΏΠ°ΡΡΠΈΠ΄ΠΈ.
ΠΠΎΠ³Π°ΡΠΎ ΡΡΡΠ±Π²Π° Π΄Π° ΠΏΡΠΎΡΠ΅ΡΠ΅ Π½ΡΠΊΠ°ΠΊΡΠ² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΠΎΡ Π΄Π°Π½Π½ΠΈ, ΡΠΎΠΉ ΡΠ΅ΡΠ΅ ΠΌΠ°Π»ΠΊΠΎ ΠΏΠΎΠ²Π΅ΡΠ΅, Π·Π°ΡΠΎΡΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΡΡ Π² ClickHouse Π΅ ΡΡΠ΄ΡΠΊ. Π’ΠΎΠ·ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡ Π½Π΅ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° Π½Π°ΠΌΠ΅ΡΠΈΡΠ΅ Π΅Π΄ΠΈΠ½ ΠΎΡΠ΄Π΅Π»Π΅Π½ ΡΠ΅Π΄ Π² ΡΠ°Π±Π»ΠΈΡΠ°ΡΠ°, Π° ΡΠ°ΠΌΠΎ Π½ΡΠΊΠ°ΠΊΡΠ² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½. Π Π΄Π°Π½Π½ΠΈΡΠ΅ ΡΠ΅ ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡΠ°Ρ Π² Π±Π»ΠΎΠΊΠΎΠ²Π΅. ΠΠ° Π΄Π° ΠΏΡΠΎΡΠ΅ΡΠ΅ΡΠ΅ Π΅Π΄ΠΈΠ½ ΡΠ΅Π΄, ΡΡΡΠ±Π²Π° Π΄Π° Π²Π·Π΅ΠΌΠ΅ΡΠ΅ ΡΠ΅Π»ΠΈΡ Π±Π»ΠΎΠΊ ΠΈ Π΄Π° Π³ΠΎ Π΄Π΅ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡΠ°ΡΠ΅. Π Π°ΠΊΠΎ ΡΡΠ°ΡΡΠΈΡΠ°ΡΠ΅ ΠΊΡΠΏ Π·Π°ΡΠ²ΠΊΠΈ, ΡΠ΅ ΠΈΠΌΠ°ΡΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠ΅ΡΠΈΡΠ°Π½ΠΈΡ ΠΎΡ ΡΡΡ ΠΈ ΡΠ΅ ΠΈΠΌΠ°ΡΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ°Π±ΠΎΡΠ°, ΡΠ²ΡΡΡΠ΅Π½Π° ΠΎΡΠ½ΠΎΠ²ΠΎ ΠΈ ΠΎΡΠ½ΠΎΠ²ΠΎ.
Π ΠΊΠ°ΡΠΎ Π±ΠΎΠ½ΡΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π²ΠΈΠ΄ΠΈΡΠ΅, ΡΠ΅ Π² ClickHouse Π½Π΅ ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ΅ ΡΡΡΠ°Ρ ΡΠ²Π°ΡΠ΅ Π΄Π° ΠΏΡΠ΅Ρ Π²ΡΡΠ»ΠΈΡΠ΅ Π΄ΠΎΡΠΈ ΠΌΠ΅Π³Π°Π±Π°ΠΉΡΠΈ ΠΈ Π΄ΠΎΡΠΈ ΡΡΠΎΡΠΈΡΠΈ ΠΌΠ΅Π³Π°Π±Π°ΠΉΡΠΈ Π² ΡΠ΅ΠΊΡΠΈΡΡΠ° IN. Π‘ΠΏΠΎΠΌΠ½ΡΠΌ ΡΠΈ ΠΎΡ Π½Π°ΡΠ°ΡΠ° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ°, ΡΠ΅ Π°ΠΊΠΎ ΠΏΠΎΠ΄Π°Π΄Π΅ΠΌ ΠΊΡΠΏ ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ Π² ΡΠ΅ΠΊΡΠΈΡΡΠ° IN Π² MySQL, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎΠ΄Π°Π΄Π΅ΠΌ 100 ΠΌΠ΅Π³Π°Π±Π°ΠΉΡΠ° ΠΎΡ Π½ΡΠΊΠ°ΠΊΠ²ΠΈ ΡΠΈΡΠ»Π° ΡΠ°ΠΌ, ΡΠΎΠ³Π°Π²Π° MySQL ΠΈΠ·ΡΠΆΠ΄Π° 10 Π³ΠΈΠ³Π°Π±Π°ΠΉΡΠ° ΠΏΠ°ΠΌΠ΅Ρ ΠΈ Π½ΠΈΡΠΎ Π΄ΡΡΠ³ΠΎ Π½Π΅ ΡΠ΅ ΡΠ»ΡΡΠ²Π° ΡΠΎΠ²Π°, Π²ΡΠΈΡΠΊΠΎ ΡΠ°Π±ΠΎΡΠΈ Π·Π»Π΅.
Π Π²ΡΠΎΡΠΎΡΠΎ Π½Π΅ΡΠΎ Π΅, ΡΠ΅ Π² ClickHouse, Π°ΠΊΠΎ Π²Π°ΡΠΈΡΠ΅ Π·Π°ΡΠ²ΠΊΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΈΠ½Π΄Π΅ΠΊΡ, ΡΠΎ Π²ΠΈΠ½Π°Π³ΠΈ Π΅ Π½Π΅ ΠΏΠΎ-Π±Π°Π²Π½ΠΎ ΠΎΡ ΠΏΡΠ»Π½ΠΎΡΠΎ ΡΠΊΠ°Π½ΠΈΡΠ°Π½Π΅, Ρ.Π΅. Π°ΠΊΠΎ ΡΡΡΠ±Π²Π° Π΄Π° ΠΏΡΠΎΡΠ΅ΡΠ΅ΡΠ΅ ΠΏΠΎΡΡΠΈ ΡΡΠ»Π°ΡΠ° ΡΠ°Π±Π»ΠΈΡΠ°, ΡΠΎ ΡΠ΅ ΠΏΡΠ΅ΠΌΠΈΠ½Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎ ΠΈ ΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΠ΅ ΡΡΠ»Π°ΡΠ° ΡΠ°Π±Π»ΠΈΡΠ°. ΠΠ°ΡΠΎ ΡΡΠ»ΠΎ ΡΠΎΠΉ ΡΠ΅ Π³ΠΎ ΡΠ°Π·Π±Π΅ΡΠ΅.
ΠΠΌΠ° ΠΎΠ±Π°ΡΠ΅ Π½ΡΠΊΠΎΠΈ ΡΡΡΠ΄Π½ΠΎΡΡΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ΅ IN Ρ ΠΏΠΎΠ΄Π·Π°ΡΠ²ΠΊΠ° Π½Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΈΠ½Π΄Π΅ΠΊΡΠ°. ΠΠΎ ΡΠΎΠ²Π° ΡΠΈ Π΅ Π½Π°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΠΈ ΡΡΡΠ±Π²Π° Π΄Π° Π³ΠΎ ΠΎΠΏΡΠ°Π²ΠΈΠΌ. Π’ΡΠΊ Π½ΡΠΌΠ° Π½ΠΈΡΠΎ ΡΡΠ½Π΄Π°ΠΌΠ΅Π½ΡΠ°Π»Π½ΠΎ. Π₯Π°ΠΉΠ΄Π΅ Π΄Π° Π³ΠΎ Π½Π°ΠΏΡΠ°Π²ΠΈΠΌ*.
Π Π΄ΡΡΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ Π½Π΅ΡΠΎ Π΅, ΡΠ΅ Π°ΠΊΠΎ ΠΈΠΌΠ°ΡΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΡΠ»Π³Π° Π·Π°ΡΠ²ΠΊΠ° ΠΈ ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ²Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π° Π·Π°ΡΠ²ΠΊΠ°, ΡΠΎΠ³Π°Π²Π° ΡΠ°Π·ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΡΠ»Π³Π° Π·Π°ΡΠ²ΠΊΠ° ΡΠ΅ Π±ΡΠ΄Π΅ ΠΈΠ·ΠΏΡΠ°ΡΠ΅Π½Π° Π΄ΠΎ Π²ΡΠ΅ΠΊΠΈ ΡΡΡΠ²ΡΡ Π±Π΅Π· ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ 100 ΠΌΠ΅Π³Π°Π±Π°ΠΉΡΠ° ΠΈ 500 ΡΡΡΠ²ΡΡΠ°. Π ΡΡΠΎΡΠ²Π΅ΡΠ½ΠΎ 50 Π³ΠΈΠ³Π°Π±Π°ΠΉΡΠ° ΡΠ΅ Π±ΡΠ΄Π°Ρ ΠΏΡΠ΅Ρ Π²ΡΡΠ»Π΅Π½ΠΈ ΠΏΠΎ ΠΌΡΠ΅ΠΆΠ°ΡΠ°. Π’ΠΎΠΉ ΡΠ΅ Π±ΡΠ΄Π΅ ΠΏΡΠ΅Ρ Π²ΡΡΠ»Π΅Π½ ΠΈ ΡΠ»Π΅Π΄ ΡΠΎΠ²Π° Π²ΡΠΈΡΠΊΠΎ ΡΠ΅ Π±ΡΠ΄Π΅ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΎ ΡΡΠΏΠ΅ΡΠ½ΠΎ.
* Π²Π΅ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌ; Π²ΡΠΈΡΠΊΠΎ Π±Π΅ΡΠ΅ ΠΏΠΎΠΏΡΠ°Π²Π΅Π½ΠΎ, ΠΊΠ°ΠΊΡΠΎ Π±Π΅ΡΠ΅ ΠΎΠ±Π΅ΡΠ°Π½ΠΎ.
Π ΡΠΎΠ²Π° Π΅ Π΄ΠΎΡΡΠ° ΡΠ΅ΡΡΠΎ, Π°ΠΊΠΎ Π·Π°ΡΠ²ΠΊΠΈΡΠ΅ ΠΈΠ΄Π²Π°Ρ ΠΎΡ API. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΠΈΠ΅ ΡΡΠ΅ Π½Π°ΠΏΡΠ°Π²ΠΈΠ»ΠΈ Π½ΡΠΊΠ°ΠΊΡΠ² Π²ΠΈΠ΄ ΡΡΠ»ΡΠ³Π°. Π Π°ΠΊΠΎ Π½ΡΠΊΠΎΠΉ ΠΈΠΌΠ° Π½ΡΠΆΠ΄Π° ΠΎΡ Π²Π°ΡΠ°ΡΠ° ΡΡΠ»ΡΠ³Π°, ΡΠΎΠ³Π°Π²Π° ΡΡΠ΅ ΠΎΡΠ²ΠΎΡΠΈΠ»ΠΈ API ΠΈ Π±ΡΠΊΠ²Π°Π»Π½ΠΎ ΡΠ»Π΅Π΄ Π΄Π²Π° Π΄Π½ΠΈ Π²ΠΈΠΆΠ΄Π°ΡΠ΅, ΡΠ΅ ΡΠ΅ ΡΠ»ΡΡΠ²Π° Π½Π΅ΡΠΎ Π½Π΅ΡΠ°Π·Π±ΠΈΡΠ°Π΅ΠΌΠΎ. ΠΡΠΈΡΠΊΠΎ Π΅ ΠΏΡΠ΅ΡΠΎΠ²Π°ΡΠ΅Π½ΠΎ ΠΈ ΠΈΠ΄Π²Π°Ρ ΡΠΆΠ°ΡΠ½ΠΈ Π·Π°ΡΠ²ΠΊΠΈ, ΠΊΠΎΠΈΡΠΎ Π½Π΅ Π΅ ΡΡΡΠ±Π²Π°Π»ΠΎ Π΄Π° Π±ΡΠ΄Π°Ρ.
Π ΠΈΠΌΠ° ΡΠ°ΠΌΠΎ Π΅Π΄Π½ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅. ΠΠΊΠΎ ΡΡΠ΅ ΠΎΡΠ²ΠΎΡΠΈΠ»ΠΈ API, ΡΠΎΠ³Π°Π²Π° ΡΠ΅ ΡΡΡΠ±Π²Π° Π΄Π° Π³ΠΎ ΠΈΠ·ΡΠ΅ΠΆΠ΅ΡΠ΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ Π΄Π° Π²ΡΠ²Π΅Π΄Π΅ΡΠ΅ Π½ΡΠΊΠ°ΠΊΠ²ΠΈ ΠΊΠ²ΠΎΡΠΈ. ΠΡΡΠ³ΠΈ ΡΠ°Π·ΡΠΌΠ½ΠΈ Π²Π°ΡΠΈΠ°Π½ΡΠΈ Π½ΡΠΌΠ°. ΠΠ½Π°ΡΠ΅ Π²Π΅Π΄Π½Π°Π³Π° ΡΠ΅ Π½Π°ΠΏΠΈΡΠ°Ρ ΡΡΠ΅Π½Π°ΡΠΈΠΉ ΠΈ ΡΠ΅ ΠΈΠΌΠ° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ.
Π ClickHouse ΠΈΠΌΠ° ΡΠΏΠ΅ΡΠΈΠ°Π»Π½Π° ΡΡΠ½ΠΊΡΠΈΡ - ΡΠΎΠ²Π° Π΅ ΠΈΠ·ΡΠΈΡΠ»ΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΊΠ²ΠΎΡΠΈΡΠ΅. ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π° ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΏΡΠ΅Ρ Π²ΡΡΠ»ΠΈΡΠ΅ ΡΠ²ΠΎΡ ΠΊΠ²ΠΎΡΠ΅Π½ ΠΊΠ»ΡΡ. Π’ΠΎΠ²Π° Π΅ Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π²ΡΡΡΠ΅ΡΠ΅Π½ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΈ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ. Π ΠΊΠ²ΠΎΡΠΈΡΠ΅ ΡΠ΅ ΡΠ΅ ΠΈΠ·ΡΠΈΡΠ»ΡΠ²Π°Ρ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ Π·Π° Π²ΡΠ΅ΠΊΠΈ ΠΎΡ ΡΡΡ .
Π‘Π΅Π³Π° ΠΎΡΠ΅ Π½Π΅ΡΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ. Π’ΠΎΠ²Π° Π΅ ΡΡΡΠ½Π° ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ.
ΠΠ½Π°ΠΌ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ»ΡΡΠ°ΠΈ, Π² ΠΊΠΎΠΈΡΠΎ, Π²ΡΠΏΡΠ΅ΠΊΠΈ ΡΠ΅ ClickHouse ΠΈΠΌΠ° Π²Π³ΡΠ°Π΄Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ, Ρ ΠΎΡΠ°ΡΠ° ΠΊΠΎΠΏΠΈΡΠ°Ρ ClickHouse ΡΡΡΠ½ΠΎ.
ΠΠ°ΠΊΡΠ² Π΅ ΠΏΡΠΈΠ½ΡΠΈΠΏΡΡ? ΠΠΌΠ°ΡΠ΅ ΡΡΡΠ±ΠΎΠΏΡΠΎΠ²ΠΎΠ΄ Π·Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Π΄Π°Π½Π½ΠΈ. Π ΡΠ°Π±ΠΎΡΠΈ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π² ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΡΠ΅Π½ΡΡΠΎΠ²Π΅ Π·Π° Π΄Π°Π½Π½ΠΈ. ΠΠΈΡΠ΅ΡΠ΅ ΡΡΡΠΈΡΠ΅ Π΄Π°Π½Π½ΠΈ ΠΏΠΎ ΡΡΡΠΈΡ Π½Π°ΡΠΈΠ½ Π² ClickHouse, ΡΠ°ΠΊΠ° Π΄Π° ΡΠ΅ ΠΊΠ°ΠΆΠ΅. ΠΡΡΠ½ΠΎ, ΠΏΡΠ°ΠΊΡΠΈΠΊΠ°ΡΠ° ΠΏΠΎΠΊΠ°Π·Π²Π°, ΡΠ΅ Π΄Π°Π½Π½ΠΈΡΠ΅ Π²ΡΠ΅ ΠΏΠ°ΠΊ ΡΠ΅ ΡΠ΅ ΡΠ°Π·ΠΌΠΈΠ½Π°Π²Π°Ρ ΠΏΠΎΡΠ°Π΄ΠΈ Π½ΡΠΊΠΎΠΈ ΠΎΡΠΎΠ±Π΅Π½ΠΎΡΡΠΈ Π½Π° Π²Π°ΡΠΈΡ ΠΊΠΎΠ΄. ΠΠ°Π΄ΡΠ²Π°ΠΌ ΡΠ΅, ΡΠ΅ Π²ΡΠ² Π²Π°ΡΠΈΡ.
Π ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ½ΠΎ Π²ΡΠ΅ ΠΎΡΠ΅ ΡΡΡΠ±Π²Π° Π΄Π° ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·ΠΈΡΠ°ΡΠ΅ ΡΡΡΠ½ΠΎ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ Π²Π΅Π΄Π½ΡΠΆ ΠΌΠ΅ΡΠ΅ΡΠ½ΠΎ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΈΡΠ΅ ΠΏΡΠ°Π²ΡΡ rsync.
ΠΡΡΡΠ½ΠΎΡΡ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎ-Π»Π΅ΡΠ½ΠΎ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ Π²Π³ΡΠ°Π΄Π΅Π½Π°ΡΠ° ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ Π² ClickHouse. ΠΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠΌΠ° Π½ΡΠΊΠΎΠΈ ΠΏΡΠΎΡΠΈΠ²ΠΎΠΏΠΎΠΊΠ°Π·Π°Π½ΠΈΡ, Π·Π°ΡΠΎΡΠΎ Π·Π° ΡΠΎΠ²Π° ΡΡΡΠ±Π²Π° Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ZooKeeper. ΠΡΠΌΠ° Π΄Π° ΠΊΠ°ΠΆΠ° Π½ΠΈΡΠΎ Π»ΠΎΡΠΎ Π·Π° ZooKeeper, ΠΏΠΎ ΠΏΡΠΈΠ½ΡΠΈΠΏ ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° ΡΠ°Π±ΠΎΡΠΈ, Π½ΠΎ ΡΠ΅ ΡΠ»ΡΡΠ²Π° Ρ ΠΎΡΠ°ΡΠ° Π΄Π° Π½Π΅ Ρ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΏΠΎΡΠ°Π΄ΠΈ java-ΡΠΎΠ±ΠΈΡ, Π·Π°ΡΠΎΡΠΎ ClickHouse Π΅ ΡΠΎΠ»ΠΊΠΎΠ²Π° Π΄ΠΎΠ±ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ°, Π½Π°ΠΏΠΈΡΠ°Π½Π° Π½Π° C ++, ΠΊΠΎΡΡΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΠΈ Π²ΡΠΈΡΠΊΠΎ ΡΠ΅ Π±ΡΠ΄Π΅ Π½Π°ΡΠ΅Π΄ Π ZooKeeper Π² java. Π ΠΏΠΎ Π½ΡΠΊΠ°ΠΊΡΠ² Π½Π°ΡΠΈΠ½ Π΄ΠΎΡΠΈ Π½Π΅ ΠΈΡΠΊΠ°ΡΠ΅ Π΄Π° Π³Π»Π΅Π΄Π°ΡΠ΅, Π½ΠΎ ΡΠΎΠ³Π°Π²Π° ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΡΡΡΠ½ΠΎ ΡΠ΅ΠΏΠ»ΠΈΠΊΠΈΡΠ°Π½Π΅.
ClickHouse Π΅ ΠΏΡΠ°ΠΊΡΠΈΡΠ½Π° ΡΠΈΡΡΠ΅ΠΌΠ°. ΠΡΡΠΈΡΠ° Π²Π°ΡΠΈΡΠ΅ Π½ΡΠΆΠ΄ΠΈ. ΠΠΊΠΎ ΠΈΠΌΠ°ΡΠ΅ ΡΡΡΠ½Π° ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ, ΡΠΎΠ³Π°Π²Π° ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΡΠ·Π΄Π°Π΄Π΅ΡΠ΅ ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π° ΡΠ°Π±Π»ΠΈΡΠ°, ΠΊΠΎΡΡΠΎ ΡΠ°Π·Π³Π»Π΅ΠΆΠ΄Π° Π²Π°ΡΠΈΡΠ΅ ΡΡΡΠ½ΠΈ ΡΠ΅ΠΏΠ»ΠΈΠΊΠΈ ΠΈ ΠΏΡΠ°Π²ΠΈ ΠΏΡΠ΅Ρ ΠΎΠ΄ ΠΏΡΠΈ ΡΡΠΈΠ² ΠΌΠ΅ΠΆΠ΄Ρ ΡΡΡ . Π Π΄ΠΎΡΠΈ ΠΈΠΌΠ° ΡΠΏΠ΅ΡΠΈΠ°Π»Π½Π° ΠΎΠΏΡΠΈΡ, ΠΊΠΎΡΡΠΎ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΠΈΠ·Π±ΡΠ³Π²Π°ΡΠ΅ ΠΏΡΠΎΠ²Π°Π»ΠΈ, Π΄ΠΎΡΠΈ Π°ΠΊΠΎ Π»ΠΈΠ½ΠΈΠΈΡΠ΅ Π²ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎ ΡΠ΅ ΡΠ°Π·Π»ΠΈΡΠ°Π²Π°Ρ.
ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π° ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠΌΠ° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ, Π°ΠΊΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΠΏΡΠΈΠΌΠΈΡΠΈΠ²Π½ΠΈ ΠΌΠ°ΡΠΈΠ½ΠΈ Π·Π° ΡΠ°Π±Π»ΠΈΡΠΈ. ClickHouse Π΅ ΡΠ°ΠΊΡΠ² ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ, ΠΊΠΎΠΉΡΠΎ ΠΈΠΌΠ° ΠΊΡΠΏ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΌΠ°ΡΠΈΠ½ΠΈ Π·Π° ΡΠ°Π±Π»ΠΈΡΠΈ. ΠΠ° Π²ΡΠΈΡΠΊΠΈ ΡΠ΅ΡΠΈΠΎΠ·Π½ΠΈ ΡΠ»ΡΡΠ°ΠΈ, ΠΊΠ°ΠΊΡΠΎ Π΅ Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡΠ°, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅ ΡΠ°Π±Π»ΠΈΡΠΈ ΠΎΡ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²ΠΎΡΠΎ MergeTree. Π Π²ΡΠΈΡΠΊΠΎ ΠΎΡΡΠ°Π½Π°Π»ΠΎ - ΡΠΎΠ²Π° Π΅ ΡΠ°ΠΊΠ°, Π·Π° ΠΎΡΠ΄Π΅Π»Π½ΠΈ ΡΠ»ΡΡΠ°ΠΈ ΠΈΠ»ΠΈ Π·Π° ΡΠ΅ΡΡΠΎΠ²Π΅.
Π ΡΠ°Π±Π»ΠΈΡΠ° MergeTree Π½Π΅ Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π° ΠΈΠΌΠ°ΡΠ΅ Π΄Π°ΡΠ° ΠΈ ΡΠ°Ρ. ΠΡΠ΅ ΠΎΡΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅. ΠΠΊΠΎ Π½ΡΠΌΠ° Π΄Π°ΡΠ° ΠΈ ΡΠ°Ρ, Π½Π°ΠΏΠΈΡΠ΅ΡΠ΅, ΡΠ΅ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ Π΅ 2000. Π©Π΅ ΡΠ°Π±ΠΎΡΠΈ ΠΈ Π½ΡΠΌΠ° Π΄Π° ΠΈΠ·ΠΈΡΠΊΠ²Π° ΡΠ΅ΡΡΡΡΠΈ.
Π Π² Π½ΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ Π½Π° ΡΡΡΠ²ΡΡΠ° ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄ΠΎΡΠΈ Π΄Π° ΠΏΠΎΡΠΎΡΠΈΡΠ΅, ΡΠ΅ ΠΈΠΌΠ°ΡΠ΅ ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΎ ΡΠ°Π·Π΄Π΅Π»ΡΠ½Π΅ Π±Π΅Π· ΠΊΠ»ΡΡ Π·Π° Π΄ΡΠ». Π©Π΅ Π±ΡΠ΄Π΅ ΡΡΡΠΎΡΠΎ.
ΠΡ Π΄ΡΡΠ³Π° ΡΡΡΠ°Π½Π°, ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΏΡΠΈΠΌΠΈΡΠΈΠ²Π½ΠΈ ΠΌΠ°ΡΠΈΠ½ΠΈ Π·Π° ΡΠ°Π±Π»ΠΈΡΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎΠΏΡΠ»Π½Π΅ΡΠ΅ Π΄Π°Π½Π½ΠΈΡΠ΅ Π²Π΅Π΄Π½ΡΠΆ ΠΈ Π²ΠΈΠΆΡΠ΅, Π·Π°Π²ΡΡΡΠ΅ΡΠ΅ ΠΈ ΠΈΠ·ΡΡΠΈΠΉΡΠ΅. ΠΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ Log.
ΠΠ»ΠΈ ΡΡΡ ΡΠ°Π½ΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΌΠ°Π»ΠΊΠΈ ΠΎΠ±Π΅ΠΌΠΈ Π·Π° ΠΌΠ΅ΠΆΠ΄ΠΈΠ½Π½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π΅ StripeLog ΠΈΠ»ΠΈ TinyLog.
ΠΠ°ΠΌΠ΅ΡΡΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°, Π°ΠΊΠΎ ΠΈΠΌΠ° ΠΌΠ°Π»ΠΊΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π΄Π°Π½Π½ΠΈ ΠΈ ΠΏΡΠΎΡΡΠΎ Π·Π°Π²ΡΡΡΠ΅ΡΠ΅ Π½Π΅ΡΠΎ Π² RAM.
ClickHouse Π½Π΅ Ρ Π°ΡΠ΅ΡΠ²Π° ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠ΅Π½ΠΎΡΠΌΠΈΡΠ°Π½ΠΈΡΠ΅ Π΄Π°Π½Π½ΠΈ.
ΠΡΠΎ Π΅Π΄ΠΈΠ½ ΡΠΈΠΏΠΈΡΠ΅Π½ ΠΏΡΠΈΠΌΠ΅Ρ. Π’ΠΎΠ²Π° Π΅ ΠΎΠ³ΡΠΎΠΌΠ΅Π½ Π±ΡΠΎΠΉ URL Π°Π΄ΡΠ΅ΡΠΈ. ΠΠΎΡΡΠ°Π²ΡΡΠ΅ Π³ΠΈ Π² ΡΡΡΠ΅Π΄Π½Π°ΡΠ° ΡΠ°Π±Π»ΠΈΡΠ°. Π ΡΠΎΠ³Π°Π²Π° ΡΠ΅ΡΠΈΡ ΠΌΠ΅ Π΄Π° Π½Π°ΠΏΡΠ°Π²ΠΈΠΌ JOIN Ρ ΡΡΡ , Π½ΠΎ ΡΠΎΠ²Π° Π½ΡΠΌΠ° Π΄Π° ΡΠ°Π±ΠΎΡΠΈ, ΠΊΠ°ΡΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, Π·Π°ΡΠΎΡΠΎ ClickHouse ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° ΡΠ°ΠΌΠΎ Hash JOIN. ΠΠΊΠΎ Π½ΡΠΌΠ° Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΎ RAM Π·Π° ΠΌΠ½ΠΎΠ³ΠΎ Π΄Π°Π½Π½ΠΈ, Ρ ΠΊΠΎΠΈΡΠΎ Π΄Π° ΡΠ΅ ΡΠ²ΡΡΠΆΠ΅ΡΠ΅, ΡΠΎΠ³Π°Π²Π° JOIN Π½ΡΠΌΠ° Π΄Π° ΡΠ°Π±ΠΎΡΠΈ *.
ΠΠΊΠΎ Π΄Π°Π½Π½ΠΈΡΠ΅ ΡΠ° Ρ Π²ΠΈΡΠΎΠΊΠ° ΠΊΠ°ΡΠ΄ΠΈΠ½Π°Π»Π½ΠΎΡΡ, ΡΠΎΠ³Π°Π²Π° Π½Π΅ ΡΠ΅ ΠΏΡΠΈΡΠ΅ΡΠ½ΡΠ²Π°ΠΉΡΠ΅, ΡΡΡ ΡΠ°Π½ΡΠ²Π°ΠΉΡΠ΅ Π³ΠΈ Π² Π΄Π΅Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° ΡΠΎΡΠΌΠ°, URL Π°Π΄ΡΠ΅ΡΠΈΡΠ΅ ΡΠ° Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ Π½Π° ΠΌΡΡΡΠΎ Π² Π³Π»Π°Π²Π½Π°ΡΠ° ΡΠ°Π±Π»ΠΈΡΠ°.
* ΠΈ ΡΠ΅Π³Π° ClickHouse ΡΡΡΠΎ ΠΈΠΌΠ° ΠΏΡΠΈΡΡΠ΅Π΄ΠΈΠ½ΡΠ²Π°Π½Π΅ Π·Π° ΡΠ»ΠΈΠ²Π°Π½Π΅ ΠΈ ΡΠ°Π±ΠΎΡΠΈ Π² ΡΡΠ»ΠΎΠ²ΠΈΡ, ΠΏΡΠΈ ΠΊΠΎΠΈΡΠΎ ΠΌΠ΅ΠΆΠ΄ΠΈΠ½Π½ΠΈΡΠ΅ Π΄Π°Π½Π½ΠΈ Π½Π΅ ΡΠ΅ ΠΏΠΎΠ±ΠΈΡΠ°Ρ Π² RAM. ΠΠΎ ΡΠΎΠ²Π° Π΅ Π½Π΅Π΅ΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΠΈ ΠΏΡΠ΅ΠΏΠΎΡΡΠΊΠ°ΡΠ° ΠΎΡΡΠ°Π²Π° Π² ΡΠΈΠ»Π°.
ΠΡΠ΅ Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ°, Π½ΠΎ Π²Π΅ΡΠ΅ ΡΠ΅ ΡΡΠΌΠ½ΡΠ²Π°ΠΌ Π΄Π°Π»ΠΈ ΡΠ° Π°Π½ΡΠΈΡΠ°Π±Π»ΠΎΠ½ΠΈ ΠΈΠ»ΠΈ Π½Π΅.
ClickHouse ΠΈΠΌΠ° Π΅Π΄ΠΈΠ½ ΠΈΠ·Π²Π΅ΡΡΠ΅Π½ Π½Π΅Π΄ΠΎΡΡΠ°ΡΡΠΊ. Π’ΠΎΠΉ Π½Π΅ Π·Π½Π°Π΅ ΠΊΠ°ΠΊ Π΄Π° Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ° *. Π ΠΈΠ·Π²Π΅ΡΡΠ΅Π½ ΡΠΌΠΈΡΡΠ» ΡΠΎΠ²Π° Π΄ΠΎΡΠΈ Π΅ Π΄ΠΎΠ±ΡΠ΅. ΠΠΊΠΎ ΠΈΠΌΠ°ΡΠ΅ Π½ΡΠΊΠΎΠΈ Π²Π°ΠΆΠ½ΠΈ Π΄Π°Π½Π½ΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΡΡΠ΅ΡΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ, ΡΠΎΠ³Π°Π²Π° Π½ΠΈΠΊΠΎΠΉ Π½ΡΠΌΠ° Π΄Π° ΠΌΠΎΠΆΠ΅ Π΄Π° Π³ΠΈ ΠΈΠ·ΠΏΡΠ°ΡΠΈ, Π·Π°ΡΠΎΡΠΎ Π½ΡΠΌΠ° Π°ΠΊΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ.
* ΠΎΡΠ΄Π°Π²Π½Π° Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ ΠΈ ΠΈΠ·ΡΡΠΈΠ²Π°Π½Π΅ Π² ΠΏΠ°ΠΊΠ΅ΡΠ΅Π½ ΡΠ΅ΠΆΠΈΠΌ.
ΠΠΎ ΠΈΠΌΠ° Π½ΡΠΊΠΎΠΈ ΡΠΏΠ΅ΡΠΈΠ°Π»Π½ΠΈ Π½Π°ΡΠΈΠ½ΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°Ρ Π°ΠΊΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈΡΠ΅ Π΄Π° ΡΠ΅ ΠΏΠΎΠΊΠ°Π·Π²Π°Ρ Π²ΡΠ² ΡΠΎΠ½ΠΎΠ² ΡΠ΅ΠΆΠΈΠΌ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ ΡΠ°Π±Π»ΠΈΡΠΈ ΠΎΡ ΡΠΈΠΏ ReplaceMergeTree. Π’Π΅ ΠΏΡΠ°Π²ΡΡ Π°ΠΊΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΡΠ»ΠΈΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠΎΠ½Π°. ΠΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΏΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅ ΡΠΎΠ²Π° Ρ ΡΠ°Π±Π»ΠΈΡΠ° Π·Π° ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°Π½Π΅. ΠΠΎ Π½Π΅ Π³ΠΎ ΠΏΡΠ°Π²Π΅ΡΠ΅ ΡΠ²ΡΡΠ΄Π΅ ΡΠ΅ΡΡΠΎ, Π·Π°ΡΠΎΡΠΎ ΡΠΎΠ²Π° Π½Π°ΠΏΡΠ»Π½ΠΎ ΡΠ΅ ΠΏΡΠ΅Π·Π°ΠΏΠΈΡΠ΅ Π΄ΡΠ»Π°.
Π Π°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ JOIN Π² ClickHouse - ΡΠΎΠ²Π° ΡΡΡΠΎ ΡΠ΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ²Π° Π·Π»Π΅ ΠΎΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ°ΡΠ° Π·Π° ΠΏΠ»Π°Π½ΠΈΡΠ°Π½Π΅ Π½Π° Π·Π°ΡΠ²ΠΊΠΈ.
ΠΠΎΡΠΎ, Π½ΠΎ ΠΏΠΎΠ½ΡΠΊΠΎΠ³Π° Π΄ΠΎΠ±ΡΠ΅.
ΠΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ClickHouse ΡΠ°ΠΌΠΎ Π·Π° ΡΠ΅ΡΠ΅Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ Ρ select*.
ΠΠ΅ Π±ΠΈΡ ΠΏΡΠ΅ΠΏΠΎΡΡΡΠ°Π» ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ClickHouse Π·Π° ΠΎΠ±Π΅ΠΌΠΈΡΡΠΈ ΠΈΠ·ΡΠΈΡΠ»Π΅Π½ΠΈΡ. ΠΠΎ ΡΠΎΠ²Π° Π½Π΅ Π΅ ΡΡΠ²ΡΠ΅ΠΌ Π²ΡΡΠ½ΠΎ, Π·Π°ΡΠΎΡΠΎ Π²Π΅ΡΠ΅ ΡΠ΅ ΠΎΡΠ΄Π°Π»Π΅ΡΠ°Π²Π°ΠΌΠ΅ ΠΎΡ ΡΠ°Π·ΠΈ ΠΏΡΠ΅ΠΏΠΎΡΡΠΊΠ°. Π Π½Π°ΡΠΊΠΎΡΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ ΠΌΠ΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΏΡΠΈΠ»Π°Π³Π°Π½Π΅ Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΈ Π·Π° ΠΌΠ°ΡΠΈΠ½Π½ΠΎ ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅ Π² ClickHouse - Catboost. Π ΡΠΎΠ²Π° ΠΌΠ΅ ΠΏΡΠΈΡΠ΅ΡΠ½ΡΠ²Π°, Π·Π°ΡΠΎΡΠΎ ΡΠΈ ΠΌΠΈΡΠ»Ρ: βΠΠ°ΠΊΡΠ² ΡΠΆΠ°Ρ. ΠΡΠΎ ΠΊΠΎΠ»ΠΊΠΎ ΡΠΈΠΊΡΠ»Π° Π½Π° Π±Π°ΠΉΡ ΡΠ΅ ΠΎΠΊΠ°Π·Π²Π°! ΠΠ° ΠΌΠ΅Π½ Π΅ ΠΆΠ°Π»ΠΊΠΎ Π΄Π° ΡΡΠ°ΡΡΠΈΡΠ°ΠΌ ΡΠ°ΡΠΎΠ²Π½ΠΈΠΊΠΎΠ²ΠΈ ΡΠΈΠΊΠ»ΠΈ Π½Π° Π±Π°ΠΉΡΠΎΠ²Π΅.
ΠΠΎ Π½Π΅ ΡΠ΅ ΡΡΡΠ°Ρ ΡΠ²Π°ΠΉΡΠ΅, ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°ΠΉΡΠ΅ ClickHouse, Π²ΡΠΈΡΠΊΠΎ ΡΠ΅ Π±ΡΠ΄Π΅ Π½Π°ΡΠ΅Π΄. ΠΠΊΠΎ Π½Π΅ Π΄ΡΡΠ³ΠΎ, Π½ΠΈΠ΅ ΠΈΠΌΠ°ΠΌΠ΅ ΠΎΠ±ΡΠ½ΠΎΡΡ. ΠΠ΅ΠΆΠ΄Ρ Π΄ΡΡΠ³ΠΎΡΠΎ, ΠΎΠ±ΡΠ½ΠΎΡΡΡΠ° ΡΡΠ΅ Π²ΠΈΠ΅. Π Π°ΠΊΠΎ ΠΈΠΌΠ°ΡΠ΅ Π½ΡΠΊΠ°ΠΊΠ²ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ, ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ½Π΅ Π΄Π° ΠΎΡΠΈΠ΄Π΅ΡΠ΅ Π² Π½Π°ΡΠΈΡ ΡΠ°Ρ ΠΈ ΡΠ΅ Π½Π°Π΄ΡΠ²Π°ΠΌ, ΡΠ΅ ΡΠ΅ Π²ΠΈ ΠΏΠΎΠΌΠΎΠ³Π½Π΅ΠΌ.
ΠΡΠΏΡΠΎΡΠΈ
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ Π·Π° Π΄ΠΎΠΊΠ»Π°Π΄Π°! ΠΡΠ΄Π΅ Π΄Π° ΡΠ΅ ΠΎΠΏΠ»Π°ΡΠ° Π·Π° ΡΡΠΈΠ²Π° Π½Π° ClickHouse?
ΠΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΠ΅ ΠΎΠΏΠ»Π°ΡΠ΅ΡΠ΅ Π»ΠΈΡΠ½ΠΎ Π½Π° ΠΌΠ΅Π½ ΠΎΡΠ΅ ΡΠ΅Π³Π°.
ΠΠ°ΡΠΊΠΎΡΠΎ Π·Π°ΠΏΠΎΡΠ½Π°Ρ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌ ClickHouse. ΠΠ΅Π΄Π½Π°Π³Π° ΠΏΡΠ΅ΠΌΠ°Ρ Π½Π° cli ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°.
ΠΠ°ΠΊΡΠ² ΡΠ΅Π·ΡΠ»ΡΠ°Ρ.
ΠΠ°Π»ΠΊΠΎ ΠΏΠΎ-ΠΊΡΡΠ½ΠΎ ΠΏΡΡΠ½Π°Ρ ΡΡΡΠ²ΡΡΠ° Ρ ΠΌΠ°Π»ΡΠΊ ΡΠ΅Π»Π΅ΠΊΡ.
ΠΠΌΠ°Ρ ΡΠ°Π»Π°Π½Ρ.
ΠΡΠ²ΠΎΡΠΈΡ Π³ΡΠ΅ΡΠΊΠ° Π² GitHub, Π½ΠΎ ΡΡ Π±Π΅ΡΠ΅ ΠΈΠ³Π½ΠΎΡΠΈΡΠ°Π½Π°.
Π©Π΅ Π²ΠΈΠ΄ΠΈΠΌ.
ΠΠ»Π΅ΠΊΡΠ΅ΠΉ ΠΌΠ΅ ΠΏΠΎΠ΄ΠΌΠ°ΠΌΠΈ Π΄Π° ΠΏΡΠΈΡΡΡΡΠ²Π°ΠΌ Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π°, ΠΊΠ°ΡΠΎ ΠΌΠΈ ΠΎΠ±Π΅ΡΠ° Π΄Π° ΠΌΠΈ ΠΊΠ°ΠΆΠ΅ ΠΊΠ°ΠΊ ΠΏΡΠΈΡΠΈΡΠΊΠ°ΡΠ΅ Π΄Π°Π½Π½ΠΈΡΠ΅ Π²ΡΡΡΠ΅.
ΠΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΠΎ.
Π’ΠΎΠ²Π° ΡΠ°Π·Π±ΡΠ°Ρ Π²ΡΠ΅ΡΠ°. ΠΠΎΠ²Π΅ΡΠ΅ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠΈΠΊΠ°.
ΠΡΠΌΠ° ΡΡΡΠ°ΡΠ½ΠΈ ΡΡΠΈΠΊΠΎΠ²Π΅. Π’ΠΎΠ²Π° Π΅ ΠΏΡΠΎΡΡΠΎ ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡ Π±Π»ΠΎΠΊ ΠΏΠΎ Π±Π»ΠΎΠΊ. ΠΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ Π΅ LZ4, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π°ΠΊΡΠΈΠ²ΠΈΡΠ°ΡΠ΅ ZSTD*. ΠΠ»ΠΎΠΊΠΈΡΠ° ΠΎΡ 64 ΠΊΠΈΠ»ΠΎΠ±Π°ΠΉΡΠ° Π΄ΠΎ 1 ΠΌΠ΅Π³Π°Π±Π°ΠΉΡ.
* ΠΈΠΌΠ° ΠΈ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΠΊΠΎΠ΄Π΅ΡΠΈ Π·Π° ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡΠ°Π½Π΅, ΠΊΠΎΠΈΡΠΎ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ Π²ΡΠ² Π²Π΅ΡΠΈΠ³Π° Ρ Π΄ΡΡΠ³ΠΈ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈ.
ΠΠ»ΠΎΠΊΠΎΠ²Π΅ΡΠ΅ ΡΠ°ΠΌΠΎ Π½Π΅ΠΎΠ±ΡΠ°Π±ΠΎΡΠ΅Π½ΠΈ Π΄Π°Π½Π½ΠΈ Π»ΠΈ ΡΠ°?
ΠΠ΅ ΡΠΎΡΠ½ΠΎ ΡΡΡΠΎΠ²ΠΎ. ΠΠΌΠ° ΠΌΠ°ΡΠΈΠ²ΠΈ. ΠΠΊΠΎ ΠΈΠΌΠ°ΡΠ΅ ΡΠΈΡΡΠΎΠ²Π° ΠΊΠΎΠ»ΠΎΠ½Π°, ΡΠΎΠ³Π°Π²Π° ΡΠΈΡΠ»Π°ΡΠ° Π² Π΅Π΄ΠΈΠ½ ΡΠ΅Π΄ ΡΠ΅ ΠΏΠΎΠ΄ΡΠ΅ΠΆΠ΄Π°Ρ Π² ΠΌΠ°ΡΠΈΠ².
Π―ΡΠ½ΠΎ Π΅.
ΠΠ»Π΅ΠΊΡΠ΅ΠΉ, ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΎΠΉΡΠΎ Π±Π΅ΡΠ΅ Ρ uniqExact ΠΏΡΠ΅Π· IP Π°Π΄ΡΠ΅ΡΠΈ, Ρ.Π΅. ΡΠ°ΠΊΡΡΡ, ΡΠ΅ uniqExact ΠΎΡΠ½Π΅ΠΌΠ° ΠΏΠΎΠ²Π΅ΡΠ΅ Π²ΡΠ΅ΠΌΠ΅ Π·Π° Π±ΡΠΎΠ΅Π½Π΅ ΠΏΠΎ Π½ΠΈΠ·ΠΎΠ²Π΅, ΠΎΡΠΊΠΎΠ»ΠΊΠΎΡΠΎ ΠΏΠΎ ΡΠΈΡΠ»Π° ΠΈ Ρ.Π½. ΠΠΌΠΈ Π°ΠΊΠΎ Π½Π°ΠΏΡΠ°Π²ΠΈΠΌ ΡΠΈΠ½Ρ Ρ ΡΡΠΈ ΠΈ Π·Π°ΠΌΡΡΠ°ΠΌΠ΅ Π² ΠΌΠΎΠΌΠ΅Π½ΡΠ° Π½Π° ΠΊΠΎΡΠ΅ΠΊΡΠΈΡΡΠ°? Π’ΠΎΠ΅ΡΡ ΡΠΈ ΠΌΠ°ΠΉ ΠΊΠ°Π·Π°, ΡΠ΅ Π½Π° Π΄ΠΈΡΠΊΠ° Π½Π΅ ΡΠ΅ ΡΠ°Π·Π»ΠΈΡΠ°Π²Π° ΠΌΠ½ΠΎΠ³ΠΎ. ΠΠΊΠΎ ΡΠ΅ΡΠ΅ΠΌ ΡΠ΅Π΄ΠΎΠ²Π΅ ΠΎΡ Π΄ΠΈΡΠΊΠ°, ΠΊΠ°ΡΡΠ°ΠΌΠ΅, ΡΠΎΠ³Π°Π²Π° ΡΠ΅ ΠΈΠΌΠ°ΠΌΠ΅ Π»ΠΈ Π°Π³ΡΠ΅Π³Π°ΡΠΈ ΠΏΠΎ-Π±ΡΡΠ·ΠΎ ΠΈΠ»ΠΈ Π½Π΅? ΠΠ»ΠΈ Π²ΡΠ΅ ΠΎΡΠ΅ Π½Π΅Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΏΠ΅ΡΠ΅Π»ΠΈΠΌ ΡΡΠΊ? Π‘ΡΡΡΠ²Π° ΠΌΠΈ ΡΠ΅, ΡΠ΅ ΡΡΠ΅ Π³ΠΎ ΡΠ΅ΡΡΠ²Π°Π»ΠΈ, Π½ΠΎ ΠΏΠΎ Π½ΡΠΊΠ°ΠΊΠ²Π° ΠΏΡΠΈΡΠΈΠ½Π° Π½Π΅ ΡΡΠ΅ Π³ΠΎ ΠΏΠΎΡΠΎΡΠΈΠ»ΠΈ Π² Π±Π΅Π½ΡΠΌΠ°ΡΠΊΠ°.
ΠΠΈΡΠ»Ρ, ΡΠ΅ ΡΠ΅ Π΅ ΠΏΠΎ-Π±Π°Π²Π½ΠΎ, ΠΎΡΠΊΠΎΠ»ΠΊΠΎΡΠΎ Π±Π΅Π· ΠΊΠ°ΡΡΠΈΠ½Π³. Π ΡΠΎΠ·ΠΈ ΡΠ»ΡΡΠ°ΠΉ IP Π°Π΄ΡΠ΅ΡΡΡ ΡΡΡΠ±Π²Π° Π΄Π° Π±ΡΠ΄Π΅ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ ΠΎΡ Π½ΠΈΠ·Π°. Π Π°Π·Π±ΠΈΡΠ° ΡΠ΅, Π² ClickHouse Π°Π½Π°Π»ΠΈΠ·ΡΡ Π½Π° IP Π°Π΄ΡΠ΅Ρ ΡΡΡΠΎ Π΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°Π½. ΠΠ½ΠΎΠ³ΠΎ ΡΠ΅ ΠΏΠΎΡΡΠ°ΡΠ°Ρ ΠΌΠ΅, Π½ΠΎ Π½Π° Π΅Π΄Π½ΠΎ ΠΈ ΡΡΡΠΎ ΠΌΡΡΡΠΎ ΠΈΠΌΠ°Ρ ΡΠΈΡΠ»Π°ΡΠ°, Π½Π°ΠΏΠΈΡΠ°Π½ΠΈ Π² Π΄Π΅ΡΠ΅ΡΡ ΠΈΠ»ΡΠ΄Π½Π° ΡΠΎΡΠΌΠ°. ΠΠ½ΠΎΠ³ΠΎ Π½Π΅ΡΠ΄ΠΎΠ±Π½ΠΎ. ΠΡ Π΄ΡΡΠ³Π° ΡΡΡΠ°Π½Π°, ΡΡΠ½ΠΊΡΠΈΡΡΠ° uniqExact ΡΠ΅ ΡΠ°Π±ΠΎΡΠΈ ΠΏΠΎ-Π±Π°Π²Π½ΠΎ Π²ΡΡΡ Ρ Π½ΠΈΠ·ΠΎΠ²Π΅, Π½Π΅ ΡΠ°ΠΌΠΎ Π·Π°ΡΠΎΡΠΎ ΡΠΎΠ²Π° ΡΠ° Π½ΠΈΠ·ΠΎΠ²Π΅, Π½ΠΎ ΠΈ Π·Π°ΡΠΎΡΠΎ Π΅ ΠΈΠ·Π±ΡΠ°Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½Π° ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° Π°Π»Π³ΠΎΡΠΈΡΡΠΌΠ°. ΠΡΠΎΡΡΠΎ Π½ΠΈΠ·ΠΎΠ²Π΅ΡΠ΅ ΡΠ΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ²Π°Ρ ΠΏΠΎ ΡΠ°Π·Π»ΠΈΡΠ΅Π½ Π½Π°ΡΠΈΠ½.
Π Π°ΠΊΠΎ Π²Π·Π΅ΠΌΠ΅ΠΌ ΠΏΠΎ-ΠΏΡΠΈΠΌΠΈΡΠΈΠ²Π΅Π½ ΡΠΈΠΏ Π΄Π°Π½Π½ΠΈ? ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ ΡΠ΅ Π·Π°ΠΏΠΈΡΠ°Ρ Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΎΡΠΎ ΠΈΠΌΠ΅, ΠΊΠΎΠ΅ΡΠΎ ΠΈΠΌΠ°ΠΌΠ΅, Π·Π°ΠΏΠΈΡΠ°Ρ Π° Π³ΠΎ ΠΊΠ°ΡΠΎ Π»ΠΈΠ½ΠΈΡ ΠΈ ΡΠ»Π΅Π΄ ΡΠΎΠ²Π° Π³ΠΎ ΠΊΠ°ΡΡΠ½Π°Ρ Π°, ΡΠ΅ Π±ΡΠ΄Π΅ Π»ΠΈ ΠΏΠΎ-Π·Π°Π±Π°Π²Π½ΠΎ ΠΈΠ»ΠΈ Π½Π΅?
Π‘ΡΠΌΠ½ΡΠ²Π°ΠΌ ΡΠ΅. ΠΠΈΡΠ»Ρ, ΡΠ΅ ΡΠ΅ Π±ΡΠ΄Π΅ ΠΎΡΠ΅ ΠΏΠΎ-ΡΡΠΆΠ½ΠΎ, Π·Π°ΡΠΎΡΠΎ Π² ΠΊΡΠ°ΠΉΠ½Π° ΡΠΌΠ΅ΡΠΊΠ° ΡΠ°Π·Π±ΠΎΡΡΡ Π½Π° ΡΠΈΡΠ»Π° Π΅ ΡΠ΅ΡΠΈΠΎΠ·Π΅Π½ ΠΏΡΠΎΠ±Π»Π΅ΠΌ. Π‘ΡΡΡΠ²Π° ΠΌΠΈ ΡΠ΅, ΡΠ΅ ΡΠΎΠ·ΠΈ ΠΊΠΎΠ»Π΅Π³Π° Π΄ΠΎΡΠΈ Π΅ ΠΈΠΌΠ°Π» Π΄ΠΎΠΊΠ»Π°Π΄ ΠΊΠΎΠ»ΠΊΠΎ ΡΡΡΠ΄Π½ΠΎ Π΅ Π΄Π° ΡΠ΅ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠ°Ρ ΡΠΈΡΠ»Π° Π² Π΄Π΅ΡΠ΅ΡΡ ΠΈΠ»ΡΠ΄Π½Π° ΡΠΎΡΠΌΠ°, Π½ΠΎ ΠΌΠΎΠΆΠ΅ Π±ΠΈ Π½Π΅.
ΠΠ»Π΅ΠΊΡΠ΅ΠΉ, ΠΌΠ½ΠΎΠ³ΠΎ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ Π·Π° Π΄ΠΎΠΊΠ»Π°Π΄Π°! Π ΠΌΠ½ΠΎΠ³ΠΎ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ Π·Π° ClickHouse! ΠΠΌΠ°ΠΌ Π²ΡΠΏΡΠΎΡ ΠΎΡΠ½ΠΎΡΠ½ΠΎ ΠΏΠ»Π°Π½ΠΎΠ²Π΅ΡΠ΅. ΠΠΌΠ° Π»ΠΈ ΡΡΠ½ΠΊΡΠΈΡ Π² ΠΏΠ»Π°Π½ΠΎΠ²Π΅ΡΠ΅ Π·Π° Π½Π΅ΠΏΡΠ»Π½ΠΎ Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ΅ΡΠ½ΠΈΡΠΈ?
Ρ.Π΅. ΡΠ°ΡΡΠΈΡΠ½ΠΎ ΡΠ΅ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅?
ΠΠ° Π΄Π°. ΠΠ°ΡΠΎ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π΄Π° Π·Π°Π΄Π°Π΄Π΅ΡΠ΅ MySQL ΠΏΠΎΠ»Π΅ ΡΠ°ΠΌ, Ρ.Π΅. Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°ΠΉΡΠ΅ ΡΠ»Π΅Π΄ ΡΠΎΠ²Π°, ΡΠ°ΠΊΠ° ΡΠ΅ ΡΠ°ΠΌΠΎ ΡΠ΅Π·ΠΈ Π΄Π°Π½Π½ΠΈ Π΄Π° ΡΠ΅ Π·Π°ΡΠ΅ΠΆΠ΄Π°Ρ, Π°ΠΊΠΎ ΡΠ΅ΡΠ½ΠΈΠΊΡΡ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π³ΠΎΠ»ΡΠΌ.
ΠΠ½ΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½Π° ΡΡΠ½ΠΊΡΠΈΡ. Π, ΡΡΡΡΠ²Π° ΠΌΠΈ ΡΠ΅, Π½ΡΠΊΠΎΠΉ Π³ΠΎ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈ Π² Π½Π°ΡΠΈΡ ΡΠ°Ρ. ΠΠΎΠΆΠ΅ Π±ΠΈ Π΄ΠΎΡΠΈ ΡΠΈ Π±ΠΈΠ» ΡΠΈ.
ΠΠ΅ ΠΌΠΈΡΠ»Ρ ΡΠ°ΠΊΠ°.
Π‘ΡΡΠ°Ρ ΠΎΡΠ½ΠΎ, ΡΠ΅Π³Π° ΡΠ΅ ΠΎΠΊΠ°Π·Π²Π°, ΡΠ΅ Π΄Π²Π΅ Π·Π°ΡΠ²ΠΊΠΈ. Π ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π·Π°ΠΏΠΎΡΠ½Π΅ΡΠ΅ Π΄Π° Π³ΠΎ ΠΏΡΠ°Π²ΠΈΡΠ΅ Π±Π°Π²Π½ΠΎ. ΠΠΎ ΠΈΡΠΊΠ°ΠΌ Π΄Π° Π²ΠΈ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅Π΄Ρ Π²Π΅Π΄Π½Π°Π³Π°, ΡΠ΅ ΡΠ°Π·ΠΈ ΡΡΠ½ΠΊΡΠΈΡ Π΅ Π΄ΠΎΡΡΠ° Π»Π΅ΡΠ½Π° Π·Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅. Π’ΠΎΠ΅ΡΡ Π½Π° ΡΠ΅ΠΎΡΠΈΡ ΠΏΡΠΎΡΡΠΎ ΡΡΡΠ±Π²Π° Π΄Π° Π½Π°ΠΏΠΈΡΠ΅ΡΠ΅ Π½ΠΎΠΌΠ΅ΡΠ° Π½Π° Π²Π΅ΡΡΠΈΡΡΠ° Π² ΡΠ°Π±Π»ΠΈΡΠ°ΡΠ° ΠΈ Π΄Π° ΠΏΡΠΎΠ΄ΡΠ»ΠΆΠΈΡΠ΅ Π΄Π° ΠΏΠΈΡΠ΅ΡΠ΅: Π²Π΅ΡΡΠΈΡΡΠ° Π΅ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠ° ΠΎΡ ΡΠ°ΠΊΠ°Π²Π° ΠΈ ΡΠ°ΠΊΠ°Π²Π°. Π ΡΠΎΠ²Π° ΠΎΠ·Π½Π°ΡΠ°Π²Π°, ΡΠ΅ Π½Π°ΠΉ-Π²Π΅ΡΠΎΡΡΠ½ΠΎ ΡΠ΅ Π³ΠΎ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΠΌ Π½Π° Π΅Π½ΡΡΡΠΈΠ°ΡΡΠΈ. ΠΠΈΠ΅ ΡΡΠ΅ Π΅Π½ΡΡΡΠΈΠ°ΡΡ?
ΠΠ°, Π½ΠΎ Π·Π° ΡΡΠΆΠ°Π»Π΅Π½ΠΈΠ΅ Π½Π΅ Π² C++.
ΠΠ°ΡΠΈΡΠ΅ ΠΊΠΎΠ»Π΅Π³ΠΈ ΠΌΠΎΠ³Π°Ρ Π»ΠΈ Π΄Π° ΠΏΠΈΡΠ°Ρ Π½Π° C++?
Π©Π΅ Π½Π°ΠΌΠ΅ΡΡ Π½ΡΠΊΠΎΠΉ.
Π‘ΡΡΠ°Ρ ΠΎΡΠ΅Π½*.
* ΡΡΠ½ΠΊΡΠΈΡΡΠ° Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π΄Π²Π° ΠΌΠ΅ΡΠ΅ΡΠ° ΡΠ»Π΅Π΄ Π΄ΠΎΠΊΠ»Π°Π΄Π° - ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ΅Π½Π° Π΅ ΠΎΡ Π°Π²ΡΠΎΡΠ° Π½Π° Π²ΡΠΏΡΠΎΡΠ° ΠΈ Π΅ ΠΈΠ·ΠΏΡΠ°ΡΠ΅Π½Π° ΠΎΡ Π½Π΅Π³ΠΎ
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ Π²ΠΈ!
ΠΠ΄ΡΠ°Π²Π΅ΠΉΡΠ΅! ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ Π·Π° Π΄ΠΎΠΊΠ»Π°Π΄Π°! Π‘ΠΏΠΎΠΌΠ΅Π½Π°Ρ ΡΠ΅, ΡΠ΅ ClickHouse ΠΊΠΎΠ½ΡΡΠΌΠΈΡΠ° ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΠΎΠ±ΡΠ΅ Π²ΡΠΈΡΠΊΠΈ Π½Π°Π»ΠΈΡΠ½ΠΈ ΡΠ΅ΡΡΡΡΠΈ. Π Π³ΠΎΠ²ΠΎΡΠΈΡΠ΅Π»ΡΡ Π΄ΠΎ Luxoft Π³ΠΎΠ²ΠΎΡΠΈ Π·Π° ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΡΠΎ ΡΠΈ Π·Π° ΡΡΡΠΊΠΈΡΠ΅ ΠΏΠΎΡΠΈ. Π’ΠΎΠΉ ΠΊΠ°Π·Π°, ΡΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ Ρ Π°ΡΠ΅ΡΠ²Π°Ρ ClickHouse, Π½ΠΎ Π½Π΅ Π³ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ Π²ΠΌΠ΅ΡΡΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΠΈΡ ΡΠΈ ΠΊΠΎΠ½ΠΊΡΡΠ΅Π½Ρ ΠΈΠΌΠ΅Π½Π½ΠΎ Π·Π°ΡΠΎΡΠΎ ΠΈΠ·ΡΠ΄Π΅ ΡΠ΅Π»ΠΈΡ ΠΏΡΠΎΡΠ΅ΡΠΎΡ. Π ΡΠ΅ Π½Π΅ ΠΌΠΎΠΆΠ°Ρ Π° Π΄Π° Π³ΠΎ Π²ΠΌΠ΅ΡΡΡΡ Π² ΡΠ²ΠΎΡΡΠ° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°, Π² ΡΠ²ΠΎΡ ZooKeeper Ρ Π΄ΠΎΠΊΠ΅ΡΠΈ. ΠΡΠ·ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈ Π΅ ΠΏΠΎ Π½ΡΠΊΠ°ΠΊΡΠ² Π½Π°ΡΠΈΠ½ Π΄Π° ΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈ ClickHouse, ΡΠ°ΠΊΠ° ΡΠ΅ Π΄Π° Π½Π΅ ΠΊΠΎΠ½ΡΡΠΌΠΈΡΠ° Π²ΡΠΈΡΠΊΠΎ, ΠΊΠΎΠ΅ΡΠΎ ΠΌΡ ΡΡΠ°Π½Π΅ Π΄ΠΎΡΡΡΠΏΠ½ΠΎ?
ΠΠ°, Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΅ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ Π»Π΅ΡΠ½ΠΎ. ΠΠΊΠΎ ΠΈΡΠΊΠ°ΡΠ΅ Π΄Π° ΠΊΠΎΠ½ΡΡΠΌΠΈΡΠ°ΡΠ΅ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ ΡΠ΄ΡΠ°, ΠΏΡΠΎΡΡΠΎ ΠΏΠΈΡΠ΅ΡΠ΅ set max_threads = 1
. Π ΡΠΎΠ²Π° Π΅ Π²ΡΠΈΡΠΊΠΎ, ΡΠΎΠΉ ΡΠ΅ ΠΈΠ·ΠΏΡΠ»Π½ΠΈ Π·Π°ΡΠ²ΠΊΠ°ΡΠ° Π² Π΅Π΄Π½ΠΎ ΡΠ΄ΡΠΎ. ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π° ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π·Π°Π΄Π°Π΄Π΅ΡΠ΅ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π·Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈΡΠ΅ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ. Π’Π°ΠΊΠ° ΡΠ΅ Π½ΡΠΌΠ° ΠΏΡΠΎΠ±Π»Π΅ΠΌ. Π ΠΊΠ°ΠΆΠ΅ΡΠ΅ Π½Π° ΠΊΠΎΠ»Π΅Π³ΠΈΡΠ΅ ΠΎΡ Luxoft, ΡΠ΅ Π½Π΅ Π΅ Π΄ΠΎΠ±ΡΠ΅, ΡΠ΅ Π½Π΅ ΡΠ° Π½Π°ΠΌΠ΅ΡΠΈΠ»ΠΈ ΡΠ°Π·ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡΠ°.
ΠΠ»Π΅ΠΊΡΠ΅ΠΉ, Π·Π΄ΡΠ°Π²Π΅ΠΉ! ΠΠΈΡ ΠΈΡΠΊΠ°Π» Π΄Π° Π·Π°Π΄Π°ΠΌ ΡΠΎΠ·ΠΈ Π²ΡΠΏΡΠΎΡ. Π’ΠΎΠ²Π° Π½Π΅ Π΅ ΠΏΡΡΠ²ΠΈΡΡ ΠΏΡΡ, ΠΊΠΎΠ³Π°ΡΠΎ ΡΡΠ²Π°ΠΌ, ΡΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ Ρ ΠΎΡΠ° Π·Π°ΠΏΠΎΡΠ²Π°Ρ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ClickHouse ΠΊΠ°ΡΠΎ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ Π·Π° ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅. Π Π΄ΠΎΠΊΠ»Π°Π΄Π° ΠΊΠ°Π·Π°Ρ ΡΠ΅ Π΄Π° Π½Π΅ ΠΏΡΠ°Π²ΠΈΡΠ΅ ΡΠΎΠ²Π°, ΡΠΎΠ΅ΡΡ Π½Π΅ Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π° ΡΡΡ ΡΠ°Π½ΡΠ²Π°ΡΠ΅ Π΄ΡΠ»Π³ΠΈ ΡΠ΅Π΄ΠΎΠ²Π΅. ΠΠ°ΠΊΠ²ΠΎ ΠΌΠΈΡΠ»ΠΈΡ Π·Π° ΡΠΎΠ²Π°?
ΠΡΡΠ²ΠΎ, Π΄Π½Π΅Π²Π½ΠΈΡΠΈΡΠ΅ ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ Π½Π΅ ΡΠ° Π΄ΡΠ»Π³ΠΈ ΡΠ΅Π΄ΠΎΠ²Π΅. ΠΠΌΠ°, ΡΠ°Π·Π±ΠΈΡΠ° ΡΠ΅, ΠΈ ΠΈΠ·ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π½ΡΠΊΠ°ΠΊΠ²Π° ΡΡΠ»ΡΠ³Π°, Π½Π°ΠΏΠΈΡΠ°Π½Π° Π½Π° java, Ρ Π²ΡΡΠ»Ρ ΠΈΠ·ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅, ΡΠΎ ΡΠ΅ ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠ°. Π ΡΠ°ΠΊΠ° Π² Π±Π΅Π·ΠΊΡΠ°Π΅Π½ ΡΠΈΠΊΡΠ» ΠΈ ΠΏΡΠΈ ΠΈΠ·ΡΠ΅ΡΠΏΠ²Π°Π½Π΅ Π½Π° ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎΡΠΎ Π½Π° ΡΠ²ΡΡΠ΄ΠΈΡ Π΄ΠΈΡΠΊ. Π Π΅ΡΠ΅Π½ΠΈΠ΅ΡΠΎ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΠΎ. ΠΠΊΠΎ Π»ΠΈΠ½ΠΈΠΈΡΠ΅ ΡΠ° ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΡΠ»Π³ΠΈ, ΡΠΎΠ³Π°Π²Π° Π³ΠΈ ΠΈΠ·ΡΠ΅ΠΆΠ΅ΡΠ΅. ΠΠ°ΠΊΠ²ΠΎ ΠΎΠ·Π½Π°ΡΠ°Π²Π° Π΄ΡΠ»Π³ΠΎ? ΠΠ΅ΡΠ΅ΡΠΊΠΈ ΠΊΠΈΠ»ΠΎΠ±Π°ΠΉΡΠΈ Π΅ Π»ΠΎΡΠΎ *.
* Π² ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ Π²Π΅ΡΡΠΈΠΈ Π½Π° ClickHouse Π΅ Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π½Π° "Π°Π΄Π°ΠΏΡΠΈΠ²Π½Π° Π΄Π΅ΡΠ°ΠΉΠ»Π½ΠΎΡΡ Π½Π° ΠΈΠ½Π΄Π΅ΠΊΡΠ°", ΠΊΠΎΠ΅ΡΠΎ ΠΏΡΠ΅ΠΌΠ°Ρ Π²Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° ΡΡΡ ΡΡΡ ΡΠ°Π½ΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° Π΄ΡΠ»Π³ΠΈ Π½ΠΈΠ·ΠΎΠ²Π΅ Π² ΠΏΠΎ-Π³ΠΎΠ»ΡΠΌΠ°ΡΠ° ΡΠΈ ΡΠ°ΡΡ.
ΠΠ΄ΠΈΠ½ ΠΊΠΈΠ»ΠΎΠ±Π°ΠΉΡ Π½ΠΎΡΠΌΠ°Π»Π΅Π½ Π»ΠΈ Π΅?
Π’ΠΎΠ²Π° Π΅ Π½ΠΎΡΠΌΠ°Π»Π½ΠΎ.
ΠΠ΄ΡΠ°Π²Π΅ΠΉΡΠ΅! ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ Π·Π° Π΄ΠΎΠΊΠ»Π°Π΄Π°! ΠΠ΅ΡΠ΅ ΠΏΠΎΠΏΠΈΡΠ°Ρ Π·Π° ΡΠΎΠ²Π° Π² ΡΠ°ΡΠ°, Π½ΠΎ Π½Π΅ ΠΏΠΎΠΌΠ½Ρ Π΄Π°Π»ΠΈ ΠΏΠΎΠ»ΡΡΠΈΡ ΠΎΡΠ³ΠΎΠ²ΠΎΡ. ΠΠΌΠ° Π»ΠΈ Π½ΡΠΊΠ°ΠΊΡΠ² ΠΏΠ»Π°Π½ Π·Π° ΡΠ°Π·ΡΠΈΡΡΠ²Π°Π½Π΅ Π½Π° ΡΠ΅ΠΊΡΠΈΡΡΠ° WITH ΠΏΠΎ CTE Π½Π°ΡΠΈΠ½?
ΠΡΠ΅ ΠΎΡΠ΅ Π½Π΅. Π§Π°ΡΡΡΠ° Π‘ΠͺΠ‘ Π΅ Π½ΡΠΊΠ°ΠΊ Π½Π΅ΡΠ΅ΡΠΈΠΎΠ·Π½Π°. Π’ΠΎΠ²Π° Π΅ ΠΊΠ°ΡΠΎ ΠΌΠ°Π»ΠΊΠ° ΡΡΠ½ΠΊΡΠΈΡ Π·Π° Π½Π°Ρ.
Π Π°Π·Π±ΠΈΡΠ°ΠΌ. ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΠΈ!
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ Π·Π° Π΄ΠΎΠΊΠ»Π°Π΄Π°! ΠΠ½ΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ! Π³Π»ΠΎΠ±Π°Π»Π΅Π½ Π²ΡΠΏΡΠΎΡ. ΠΡΠ΅Π΄Π²ΠΈΠΆΠ΄Π° Π»ΠΈ ΡΠ΅ Π΄Π° ΡΠ΅ Π½Π°ΠΏΡΠ°Π²ΠΈ, ΠΌΠΎΠΆΠ΅ Π±ΠΈ ΠΏΠΎΠ΄ ΡΠΎΡΠΌΠ°ΡΠ° Π½Π° Π½ΡΠΊΠ°ΠΊΠ²ΠΈ ΠΌΡΠ½ΠΈΡΠ΅ΡΠ°, ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΡ Π½Π° ΠΈΠ·ΡΡΠΈΠ²Π°Π½Π΅ΡΠΎ Π½Π° Π΄Π°Π½Π½ΠΈ?
ΠΠ°Π΄ΡΠ»ΠΆΠΈΡΠ΅Π»Π½ΠΎ. Π’ΠΎΠ²Π° Π΅ ΠΏΡΡΠ²Π°ΡΠ° Π½ΠΈ Π·Π°Π΄Π°ΡΠ° Π² Π½Π°ΡΠ°ΡΠ° ΠΎΠΏΠ°ΡΠΊΠ°. Π‘Π΅Π³Π° Π°ΠΊΡΠΈΠ²Π½ΠΎ ΠΌΠΈΡΠ»ΠΈΠΌ ΠΊΠ°ΠΊ Π΄Π° Π½Π°ΠΏΡΠ°Π²ΠΈΠΌ Π²ΡΠΈΡΠΊΠΎ ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ. Π ΡΡΡΠ±Π²Π° Π΄Π° Π·Π°ΠΏΠΎΡΠ½Π΅ΡΠ΅ Π΄Π° Π½Π°ΡΠΈΡΠΊΠ°ΡΠ΅ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΠ°ΡΠ°*.
* Π½Π°ΡΠΈΡΠ½Π° Π±ΡΡΠΎΠ½ΠΈΡΠ΅ Π½Π° ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΠ°ΡΠ° ΠΈ Π²ΡΠΈΡΠΊΠΎ Π±Π΅ΡΠ΅ Π³ΠΎΡΠΎΠ²ΠΎ.
Π©Π΅ ΠΏΠΎΠ²Π»ΠΈΡΠ΅ Π»ΠΈ ΠΏΠΎ Π½ΡΠΊΠ°ΠΊΡΠ² Π½Π°ΡΠΈΠ½ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° ΠΈΠ»ΠΈ Π½Π΅? Π©Π΅ Π±ΡΠ΄Π΅ Π»ΠΈ Π²Π»ΠΎΠΆΠΊΠ°ΡΠ° ΡΠΎΠ»ΠΊΠΎΠ²Π° Π±ΡΡΠ·Π°, ΠΊΠΎΠ»ΠΊΠΎΡΠΎ Π΅ ΡΠ΅Π³Π°?
ΠΠΎΠΆΠ΅ Π±ΠΈ ΡΠ°ΠΌΠΈΡΠ΅ ΠΈΠ·ΡΡΠΈΠ²Π°Π½ΠΈΡ, ΡΠ°ΠΌΠΈΡΠ΅ Π°ΠΊΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ΅ Π±ΡΠ΄Π°Ρ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΆΠΊΠΈ, Π½ΠΎ ΡΠΎΠ²Π° Π½ΡΠΌΠ° Π΄Π° ΠΏΠΎΠ²Π»ΠΈΡΠ΅ ΠΏΠΎ Π½ΠΈΠΊΠ°ΠΊΡΠ² Π½Π°ΡΠΈΠ½ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° Π½Π° ΠΈΠ·Π±ΡΠ°Π½ΠΈΡΠ΅ ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° Π½Π° Π²ΠΌΡΠΊΠ²Π°Π½ΠΈΡΡΠ°.
Π ΠΎΡΠ΅ Π΅Π΄ΠΈΠ½ ΠΌΠ°Π»ΡΠΊ Π²ΡΠΏΡΠΎΡ. ΠΠ° ΠΏΡΠ΅Π·Π΅Π½ΡΠ°ΡΠΈΡΡΠ° Π³ΠΎΠ²ΠΎΡΠΈΡ ΡΠ΅ Π·Π° ΠΏΡΡΠ²ΠΈΡΠ½ΠΈΡ ΠΊΠ»ΡΡ. Π‘ΡΠΎΡΠ²Π΅ΡΠ½ΠΎ ΠΈΠΌΠ°ΠΌΠ΅ ΡΠ°Π·Π΄Π΅Π»ΡΠ½Π΅, ΠΊΠΎΠ΅ΡΠΎ Π΅ ΠΌΠ΅ΡΠ΅ΡΠ½ΠΎ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅, Π½Π°Π»ΠΈ? Π ΠΊΠΎΠ³Π°ΡΠΎ Π·Π°Π΄Π°Π΄Π΅ΠΌ ΠΏΠ΅ΡΠΈΠΎΠ΄ ΠΎΡ Π²ΡΠ΅ΠΌΠ΅, ΠΊΠΎΠΉΡΠΎ ΡΠ΅ ΠΏΠΎΠ±ΠΈΡΠ° Π² Π΅Π΄ΠΈΠ½ ΠΌΠ΅ΡΠ΅Ρ, ΡΠΎΠ³Π°Π²Π° Π½ΠΈΠ΅ ΡΠ΅ΡΠ΅ΠΌ ΡΠ°ΠΌΠΎ ΡΠΎΠ·ΠΈ Π΄ΡΠ», Π½Π°Π»ΠΈ?
ΠΠ°.
ΠΡΠΏΡΠΎΡ. ΠΠΊΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΈΠ·Π±Π΅ΡΠ΅ΠΌ ΠΏΡΡΠ²ΠΈΡΠ΅Π½ ΠΊΠ»ΡΡ, ΡΠΎΠ³Π°Π²Π° ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ Π»ΠΈ Π΅ Π΄Π° Π³ΠΎ Π½Π°ΠΏΡΠ°Π²ΠΈΠΌ ΡΠΎΡΠ½ΠΎ ΡΡΠ΅Π· ΠΏΠΎΠ»Π΅ΡΠΎ βΠΠ°ΡΠ°β, ΡΠ°ΠΊΠ° ΡΠ΅ Π²ΡΠ² ΡΠΎΠ½ΠΎΠ² ΡΠ΅ΠΆΠΈΠΌ Π΄Π° ΠΈΠΌΠ° ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ ΠΏΡΠ΅ΡΡΡΡΠΊΡΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ΅Π·ΠΈ Π΄Π°Π½Π½ΠΈ, ΡΠ°ΠΊΠ° ΡΠ΅ Π΄Π° ΡΠ΅ ΠΏΠΎΠ±Π΅ΡΠ°Ρ ΠΏΠΎ ΠΏΠΎ-ΠΏΠΎΠ΄ΡΠ΅Π΄Π΅Π½ Π½Π°ΡΠΈΠ½? ΠΠΊΠΎ Π½ΡΠΌΠ°ΡΠ΅ Π·Π°ΡΠ²ΠΊΠΈ Π·Π° Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΠΈ Π΄ΠΎΡΠΈ Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΈΠ·Π±Π΅ΡΠ΅ΡΠ΅ ΠΏΡΡΠ²ΠΈΡΠ΅Π½ ΠΊΠ»ΡΡ, ΡΡΡΡΠ²Π° Π»ΠΈ ΡΠΈ Π΄Π° ΠΏΠΎΡΡΠ°Π²ΠΈΡΠ΅ Π΄Π°ΡΠ° Π² ΠΏΡΡΠ²ΠΈΡΠ½ΠΈΡ ΠΊΠ»ΡΡ?
ΠΠ°.
ΠΠΎΠΆΠ΅ Π±ΠΈ ΠΈΠΌΠ° ΡΠΌΠΈΡΡΠ» Π΄Π° ΠΏΠΎΡΡΠ°Π²ΠΈΡΠ΅ Π² ΠΏΡΡΠ²ΠΈΡΠ½ΠΈΡ ΠΊΠ»ΡΡ ΠΏΠΎΠ»Π΅, ΡΡΠ΅Π· ΠΊΠΎΠ΅ΡΠΎ Π΄Π°Π½Π½ΠΈΡΠ΅ ΡΠ΅ Π±ΡΠ΄Π°Ρ ΠΏΠΎ-Π΄ΠΎΠ±ΡΠ΅ ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡΠ°Π½ΠΈ, Π°ΠΊΠΎ ΡΠ° ΡΠΎΡΡΠΈΡΠ°Π½ΠΈ ΠΏΠΎ ΡΠΎΠ²Π° ΠΏΠΎΠ»Π΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΎ ΠΈΠΌΠ΅. ΠΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΎΡΠΈΠ²Π° Π½Π° ΡΡΡΠΈΡ ΡΠ°ΠΉΡ. Π ΡΠΎΠ·ΠΈ ΡΠ»ΡΡΠ°ΠΉ ΠΏΠΎΡΡΠ°Π²Π΅ΡΠ΅ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΎΡΠΎ ΠΈΠΌΠ΅ ΠΈ Π²ΡΠ΅ΠΌΠ΅ΡΠΎ. Π ΡΠΎΠ³Π°Π²Π° Π²Π°ΡΠΈΡΠ΅ Π΄Π°Π½Π½ΠΈ ΡΠ΅ Π±ΡΠ΄Π°Ρ ΠΏΠΎ-Π΄ΠΎΠ±ΡΠ΅ ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡΠ°Π½ΠΈ. Π©ΠΎ ΡΠ΅ ΠΎΡΠ½Π°ΡΡ Π΄ΠΎ Π΄Π°ΡΠ°ΡΠ°, Π°ΠΊΠΎ Π½Π°ΠΈΡΡΠΈΠ½Π° Π½ΡΠΌΠ°ΡΠ΅ ΠΈ Π½ΠΈΠΊΠΎΠ³Π° Π½ΡΠΌΠ°ΡΠ΅ Π·Π°ΡΠ²ΠΊΠΈ Π·Π° Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π½Π° Π΄Π°ΡΠΈ, ΡΠΎΠ³Π°Π²Π° Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΏΠΎΡΡΠ°Π²ΠΈΡΠ΅ Π΄Π°ΡΠ°ΡΠ° Π² ΠΏΡΡΠ²ΠΈΡΠ½ΠΈΡ ΠΊΠ»ΡΡ.
ΠΠΎΠ±ΡΠ΅, Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΠΈ ΠΌΠ½ΠΎΠ³ΠΎ!
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: www.habr.com