ClickHouse เบชเปเบฒเบฅเบฑเบšเบœเบนเป‰เปƒเบŠเป‰เบ‚เบฑเป‰เบ™เบชเบนเบ‡เปƒเบ™เบ„เปเบฒเบ–เบฒเบกเปเบฅเบฐเบ„เปเบฒเบ•เบญเบš

เปƒเบ™เป€เบ”เบทเบญเบ™เป€เบกเบชเบฒ, เบงเบดเบชเบฐเบงเบฐเบเบญเบ™ Avito เป„เบ”เป‰เป€เบ•เบปเป‰เบฒเป‚เบฎเบกเบเบฑเบ™เบชเปเบฒเบฅเบฑเบšเบเบญเบ‡เบ›เบฐเบŠเบธเบกเบญเบญเบ™เป„เบฅเบ™เปŒเบเบฑเบšเบœเบนเป‰เบžเบฑเบ”เบ—เบฐเบ™เบฒ ClickHouse เบ•เบปเป‰เบ™เบ•เป Alexey Milovidov เปเบฅเบฐ Kirill Shvakov, เบœเบนเป‰เบžเบฑเบ”เบ—เบฐเบ™เบฒ Golang เบˆเบฒเบ Integros. เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบ›เบถเบเบชเบฒเบซเบฒเบฅเบทเบเปˆเบฝเบงเบเบฑเบšเบงเบดเบ—เบตเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบ™เปเบฒเปƒเบŠเป‰เบฅเบฐเบšเบปเบšเบเบฒเบ™เบ„เบธเป‰เบกเบ„เบญเบ‡เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เปเบฅเบฐเบชเบดเปˆเบ‡เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบžเบปเบšเบ„เบงเบฒเบกเบซเบเบธเป‰เบ‡เบเบฒเบ.

เบญเบตเบ‡เปƒเบชเปˆเบเบญเบ‡เบ›เบฐเบŠเบธเบก, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบฅเบงเบšเบฅเบงเบกเบšเบปเบ”เบ„เบงเบฒเบกเบ—เบตเปˆเบกเบตเบ„เปเบฒเบ•เบญเบšเบ‚เบญเบ‡เบœเบนเป‰เบŠเปˆเบฝเบงเบŠเบฒเบ™เบ•เปเปˆเบ„เปเบฒเบ–เบฒเบกเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเปเบฅเบฐเบœเบนเป‰เบŠเบปเบกเบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™, เบ‚เปเป‰เบกเบนเบ™เปƒเบซเบกเปˆ, เบงเบฑเบ”เบˆเบฐเบ™เบฒเบ™เบธเบเบปเบกเบžเบฒเบเบ™เบญเบ, เป„เบ”เป€เบงเบต Golang เปเบฅเบฐเบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡เบชเบฐเบšเบฑเบš ClickHouse. เบกเบฑเบ™เบญเบฒเบ”เบˆเบฐเป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เบ•เปเปˆเบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเบœเบนเป‰เบ—เบตเปˆเบเปเบฒเบฅเบฑเบ‡เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบš Yandex DBMS เปเบฅเป‰เบงเปเบฅเบฐเบกเบตเบ„เบงเบฒเบกเบชเบปเบ™เปƒเบˆเปƒเบ™เบ›เบฐเบˆเบธเบšเบฑเบ™เปเบฅเบฐเบญเบฐเบ™เบฒเบ„เบปเบ”. เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, เบ„เปเบฒเบ•เบญเบšเปเบกเปˆเบ™เป‚เบ”เบ Alexey Milovidov, เป€เบงเบฑเป‰เบ™เป€เบชเบเปเบ•เปˆเบ‚เบฝเบ™เป€เบ›เบฑเบ™เบขเปˆเบฒเบ‡เบญเบทเปˆเบ™.

เบˆเบปเปˆเบ‡เบฅเบฐเบกเบฑเบ”เบฅเบฐเบงเบฑเบ‡, เบกเบตเบซเบผเบฒเบเบ‚เปเป‰เบ„เบงเบฒเบกเบžเบฒเบเปƒเบ•เป‰เบเบฒเบ™เบ•เบฑเบ”. เบžเบงเบเป€เบฎเบปเบฒเบซเบงเบฑเบ‡เบงเปˆเบฒเป€เบ™เบทเป‰เบญเปƒเบ™เบ—เบตเปˆเบกเบตเบ„เปเบฒเบ–เบฒเบกเบˆเบฐเบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบ™เปเบฒเบ—เบฒเบ‡.

ClickHouse เบชเปเบฒเบฅเบฑเบšเบœเบนเป‰เปƒเบŠเป‰เบ‚เบฑเป‰เบ™เบชเบนเบ‡เปƒเบ™เบ„เปเบฒเบ–เบฒเบกเปเบฅเบฐเบ„เปเบฒเบ•เบญเบš

เป€เบ™เบทเป‰เบญเปƒเบ™

เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบšเปเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เบญเปˆเบฒเบ™เบ‚เปเป‰เบ„เบงเบฒเบก, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบšเบดเปˆเบ‡เบšเบฑเบ™เบ—เบถเบเบเบฒเบ™เบŠเบธเบกเบ™เบธเบก เปƒเบ™เบŠเปˆเบญเบ‡ YouTube เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ. เบฅเบฐเบซเบฑเบ”เป€เบงเบฅเบฒเบขเบนเปˆเปƒเบ™เบ„เปเบฒเป€เบซเบฑเบ™เบ—เปเบฒเบญเบดเบ”เบžเบฒเบเปƒเบ•เป‰เบงเบดเบ”เบตเป‚เบญ.

ClickHouse เปเบกเปˆเบ™เบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡เบขเปˆเบฒเบ‡เบ•เปเปˆเป€เบ™เบทเปˆเบญเบ‡, เปเบ•เปˆเบ‚เปเป‰เบกเบนเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเปเบกเปˆเบ™. เบˆเบฐเป€เบฎเบฑเบ”เปเบ™เบงเปƒเบ”เบเปˆเบฝเบงเบเบฑเบšเบกเบฑเบ™?

ClickHouse เป„เบ”เป‰เบ–เบทเบเบ›เบฑเบšเบ›เบธเบ‡เบขเปˆเบฒเบ‡เบ•เปเปˆเป€เบ™เบทเปˆเบญเบ‡, เปเบฅเบฐเบ‚เปเป‰เบกเบนเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ, เป€เบŠเบดเปˆเบ‡เป„เบ”เป‰เบ–เบทเบเบ›เบฑเบšเบ›เบธเบ‡เปƒเบซเป‰เบ”เบตเบ—เบตเปˆเบชเบธเบ”เบ—เบตเปˆเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบ›เบธเบ‡เปเบ•เปˆเบ‡เบชเบธเบ”เบ—เป‰เบฒเบ, เบšเปเปˆเป„เบ”เป‰เบ–เบทเบเบ›เบฑเบšเบ›เบธเบ‡เปเบฅเบฐเบขเบนเปˆเปƒเบ™เบชเปเบฒเป€เบ™เบปเบฒเบชเปเบฒเบฎเบญเบ‡.

เปƒเบซเป‰เป€เบงเบปเป‰เบฒเบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบกเบตเบšเบฑเบ™เบซเบฒเบšเบฒเบ‡เบขเปˆเบฒเบ‡เปเบฅเบฐเบ‚เปเป‰เบกเบนเบ™เบชเบนเบ™เป€เบชเบ. เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบ—เบตเปˆเบˆเบฐเบŸเบทเป‰เบ™เบŸเบน, เปเบฅเบฐเบกเบฑเบ™เป„เบ”เป‰เบซเบฑเบ™เบญเบญเบเบงเปˆเบฒเบžเบฒเบ—เบดเบŠเบฑเบ™เป€เบเบปเปˆเบฒ, เบ—เบตเปˆเป€เบเบฑเบšเป„เบงเป‰เปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบชเปเบฒเบฎเบญเบ‡, เปเบ•เบเบ•เปˆเบฒเบ‡เบˆเบฒเบ ClickHouse เบฎเบธเปˆเบ™เบ—เบตเปˆเปƒเบŠเป‰เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™. เบชเบดเปˆเบ‡เบ—เบตเปˆเบ•เป‰เบญเบ‡เป€เบฎเบฑเบ”เปƒเบ™เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ”เบฑเปˆเบ‡เบเปˆเบฒเบง, เปเบฅเบฐเบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบšเป?

เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ—เบตเปˆเบ—เปˆเบฒเบ™เป„เบ”เป‰เบŸเบทเป‰เบ™เบŸเบนเบ‚เปเป‰เบกเบนเบ™เบˆเบฒเบเบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เปƒเบ™เบฎเบนเบšเปเบšเบšเป€เบเบปเปˆเบฒ, เปเบ•เปˆเบกเบฑเบ™เบšเปเปˆเป„เบ”เป‰เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบเบฑเบšเบชเบฐเบšเบฑเบšเปƒเบซเบกเปˆ, เปเบกเปˆเบ™เป€เบ›เบฑเบ™เป„เบ›เบšเปเปˆเป„เบ”เป‰. เบžเบงเบเป€เบฎเบปเบฒเบฎเบฑเบšเบ›เบฐเบเบฑเบ™เบงเปˆเบฒเบฎเบนเบšเปเบšเบšเบ‚เปเป‰เบกเบนเบ™เปƒเบ™ ClickHouse เบเบฑเบ‡เบ„เบปเบ‡เป€เบ‚เบปเป‰เบฒเบเบฑเบ™เป„เบ”เป‰เบเบฑเบšเบซเบผเบฑเบ‡เบชเบฐเป€เปเบต. เบ™เบตเป‰เปเบกเปˆเบ™เบชเบดเปˆเบ‡เบชเปเบฒเบ„เบฑเบ™เบซเบผเบฒเบเบเปˆเบงเบฒเบ„เบงเบฒเบกเป€เบ‚เบปเป‰เบฒเบเบฑเบ™เป„เบ”เป‰เปƒเบ™เบ”เป‰เบฒเบ™เบซเบฅเบฑเบ‡เปƒเบ™เบซเบ™เป‰เบฒเบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเบ–เป‰เบฒเบžเบถเบ”เบ•เบดเบเปเบฒเบ‚เบญเบ‡เบšเบฒเบ‡เบซเบ™เป‰เบฒเบ—เบตเปˆเบšเปเปˆเบ„เปˆเบญเบเบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เบกเบตเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡. เป€เบงเบตเบŠเบฑเบ™เปƒเปเปˆเบ‚เบญเบ‡ ClickHouse เบ„เบงเบ™เบชเบฒเบกเบฒเบ”เบญเปˆเบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเป€เบเบฑเบšเป„เบงเป‰เปƒเบ™เปเบœเปˆเบ™เป„เบ”เป‰เบชเบฐเป€เปเบต. เบ™เบตเป‰เปเบกเปˆเบ™เบเบปเบ”เบซเบกเบฒเบ.

เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ”เปƒเบ™เบ›เบฐเบˆเบธเบšเบฑเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบ‚เปเป‰เบกเบนเบ™เบˆเบฒเบ ClickHouse เปเบกเปˆเบ™เบซเบเบฑเบ‡?

เบงเบดเบ—เบตเบเบฒเบ™เป€เบฎเบฑเบ”เบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™, เป‚เบ”เบเบ„เปเบฒเบ™เบถเบ‡เป€เบ–เบดเบ‡เบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เป€เบžเบตเปˆเบกเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‡เบฒเบ™เบชเบธเบ”เบ—เป‰เบฒเบ, เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบญเบฑเบ™เปƒเบซเบเปˆเบซเบผเบงเบ‡เบ‚เบญเบ‡ terabytes, เปเบฅเบฐเบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบ–เบทเบเบ›เบฑเบšเบ›เบธเบ‡, เป€เบงเบปเป‰เบฒเบงเปˆเบฒ, เบชเปเบฒเบฅเบฑเบšเบชเบฒเบกเบกเบทเป‰เบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ, เปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบšเปเปˆเบกเบตเบ‚เบฑเป‰เบ™เบ•เบญเบ™เปƒเบ”เป†เป€เบเบตเบ”เบ‚เบทเป‰เบ™เบเบฑเบšเบกเบฑเบ™?

เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เปƒเบซเป‰เบเบฒเบ™เปเบเป‰เป„เบ‚เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบญเบ‡เปเบฅเบฐเบ‚เบฝเบ™เปƒเบชเปˆ bash เป„เบ”เป‰: เป€เบเบฑเบšเบเปเบฒเบชเปเบฒเป€เบ™เบปเบฒเบชเปเบฒเบฎเบญเบ‡เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปƒเบ™เบงเบดเบ—เบตเบเบฒเบ™เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเปเบฅเบฐเบ”เบฑเปˆเบ‡เบเปˆเบฒเบง. เบšเบฒเบ‡เบ—เบตเบญเบฒเบ”เบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบกเบตเป„เบกเป‰เบ„เป‰เบญเบ™เป€เบ—เบปเป‰เบฒเบซเบเบฑเบ‡, เปเบฅเบฐเบฅเบปเบ”เบ–เบตเบšเป„เบ”เป‰เบ–เบทเบเบ›เบฐเบ”เบดเบ”เบชเป‰เบฒเบ‡เบกเบฒเบ”เบปเบ™เปเบฅเป‰เบงเบšเป?

เปƒเบซเป‰เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เป‰เบงเบเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ”. เป€เบžเบทเปˆเบญเบ™เบฎเปˆเบงเบกเบ‡เบฒเบ™เบ‚เบญเบ‡เบ‚เป‰เบญเบเบชเบฐเป€เบซเบกเบตเปƒเบซเป‰เบ„เปเบฒเปเบ™เบฐเบ™เปเบฒ, เปƒเบ™เบเบฒเบ™เบ•เบญเบšเบ„เปเบฒเบ–เบฒเบกเบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™, เป€เบžเบทเปˆเบญเป€เบ•เบทเบญเบ™เบžเบงเบเป€เบ‚เบปเบฒเบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™ Yandex.Cloud, เบšเปˆเบญเบ™เบ—เบตเปˆเบšเบฑเบ™เบซเบฒเบ™เบตเป‰เป„เบ”เป‰เบ–เบทเบเปเบเป‰เป„เบ‚เปเบฅเป‰เบง. เบชเบฐเบ™เบฑเป‰เบ™เปƒเบซเป‰เปƒเบŠเป‰เบกเบฑเบ™เบ–เป‰เบฒเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰.

เบšเปเปˆเบกเบตเบเบฒเบ™เปเบเป‰เป„เบ‚เบ„เบปเบšเบ–เป‰เบงเบ™เบชเบปเบกเบšเบนเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™, เบซเบ™เบถเปˆเบ‡เบฎเป‰เบญเบเบชเปˆเบงเบ™เบฎเป‰เบญเบเบ—เบตเปˆเบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™เปƒเบ™ ClickHouse. เบกเบตเบšเบฒเบ‡เบŠเปˆเบญเบ‡เบซเบงเปˆเบฒเบ‡เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เบ™เปเบฒเปƒเบŠเป‰เป„เบ”เป‰. เป€เบžเบทเปˆเบญเปƒเบซเป‰เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เปเบเป‰เป„เบ‚เบ—เบตเปˆเบชเบปเบกเบšเบนเบ™, เบ—เปˆเบฒเบ™เบˆเบฐเบ•เป‰เบญเบ‡ tinker เบžเบฝเบ‡เป€เบฅเบฑเบเบ™เป‰เบญเบเบ”เป‰เบงเบเบ•เบปเบ™เป€เบญเบ‡, เบซเบผเบทเบชเป‰เบฒเบ‡ wrappers เปƒเบ™เบฎเบนเบšเปเบšเบšเบ‚เบญเบ‡ scripts.

เบ‚เป‰เบญเบเบˆเบฐเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เป‰เบงเบเบงเบดเบ—เบตเปเบเป‰เป„เบ‚เบ—เบตเปˆเบ‡เปˆเบฒเบเบ”เบฒเบเบ—เบตเปˆเบชเบธเบ”เปเบฅเบฐเบชเบดเป‰เบ™เบชเบธเบ”เบ”เป‰เบงเบเบเบฒเบ™เปเบเป‰เป„เบ‚เบ—เบตเปˆเบŠเบฑเบšเบŠเป‰เบญเบ™เบ—เบตเปˆเบชเบธเบ”, เบ‚เบถเป‰เบ™เบเบฑเบšเบ›เบฐเบฅเบดเบกเบฒเบ™เบ‚เปเป‰เบกเบนเบ™เปเบฅเบฐเบ‚เบฐเบซเบ™เบฒเบ”เบ‚เบญเบ‡เบเบธเปˆเบก. เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆเบ‚เบญเบ‡เบเบธเปˆเบก, เบเบฒเบ™เปเบเป‰เป„เบ‚เบชเบฐเบฅเบฑเบšเบชเบฑเบšเบŠเป‰เบญเบ™เบซเบผเบฒเบเบˆเบฐเบเบฒเบเป€เบ›เบฑเบ™.

เบ–เป‰เบฒเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ—เบตเปˆเบกเบตเบ‚เปเป‰เบกเบนเบ™เบ„เบญเบšเบ„เบญเบ‡เบžเบฝเบ‡เปเบ•เปˆเบชเบญเบ‡เบชเบฒเบกเบเบดเบเบฒเป„เบš, เบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เป„เบ”เป‰เป€เบŠเบฑเปˆเบ™เบ™เบตเป‰:

  1. เบšเบฑเบ™เบ—เบถเบเบ„เปเบฒเบ™เบดเบเบฒเบกเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เป€เบŠเบฑเปˆเบ™ metadata โˆ’ เบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เบเบฒเบ™เบชเป‰เบฒเบ‡เบ•เบฒเบ•เบฐเบฅเบฒเบ‡.
  2. เป€เบฎเบฑเบ”เบเบฒเบ™เบ–เบดเป‰เบกเบ‚เบตเป‰เป€เบซเบเบทเป‰เบญเป‚เบ”เบเปƒเบŠเป‰เบฅเบนเบเบ„เป‰เบฒ ClickHouse - เป€เบฅเบทเบญเบ * เบˆเบฒเบเบ•เบฒเบ•เบฐเบฅเบฒเบ‡ เบเบทเปˆเบ™. เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ—เปˆเบฒเบ™เบˆเบฐเป„เบ”เป‰เบฎเบฑเบšเป„เบŸเบฅเปŒเปƒเบ™เบฎเบนเบšเปเบšเบš TabSeparated. เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™เปƒเบซเป‰เบกเบตเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบซเบผเบฒเบเบ‚เบถเป‰เบ™, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เป„เบ”เป‰เปƒเบ™เบฎเบนเบšเปเบšเบšเบžเบทเป‰เบ™เป€เบกเบทเบญเบ‡.

เบ–เป‰เบฒเบˆเปเบฒเบ™เบงเบ™เบ‚เปเป‰เบกเบนเบ™เบกเบตเบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆ, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบˆเบฐเปƒเบŠเป‰เป€เบงเบฅเบฒเบซเบผเบฒเบเปเบฅเบฐเบžเบทเป‰เบ™เบ—เบตเปˆเบซเบผเบฒเบ. เบญเบฑเบ™เบ™เบตเป‰เป€เบญเบตเป‰เบ™เบงเปˆเบฒเบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบขเปˆเบฒเบ‡เบกเบตเป€เบซเบ”เบœเบปเบ™; เบ–เป‰เบฒเบกเบฑเบ™เป€เบ›เบฑเบ™, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เป€เบ›เบฑเบ™เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบชเบธเบ”เบ—เป‰เบฒเบ, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบญเบปเบฒเบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เปเบฅเบฐเบญเบฑเบšเป‚เบซเบฅเบ”เป„เบ›เบเบฑเบ‡ MySQL เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบŸเบทเป‰เบ™เบ•เบปเบง.

เบชเปเบฒเบฅเบฑเบšเบเปเบฅเบฐเบ™เบตเบ—เบตเปˆเบเป‰เบฒเบงเบซเบ™เป‰เบฒเบ—เบฒเบ‡เบ”เป‰เบฒเบ™เบซเบผเบฒเบ, ClickHouse เบกเบตเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบชเป‰เบฒเบ‡เบžเบฒเบšเบฅเบงเบกเบ‚เบญเบ‡เบžเบฒเบ—เบดเบŠเบฑเบ™เปƒเบ™เบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒเบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™. เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบ™เบตเป‰เบชเบฒเบกเบฒเบ”เปƒเบŠเป‰เป„เบ”เป‰เบ•เบฒเบกเบ„เบณเบฎเป‰เบญเบ‡เบ‚เป เบเบฒเบ™โ€‹เบ›เปˆเบฝเบ™โ€‹เปเบ›เบ‡โ€‹เบเบฒเบ™โ€‹เปเบšเปˆเบ‡โ€‹เบ›เบฑเบ™ freeze เบ•เบฒโ€‹เบ•เบฐโ€‹เบฅเบฒเบ‡โ€‹. เบซเบผเบทเบ‡เปˆเบฒเบเบ”เบฒเบ เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ•เบฒเบ•เบฐเบฅเบฒเบ‡ freeze - เบ™เบตเป‰เปเบกเปˆเบ™เบžเบฒเบšเบฅเบงเบกเบ‚เบญเบ‡เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ—เบฑเบ‡เบซเบกเบปเบ”.

เบžเบฒเบšเบ–เปˆเบฒเบเบˆเบฐเบ–เบทเบเบชเป‰เบฒเบ‡เบ‚เบทเป‰เบ™เบขเปˆเบฒเบ‡เบ•เปเปˆเป€เบ™เบทเปˆเบญเบ‡เบชเปเบฒเบฅเบฑเบšเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบซเบ™เบถเปˆเบ‡เปƒเบ™เบซเบ™เบถเปˆเบ‡ shard, เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เบšเปเปˆเป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเบชเป‰เบฒเบ‡เบฎเบนเบšเบžเบฒเบšเบ—เบตเปˆเบชเบญเบ”เบ„เปˆเบญเบ‡เบ‚เบญเบ‡เบเบธเปˆเบกเบ—เบฑเบ‡เบซเบกเบปเบ”เปƒเบ™เบ—เบฒเบ‡เบ™เบตเป‰. เปเบ•เปˆเบชเปเบฒเบฅเบฑเบšเบงเบฝเบเบ‡เบฒเบ™เบชเปˆเบงเบ™เปƒเบซเบเปˆเบšเปเปˆเบกเบตเบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบ”เบฑเปˆเบ‡เบเปˆเบฒเบง, เปเบฅเบฐเบกเบฑเบ™เบžเบฝเบ‡เบžเปเบ—เบตเปˆเบˆเบฐเบ›เบฐเบ•เบดเบšเบฑเบ”เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเปƒเบ™เปเบ•เปˆเบฅเบฐ shard เปเบฅเบฐเป„เบ”เป‰เบฎเบฑเบšเบฎเบนเบšเบžเบฒเบšเบ—เบตเปˆเบชเบญเบ”เบ„เปˆเบญเบ‡. เบกเบฑเบ™เบ–เบทเบเบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™เปƒเบ™เบฎเบนเบšเปเบšเบšเบ‚เบญเบ‡ hardlinks เปเบฅเบฐเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบˆเบดเปˆเบ‡เบšเปเปˆเป„เบ”เป‰เปƒเบŠเป‰เบžเบทเป‰เบ™เบ—เบตเปˆเป€เบžเบตเปˆเบกเป€เบ•เบตเบก. เบ•เปเปˆเป„เบ›, เบ—เปˆเบฒเบ™เบ„เบฑเบ”เบฅเบญเบเบฎเบนเบšเบ–เปˆเบฒเบเบ™เบตเป‰เปƒเบชเปˆเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบซเบผเบทเบšเปˆเบญเบ™เป€เบเบฑเบšเบกเป‰เบฝเบ™เบ—เบตเปˆเบ—เปˆเบฒเบ™เปƒเบŠเป‰เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™.

เบเบฒเบ™เบŸเบทเป‰เบ™เบŸเบนเบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเปเบกเปˆเบ™เบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡เบ‡เปˆเบฒเบ. เบ—เปเบฒเบญเบดเบ”, เบชเป‰เบฒเบ‡เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เป‚เบ”เบเปƒเบŠเป‰เบ„เปเบฒเบ™เบดเบเบฒเบกเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ—เบตเปˆเบกเบตเบขเบนเปˆเปเบฅเป‰เบง. เบ•เปเปˆเป„เบ›, เบ„เบฑเบ”เบฅเบญเบเบฎเบนเบšเบ–เปˆเบฒเบเบ—เบตเปˆเบšเบฑเบ™เบ—เบถเบเป„เบงเป‰เบ‚เบญเบ‡เบžเบฒเบ—เบดเบŠเบฑเบ™เป„เบ›เบซเบฒ Directory-Detached เบชเปเบฒเบฅเบฑเบšเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบฅเบฐเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบชเบญเบšเบ–เบฒเบก. เบ„เบฑเบ”เบ•เบดเบ”เบžเบฒเบ—เบดเบŠเบฑเบ™. เบเบฒเบ™เปเบเป‰เป„เบ‚เบ™เบตเป‰เปเบกเปˆเบ™เบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡เป€เบซเบกเบฒเบฐเบชเบปเบกเบชเปเบฒเบฅเบฑเบšเบ›เบฐเบฅเบดเบกเบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบฎเป‰เบฒเบเปเบฎเบ‡เบ—เบตเปˆเบชเบธเบ”.

เบšเบฒเบ‡เบ„เบฑเป‰เบ‡เบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™เบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡เบ—เบตเปˆเป€เบขเบฑเบ™เบเบงเปˆเบฒ - เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ—เบตเปˆเบ—เปˆเบฒเบ™เบกเบตเบซเบผเบฒเบเบชเบดเบšเบซเบผเบทเบซเบผเบฒเบเบฎเป‰เบญเบ terabytes เปƒเบ™เปเบ•เปˆเบฅเบฐเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเปเบฅเบฐเบซเบผเบฒเบเบฎเป‰เบญเบเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ. เบกเบตเบเบฒเบ™เปเบเป‰เป„เบ‚เบขเบนเปˆเบ—เบตเปˆเบ™เบตเป‰เบ—เบตเปˆเบ‚เป‰เบญเบเป„เบ”เป‰เป€เบญเบปเบฒเบกเบฒเบˆเบฒเบเป€เบžเบทเปˆเบญเบ™เบฎเปˆเบงเบกเบ‡เบฒเบ™เบ‚เบญเบ‡เบ‚เป‰เบญเบเบˆเบฒเบ Yandex.Metrica. เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบˆเบฐเบšเปเปˆเปเบ™เบฐเบ™เปเบฒเปƒเบซเป‰เบ—เบธเบเบ„เบปเบ™ - เบญเปˆเบฒเบ™เบกเบฑเบ™เปเบฅเบฐเบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบ”เป‰เบงเบเบ•เบปเบ™เป€เบญเบ‡เบงเปˆเบฒเบกเบฑเบ™เป€เบซเบกเบฒเบฐเบชเบปเบกเบซเบผเบทเบšเปเปˆ.

เบ—เปเบฒเบญเบดเบ”เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบชเป‰เบฒเบ‡เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบˆเปเบฒเบ™เบงเบ™เบซเบ™เบถเปˆเบ‡เบ—เบตเปˆเบกเบตเบŠเบฑเป‰เบ™เบงเบฒเบ‡เปเบœเปˆเบ™เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆ. เบ•เปเปˆเป„เบ›, เปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰, เบเบปเบเบชเบนเบ‡เบซเบผเบฒเบเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ ClickHouse เปเบฅเบฐ configure เปƒเบซเป‰เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเป€เบžเบทเปˆเบญเปƒเบซเป‰เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเป€เบฎเบฑเบ”เบงเบฝเบเป€เบ›เบฑเบ™ replica เบญเบทเปˆเบ™เบชเปเบฒเบฅเบฑเบš shards เบ”เบฝเบงเบเบฑเบ™. เปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบ™เปเบฒเปƒเบŠเป‰เบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒเบซเบผเบทเป€เบ„เบทเปˆเบญเบ‡เบกเบทเบšเบฒเบ‡เบขเปˆเบฒเบ‡เปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบ—เบตเปˆเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเป‰เบฒเบ‡เบžเบฒเบšเบ–เปˆเบฒเบ. เบกเบตเบชเบญเบ‡เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ—เบตเปˆเบ™เบตเป‰. เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ—เปเบฒเบญเบดเบ”เปเบกเปˆเบ™ LVM snapshots, เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ—เบตเบชเบญเบ‡เปเบกเปˆเบ™ ZFS เปƒเบ™ Linux.

เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบ—เบธเบเป†เบกเบทเป‰เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบชเป‰เบฒเบ‡เบžเบฒเบšเบ–เปˆเบฒเบ, เบกเบฑเบ™เบˆเบฐเบ™เบญเบ™เปเบฅเบฐเปƒเบŠเป‰เป€เบงเบฅเบฒเบšเบฒเบ‡เบžเบทเป‰เบ™เบ—เบตเปˆ. เบ•เบฒเบกเบ—เปเบฒเบกเบฐเบŠเบฒเบ”, เบ–เป‰เบฒเบ‚เปเป‰เบกเบนเบ™เบกเบตเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡, เบˆเปเบฒเบ™เบงเบ™เบžเบทเป‰เบ™เบ—เบตเปˆเบˆเบฐเป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™เบ•เบฒเบกเป€เบงเบฅเบฒ. เบžเบฒเบšเบ–เปˆเบฒเบเบ™เบตเป‰เบชเบฒเบกเบฒเบ”เบ–เบทเบเป€เบญเบปเบฒเบญเบญเบเป„เบ”เป‰เบ—เบธเบเป€เบงเบฅเบฒเปเบฅเบฐเบ‚เปเป‰เบกเบนเบ™เบ–เบทเบเบŸเบทเป‰เบ™เบŸเบน, เบเบฒเบ™เปเบเป‰เป„เบ‚เบ—เบตเปˆเปเบ›เบเบ›เบฐเบซเบผเบฒเบ”เบ”เบฑเปˆเบ‡เบเปˆเบฒเบง. เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, เบžเบงเบเป€เบฎเบปเบฒเบเบฑเบ‡เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบˆเปเบฒเบเบฑเบ”เบเบฒเบ™เบˆเปเบฒเบฅเบญเบ‡เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบขเบนเปˆเปƒเบ™ config เป€เบžเบทเปˆเบญเบšเปเปˆเปƒเบซเป‰เบžเบงเบเป€เบ‚เบปเบฒเบžเบฐเบเบฒเบเบฒเบกเบเบฒเบเป€เบ›เบฑเบ™เบœเบนเป‰เบ™เปเบฒ.

เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเบˆเบฑเบ”เบฅเบฐเบšเบฝเบš lag เบ‚เบญเบ‡ replicas เบ„เบงเบšเบ„เบธเบกเปƒเบ™ shafts เป„เบ”เป‰?

เบ›เบตเบ™เบตเป‰เบ—เปˆเบฒเบ™เบเปเบฒเบฅเบฑเบ‡เบงเบฒเบ‡เปเบœเบ™เบ—เบตเปˆเบˆเบฐเป€เบฎเบฑเบ”เปƒเบซเป‰ shafts เปƒเบ™ ClickHouse. เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเบˆเบฑเบ”เบฅเบฐเบšเบฝเบšเปเบšเบšเบˆเปเบฒเบฅเบญเบ‡เบ—เบตเปˆเบ„เบงเบšเบ„เบธเบกเบขเบนเปˆเปƒเบ™เบžเบงเบเบกเบฑเบ™เบšเป? เบžเบงเบเป€เบฎเบปเบฒเบขเบฒเบเปƒเบŠเป‰เบกเบฑเบ™เป€เบžเบทเปˆเบญเบ›เบปเบเบ›เป‰เบญเบ‡เบ•เบปเบงเป€เบฎเบปเบฒเป€เบญเบ‡เบˆเบฒเบเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ—เบฒเบ‡เบฅเบปเบšเบเบฑเบšเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เปเบฅเบฐเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบญเบทเปˆเบ™เป†.

เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเป€เบฎเบฑเบ”เบšเบฒเบ‡เบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เบเบฒเบ™เบเบฑเบšเบ„เบทเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡? เบ•เบปเบงเบขเปˆเบฒเบ‡, เปƒเบ™ shaft เบ—เบตเปˆเบกเบตเบขเบนเปˆเปเบฅเป‰เบง, เป€เบญเบปเบฒเปเบฅเบฐเป€เบงเบปเป‰เบฒเบงเปˆเบฒเบˆเบปเบ™เบเปˆเบงเบฒเบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบ™เบตเป‰เบ—เปˆเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡, เปเบฅเบฐเบˆเบฒเบเบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบ™เบตเป‰เบ—เปˆเบฒเบ™เบขเบธเบ”เป€เบŠเบปเบฒเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡?

เบ–เป‰เบฒเบ„เปเบฒเบชเบฑเปˆเบ‡เป€เบ‚เบปเป‰เบฒเบกเบฒเปƒเบ™เบเบธเปˆเบกเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเปเบฅเบฐเบ—เปเบฒเบฅเบฒเบเบกเบฑเบ™, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบเบฒเบ™เบˆเปเบฒเบฅเบญเบ‡เปเบšเบšเบกเบตเป€เบ‡เบทเปˆเบญเบ™เป„เบ‚เบ—เบตเปˆเบกเบตเบเบฒเบ™เบŠเบฑเบเบŠเป‰เบฒเบŠเบปเปˆเบงเป‚เบกเบ‡, เบšเปˆเบญเบ™เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เป€เบงเบปเป‰เบฒเบงเปˆเบฒเปƒเบซเป‰เบžเบงเบเป€เบฎเบปเบฒเปƒเบŠเป‰เบกเบฑเบ™เปƒเบ™เป€เบงเบฅเบฒเบ™เบตเป‰, เปเบ•เปˆเบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบšเปเปˆเบ™เปเบฒเปƒเบŠเป‰เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เปƒเบ™เบชเบดเบšเบ™เบฒเบ—เบตเบชเบธเบ”เบ—เป‰เบฒเบเบšเป?

เบซเบ™เป‰เบฒเบ—เปเบฒเบญเบดเบ”, เบเปˆเบฝเบงเบเบฑเบš lag เบ„เบงเบšเบ„เบธเบกเบ‚เบญเบ‡ replicas. เบกเบตเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบˆเบฒเบเบœเบนเป‰เปƒเบŠเป‰, เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบชเป‰เบฒเบ‡เบšเบฑเบ™เบซเบฒเบเปˆเบฝเบงเบเบฑเบš Github เบเบฑเบšเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เป: "เบ–เป‰เบฒเปƒเบœเบœเบนเป‰เบซเบ™เบถเปˆเบ‡เบ•เป‰เบญเบ‡เบเบฒเบ™เบชเบดเปˆเบ‡เบ™เบตเป‰, เบ„เบทเบเบฑเบšเบกเบฑเบ™, เปƒเบชเปˆเปƒเบˆ." เบšเปเปˆเบกเบตเปƒเบœเบชเบปเปˆเบ‡, เปเบฅเบฐเบšเบฑเบ™เบซเบฒเป„เบ”เป‰เบ–เบทเบเบ›เบดเบ”. เบขเปˆเบฒเบ‡เปƒเบ”เบเปเบ•เบฒเบก, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป„เบ”เป‰เบฎเบฑเบšเป‚เบญเบเบฒเบ”เบ™เบตเป‰เป‚เบ”เบเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ ClickHouse. เปเบ—เป‰เบˆเบดเบ‡เปเบฅเป‰เบง, เบžเบฝเบ‡เปเบ•เปˆเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบˆเบฒเบเบชเบฐเบšเบฑเบš 20.3.

ClickHouse เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบฅเบงเบกเบ‚เปเป‰เบกเบนเบ™เบขเบนเปˆเปƒเบ™เบžเบทเป‰เบ™เบซเบฅเบฑเบ‡เบขเปˆเบฒเบ‡เบ•เปเปˆเป€เบ™เบทเปˆเบญเบ‡. เป€เบกเบทเปˆเบญเบเบฒเบ™เบฅเบงเบกเป€เบ‚เบปเป‰เบฒเบเบฑเบ™เปเบฅเป‰เบง, เบŠเบธเบ”เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเปเบ™เปˆเบ™เบญเบ™เบˆเบฐเบ–เบทเบเปเบ—เบ™เบ—เบตเปˆเบ”เป‰เบงเบเบŠเบดเป‰เบ™เบชเปˆเบงเบ™เปƒเบซเบเปˆเบเบงเปˆเบฒ. เปƒเบ™เบ‚เบฐเบ™เบฐเบ”เบฝเบงเบเบฑเบ™, เบŠเบดเป‰เบ™เบชเปˆเบงเบ™เบ‚เบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™เบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเบชเบทเบšเบ•เปเปˆเบขเบนเปˆเปƒเบ™เปเบœเปˆเบ™เบชเปเบฒเบฅเบฑเบšเบšเบฒเบ‡เป€เบงเบฅเบฒ.

เบซเบ™เป‰เบฒเบ—เปเบฒเบญเบดเบ”, เบžเบงเบเป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเบชเบทเบšเบ•เปเปˆเบ–เบทเบเป€เบเบฑเบšเบฎเบฑเบเบชเบฒเป„เบงเป‰เบ•เบฒเบšเปƒเบ”เบ—เบตเปˆเบกเบตเบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบ—เบตเปˆเป€เบฅเบทเบญเบเบ—เบตเปˆเปƒเบŠเป‰เบžเบงเบเบกเบฑเบ™, เป€เบžเบทเปˆเบญเบชเบฐเบซเบ™เบญเบ‡เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‡เบฒเบ™เบ—เบตเปˆเบšเปเปˆเปเบกเปˆเบ™เบเบฒเบ™เบ‚เบฑเบ”เบ‚เบงเบฒเบ‡. เป€เบฅเบทเบญเบเปเบšเบšเบชเบญเบšเบ–เบฒเบกเปเบกเปˆเบ™เบญเปˆเบฒเบ™เป„เบ”เป‰เบ‡เปˆเบฒเบเบˆเบฒเบเบšเบปเบ”เป€เบเบปเปˆเบฒ.

เบญเบฑเบ™เบ—เบตเบชเบญเบ‡, เบเบฑเบ‡เบกเบตเบ‚เบญเบšเป€เบ‚เบ”เป€เบงเบฅเบฒ - เบ‚เปเป‰เบกเบนเบ™เป€เบเบปเปˆเบฒเป†เบ™เบญเบ™เบขเบนเปˆเปƒเบ™เปเบœเปˆเบ™เบชเปเบฒเบฅเบฑเบšเปเบ›เบ”เบ™เบฒเบ—เบต. เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบ›เบ”เบ™เบฒเบ—เบตเบชเบฒเบกเบฒเบ”เบ–เบทเบเบ›เบฑเบšเปเบ•เปˆเบ‡เปเบฅเบฐเปเบกเป‰เบเบฐเบ—เบฑเป‰เบ‡เบเบฒเบเป€เบ›เบฑเบ™เบกเบทเป‰เบซเบ™เบถเปˆเบ‡. เบ™เบตเป‰เบˆเบฐเบกเบตเบกเบนเบ™เบ„เปˆเบฒเบžเบทเป‰เบ™เบ—เบตเปˆเบ”เบดเบ”: เบญเบตเบ‡เบ•เบฒเบกเบเบฒเบ™เป„เบซเบผเป€เบ‚เบปเป‰เบฒเบ‚เบญเบ‡เบ‚เปเป‰เบกเบนเบ™, เบกเบฑเบ™เบ›เบฒเบเบปเบ”เบงเปˆเบฒเปƒเบ™เบกเบทเป‰เบชเบธเบ”เบ—เป‰เบฒเบเบ‚เปเป‰เบกเบนเบ™เบšเปเปˆเบžเบฝเบ‡เปเบ•เปˆเบชเบญเบ‡เป€เบ—เบปเปˆเบฒ, เบกเบฑเบ™เบชเบฒเบกเบฒเบ”เบเบฒเบเป€เบ›เบฑเบ™เบซเป‰เบฒเป€เบ—เบปเปˆเบฒ. เปเบ•เปˆเบ–เป‰เบฒเบกเบตเบšเบฑเบ™เบซเบฒเบฎเป‰เบฒเบเปเบฎเบ‡, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบขเบธเบ”เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ ClickHouse เปเบฅเบฐเบˆเบฑเบ”เบฎเบฝเบ‡เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เบญเบญเบ.

เบ”เบฝเบงเบ™เบตเป‰ เบ„เบณ เบ–เบฒเบกเบ—เบตเปˆเป€เบเบตเบ”เบ‚เบทเป‰เบ™เบเปˆเบฝเบงเบเบฑเบšเบงเบดเบ—เบตเบ™เบตเป‰เบ›เป‰เบญเบ‡เบเบฑเบ™เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡. เบกเบฑเบ™เป€เบ›เบฑเบ™เบกเบนเบ™เบ„เปˆเบฒเบ—เบตเปˆเบˆเบฐเป€เบšเบดเปˆเบ‡เป€เบฅเบดเบเบ—เบตเปˆเบ™เบตเป‰, เป€เบžเบฒเบฐเบงเปˆเบฒเปƒเบ™ ClickHouse เบฎเบธเปˆเบ™เป€เบเบปเปˆเบฒ, เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เป„เบ”เป‰เป€เบฎเบฑเบ”เบงเบฝเบเปƒเบ™เบฅเบฑเบเบชเบฐเบ™เบฐเบ—เบตเปˆเบกเบฑเบ™เบžเบฝเบ‡เปเบ•เปˆเบ›เปˆเบฝเบ™เบŠเบดเป‰เบ™เบชเปˆเบงเบ™เป‚เบ”เบเบเบปเบ‡. เบกเบตเบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบกเบตเบšเบฒเบ‡เป„เบŸเบฅเปŒ, เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เป€เบŠเบฑเปˆเบ™: เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ–เบฑเบ™เบซเบผเบธเบ”เบฅเบปเบ‡. เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบ–เบฑเบ™เบ™เบตเป‰เบ–เบทเบเป‚เบเบเบเป‰เบฒเบเบญเบญเบเบˆเบฒเบเบ—เบธเบ chunks.

เปเบ•เปˆเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เป‰เบงเบเบฎเบธเปˆเบ™ 20.3, เบเบปเบ™เป„เบเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เป„เบ”เป‰เบ–เบทเบเบ›เปˆเบฝเบ™เปเบ›เบ‡เบขเปˆเบฒเบ‡เบชเบปเบกเบšเบนเบ™, เปเบฅเบฐเปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบ‚เปเป‰เบกเบนเบ™เปเบกเปˆเบ™เบšเปเปˆเบชเบฒเบกเบฒเบ”เบ›เปˆเบฝเบ™เปเบ›เบ‡เป„เบ”เป‰เบชเบฐเป€เบซเบกเบต. เบžเบงเบเบกเบฑเบ™เบšเปเปˆเบ›เปˆเบฝเบ™เปเบ›เบ‡เป€เบฅเบตเบ - เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เป€เบฎเบฑเบ”เบงเบฝเบเปƒเบ™เบฅเบฑเบเบชเบฐเบ™เบฐเบ”เบฝเบงเบเบฑเบ™เบเบฑเบšเบเบฒเบ™เบฅเบงเบกเบ•เบปเบง. เปเบ—เบ™เบ—เบตเปˆเบˆเบฐเบ›เปˆเบฝเบ™เบŠเบดเป‰เบ™เบชเปˆเบงเบ™เบขเบนเปˆเปƒเบ™เบˆเบธเบ”, เบžเบงเบเป€เบฎเบปเบฒเบชเป‰เบฒเบ‡เบญเบฑเบ™เปƒเบซเบกเปˆ. เปƒเบ™ chunk เปƒเบซเบกเปˆ, เป„เบŸเบฅเปŒเบ—เบตเปˆเบšเปเปˆเป„เบ”เป‰เบ›เปˆเบฝเบ™เปเบ›เบ‡เบเบฒเบเป€เบ›เบฑเบ™ hardlinks, เปเบฅเบฐเบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเบฅเบถเบšเบ„เปเบฅเปเบฒเบซเบ™เบถเปˆเบ‡, เบกเบฑเบ™เบžเบฝเบ‡เปเบ•เปˆเบˆเบฐเบซเบฒเบเป„เบ›เปƒเบ™ chunk เปƒเบซเบกเปˆ. เบŠเบดเป‰เบ™เบชเปˆเบงเบ™เป€เบเบปเปˆเบฒเบˆเบฐเบ–เบทเบเบฅเบถเบšเบ–เบดเป‰เบกเป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบซเบผเบฑเบ‡เบˆเบฒเบเปเบ›เบ”เบ™เบฒเบ—เบต, เปเบฅเบฐเปƒเบ™เบ—เบตเปˆเบ™เบตเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ›เบฑเบšเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ—เบตเปˆเป„เบ”เป‰เบเปˆเบฒเบงเบกเบฒเบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡.

เบ”เบฝเบงเบเบฑเบ™เปƒเบŠเป‰เบเบฑเบšเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เป€เบŠเบฑเปˆเบ™เบเบฒเบ™เบเบฒเบเบžเบฑเบ™. เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบ—เปˆเบฒเบ™เป€เบฎเบฑเบ” เบ›เปˆเบฝเบ™โ€‹เปเบ›เบ‡โ€‹เบฅเบปเบšโ€‹ เบซเบผเบท เบ›เบฑเบšโ€‹เบ›เบธเบ‡โ€‹เปเบเป‰โ€‹เป„เบ‚โ€‹, เบกเบฑเบ™เบšเปเปˆเป„เบ”เป‰เบ›เปˆเบฝเบ™เปเบ›เบ‡เบชเบดเป‰เบ™, เปเบ•เปˆเบชเป‰เบฒเบ‡เปƒเบซเบกเปˆ. เปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบฅเบถเบšเบญเบฑเบ™เป€เบเบปเปˆเบฒ.

เบˆเบฐเป€เบ›เบฑเบ™เปเบ™เบงเปƒเบ”เบ–เป‰เบฒเป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบกเบตเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡?

เบงเบดเบ—เบตเบเบฒเบ™เบŸเบทเป‰เบ™เบŸเบนเบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเป„เบ”เป‰เป€เบฎเบฑเบ”เบเบฑเบšเป‚เบ„เบ‡เบเบฒเบ™เป€เบเบปเปˆเบฒ? เปเบฅเบฐเบ„เปเบฒเบ–เบฒเบกเบ—เบตเบชเบญเบ‡เปเบกเปˆเบ™เบเปˆเบฝเบงเบเบฑเบšเบเปเบฅเบฐเบ™เบตเบ—เบตเปˆเบกเบตเบฎเบนเบšเบ–เปˆเบฒเบเปเบฅเบฐเป€เบ„เบทเปˆเบญเบ‡เบกเบทเบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒ. Btrfs เบ”เบตเบขเบนเปˆเบ—เบตเปˆเบ™เบตเป‰เปเบ—เบ™ ZFS เปƒเบ™ Linux LVM เบšเป?

เบ–เป‰เบฒเป€เบˆเบปเป‰เบฒเป€เบฎเบฑเบ” เบ„เบฑเบ”เบ•เบดเบ”เบžเบฒเบ—เบดเบŠเบฑเบ™ partitions เบ—เบตเปˆเบกเบตเป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™ ClickHouse เบˆเบฐเบšเบญเบเบ—เปˆเบฒเบ™เบงเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เป€เบ›เบฑเบ™เป„เบ›เบšเปเปˆเป„เบ”เป‰. เบ™เบตเป‰เปเบกเปˆเบ™เบเบฒเบ™เปเบเป‰เป„เบ‚. เบ—เปเบฒเบญเบดเบ”เปเบกเปˆเบ™เบเบฒเบ™เบชเป‰เบฒเบ‡เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบŠเบปเปˆเบงเบ„เบฒเบงเบ‚เบญเบ‡เบ›เบฐเป€เบžเบ” MergeTree เบเบฑเบšเป‚เบ„เบ‡เบชเป‰เบฒเบ‡เป€เบเบปเปˆเบฒ, เบ„เบฑเบ”เบ•เบดเบ”เบ‚เปเป‰เบกเบนเบ™เบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™เป‚เบ”เบเปƒเบŠเป‰เป„เบŸเบฅเปŒเปเบ™เบš, เปเบฅเบฐเป€เบฎเบฑเบ”เบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡. เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ„เบฑเบ”เบฅเบญเบเบซเบผเบทเป‚เบญเบ™เบ‚เปเป‰เบกเบนเบ™เบ™เบตเป‰เปเบฅเบฐเบ„เบฑเบ”เบ•เบดเบ”เบญเบตเบเป€เบ—เบทเปˆเบญเบซเบ™เบถเปˆเบ‡, เบซเบผเบทเปƒเบŠเป‰เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เป เบเบฒเบ™โ€‹เบ›เปˆเบฝเบ™โ€‹เปเบ›เบ‡โ€‹เบžเบฒโ€‹เบ—เบดโ€‹เบŠเบฑเบ™โ€‹เบเป‰เบฒเบโ€‹เบ•เบฒโ€‹เบ•เบฐโ€‹เบฅเบฒเบ‡โ€‹.

เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบ„เปเบฒเบ–เบฒเบกเบ—เบตเบชเบญเบ‡เปเบกเปˆเบ™เบงเปˆเบฒ Btrfs เบชเบฒเบกเบฒเบ”เบ™เปเบฒเปƒเบŠเป‰เป„เบ”เป‰เบšเป. เป€เบžเบทเปˆเบญเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เป‰เบงเบ, เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบกเบต LVM, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบเบฒเบ™เบ–เปˆเบฒเบเบฎเบนเบš LVM เปเบกเปˆเบ™เบžเบฝเบ‡เบžเป, เปเบฅเบฐเบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒเบชเบฒเบกเบฒเบ”เป€เบ›เบฑเบ™ ext4, เบกเบฑเบ™เบšเปเปˆเบชเปเบฒเบ„เบฑเบ™. เบ”เป‰เบงเบ Btrts, เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เปเบกเปˆเบ™เบ‚เบถเป‰เบ™เบเบฑเบšเบ›เบฐเบชเบปเบšเบเบฒเบ™เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เปƒเบ™เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบกเบฑเบ™. เบ™เบตเป‰เปเบกเปˆเบ™เบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒเบ—เบตเปˆเปƒเบซเบเปˆเปเบฅเป‰เบง, เปเบ•เปˆเบเบฑเบ‡เบกเบตเบ„เบงเบฒเบกเบชเบปเบ‡เป„เบชเบšเบฒเบ‡เบขเปˆเบฒเบ‡เบเปˆเบฝเบงเบเบฑเบšเบงเบดเบ—เบตเบ—เบตเปˆเบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เบˆเบฐเป€เบฎเบฑเบ”เบงเบฝเบเบขเบนเปˆเปƒเบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เปƒเบ™เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบชเบฐเป€เบžเบฒเบฐเปƒเบ”เบซเบ™เบถเปˆเบ‡. เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบˆเบฐเบšเปเปˆเปเบ™เบฐเบ™เปเบฒเปƒเบซเป‰เปƒเบŠเป‰เบ™เบตเป‰เป€เบงเบฑเป‰เบ™เป€เบชเบเปเบ•เปˆเบงเปˆเบฒเบ—เปˆเบฒเบ™เบกเบต Btrfs เปƒเบ™เบเบฒเบ™เบœเบฐเบฅเบดเบ”.

เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ”เปƒเบ™เบเบฒเบ™เบชเบปเปˆเบ‡เบ•เปเปˆเบ‚เปเป‰เบกเบนเบ™เปƒเบ™เบ›เบฐเบˆเบธเบšเบฑเบ™เปเบกเปˆเบ™เบซเบเบฑเบ‡?

เบšเบฑเบ™เบซเบฒเบ‚เบญเบ‡เบเบฒเบ™ resharding เปเบกเปˆเบ™เบชเบฐเบฅเบฑเบšเบชเบฑเบšเบŠเป‰เบญเบ™เปเบฅเบฐ multifaceted. เบกเบตเบซเบผเบฒเบเบ„เปเบฒเบ•เบญเบšเบ—เบตเปˆเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบขเบนเปˆเบ—เบตเปˆเบ™เบตเป‰. เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป„เบ›เบˆเบฒเบเบ‚เป‰เบฒเบ‡เบซเบ™เบถเปˆเบ‡เปเบฅเบฐเป€เบงเบปเป‰เบฒเบงเปˆเบฒเบ™เบตเป‰ - ClickHouse เบšเปเปˆเบกเบตเบ„เบธเบ™เบชเบปเบกเบšเบฑเบ” resharding เบเปเปˆเบชเป‰เบฒเบ‡เปƒเบ™. เปเบ•เปˆเบ‚เป‰เบญเบเบขเป‰เบฒเบ™เบงเปˆเบฒเบ„เปเบฒเบ•เบญเบšเบ™เบตเป‰เบˆเบฐเบšเปเปˆเป€เบซเบกเบฒเบฐเบชเบปเบกเบเบฑเบšเปƒเบœ. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป„เบ›เบˆเบฒเบเบญเบตเบเบ”เป‰เบฒเบ™เบซเบ™เบถเปˆเบ‡เปเบฅเบฐเป€เบงเบปเป‰เบฒเบงเปˆเบฒ ClickHouse เบกเบตเบซเบผเบฒเบเบงเบดเบ—เบตเบ—เบตเปˆเบˆเบฐ reshard เบ‚เปเป‰เบกเบนเบ™.

เบ–เป‰เบฒเบเบธเปˆเบกเบ™เบฑเป‰เบ™เปเบปเบ”เบžเบทเป‰เบ™เบ—เบตเปˆ เบซเบผเบทเบกเบฑเบ™เบšเปเปˆเบชเบฒเบกเบฒเบ”เบฎเบฑเบšเบกเบทเบเบฑเบšเบเบฒเบ™เป‚เบซเบผเบ”เป„เบ”เป‰, เป€เบˆเบปเป‰เบฒเบˆเบฐเป€เบžเบตเปˆเบกเป€เบŠเบตเบšเป€เบงเบตเปƒเปเปˆ. เปเบ•เปˆเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒเป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, เบšเปเปˆเบกเบตเบ‚เปเป‰เบกเบนเบ™เบขเบนเปˆเปƒเบ™เบžเบงเบเบกเบฑเบ™, เบšเปเปˆเบกเบตเบเบฒเบ™เป‚เบซเบผเบ”. เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบˆเบฑเบ”เบฅเบฝเบ‡เบ‚เปเป‰เบกเบนเบ™เปƒเบซเบกเปˆเป€เบžเบทเปˆเบญเปƒเบซเป‰เบกเบฑเบ™เปเบœเปˆเบฅเบฒเบกเป„เบ›เบ—เบปเปˆเบงเบเบธเปˆเบกเปƒเบซเบกเปˆ, เปƒเบซเบเปˆเบเบงเปˆเบฒ.

เบงเบดเบ—เบตเบ—เปเบฒเบญเบดเบ”เบ™เบตเป‰เบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เป„เบ”เป‰เบ„เบทเบเบฒเบ™เบ„เบฑเบ”เบฅเบญเบเบชเปˆเบงเบ™เบ‚เบญเบ‡เบžเบฒเบ—เบดเบŠเบฑเบ™เป„เบ›เบซเบฒเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเปƒเบซเบกเปˆเป‚เบ”เบเปƒเบŠเป‰เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เป เบ›เปˆเบฝเบ™เปเบ›เบ‡เบเบฒเบ™เปเบšเปˆเบ‡เบ›เบฑเบ™เบเบฒเบ™เบ”เบถเบ‡เบ‚เปเป‰เบกเบนเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡. เบ•เบปเบงเบขเปˆเบฒเบ‡, เบ—เปˆเบฒเบ™เบกเบตเบเบฒเบ™เปเบšเปˆเบ‡เบ›เบฑเบ™เป‚เบ”เบเป€เบ”เบทเบญเบ™, เปเบฅเบฐเบ—เปˆเบฒเบ™เปƒเบŠเป‰เป€เบงเบฅเบฒเป€เบ”เบทเบญเบ™เบ—เปเบฒเบญเบดเบ”เบ‚เบญเบ‡เบ›เบต 2017 เปเบฅเบฐเบ„เบฑเบ”เบฅเบญเบเบกเบฑเบ™เป„เบ›เบซเบฒเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเปƒเบซเบกเปˆ, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบ„เบฑเบ”เบฅเบญเบเป€เบ”เบทเบญเบ™เบ—เบตเบชเบฒเบกเป„เบ›เบซเบฒเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเปƒเบซเบกเปˆเบญเบทเปˆเบ™เป†. เปเบฅเบฐเบ—เปˆเบฒเบ™เป€เบฎเบฑเบ”เบชเบดเปˆเบ‡เบ™เบตเป‰เบˆเบปเบ™เบเปˆเบงเบฒเบกเบฑเบ™เบˆเบฐเบเบฒเบเป€เบ›เบฑเบ™เบซเบผเบฒเบเบซเบผเบทเบซเบ™เป‰เบญเบเป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒ.

เบเบฒเบ™เป‚เบญเบ™เบเป‰เบฒเบเบชเบฒเบกเบฒเบ”เบ›เบฐเบ•เบดเบšเบฑเบ”เป„เบ”เป‰เบžเบฝเบ‡เปเบ•เปˆเบชเปเบฒเบฅเบฑเบšเบชเปˆเบงเบ™เบ—เบตเปˆเบšเปเปˆเป„เบ”เป‰เบ›เปˆเบฝเบ™เปเบ›เบ‡เปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เบšเบฑเบ™เบ—เบถเบ. เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เปเบšเปˆเบ‡เบชเปˆเบงเบ™เบชเบปเบ”, เบเบฒเบ™เบšเบฑเบ™เบ—เบถเบเบˆเบฐเบ•เป‰เบญเบ‡เบ–เบทเบเบ›เบดเบ”เบเบฒเบ™เปƒเบŠเป‰เบ‡เบฒเบ™, เป€เบžเบฒเบฐเบงเปˆเบฒเบเบฒเบ™เป‚เบญเบ™เบ‚เบญเบ‡เบžเบงเบเบกเบฑเบ™เบšเปเปˆเปเบกเปˆเบ™เบ›เบฐเบฅเปเบฒเบกเบฐเบ™เบน. เบ–เป‰เบฒเบšเปเปˆเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบ—เปˆเบฒเบ™เบˆเบฐเบชเบดเป‰เบ™เบชเบธเบ”เบ”เป‰เบงเบเบเบฒเบ™เบŠเปเป‰เบฒเบเบฑเบ™เบซเบผเบทเบŠเปˆเบญเบ‡เบซเบงเปˆเบฒเบ‡เปƒเบ™เบ‚เปเป‰เบกเบนเบ™. เบขเปˆเบฒเบ‡เปƒเบ”เบเปเบ•เบฒเบก, เบงเบดเบ—เบตเบเบฒเบ™เบ™เบตเป‰เปเบกเปˆเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เป„เบ”เป‰เปเบฅเบฐเป€เบฎเบฑเบ”เบงเบฝเบเบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡เบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบš. เบžเบฒเบ—เบดเบŠเบฑเบ™เบ—เบตเปˆเบ–เบทเบเบšเบตเบšเบญเบฑเบ”เบ—เบตเปˆเป€เบฎเบฑเบ”เปเบฅเป‰เบงเบˆเบฐเบ–เบทเบเบชเบปเปˆเบ‡เบœเปˆเบฒเบ™เป€เบ„เบทเบญเบ‚เปˆเบฒเบ, เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, เบ‚เปเป‰เบกเบนเบ™เบšเปเปˆเป„เบ”เป‰เบ–เบทเบเบšเบตเบšเบญเบฑเบ”เบซเบผเบทเบ–เบทเบเป€เบ‚เบปเป‰เบฒเบฅเบฐเบซเบฑเบ”เบ„เบทเบ™เปƒเบซเบกเปˆ.

เบงเบดเบ—เบตเบเบฒเบ™เบ™เบตเป‰เบกเบตเบˆเบธเบ”เบญเปˆเบญเบ™เบซเบ™เบถเปˆเบ‡, เปเบฅเบฐเบกเบฑเบ™เบ‚เบถเป‰เบ™เบเบฑเบšเป‚เบ„เบ‡เบเบฒเบ™ sharding, เบšเปเปˆเบงเปˆเบฒเบ—เปˆเบฒเบ™เบˆเบฐเบชเบฑเบ™เบเบฒเบเบฑเบšเป‚เบ„เบ‡เบเบฒเบ™ sharding เบ™เบตเป‰, เบชเบดเปˆเบ‡เบ—เบตเปˆเบ—เปˆเบฒเบ™เบกเบต sharding key. เปƒเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เบชเปเบฒเบฅเบฑเบšเบเปเบฅเบฐเบ™เบตเบ—เบตเปˆเบกเบต metrics, sharding key เปเบกเปˆเบ™ hash เบ‚เบญเบ‡เป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡. เป€เบกเบทเปˆเบญเบ—เปˆเบฒเบ™เป€เบฅเบทเบญเบเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เปเบˆเบเบขเบฒเบ, เบกเบฑเบ™เบˆเบฐเป„เบ›เบซเบฒ shards เบ—เบฑเบ‡เบซเบกเบปเบ”เปƒเบ™ cluster เปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™เปเบฅเบฐเป€เบญเบปเบฒเบ‚เปเป‰เบกเบนเบ™เบˆเบฒเบเบšเปˆเบญเบ™เบ™เบฑเป‰เบ™.

เบ™เบตเป‰ เปเบฒเบ เบ„เบงเบฒเบกเบงเปˆเบฒเบ•เบปเบงเบˆเบดเบ‡เปเบฅเป‰เบงเบกเบฑเบ™เบšเปเปˆ เบชเบณ เบ„เบฑเบ™เบเบฑเบšเป€เบˆเบปเป‰เบฒเบงเปˆเบฒเบ‚เปเป‰เบกเบนเบ™เปƒเบ”เบชเบดเป‰เบ™เบชเบธเบ”เบฅเบปเบ‡เบขเบนเปˆเปƒเบ™เปเบœเปˆเบ™เปƒเบ”. เบชเบดเปˆเบ‡เบ—เบตเปˆ เบชเบณ เบ„เบฑเบ™เปเบกเปˆเบ™เบงเปˆเบฒเบ‚เปเป‰เบกเบนเบ™เบ•เบฒเบกเป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡ เปœเบถเปˆเบ‡ เบชเบดเป‰เบ™เบชเบธเบ”เบฅเบปเบ‡เบขเบนเปˆเปƒเบ™เปเบœเปˆเบ™เบ”เบฝเบง, เปเบ•เปˆเบญเบฑเบ™เปƒเบ”เบšเปเปˆ เบชเบณ เบ„เบฑเบ™. เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ™เบตเป‰, เบเบฒเบ™เป‚เบญเบ™เบžเบฒเบ—เบดเบŠเบฑเบ™เบ—เบตเปˆเบเบฝเบกเบžเป‰เบญเบกเปเบกเปˆเบ™เบ”เบตเป€เบฅเบตเบ”, เป€เบžเบฒเบฐเบงเปˆเบฒเบ”เป‰เบงเบเบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบ—เบตเปˆเป€เบฅเบทเบญเบ, เบ—เปˆเบฒเบ™เบเบฑเบ‡เบˆเบฐเป„เบ”เป‰เบฎเบฑเบšเบ‚เปเป‰เบกเบนเบ™เบ„เบปเบšเบ–เป‰เบงเบ™ - เบšเปเปˆเบงเปˆเบฒเบˆเบฐเบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐ resharding เบซเบผเบทเบซเบผเบฑเบ‡เบˆเบฒเบ, เป‚เบ„เบ‡เบเบฒเบ™เบšเปเปˆเบชเปเบฒเบ„เบฑเบ™.

เปเบ•เปˆเบกเบตเบเปเบฅเบฐเบ™เบตเบ—เบตเปˆเบชเบฑเบšเบชเบปเบ™เบเบงเปˆเบฒ. เบ–เป‰เบฒเบขเบนเปˆเปƒเบ™เบฅเบฐเบ”เบฑเบšเป€เบซเบ”เบœเบปเบ™เบ‚เบญเบ‡เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบ, เบ—เปˆเบฒเบ™เบญเบตเบ‡เปƒเบชเปˆเป‚เบ„เบ‡เบเบฒเบ™ sharding เบžเบดเป€เบชเบ”, เบงเปˆเบฒเบฅเบนเบเบ„เป‰เบฒเบ™เบตเป‰เปเบกเปˆเบ™เบ•เบฑเป‰เบ‡เบขเบนเปˆเปƒเบ™ shard เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเปเบฅเบฐเบ”เบฑเปˆเบ‡เบเปˆเบฒเบง, เปเบฅเบฐเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบชเบฒเบกเบฒเบ”เบ–เบทเบเบชเบปเปˆเบ‡เป‚เบ”เบเบเบปเบ‡เบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™, เปเบฅเบฐเบšเปเปˆเปเบกเปˆเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบเบฒเบ™เปเบˆเบเบขเบฒเบ. เบซเบผเบทเบ—เปˆเบฒเบ™เบเปเบฒเบฅเบฑเบ‡เปƒเบŠเป‰ ClickHouse เป€เบงเบตเบŠเบฑเบ™เบซเบผเป‰เบฒเบชเบธเบ”เปเบฅเบฐเป„เบ”เป‰เป€เบ›เบตเบ”เปƒเบŠเป‰เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ เป€เบžเบตเปˆเบกเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบเบฒเบ™เบ‚เป‰เบฒเบก shards เบ—เบตเปˆเบšเปเปˆเป„เบ”เป‰เปƒเบŠเป‰. เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ™เบตเป‰, เปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบ—เบตเปˆเป€เบฅเบทเบญเบ, เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเปƒเบ™เบชเปˆเบงเบ™เบ—เบตเปˆเบˆเบฐเบ–เบทเบเบงเบดเป€เบ„เบฒเบฐเปเบฅเบฐเบกเบฑเบ™เบˆเบฐเบ–เบทเบเบ„เบดเบ”เป„เบฅเปˆเบงเปˆเบฒ shards เปƒเบ”เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เปƒเบŠเป‰เบ•เบฒเบกเป‚เบ„เบ‡เบเบฒเบ™ sharding. เบ™เบตเป‰เป€เบฎเบฑเบ”เบงเบฝเบเป„เบ”เป‰เบชเบฐเบซเบ™เบญเบ‡เปƒเบซเป‰เบงเปˆเบฒเบ‚เปเป‰เบกเบนเบ™เบ–เบทเบเปเบšเปˆเบ‡เบชเปˆเบงเบ™เบขเปˆเบฒเบ‡เปเบ—เป‰เบˆเบดเบ‡เบ•เบฒเบกเป‚เบ„เบ‡เบเบฒเบ™ sharding เบ™เบตเป‰. เบ–เป‰เบฒโ€‹เบซเบฒเบโ€‹เบงเปˆเบฒโ€‹เบ—เปˆเบฒเบ™โ€‹เบˆเบฑเบ”โ€‹เปƒเบซเป‰โ€‹เป€เบ‚เบปเบฒโ€‹เป€เบˆเบปเป‰เบฒโ€‹เปƒเบซเบกเปˆโ€‹เบ”เป‰เบงเบโ€‹เบ•เบปเบ™โ€‹เป€เบญเบ‡โ€‹, เบเบฒเบ™โ€‹เบชเบทเปˆโ€‹เบชเบฒเบ™โ€‹เบญเบฒเบ”โ€‹เบˆเบฐโ€‹เบกเบตโ€‹เบเบฒเบ™โ€‹เบ›เปˆเบฝเบ™โ€‹เปเบ›เบ‡โ€‹.

เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบ™เบตเป‰เปเบกเปˆเบ™เบงเบดเบ—เบตเบเบฒเบ™เบญเบฑเบ™เบ”เบฑเบšเบซเบ™เบถเปˆเบ‡. เปเบฅเบฐเบ‚เป‰เบญเบเบเปเบฒเบฅเบฑเบ‡เบฅเปเบ–เป‰เบฒเบ„เปเบฒเบ•เบญเบšเบ‚เบญเบ‡เป€เบˆเบปเป‰เบฒ, เบšเปเปˆเบงเปˆเบฒเบˆเบฐเป€เบ›เบฑเบ™เบงเบดเบ—เบตเบเบฒเบ™เบ—เบตเปˆเป€เบซเบกเบฒเบฐเบชเบปเบก, เบซเบผเบทเปƒเบซเป‰เบžเบงเบเป€เบฎเบปเบฒเบเป‰เบฒเบงเบ•เปเปˆเป„เบ›.

Vladimir Kolobaev, เบœเบนเป‰เบšเปเบฅเบดเบซเบฒเบ™เบฅเบฐเบšเบปเบšเบŠเบฑเป‰เบ™เบ™เปเบฒเปƒเบ™ Avito: Alexey, เบงเบดเบ—เบตเบเบฒเบ™เบ—เบตเปˆเบ—เปˆเบฒเบ™เป„เบ”เป‰เบเปˆเบฒเบงเบกเบฒเบšเปเปˆเป„เบ”เป‰เบœเบปเบ™เบ”เบตเบซเบผเบฒเบเป€เบกเบทเปˆเบญเบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™เบเบฐเบˆเบฒเบเบเบฒเบ™เป‚เบซเบผเบ”, เบฅเบงเบกเบ—เบฑเบ‡เบเบฒเบ™เบญเปˆเบฒเบ™. เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เป€เบญเบปเบฒเบžเบฒเบ—เบดเบŠเบฑเบ™เบ—เบตเปˆเป€เบ›เบฑเบ™เบ›เบฐเบˆเปเบฒเป€เบ”เบทเบญเบ™เปเบฅเบฐเบชเบฒเบกเบฒเบ”เป€เบญเบปเบฒเป€เบ”เบทเบญเบ™เบเปˆเบญเบ™เบซเบ™เป‰เบฒเป„เบ›เบซเบฒ node เบญเบทเปˆเบ™, เปเบ•เปˆเป€เบกเบทเปˆเบญเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบกเบฒเบชเปเบฒเบฅเบฑเบšเบ‚เปเป‰เบกเบนเบ™เบ™เบตเป‰, เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเป‚เบซเบฅเบ”เบกเบฑเบ™เป€เบ—เบปเปˆเบฒเบ™เบฑเป‰เบ™. เปเบ•เปˆเบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เบ—เบตเปˆเบˆเบฐเป‚เบซเบฅเบ”เบเบธเปˆเบกเบ—เบฑเบ‡เบซเบกเบปเบ”, เป€เบžเบฒเบฐเบงเปˆเบฒเบ–เป‰เบฒเบšเปเปˆเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบชเปเบฒเบฅเบฑเบšเบšเบฒเบ‡เบ„เบฑเป‰เบ‡เบเบฒเบ™เป‚เบซเบผเบ”เบเบฒเบ™เบญเปˆเบฒเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เบˆเบฐเบ–เบทเบเบ›เบฐเบกเบงเบ™เบœเบปเบ™เป‚เบ”เบเบชเบญเบ‡ shards.

Alexey Milovidov: เบ„เปเบฒเบ•เบญเบšเบ™เบตเป‰เปเบกเปˆเบ™เปเบ›เบ - เปเบกเปˆเบ™เปเบฅเป‰เบง, เบกเบฑเบ™เบšเปเปˆเบ”เบต, เปเบ•เปˆเบกเบฑเบ™เบญเบฒเบ”เบˆเบฐเป€เบฎเบฑเบ”เบงเบฝเบเป„เบ”เป‰. เบ‚เป‰เบญเบเบˆเบฐเบญเบฐเบ—เบดเบšเบฒเบเบขเปˆเบฒเบ‡เปเบ™เปˆเบ™เบญเบ™. เบกเบฑเบ™เบ„เบธเป‰เบกเบ„เปˆเบฒเบ—เบตเปˆเบˆเบฐเป€เบšเบดเปˆเบ‡เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เป‚เบซเบผเบ”เบ—เบตเปˆเบกเบฒเบขเบนเปˆเบซเบฅเบฑเบ‡เบ‚เปเป‰เบกเบนเบ™เบ‚เบญเบ‡เบ—เปˆเบฒเบ™. เบ–เป‰เบฒเบ™เบตเป‰เปเบกเปˆเบ™เบ‚เปเป‰เบกเบนเบ™เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก, เบžเบงเบเป€เบฎเบปเบฒเป€เบเบทเบญเบšเปเบ™เปˆเบ™เบญเบ™เบชเบฒเบกเบฒเบ”เป€เบงเบปเป‰เบฒเป„เบ”เป‰เบงเปˆเบฒเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบชเปˆเบงเบ™เปƒเบซเบเปˆเปเบกเปˆเบ™เบชเปเบฒเบฅเบฑเบšเบ‚เปเป‰เบกเบนเบ™เบชเบปเบ”.

เบ—เปˆเบฒเบ™เป„เบ”เป‰เบ•เบดเบ”เบ•เบฑเป‰เบ‡เป€เบŠเบตเบšเป€เบงเบตเปƒเบซเบกเปˆ, เบเป‰เบฒเบเบžเบฒเบ—เบดเบŠเบฑเบ™เป€เบเบปเปˆเบฒ, เปเบ•เปˆเบเบฑเบ‡เบ›เปˆเบฝเบ™เปเบ›เบ‡เบงเบดเบ—เบตเบเบฒเบ™เบšเบฑเบ™เบ—เบถเบเบ‚เปเป‰เบกเบนเบ™เบชเบปเบ”. เปเบฅเบฐเบ‚เปเป‰เบกเบนเบ™เบชเบปเบ”เบˆเบฐเบ–เบทเบเป€เบœเบตเบเปเบœเปˆเปƒเบ™เบ—เบปเปˆเบงเบเบธเปˆเบก. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบซเบผเบฑเบ‡เบˆเบฒเบเบžเบฝเบ‡เปเบ•เปˆเบซเป‰เบฒเบ™เบฒเบ—เบต, เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบชเปเบฒเบฅเบฑเบšเบซเป‰เบฒเบ™เบฒเบ—เบตเบชเบธเบ”เบ—เป‰เบฒเบเบˆเบฐเป‚เบซเบผเบ” cluster เป€เบ—เบปเปˆเบฒเบ—เบฝเบกเบเบฑเบ™เบซเบผเบฑเบ‡เบˆเบฒเบเบกเบทเป‰เบซเบ™เบถเปˆเบ‡, เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบชเปเบฒเบฅเบฑเบš 24 เบŠเบปเปˆเบงเป‚เบกเบ‡เบˆเบฐเป‚เบซเบผเบ” cluster เป€เบ—เบปเปˆเบฒเบ—เบฝเบกเบเบฑเบ™. เปเบฅเบฐเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบชเปเบฒเบฅเบฑเบšเป€เบ”เบทเบญเบ™เบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ, เปเบ•เปˆเบซเบ™เป‰เบฒเป€เบชเบเบ”เบฒเบ, เบˆเบฐเป„เบ›เบซเบฒเบชเปˆเบงเบ™เบซเบ™เบถเปˆเบ‡เบ‚เบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ‚เบญเบ‡เบเบธเปˆเบก.

เปเบ•เปˆเป€เบฅเบทเป‰เบญเบเป†เบ—เปˆเบฒเบ™เบˆเบฐเบšเปเปˆเบกเบตเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบชเบฐเป€เบžเบฒเบฐเบชเปเบฒเบฅเบฑเบšเป€เบ”เบทเบญเบ™เบเบธเบกเบžเบฒ 2019. เบชเปˆเบงเบ™เบซเบผเบฒเบเบญเบฒเบ”เบˆเบฐ, เบ–เป‰เบฒเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ 2019, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบžเบงเบเป€เบ‚เบปเบฒเบˆเบฐเป€เบ›เบฑเบ™เบ—เบฑเบ‡เบซเบกเบปเบ” 2019 - เบชเปเบฒเบฅเบฑเบšเป„เบฅเบเบฐเป€เบงเบฅเบฒเบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆ, เปเบฅเบฐเบšเปเปˆเปเบกเปˆเบ™เบชเปเบฒเบฅเบฑเบšเบšเบฒเบ‡เบฅเบฐเบ”เบฑเบšเบ‚เบฐเบซเบ™เบฒเบ”เบ™เป‰เบญเบ. เปเบฅเบฐเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบˆเบฐเบชเบฒเบกเบฒเบ”เป‚เบซเบผเบ” cluster เป„เบ”เป‰เป€เบ—เบปเปˆเบฒเบ—เบฝเบกเบเบฑเบ™. เปเบ•เปˆเป‚เบ”เบเบ—เบปเปˆเบงเป„เบ›, เบ‚เปเป‰เบชเบฑเบ‡เป€เบเบ”เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เปเบกเปˆเบ™เบ–เบทเบเบ•เป‰เบญเบ‡เบขเปˆเบฒเบ‡เปเบ—เป‰เบˆเบดเบ‡เบงเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เบเบฒเบ™เปเบเป‰เป„เบ‚เบชเบฐเป€เบžเบฒเบฐเบ—เบตเปˆเบšเปเปˆเป€เบœเบตเบเปเบœเปˆเบ‚เปเป‰เบกเบนเบ™เบขเปˆเบฒเบ‡เบชเบปเบกเบšเบนเบ™.

เบ‚เป‰เบญเบเบกเบตเบˆเบธเบ”เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเป€เบžเบทเปˆเบญเบ•เบญเบšเบ„เปเบฒเบ–เบฒเบก. เบซเบ™เบถเปˆเบ‡เปƒเบ™เบ™เบฑเป‰เบ™เปเบกเปˆเบ™เบเปˆเบฝเบงเบเบฑเบšเบงเบดเบ—เบตเบเบฒเบ™เบ—เปเบฒเบญเบดเบ”เปƒเบ™เบเบฒเบ™เบญเบญเบเปเบšเบšเป‚เบ„เบ‡เบเบฒเบ™ sharding เป€เบžเบทเปˆเบญเปƒเบซเป‰ re-sharding เบˆเบฐเป€เบฎเบฑเบ”เปƒเบซเป‰เป€เบˆเบฑเบšเบ›เบงเบ”เบซเบ™เป‰เบญเบ. เบญเบฑเบ™เบ™เบตเป‰เป€เบ›เบฑเบ™เป„เบ›เบšเปเปˆเป„เบ”เป‰เบชเบฐเป€เปเบตเป„เบ›.

เบ•เบปเบงเบขเปˆเบฒเบ‡, เบ—เปˆเบฒเบ™เบกเบตเบ‚เปเป‰เบกเบนเบ™เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก. เบ‚เปเป‰เบกเบนเบ™เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเปเบกเปˆเบ™เบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ•เบปเบงเบชเปเบฒเบฅเบฑเบšเบชเบฒเบกเป€เบซเบ”เบœเบปเบ™. เบ—เปเบฒเบญเบดเบ”เปเบกเปˆเบ™เบเบฒเบ™เบชเบฐเบชเบปเบกเบ‚เบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”. เบญเบฑเบ™เบ—เบตเบชเบญเบ‡เปเบกเปˆเบ™เบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ•เบปเบงเบ‚เบญเบ‡เบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™. เปเบฅเบฐเบ—เบตเบชเบฒเบกเปเบกเปˆเบ™เบเบฒเบ™เป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™เบ‚เบญเบ‡เบˆเปเบฒเบ™เบงเบ™เบ‚เบญเบ‡เบชเบดเปˆเบ‡เบ—เบตเปˆเบ‚เบถเป‰เบ™เบเบฑเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก. เบกเบต microservices เปเบฅเบฐ metrics เปƒเบซเบกเปˆเบ—เบตเปˆเบ•เป‰เบญเบ‡เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบšเบฑเบ™เบ—เบถเบเป„เบงเป‰.

เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบงเปˆเบฒเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰, เบเบฒเบ™เป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™เบ‚เบญเบ‡เบ—เบตเปˆเปƒเบซเบเปˆเบ—เบตเปˆเบชเบธเบ”เปเบกเปˆเบ™เบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเป€เบซเบ”เบœเบปเบ™เบ—เบตเบชเบฒเบก - เบเบฒเบ™เป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™เบ‚เบญเบ‡เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบก. เปเบฅเบฐเปƒเบ™เบเปเบฅเบฐเบ™เบตเบ™เบตเป‰, เบกเบฑเบ™เป€เบ›เบฑเบ™เบกเบนเบ™เบ„เปˆเบฒเบ—เบตเปˆเบˆเบฐเป€เบšเบดเปˆเบ‡เบฅเบฑเบเบชเบฐเบ™เบฐเบ‚เบญเบ‡เบเบฒเบ™เป‚เบซเบผเบ”, เบ„เปเบฒเบ–เบฒเบกเบ—เบตเปˆเป€เบฅเบทเบญเบเบ•เบปเป‰เบ™เบ•เปเปเบกเปˆเบ™เบซเบเบฑเบ‡. เบเบฒเบ™เป€เบฅเบทเบญเบเปเบšเบšเบชเบญเบšเบ–เบฒเบกเบžเบทเป‰เบ™เบ–เบฒเบ™เบชเปˆเบงเบ™เบซเบผเบฒเบเปเบกเปˆเบ™เบˆเบฐเบญเบตเบ‡เปƒเบชเปˆเบšเบฒเบ‡เบŠเบธเบ”เบเปˆเบญเบเบ‚เบญเบ‡ metrics.

เบ•เบปเบงเบขเปˆเบฒเบ‡, เบเบฒเบ™เปƒเบŠเป‰ CPU เปƒเบ™เบšเบฒเบ‡เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเป‚เบ”เบเบšเบฒเบ‡เบšเปเบฅเบดเบเบฒเบ™. เบกเบฑเบ™เบ›เบฐเบเบปเบ”เบงเปˆเบฒเบกเบตเบŠเบธเบ”เบเปˆเบญเบเบ—เบตเปˆเปเบ™เปˆเบ™เบญเบ™เบ‚เบญเบ‡เบเบฐเปเบˆเบ—เบตเปˆเบ—เปˆเบฒเบ™เป„เบ”เป‰เบฎเบฑเบšเบ‚เปเป‰เบกเบนเบ™เบ™เบตเป‰. เปเบฅเบฐเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบ•เบปเบงเบกเบฑเบ™เป€เบญเบ‡เบชเปเบฒเบฅเบฑเบšเบ‚เปเป‰เบกเบนเบ™เบ™เบตเป‰เปเบกเปˆเบ™เบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡เบ‡เปˆเบฒเบเบ”เบฒเบเปเบฅเบฐเบชเปเบฒเป€เบฅเบฑเบ”เปƒเบ™เบชเบดเบš milliseconds. เปƒเบŠเป‰เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบเบงเบ”เบเบฒเปเบฅเบฐ dashboards. เบ‚เป‰เบญเบเบซเบงเบฑเบ‡เบงเปˆเบฒเบ‚เป‰เบญเบเป€เบ‚เบปเป‰เบฒเปƒเบˆเบขเปˆเบฒเบ‡เบ–เบทเบเบ•เป‰เบญเบ‡.

Vladimir Kolobaev: เบ„เบงเบฒเบกเบˆเบดเบ‡เปเบฅเป‰เบงเปเบกเปˆเบ™เบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบกเบฑเบเบˆเบฐเบ‚เปเบญเบธเบ—เบญเบ™เบเบฑเบšเบ‚เปเป‰เบกเบนเบ™เบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”, เป€เบžเบฒเบฐเบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบ›เบฝเบšเบ—เบฝเบšเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เปƒเบ™เบ›เบฐเบˆเบธเบšเบฑเบ™เบเบฑเบšเบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเปเบ—เป‰เบˆเบดเบ‡. เปเบฅเบฐเบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบชเปเบฒเบ„เบฑเบ™เบชเปเบฒเบฅเบฑเบšเบžเบงเบเป€เบฎเบปเบฒเบ—เบตเปˆเบˆเบฐเป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบ‚เปเป‰เบกเบนเบ™เบˆเปเบฒเบ™เบงเบ™เบซเบฅเบฒเบเบขเปˆเบฒเบ‡เป„เบงเบงเบฒ, เปเบฅเบฐ ClickHouse เป€เบฎเบฑเบ”เบงเบฝเบเบ—เบตเปˆเบ”เบตเป€เบฅเบตเบ”เบเบฑเบšเบชเบดเปˆเบ‡เบ™เบตเป‰.

เป€เบˆเบปเป‰เบฒเป€เบงเบปเป‰เบฒเบ–เบทเบเปเบ—เป‰เป†, เบžเบงเบเป€เบฎเบปเบฒเบ›เบฐเบชเบปเบšเบเบฑเบšเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบเบฒเบ™เบญเปˆเบฒเบ™เบชเปˆเบงเบ™เปƒเบซเบเปˆเปƒเบ™เบกเบทเป‰เบชเบธเบ”เบ—เป‰เบฒเบ, เบ„เบทเบเบฑเบšเบฅเบฐเบšเบปเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเปƒเบ”เป†. เปเบ•เปˆเปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™, เบเบฒเบ™เป‚เบซเบผเบ”เบ‚เปเป‰เบกเบนเบ™เบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”เบเบฑเบ‡เบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡เปƒเบซเบเปˆ. เป‚เบ”เบเบžเบทเป‰เบ™เบ–เบฒเบ™เปเบฅเป‰เบงเบกเบฑเบ™เบกเบฒเบˆเบฒเบเบฅเบฐเบšเบปเบšเบเบฒเบ™เปเบˆเป‰เบ‡เป€เบ•เบทเบญเบ™เบ—เบตเปˆเป„เบ›เบ›เบฐเบกเบฒเบ™เบ—เบธเบเป†เบชเบฒเบกเบชเบดเบšเบงเบดเบ™เบฒเบ—เบตเปเบฅเบฐเป€เบงเบปเป‰เบฒเบเบฑเบš ClickHouse: "เปƒเบซเป‰เบ‚เป‰เบญเบเบ‚เปเป‰เบกเบนเบ™เบชเปเบฒเบฅเบฑเบšเบซเบปเบเบญเบฒเบ—เบดเบ”เบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ. เบ”เบฝเบงเบ™เบตเป‰เบชเป‰เบฒเบ‡เบ‚เป‰เบญเบเบšเบฒเบ‡เบ›เบฐเป€เบžเบ”เบเบฒเบ™เป€เบ„เบทเปˆเบญเบ™เบเป‰เบฒเบเบชเบฐเป€เบฅเปˆเบเบˆเบฒเบเบžเบงเบเบกเบฑเบ™, เปเบฅเบฐเปƒเบซเป‰เบ›เบฝเบšเบ—เบฝเบšเบกเบนเบ™เบ„เปˆเบฒเปƒเบ™เบ›เบฐเบˆเบธเบšเบฑเบ™เบเบฑเบšเบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”."

เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบขเบฒเบเบˆเบฐเป€เบงเบปเป‰เบฒเบงเปˆเบฒเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒเบซเบผเบฒเบเบ™เบตเป‰เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ‚เบฐเบซเบ™เบฒเบ”เบ™เป‰เบญเบเบญเบทเปˆเบ™เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบ‚เปเป‰เบกเบนเบ™เบžเบฝเบ‡เปเบ•เปˆเบชเบญเบ‡เบกเบทเป‰, เปเบฅเบฐเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบ•เบปเป‰เบ™เบ•เปเบšเบดเบ™เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบกเบฑเบ™. เบžเบงเบเป€เบฎเบปเบฒเบžเบฝเบ‡เปเบ•เปˆเบชเบปเปˆเบ‡เบ„เปเบฒเบ–เบฒเบกเบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆเป„เบ›เบซเบฒเบ•เบฒเบ•เบฐเบฅเบฒเบ‡ sharded เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆ.

Alexey Milovidov: เปเบ•เปˆเบซเบ™เป‰เบฒเป€เบชเบเบ”เบฒเบ, เบกเบฑเบ™เปƒเบŠเป‰เป„เบ”เป‰เบšเปเปˆเบ”เบตเบเบฑเบšเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ‚เบญเบ‡เป€เบˆเบปเป‰เบฒ, เปเบ•เปˆเบ‚เป‰เบญเบเบˆเบฐเบšเบญเบเป€เบˆเบปเป‰เบฒเบเปˆเบฝเบงเบเบฑเบšเบชเบญเบ‡เป‚เบ„เบ‡เบเบฒเบ™ sharding เบ—เบตเปˆเบšเปเปˆเบ”เบตเปเบฅเบฐเบชเบฐเบฅเบฑเบšเบชเบฑเบšเบŠเป‰เบญเบ™เบ—เบตเปˆเบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เปƒเบŠเป‰, เปเบ•เปˆเบกเบฑเบ™เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เปƒเบ™เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ‚เบญเบ‡เบซเบกเบนเปˆเป€เบžเบทเปˆเบญเบ™เบ‚เบญเบ‡เบ‚เป‰เบญเบ.

เบกเบตเบเบธเปˆเบกเบ•เบปเป‰เบ™เบ•เปเบ—เบตเปˆเบกเบตเป€เบซเบ”เบเบฒเบ™ Yandex.Metrica. เป€เบซเบ”เบเบฒเบ™เปเบกเปˆเบ™เบเบฒเบ™เป€เบšเบดเปˆเบ‡เบซเบ™เป‰เบฒ, เบเบฒเบ™เบ„เบฅเบดเบ, เปเบฅเบฐเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡. เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบชเปˆเบงเบ™เปƒเบซเบเปˆเป„เบ›เบซเบฒเป€เบงเบฑเบšเป„เบŠเบ—เปŒเบชเบฐเป€เบžเบฒเบฐ. เบ—เปˆเบฒเบ™เป€เบ›เบตเบ”เบšเปเบฅเบดเบเบฒเบ™ Yandex.Metrica, เบ—เปˆเบฒเบ™เบกเบตเป€เบงเบฑเบšเป„เบŠเบ—เปŒ - avito.ru, เป„เบ›เบซเบฒเบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™, เปเบฅเบฐเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเปเบกเปˆเบ™เป€เบฎเบฑเบ”เบชเปเบฒเบฅเบฑเบšเป€เบงเบฑเบšเป„เบŠเบ—เปŒเบ‚เบญเบ‡เบ—เปˆเบฒเบ™.

เปเบ•เปˆเบกเบตเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบญเบทเปˆเบ™เป† - เบเบฒเบ™เบงเบดเป€เบ„เบฒเบฐเปเบฅเบฐเบ—เบปเปˆเบงเป‚เบฅเบ - เบ—เบตเปˆเป€เบฎเบฑเบ”เป‚เบ”เบเบ™เบฑเบเบงเบดเป€เบ„เบฒเบฐเบžเบฒเบเปƒเบ™. เบžเบฝเบ‡เปเบ•เปˆเปƒเบ™เบเปเบฅเบฐเบ™เบต, เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบชเบฑเบ‡เป€เบเบ”เบงเปˆเบฒเบ™เบฑเบเบงเบดเป€เบ„เบฒเบฐเบžเบฒเบเปƒเบ™เป€เบฎเบฑเบ”เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบžเบฝเบ‡เปเบ•เปˆเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™ Yandex. เปเบ•เปˆเบขเปˆเบฒเบ‡เปƒเบ”เบเปเปˆเบ•เบฒเบก, เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™ Yandex เบกเบตเบชเปˆเบงเบ™เปเบšเปˆเบ‡เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เบ‚เบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”. เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบšเปเปˆเปเบกเปˆเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™ counters เบชเบฐเป€เบžเบฒเบฐ, เปเบ•เปˆเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบเบฑเปˆเบ™เบ•เบญเบ‡เบขเปˆเบฒเบ‡เบเบงเป‰เบฒเบ‡เบ‚เบงเบฒเบ‡.

เบงเบดเบ—เบตเบเบฒเบ™เบˆเบฑเบ”เบฅเบฐเบšเบฝเบšเบ‚เปเป‰เบกเบนเบ™เปƒเบ™เปเบšเบšเบ—เบตเปˆเบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เป€เบฎเบฑเบ”เบงเบฝเบเบขเปˆเบฒเบ‡เบกเบตเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบชเปเบฒเบฅเบฑเบšเบซเบ™เบถเปˆเบ‡ counter, เปเบฅเบฐเบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบ—เบปเปˆเบงเป‚เบฅเบเป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบ™? เบ„เบงเบฒเบกเบซเบเบธเป‰เบ‡เบเบฒเบเบญเบตเบเบญเบฑเบ™เบซเบ™เบถเปˆเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเบˆเปเบฒเบ™เบงเบ™เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเปƒเบ™ ClickHouse เบชเปเบฒเบฅเบฑเบšเบเบธเปˆเบก Metrics เปเบกเปˆเบ™เบซเบผเบฒเบเบžเบฑเบ™เบ„เบปเบ™เบ•เปเปˆเบงเบดเบ™เบฒเบ—เบต. เปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™, เบซเบ™เบถเปˆเบ‡เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ ClickHouse เบšเปเปˆเบชเบฒเบกเบฒเบ”เบˆเบฑเบ”เบเบฒเบ™เบเบฑเบšเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ—เบตเปˆเบšเปเปˆเปเบกเปˆเบ™เป€เบฅเบทเปˆเบญเบ‡เป€เบฅเบฑเบเบ™เป‰เบญเบ, เบ•เบปเบงเบขเปˆเบฒเบ‡, เบซเบผเบฒเบเบžเบฑเบ™เบ•เปเปˆเบงเบดเบ™เบฒเบ—เบต.

เบ‚เบฐเปœเบฒเบ”เบ‚เบญเบ‡เบเบธเปˆเบกเปเบกเปˆเบ™เบซเบปเบเบฎเป‰เบญเบเป€เบŠเบตเบšเป€เบงเบต. เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบžเบฝเบ‡เปเบ•เปˆเบ”เบถเบ‡เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เปเบˆเบเบขเบฒเบเบขเบนเปˆเปƒเบ™เบเบธเปˆเบกเบ™เบตเป‰เปเบฅเบฐเบชเบปเปˆเบ‡เบซเบผเบฒเบเบžเบฑเบ™เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™, เบกเบฑเบ™เบˆเบฐเบเบฒเบเป€เบ›เบฑเบ™เบฎเป‰เบฒเบเปเบฎเบ‡เบเบงเปˆเบฒเบเบฒเบ™เบชเบปเปˆเบ‡เบžเบงเบเบกเบฑเบ™เป„เบ›เบซเบฒเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ”เบฝเบง. เปƒเบ™เบ—เบฒเบ‡เบเบปเบ‡เบเบฑเบ™เบ‚เป‰เบฒเบก, เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ—เบตเปˆเบ‚เปเป‰เบกเบนเบ™เบ–เบทเบเป€เบœเบตเบเปเบœเปˆเบขเปˆเบฒเบ‡เป€เบ—เบปเปˆเบฒเบ—เบฝเบกเบเบฑเบ™, เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเป„เบ›เปเบฅเบฐเบฎเป‰เบญเบ‡เบ‚เปเบˆเบฒเบเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ—เบฑเบ‡เบซเบกเบปเบ”, เปเบกเปˆเบ™เบ–เบทเบเบเบปเบเป€เบฅเบตเบเบ—เบฑเบ™เบ—เบต.

เบกเบตเบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ—เบตเปˆเบเบปเบ‡เบเบฑเบ™เบ‚เป‰เบฒเบกเบเบฑเบš diametrically. เบˆเบดเบ™เบ•เบฐเบ™เบฒเบเบฒเบ™เบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเปเบšเปˆเบ‡เบ›เบฑเบ™เบ‚เปเป‰เบกเบนเบ™เปƒเบ™เบ—เบปเปˆเบงเป€เบงเบฑเบšเป„เบŠเบ—เปŒ, เปเบฅเบฐเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบชเปเบฒเบฅเบฑเบšเป€เบงเบฑเบšเป„เบŠเบ—เปŒเบซเบ™เบถเปˆเบ‡เป„เบ›เบซเบฒเบซเบ™เบถเปˆเบ‡ shard. เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™ cluster เบˆเบฐเบชเบฒเบกเบฒเบ”เบˆเบฑเบ”เบเบฒเบ™เบเบฑเบš 10 เบžเบฑเบ™เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ•เปเปˆเบงเบดเบ™เบฒเบ—เบต, เปเบ•เปˆเบงเปˆเบฒเปƒเบ™เบซเบ™เบถเปˆเบ‡ shard เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบซเบ™เบถเปˆเบ‡เบˆเบฐเป€เบฎเบฑเบ”เบงเบฝเบเบŠเป‰เบฒเป€เบเบตเบ™เป„เบ›. เบกเบฑเบ™โ€‹เบˆเบฐโ€‹เบšเปเปˆโ€‹เบกเบตโ€‹เบเบฒเบ™โ€‹เบ›เบฑเบšโ€‹เบ‚เบฐโ€‹เบซเบ™เบฒเบ”โ€‹เปƒเบ™โ€‹เปเบ‡เปˆโ€‹เบ‚เบญเบ‡โ€‹เบเบฒเบ™โ€‹เบœเปˆเบฒเบ™โ€‹. เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐเบ–เป‰เบฒเบ™เบตเป‰เปเบกเปˆเบ™เป€เบงเบฑเบšเป„เบŠเบ—เปŒ avito.ru. เบ‚เป‰เบญเบเบˆเบฐเบšเปเปˆเป€เบ›เบตเบ”เป€เบœเบตเบเบ„เบงเบฒเบกเบฅเบฑเบšเบ–เป‰เบฒเบ‚เป‰เบญเบเป€เบงเบปเป‰เบฒเบงเปˆเบฒ Avito เปเบกเปˆเบ™เบซเบ™เบถเปˆเบ‡เปƒเบ™เป€เบงเบฑเบšเป„เบŠเบ—เปŒเบ—เบตเปˆเบกเบตเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบŠเบปเบกเบซเบฅเบฒเบเบ—เบตเปˆเบชเบธเบ”เปƒเบ™ RuNet. เปเบฅเบฐเบเบฒเบ™เบ›เบธเบ‡เปเบ•เปˆเบ‡เบกเบฑเบ™เบขเบนเปˆเปƒเบ™เบซเบ™เบถเปˆเบ‡ shard เบˆเบฐเป€เบ›เบฑเบ™ madness.

เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เป‚เบ„เบ‡เบเบฒเบ™ sharding เป„เบ”เป‰เบ–เบทเบเบญเบญเบเปเบšเบšเปƒเบ™เบงเบดเบ—เบตเบเบฒเบ™ cunning เบซเบผเบฒเบ. เบเบธเปˆเบกเบ—เบฑเบ‡เปเบปเบ”เปเบกเปˆเบ™เปเบšเปˆเบ‡เบญเบญเบเป€เบ›เบฑเบ™เบซเบผเบฒเบเบเบธเปˆเบก, เป€เบŠเบดเปˆเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบญเบตเป‰เบ™เบงเปˆเบฒเบŠเบฑเป‰เบ™เบ•เปˆเบฒเบ‡เป†. เปเบ•เปˆโ€‹เบฅเบฐโ€‹เบเบธเปˆเบกโ€‹เบ›เบฐโ€‹เบเบญเบšโ€‹เบ”เป‰เบงเบโ€‹เบˆเบฒเบโ€‹เบญเบฒเบโ€‹เปเบโ€‹เบฑโ€‹เบชโ€‹เบซเบฒโ€‹เบซเบผเบฒเบโ€‹เบญเบฒเบโ€‹เปเบโ€‹เบฑโ€‹เบช shardsโ€‹. เบกเบตเบ—เบฑเบ‡เปเบปเบ”เบชเบฒเบกเบชเบดเบšเป€เบเบปเป‰เบฒเบเบธเปˆเบกเบ”เบฑเปˆเบ‡เบเปˆเบฒเบง.

เบ™เบตเป‰เบ‚เบฐเบซเบ™เบฒเบ”เบ—เบฑเบ‡เบซเบกเบปเบ”เปเบ™เบงเปƒเบ”? เบˆเปเบฒเบ™เบงเบ™เบ‚เบญเบ‡เบเบธเปˆเบกเบšเปเปˆเบ›เปˆเบฝเบ™เปเบ›เบ‡ - เบเป‰เบญเบ™เบงเปˆเบฒเบกเบฑเบ™เปเบกเปˆเบ™เบชเบฒเบกเบชเบดเบšเป€เบเบปเป‰เบฒเบชเบญเบ‡เบชเบฒเบกเบ›เบตเบเปˆเบญเบ™, เบกเบฑเบ™เบเบฑเบ‡เบ„เบปเบ‡เบขเบนเปˆ. เปเบ•เปˆเบžเบฒเบเปƒเบ™เบžเบงเบเบกเบฑเบ™เปเบ•เปˆเบฅเบฐเบ„เบปเบ™, เบžเบงเบเป€เบฎเบปเบฒเบ„เปˆเบญเบเป†เป€เบžเบตเปˆเบกเบˆเปเบฒเบ™เบงเบ™ shards เปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบชเบฐเบชเบปเบกเบ‚เปเป‰เบกเบนเบ™. เปเบฅเบฐเป‚เบ„เบ‡เบเบฒเบ™ sharding เป‚เบ”เบเบฅเบงเบกเปเบกเปˆเบ™เปเบšเบšเบ™เบตเป‰: เบเบธเปˆเบกเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบ–เบทเบเปเบšเปˆเบ‡เบญเบญเบเป€เบ›เบฑเบ™เป€เบงเบฑเบšเป„เบŠเบ—เปŒ, เปเบฅเบฐเป€เบžเบทเปˆเบญเป€เบ‚เบปเป‰เบฒเปƒเบˆเบงเปˆเบฒเป€เบงเบฑเบšเป„เบŠเบ—เปŒเปƒเบ”เบขเบนเปˆเปƒเบ™เบเบธเปˆเบกเปƒเบ”, metabase เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบเปƒเบ™ MySQL เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰. เป€เบงเบฑเบšเป„เบŠเบ—เปŒเบซเบ™เบถเปˆเบ‡ - เปƒเบ™เบซเบ™เบถเปˆเบ‡เบเบธเปˆเบก. เปเบฅเบฐเบžเบฒเบเปƒเบ™เบกเบฑเบ™, sharding เป€เบเบตเบ”เบ‚เบถเป‰เบ™เบ•เบฒเบก ID เบ™เบฑเบเบ—เปˆเบญเบ‡เบ—เปˆเบฝเบง.

เป€เบกเบทเปˆเบญเบšเบฑเบ™เบ—เบถเบ, เบžเบงเบเป€เบฎเบปเบฒเปเบšเปˆเบ‡เบžเบงเบเบกเบฑเบ™เป‚เบ”เบเบชเปˆเบงเบ™เบ—เบตเปˆเป€เบซเบผเบทเบญเบ‚เบญเบ‡เบเบฒเบ™เปเบšเปˆเบ‡เบ›เบฑเบ™ ID เบœเบนเป‰เป€เบ‚เบปเป‰เบฒเบŠเบปเบก. เปเบ•เปˆเป€เบกเบทเปˆเบญเป€เบžเบตเปˆเบก shard เปƒเบซเบกเปˆ, เป‚เบ„เบ‡เบเบฒเบ™ sharding เบกเบตเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡; เบ™เบตเป‰ เปเบฒเบ เบ„เบงเบฒเบกเบงเปˆเบฒเบœเบนเป‰เป€เบ‚เบปเป‰เบฒเบŠเบปเบกเบ„เบปเบ™ เปœเบถเปˆเบ‡ เป„เบ”เป‰เบ•เบฑเป‰เบ‡เบขเบนเปˆเปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบซเบผเบฒเบเป†เบ„เบฑเป‰เบ‡, เปเบฅเบฐเบ—เปˆเบฒเบ™เบšเปเปˆเบชเบฒเบกเบฒเบ”เบญเบตเบ‡เปƒเบชเปˆเบชเบดเปˆเบ‡เบ™เบตเป‰เป„เบ”เป‰. เบ™เบตเป‰เปเบกเปˆเบ™เป€เบฎเบฑเบ”เบขเปˆเบฒเบ‡เบ”เบฝเบงเป€เบžเบทเปˆเบญเบฎเบฑเบšเบ›เบฐเบเบฑเบ™เบงเปˆเบฒเบ‚เปเป‰เบกเบนเบ™เบ–เบทเบเบšเบตเบšเบญเบฑเบ”เบ”เบตเบเบงเปˆเบฒ. เปเบฅเบฐเปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเป€เบฎเบฑเบ”เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เป, เบžเบงเบเป€เบฎเบปเบฒเป„เบ›เบซเบฒเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบเบฒเบ™เปเบˆเบเบขเบฒเบ, เป€เบŠเบดเปˆเบ‡เป€เบšเบดเปˆเบ‡เบขเบนเปˆเปƒเบ™เบเบธเปˆเบกเปเบฅเบฐเป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบซเบฅเบฒเบเบชเบดเบšเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ. เบ™เบตเป‰เปเบกเปˆเบ™เป‚เบ„เบ‡เบเบฒเบ™เบ—เบตเปˆเป‚เบ‡เปˆเบˆเป‰เบฒ.

เปเบ•เปˆเป€เบฅเบทเปˆเบญเบ‡เบ‚เบญเบ‡เบ‚เป‰เบญเบเบˆเบฐเบšเปเปˆเบ„เบปเบšเบ–เป‰เบงเบ™เบ–เป‰เบฒเบ‚เป‰เบญเบเบšเปเปˆเป€เบงเบปเป‰เบฒเบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบ›เบฐเบ–เบดเป‰เบกเป‚เบ„เบ‡เบเบฒเบ™เบ™เบตเป‰. เปƒเบ™เป‚เบ„เบ‡เบเบฒเบ™เปƒเบซเบกเปˆ, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เปเบฅเบฐเบ„เบฑเบ”เบฅเบญเบเบ‚เปเป‰เบกเบนเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เป‚เบ”เบเปƒเบŠเป‰ clickhouse-copier.

เปƒเบ™เป‚เบ„เบ‡เบเบฒเบ™เปƒเบซเบกเปˆ, เบชเบฐเบ–เบฒเบ™เบ—เบตเปˆเบ—เบฑเบ‡เบซเบกเบปเบ”เบ–เบทเบเปเบšเปˆเบ‡เบญเบญเบเป€เบ›เบฑเบ™เบชเบญเบ‡เบ›เบฐเป€เบžเบ” - เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆเปเบฅเบฐเบ‚เบฐเบซเบ™เบฒเบ”เบ™เป‰เบญเบ. เบ‚เป‰เบญเบเบšเปเปˆเบฎเบนเป‰เบงเปˆเบฒเบ‚เบญเบšเป€เบ‚เบ”เบ–เบทเบเป€เบฅเบทเบญเบเปเบ™เบงเปƒเบ”, เปเบ•เปˆเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเปเบกเปˆเบ™เบงเปˆเบฒเป€เบงเบฑเบšเป„เบŠเบ—เปŒเบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆเบ–เบทเบเบšเบฑเบ™เบ—เบถเบเป„เบงเป‰เปƒเบ™เบเบธเปˆเบกเบซเบ™เบถเปˆเบ‡, เบšเปˆเบญเบ™เบ—เบตเปˆเบกเบต 120 shards เบ—เบตเปˆเบกเบตเบชเบฒเบก replicas เปเบ•เปˆเบฅเบฐเบ„เบปเบ™ - เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, 360 servers. เปเบฅเบฐเป‚เบ„เบ‡เบเบฒเบ™ sharding เปเบกเปˆเบ™เป€เบŠเบฑเปˆเบ™เบงเปˆเบฒเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเปƒเบ”เป†เป„เบ›เบซเบฒ shards เบ—เบฑเบ‡เบซเบกเบปเบ”เปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™. เบ–เป‰เบฒเบ•เบญเบ™เบ™เบตเป‰เป€เบˆเบปเป‰เบฒเป€เบ›เบตเบ”เบซเบ™เป‰เบฒเบฅเบฒเบเบ‡เบฒเบ™เปƒเบ”เป†เบชเปเบฒเบฅเบฑเบš avito.ru เปƒเบ™ Yandex.Metrica, เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบˆเบฐเป„เบ›เบซเบฒ 120 เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ. เบกเบตเบชเบฐเบ–เบฒเบ™เบ—เบตเปˆเบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆเบˆเปเบฒเบ™เบงเบ™เบซเบ™เป‰เบญเบเบขเบนเปˆเปƒเบ™ RuNet. เปเบฅเบฐโ€‹เบ„เปเบฒโ€‹เบฎเป‰เบญเบ‡โ€‹เบชเบฐโ€‹เบซเบกเบฑเบโ€‹เบšเปเปˆโ€‹เปเบกเปˆเบ™โ€‹เป€เบ›เบฑเบ™โ€‹เบžเบฑเบ™โ€‹เบ•เปเปˆโ€‹เบงเบดโ€‹เบ™เบฒโ€‹เบ—เบตโ€‹, เปเบ•เปˆโ€‹เป€เบ–เบดเบ‡โ€‹เปเบกเปˆเบ™โ€‹เบงเปˆเบฒโ€‹เบซเบ™เป‰เบญเบโ€‹เบโ€‹เปˆโ€‹เบงเบฒโ€‹เบฎเป‰เบญเบโ€‹. เบ—เบฑเบ‡เบซเบกเบปเบ”เบ™เบตเป‰เปเบกเปˆเบ™ chewed เบขเปˆเบฒเบ‡เบ‡เบฝเบšเป†เป‚เบ”เบเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบเบฒเบ™เปเบˆเบเบขเบฒเบ, เป€เบŠเบดเปˆเบ‡เปเบ•เปˆเบฅเบฐเบญเบฑเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบเบฑเบš 120 เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ.

เปเบฅเบฐเบเบธเปˆเบกเบ—เบตเบชเบญเบ‡เปเบกเปˆเบ™เบชเปเบฒเบฅเบฑเบšเบชเบฐเบ–เบฒเบ™เบ—เบตเปˆเบ‚เบฐเบซเบ™เบฒเบ”เบ™เป‰เบญเบ. เบ™เบตเป‰เปเบกเปˆเบ™เป‚เบ„เบ‡เบเบฒเบ™ sharding เป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆ ID เป€เบงเบฑเบšเป„เบŠเบ—เปŒ, เปเบฅเบฐเปเบ•เปˆเบฅเบฐเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเป„เบ›เบซเบฒเบซเบ™เบถเปˆเบ‡ shard เปเบ—เป‰.

ClickHouse เบกเบตเบ›เบฐเป‚เบซเบเบ”เบ‚เบญเบ‡ clickhouse-copier. เป€เบˆเบปเป‰เบฒเบชเบฒเบกเบฒเบ”เบšเบญเบเบ‚เป‰เบญเบเบเปˆเบฝเบงเบเบฑเบšเบ™เบฒเบ‡เป„เบ”เป‰เบšเป?

เบ‚เป‰เบญเบเบˆเบฐเป€เบงเบปเป‰เบฒเบ—เบฑเบ™เบ—เบตเบงเปˆเบฒเบเบฒเบ™เปเบเป‰เป„เบ‚เบ™เบตเป‰เปเบกเปˆเบ™เบชเบฑเบšเบชเบปเบ™เบซเบผเบฒเบเปเบฅเบฐเบกเบตเบœเบปเบ™เบœเบฐเบฅเบดเบ”เบซเบ™เป‰เบญเบ. เบ›เบฐเป‚เบซเบเบ”เปเบกเปˆเบ™เบงเปˆเบฒเบกเบฑเบ™ smears เบ‚เปเป‰เบกเบนเบ™เบขเปˆเบฒเบ‡เบชเบปเบกเบšเบนเบ™เบ•เบฒเบกเบฎเบนเบšเปเบšเบšเบ—เบตเปˆเบ—เปˆเบฒเบ™เบฅเบฐเบšเบธ. เปเบ•เปˆเบ‚เปเป‰เป€เบชเบเบ‚เบญเบ‡เบœเบปเบ™เบ›เบฐเป‚เบซเบเบ”เปเบกเปˆเบ™เบงเปˆเบฒเบกเบฑเบ™เบšเปเปˆเป„เบ”เป‰ reshard เบ—เบฑเบ‡เบซเบกเบปเบ”. เบกเบฑเบ™เบ„เบฑเบ”เบฅเบญเบเบ‚เปเป‰เบกเบนเบ™เบˆเบฒเบ schema เบเบธเปˆเบกเบซเบ™เบถเปˆเบ‡เป„เบ›เบซเบฒ schema เบเบธเปˆเบกเบญเบทเปˆเบ™.

เบ™เบตเป‰เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเป€เบžเบทเปˆเบญเปƒเบซเป‰เบกเบฑเบ™เป€เบฎเบฑเบ”เบงเบฝเบเป„เบ”เป‰, เบ—เปˆเบฒเบ™เบˆเบฐเบ•เป‰เบญเบ‡เบกเบตเบชเบญเบ‡เบเบธเปˆเบก. เบžเบงเบเป€เบ‚เบปเบฒเบชเบฒเบกเบฒเบ”เบ•เบฑเป‰เบ‡เบขเบนเปˆเปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ”เบฝเบงเบเบฑเบ™, เปเบ•เปˆเบขเปˆเบฒเบ‡เปƒเบ”เบเปเปˆเบ•เบฒเบก, เบ‚เปเป‰เบกเบนเบ™เบˆเบฐเบšเปเปˆเบ–เบทเบเบเป‰เบฒเบเป€เบ—เบทเปˆเบญเบฅเบฐเบเป‰เบฒเบง, เปเบ•เปˆเบˆเบฐเบ–เบทเบเบ„เบฑเบ”เบฅเบญเบ.

เบ•เบปเบงเบขเปˆเบฒเบ‡, เบกเบตเบชเบตเปˆเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ, เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบกเบตเปเบ›เบ”. เบ—เปˆเบฒเบ™เบชเป‰เบฒเบ‡เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบเบฒเบ™เปเบˆเบเบขเบฒเบเปƒเบซเบกเปˆเปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ—เบฑเบ‡เบซเบกเบปเบ”, เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™เปƒเบซเบกเปˆเปเบฅเบฐเป€เบ›เบตเบ”เบ•เบปเบง clickhouse-copier, เบŠเบตเป‰เปƒเบซเป‰เป€เบซเบฑเบ™เปƒเบ™เป‚เบ„เบ‡เบเบฒเบ™เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ—เบตเปˆเบกเบฑเบ™เบ„เบงเบ™เบˆเบฐเบญเปˆเบฒเบ™เบˆเบฒเบเบ™เบฑเป‰เบ™, เบเบญเบกเบฎเบฑเบšเป‚เบ„เบ‡เบเบฒเบ™ sharding เปƒเบซเบกเปˆเปเบฅเบฐเป‚เบญเบ™เบ‚เปเป‰เบกเบนเบ™เบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™. เปเบฅเบฐเปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเป€เบเบปเปˆเบฒเป€เบˆเบปเป‰เบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เบžเบทเป‰เบ™เบ—เบตเปˆเบซเบผเบฒเบเบเบงเปˆเบฒเบซเบ™เบถเปˆเบ‡เปเบฅเบฐเป€เบ„เบดเปˆเบ‡เบซเบ™เบถเปˆเบ‡เป€เบ—เบปเปˆเบฒเบ—เบตเปˆเบกเบตเปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™, เป€เบžเบฒเบฐเบงเปˆเบฒเบ‚เปเป‰เบกเบนเบ™เป€เบเบปเปˆเบฒเบ•เป‰เบญเบ‡เบขเบนเปˆเปƒเบ™เบžเบงเบเบกเบฑเบ™, เปเบฅเบฐเป€เบ„เบดเปˆเบ‡เบซเบ™เบถเปˆเบ‡เบ‚เบญเบ‡เบ‚เปเป‰เบกเบนเบ™เป€เบเบปเปˆเบฒเบ”เบฝเบงเบเบฑเบ™เบˆเบฐเบกเบฒเบฎเบญเบ”เป€เบ—เบดเบ‡เบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒ. เบ–เป‰เบฒเป€เบˆเบปเป‰เบฒเบ„เบดเบ”เบฅเปˆเบงเบ‡เปœเป‰เบฒเบงเปˆเบฒเบ‚เปเป‰เบกเบนเบ™เบ•เป‰เบญเบ‡เบ–เบทเบเป€เบญเบปเบฒเบกเบฒเปƒเปเปˆเปเบฅเบฐเบกเบตเบžเบทเป‰เบ™เบ—เบตเปˆเบซเบงเปˆเบฒเบ‡, เบงเบดเบ—เบตเบ™เบตเป‰เปเบกเปˆเบ™เป€เปเบฒเบฐเบชเบปเบก.

clickhouse-copier เป€เบฎเบฑเบ”เบงเบฝเบเบžเบฒเบเปƒเบ™เปเบ™เบงเปƒเบ”? เบกเบฑเบ™เปเบšเปˆเบ‡เบงเบฝเบเบ—เบฑเบ‡เบซเบกเบปเบ”เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบŠเบธเบ”เบ‚เบญเบ‡เบงเบฝเบเบ‡เบฒเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เบธเบ‡เปเบ•เปˆเบ‡เบซเบ™เบถเปˆเบ‡เบเบฒเบ™เปเบšเปˆเบ‡เบ›เบฑเบ™เบ‚เบญเบ‡เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบซเบ™เบถเปˆเบ‡เปƒเบ™เบซเบ™เบถเปˆเบ‡ shard. เบงเบฝเบเบ‡เบฒเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบ—เบฑเบ‡เบซเบกเบปเบ”เบชเบฒเบกเบฒเบ”เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เปƒเบ™เบ‚เบฐเบซเบ™เบฒเบ™, เปเบฅเบฐ clickhouse-copier เบชเบฒเบกเบฒเบ”เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เปƒเบ™เบซเบผเบฒเบเป†เบเปเบฅเบฐเบ™เบต, เปเบ•เปˆเบชเบดเปˆเบ‡เบ—เบตเปˆเบกเบฑเบ™เป€เบฎเบฑเบ”เบชเปเบฒเบฅเบฑเบšเบซเบ™เบถเปˆเบ‡เบžเบฒเบ—เบดเบŠเบฑเบ™เปเบกเปˆเบ™เบšเปเปˆเบกเบตเบซเบเบฑเบ‡เบ™เบญเบ เป€เปœเบทเบญ เบˆเบฒเบเบเบฒเบ™เป€เบฅเบทเบญเบเปเบŠเบ. เบ‚เปเป‰เบกเบนเบ™เบ–เบทเบเบญเปˆเบฒเบ™, เบšเบตเบšเบญเบฑเบ”, เปเบšเปˆเบ‡เบญเบญเบ, เปเบฅเป‰เบงเบšเบตเบšเบญเบฑเบ”เบญเบตเบเบ„เบฑเป‰เบ‡, เบ‚เบฝเบ™เบขเบนเปˆเบšเปˆเบญเบ™เปƒเบ”เบšเปˆเบญเบ™เปœเบถเปˆเบ‡ เปเบฅเบฐเบˆเบฑเบ”เบฎเบฝเบ‡เบ„เบทเบ™เปƒเปเปˆ. เบ™เบตเป‰เปเบกเปˆเบ™เบเบฒเบ™เบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบ—เบตเปˆเป€เบ„เบฑเปˆเบ‡เบ„เบฑเบ”เบเบงเปˆเบฒ.

เบ—เปˆเบฒเบ™เบกเบตเบชเบดเปˆเบ‡เบ—เบปเบ”เบฅเบญเบ‡เบ—เบตเปˆเป€เบญเบตเป‰เบ™เบงเปˆเบฒ resharding. เปเบกเปˆเบ™เบซเบเบฑเบ‡เบเบฑเบšเบ™เบฒเบ‡?

เบเบฑเบšเป„เบ›เปƒเบ™เบ›เบต 2017, เบ—เปˆเบฒเบ™เบกเบตเบชเบดเปˆเบ‡เบ—เบปเบ”เบฅเบญเบ‡เบ—เบตเปˆเป€เบญเบตเป‰เบ™เบงเปˆเบฒ resharding. เบกเบตเปเบกเป‰เบเบฐเบ—เบฑเป‰เบ‡เบ—เบฒเบ‡เป€เบฅเบทเบญเบเปƒเบ™ ClickHouse. เบ”เบฑเปˆเบ‡เบ—เบตเปˆเบ‚เป‰เบญเบเป€เบ‚เบปเป‰เบฒเปƒเบˆเบกเบฑเบ™, เบกเบฑเบ™เบšเปเปˆเป„เบ”เป‰เบญเบญเบ. เป€เบˆเบปเป‰เบฒเบชเบฒเบกเบฒเบ”เบšเบญเบเบ‚เป‰เบญเบเป„เบ”เป‰เบงเปˆเบฒเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบ™เบตเป‰เป€เบเบตเบ”เบ‚เบถเป‰เบ™? เบกเบฑเบ™เป€เบšเบดเปˆเบ‡เบ„เบทเบงเปˆเบฒเบกเบตเบ„เบงเบฒเบกเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบซเบผเบฒเบ.

เบšเบฑเบ™เบซเบฒเบ—เบฑเบ‡เบซเบกเบปเบ”เปเบกเปˆเบ™เบงเปˆเบฒเบ–เป‰เบฒเบซเบฒเบเบงเปˆเบฒเบกเบฑเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป„เบ”เป‰ reshard เบ‚เปเป‰เบกเบนเบ™เปƒเบ™เบชเบฐเบ–เบฒเบ™เบ—เบตเปˆ, synchronization เบชเบฐเบฅเบฑเบšเบชเบฑเบšเบŠเป‰เบญเบ™เบซเบผเบฒเบเปเบกเปˆเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เบเบฒเบ™เบ›เบฐเบฅเปเบฒเบกเบฐเบ™เบนเบ™เบตเป‰. เป€เบกเบทเปˆเบญเบžเบงเบเป€เบฎเบปเบฒเป€เบฅเบตเปˆเบกเป€เบšเบดเปˆเบ‡เบงเบดเบ—เบตเบเบฒเบ™ synchronization เบ™เบตเป‰เป€เบฎเบฑเบ”เบงเบฝเบ, เบกเบฑเบ™เป€เบซเบฑเบ™เป„เบ”เป‰เบŠเบฑเบ”เป€เบˆเบ™เบงเปˆเบฒเบกเบตเบšเบฑเบ™เบซเบฒเบžเบทเป‰เบ™เบ–เบฒเบ™. เปเบฅเบฐเบšเบฑเบ™เบซเบฒเบžเบทเป‰เบ™เบ–เบฒเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เบšเปเปˆเบžเบฝเบ‡เปเบ•เปˆเบ—เบดเบ”เบชเบฐเบ”เบต, เปเบ•เปˆเบ—เบฑเบ™เบ—เบตเบ—เบฑเบ™เปƒเบ”เป„เบ”เป‰เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ—เบตเปˆเบˆเบฐเบชเบฐเปเบ”เบ‡เบ•เบปเบ™เป€เบญเบ‡เปƒเบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เปƒเบ™เบฎเบนเบšเปเบšเบšเบ‚เบญเบ‡เบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เบญเบฐเบ—เบดเบšเบฒเบเป„เบ”เป‰เบ‡เปˆเบฒเบเบ”เบฒเบเบซเบผเบฒเบ - เบšเปเปˆเบกเบตเบซเบเบฑเบ‡เป€เบฎเบฑเบ”เบงเบฝเบ.

เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบšเปเบ—เบตเปˆเบˆเบฐเบฅเบงเบกเบ‚เปเป‰เบกเบนเบ™เบ—เบฑเบ‡เปเบปเบ”เป€เบ‚เบปเป‰เบฒเบเบฑเบ™เบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเบเป‰เบฒเบเบกเบฑเบ™เป„เบ›เปƒเบชเปˆเปเบœเปˆเบ™เบŠเป‰เบฒ?

เบ„เปเบฒโ€‹เบ–เบฒเบกโ€‹เบเปˆเบฝเบงโ€‹เบเบฑเบš TTL เบเบฑเบšโ€‹เบเบฒเบ™โ€‹เบเป‰เบฒเบโ€‹เป„เบ›โ€‹เบ—เบฒเบ‡โ€‹เป€เบฅเบทเบญเบ disk เบŠเป‰เบฒโ€‹เปƒเบ™โ€‹เบชเบฐโ€‹เบžเบฒเบšโ€‹เบเบฒเบ™โ€‹เบ‚เบญเบ‡โ€‹เบเบฒเบ™โ€‹เบฅเบงเบกโ€‹. เบกเบตเบงเบดเบ—เบตเปƒเบ”เปเบ”เปˆ, เบ™เบญเบเป€เปœเบทเบญเป„เบ›เบˆเบฒเบเบ—เบฒเบ‡ cron, เป€เบžเบทเปˆเบญเบฎเบงเบกเบžเบฒเบเบชเปˆเบงเบ™เบ—เบฑเบ‡เปเบปเบ”เป€เบ›เบฑเบ™เบญเบฑเบ™เปœเบถเปˆเบ‡ เบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเบเป‰เบฒเบเบžเบงเบเบกเบฑเบ™เป„เบ›เปƒเบชเปˆเปเบœเปˆเบ™เบŠเป‰เบฒเบšเป?

เบ„เปเบฒเบ•เบญเบšเบ‚เบญเบ‡เบ„เปเบฒเบ–เบฒเบกเปเบกเปˆเบ™เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰ somehow เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เบเบฒเบงเบ•เปˆเบญเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบซเบ™เบถเปˆเบ‡เบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเป‚เบญเบ™เปƒเบซเป‰เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒ - เบšเปเปˆ. เบ‚เป‰เบญเบเบšเปเปˆเบ„เบดเบ”เบงเปˆเบฒเบ™เบตเป‰เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบˆเปเบฒเป€เบ›เบฑเบ™. เบ—เปˆเบฒเบ™เบšเปเปˆ เบˆเบณ เป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบฅเบงเบกเบ—เบธเบเบžเบฒเบเบชเปˆเบงเบ™เป€เบ‚เบปเป‰เบฒเป€เบ›เบฑเบ™เบญเบฑเบ™เบ”เบฝเบง, เปเบ•เปˆเบžเบฝเบ‡เปเบ•เปˆเบ™เบฑเบšเบขเบนเปˆเปƒเบ™เบ„เบงเบฒเบกเบˆเบดเบ‡เบ—เบตเปˆเบงเปˆเบฒเบžเบงเบเบกเบฑเบ™เบˆเบฐเบ–เบทเบเป‚เบญเบ™เป„เบ›เบซเบฒเปเบœเปˆเบ™เบŠเป‰เบฒเป‚เบ”เบเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”.

เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบชเบญเบ‡เป€เบ‡เบทเปˆเบญเบ™เป„เบ‚เบชเปเบฒเบฅเบฑเบšเบเบปเบ”เบฅเบฐเบšเบฝเบšเบเบฒเบ™เป‚เบญเบ™. เบญเบฑเบ™เบ—เปเบฒเบญเบดเบ”เปเบกเปˆเบ™เบเป‰เบญเบ™เบงเปˆเบฒเบกเบฑเบ™เป€เบ•เบฑเบกเป„เบ›. เบ–เป‰เบฒเบŠเบฑเป‰เบ™เป€เบเบฑเบšเบ‚เปเป‰เบกเบนเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบกเบตเบžเบทเป‰เบ™เบ—เบตเปˆเบซเบงเปˆเบฒเบ‡เปœเป‰เบญเบเบเบงเปˆเบฒเป€เบ›เบตเป€เบŠเบฑเบ™เบ—เบตเปˆเปเบ™เปˆเบ™เบญเบ™, เบžเบงเบเป€เบฎเบปเบฒเป€เบฅเบทเบญเบเบญเบฑเบ™เปœเบถเปˆเบ‡เปเบฅเป‰เบงเบเป‰เบฒเบเบกเบฑเบ™เป„เบ›เปƒเบชเปˆเบšเปˆเบญเบ™เป€เบเบฑเบšเบกเป‰เบฝเบ™เบ—เบตเปˆเบŠเป‰เบฒเบฅเบปเบ‡. เบซเบผเบทเปเบ—เบ™เบ—เบตเปˆเบˆเบฐ, เบšเปเปˆเบŠเป‰เบฒ, เปเบ•เปˆเบญเบฑเบ™เบ•เปเปˆเป„เบ› - เบ•เบฒเบกเบ—เบตเปˆเบ—เปˆเบฒเบ™เบเปเบฒเบ™เบปเบ”.

เป€เบ‡เบทเปˆเบญเบ™เป„เบ‚เบ—เบตเบชเบญเบ‡เปเบกเปˆเบ™เบ‚เบฐเบซเบ™เบฒเบ”. เบกเบฑเบ™เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบเป‰เบฒเบเบ•เปˆเบญเบ™เปƒเบซเบเปˆ. เบ—เปˆเบฒเบ™โ€‹เบชเบฒโ€‹เบกเบฒเบ”โ€‹เบ›เบฑเบšโ€‹เบ‚เบญเบšโ€‹เป€เบ‚เบ”โ€‹เบ•เบฒเบกโ€‹เบžเบทเป‰เบ™โ€‹เบ—เบตเปˆโ€‹เบซเบงเปˆเบฒเบ‡โ€‹เปƒเบ™โ€‹เปเบœเปˆเบ™โ€‹เป„เบงโ€‹, เปเบฅเบฐโ€‹เบ‚เปเป‰โ€‹เบกเบนเบ™โ€‹เบˆเบฐโ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบเบฒเบ™โ€‹เป‚เบญเบ™โ€‹เบญเบฑเบ”โ€‹เบ•เบฐโ€‹เป‚เบ™โ€‹เบกเบฑเบ”โ€‹.

เบงเบดเบ—เบตเบเบฒเบ™เบเป‰เบฒเบเป„เบ›เบเบฑเบ‡ ClickHouse เบฎเบธเปˆเบ™เปƒเบซเบกเปˆเบ–เป‰เบฒเบšเปเปˆเบกเบตเบงเบดเบ—เบตเบเบฒเบ™เบเบงเบ”เบชเบญเบšเบ„เบงเบฒเบกเป€เบ‚เบปเป‰เบฒเบเบฑเบ™เป„เบ”เป‰เบฅเปˆเบงเบ‡เบซเบ™เป‰เบฒ?

เบซเบปเบงเบ‚เปเป‰เบ™เบตเป‰เป„เบ”เป‰เบ–เบทเบเบ›เบถเบเบชเบฒเบซเบฒเบฅเบทเป€เบ›เบฑเบ™เบ›เบปเบเบเบฐเบ•เบด เปƒเบ™เบเบฒเบ™เบชเบปเบ™เบ—เบฐเบ™เบฒเป‚เบ—เบฅเบฐเป€เบฅเบ ClickHouse เบ„เปเบฒเบ™เบถเบ‡เป€เบ–เบดเบ‡เบชเบฐเบšเบฑเบšเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™, เปเบฅเบฐเบเบฑเบ‡. เบกเบฑเบ™เบ›เบญเบ”เป„เบžเบ›เบฒเบ™เปƒเบ”เบ—เบตเปˆเบˆเบฐเบญเบฑเบšเป€เบเบฃเบ”เบˆเบฒเบเป€เบงเบตเบŠเบฑเปˆเบ™ 19.11 เป€เบ›เบฑเบ™ 19.16 เปเบฅเบฐ เบ•เบปเบงเบขเปˆเบฒเบ‡, เบˆเบฒเบ 19.16 เบซเบฒ 20.3. เบงเบดเบ—เบตเบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ”เบ—เบตเปˆเบˆเบฐเบเป‰เบฒเบเป„เบ›เบซเบฒเป€เบงเบตเบŠเบฑเบ™เปƒเบซเบกเปˆเป‚เบ”เบเบšเปเปˆเบชเบฒเบกเบฒเบ”เบเบงเบ”เบชเบญเบšเบ„เบงเบฒเบกเป€เบ‚เบปเป‰เบฒเบเบฑเบ™เป„เบ”เป‰เปƒเบ™ sandbox เบฅเปˆเบงเบ‡เบซเบ™เป‰เบฒ?

เบกเบตเบเบปเบ”เบฅเบฐเบšเบฝเบš "เบ—เบญเบ‡" เบซเบผเบฒเบเบขเบนเปˆเบ—เบตเปˆเบ™เบตเป‰. เบซเบ™เป‰เบฒเบ—เปเบฒเบญเบดเบ” - เบญเปˆเบฒเบ™ changelog เป„เบ”เป‰. เบกเบฑเบ™เบกเบตเบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆ, เปเบ•เปˆเบกเบตเบงเบฑเบเปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบเบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ—เบตเปˆเบšเปเปˆเบชเบฒเบกเบฒเบ”เป€เบ‚เบปเป‰เบฒเบเบฑเบ™เป„เบ”เป‰. เบขเปˆเบฒเบ›เบฐเบ•เบดเบšเบฑเบ”เบˆเบธเบ”เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เป€เบ›เบฑเบ™เบ—เบธเบ‡เบชเบตเปเบ”เบ‡. เบ›เบปเบเบเบฐเบ•เบดเปเบฅเป‰เบงเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เบ„เบงเบฒเบกเบšเปเปˆเป€เบ‚เบปเป‰เบฒเบเบฑเบ™เป„เบ”เป‰เป€เบฅเบฑเบเบ™เป‰เบญเบเบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบเบฒเบ™เบ—เปเบฒเบ‡เบฒเบ™เบ‚เบญเบ‡เบ‚เบญเบšเบšเบฒเบ‡เบ—เบตเปˆเบ—เปˆเบฒเบ™เบญเบฒเบ”เบˆเบฐเบšเปเปˆเป„เบ”เป‰เปƒเบŠเป‰.

เบญเบฑเบ™เบ—เบตเบชเบญเบ‡, เบ–เป‰เบฒเบšเปเปˆเบกเบตเบงเบดเบ—เบตเบเบฒเบ™เบเบงเบ”เบชเบญเบšเบ„เบงเบฒเบกเป€เบ‚เบปเป‰เบฒเบเบฑเบ™เป„เบ”เป‰เปƒเบ™ sandbox, เปเบฅเบฐเบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡เบเบฒเบ™เบœเบฐเบฅเบดเบ”เปƒเบ™เบ—เบฑเบ™เบ—เบต, เบ„เปเบฒเปเบ™เบฐเบ™เปเบฒเปเบกเปˆเบ™เบงเปˆเบฒเบ—เปˆเบฒเบ™เบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป€เบฎเบฑเบ”เปเบ™เบงเบ™เบตเป‰. เบ—เปเบฒเบญเบดเบ”เบชเป‰เบฒเบ‡ sandbox เปเบฅเบฐเบ—เบปเบ”เบชเบญเบš. เบ–เป‰เบฒเบšเปเปˆเบกเบตเบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบเบฒเบ™เบ—เบปเบ”เบชเบญเบš, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบ—เปˆเบฒเบ™เบกเบฑเบเบˆเบฐเบšเปเปˆเบกเบตเบšเปเบฅเบดเบชเบฑเบ”เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆเบซเบผเบฒเบ, เบŠเบถเปˆเบ‡เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ„เบฑเบ”เบฅเบญเบเบ‚เปเป‰เบกเบนเบ™เบšเบฒเบ‡เบขเปˆเบฒเบ‡เปƒเบชเปˆเปเบฅเบฑเบšเบ—เบฑเบญเบšเบ‚เบญเบ‡เบ—เปˆเบฒเบ™เปเบฅเบฐเปƒเบซเป‰เปเบ™เปˆเปƒเบˆเบงเปˆเบฒเบ—เบธเบเบขเปˆเบฒเบ‡เป€เบฎเบฑเบ”เบงเบฝเบเบขเปˆเบฒเบ‡เบ–เบทเบเบ•เป‰เบญเบ‡. เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบเบปเบเบ•เบปเบงเปเบšเบšเบˆเปเบฒเบฅเบญเบ‡เบซเบผเบฒเบเบญเบฑเบ™เบขเบนเปˆเปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เบ‚เบญเบ‡เบ—เปˆเบฒเบ™. เบซเบผเบทเบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบญเบปเบฒเป€เบงเบตเบŠเบฑเบ™เปƒเบซเบกเปˆเบขเบนเปˆเบšเปˆเบญเบ™เปƒเบเป‰เบ„เบฝเบ‡เปเบฅเบฐเบญเบฑเบšเป‚เบซเบฅเบ”เบ‚เปเป‰เบกเบนเบ™เบšเบฒเบ‡เบขเปˆเบฒเบ‡เบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™ - เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, เบชเป‰เบฒเบ‡เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบเบฒเบ™เบ—เบปเบ”เบชเบญเบš improvised.

เบเบปเบ”เบฅเบฐเบšเบฝเบšเบญเบตเบเบญเบฑเบ™เบซเบ™เบถเปˆเบ‡เปเบกเปˆเบ™เบšเปเปˆเบ›เบฑเบšเบ›เบธเบ‡เบชเปเบฒเบฅเบฑเบšเบซเบ™เบถเปˆเบ‡เบญเบฒเบ—เบดเบ”เบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เบ›เปˆเบญเบเป€เบงเบตเบŠเบฑเบ™เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบเบฒเบ™เบˆเบฑเบšเปเบกเบ‡เป„เบกเป‰เปƒเบ™เบเบฒเบ™เบœเบฐเบฅเบดเบ”เปเบฅเบฐเบเบฒเบ™เปเบเป‰เป„เบ‚เบ”เปˆเบงเบ™เบ•เปเปˆเบกเบฒ. เปƒเบซเป‰เบ„เบดเบ”เบญเบญเบเบˆเปเบฒเบ™เบงเบ™เบชเบฐเบšเบฑเบš ClickHouse เป€เบžเบทเปˆเบญเบšเปเปˆเปƒเบซเป‰เบชเบฑเบšเบชเบปเบ™.

เบกเบตเป€เบงเบตเบŠเบฑเบ™ 20.3.4. เบ•เบปเบงเป€เบฅเบ 20 เบŠเบตเป‰เปƒเบซเป‰เป€เบซเบฑเบ™เป€เบ–เบดเบ‡เบ›เบตเบ‚เบญเบ‡เบเบฒเบ™เบœเบฐเบฅเบดเบ” - 2020. เบˆเบฒเบเบˆเบธเบ”เบ‚เบญเบ‡เบชเบดเปˆเบ‡เบ—เบตเปˆเบขเบนเปˆเบžเบฒเบเปƒเบ™, เบ™เบตเป‰เบšเปเปˆเบชเปเบฒเบ„เบฑเบ™, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบšเปเปˆเป€เบญเบปเบฒเปƒเบˆเปƒเบชเปˆเบเบฑเบšเบกเบฑเบ™. เบ•เปเปˆเป„เบ› - 20.3. เบžเบงเบเป€เบฎเบปเบฒเป€เบžเบตเปˆเบกเบ•เบปเบงเป€เบฅเบเบ—เบตเบชเบญเบ‡ - เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ™เบตเป‰ 3 - เบ—เบธเบเป†เบ„เบฑเป‰เบ‡เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบ›เปˆเบญเบเบ•เบปเบงเบ›เปˆเบญเบเบญเบญเบเบกเบฒเบ”เป‰เบงเบเบšเบฒเบ‡เบซเบ™เป‰เบฒเบ—เบตเปˆเปƒเบซเบกเปˆ. เบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เป€เบžเบตเปˆเบกเบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบšเบฒเบ‡เบขเปˆเบฒเบ‡เปƒเบซเป‰เบเบฑเบš ClickHouse, เบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เป€เบžเบตเปˆเบกเบˆเปเบฒเบ™เบงเบ™เบ™เบตเป‰. เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, เปƒเบ™เบฎเบธเปˆเบ™ 20.4 ClickHouse เบˆเบฐเป€เบฎเบฑเบ”เบงเบฝเบเบ”เบตเบเบงเปˆเบฒ. เบ•เบปเบงเป€เบฅเบเบ—เบตเบชเบฒเบกเปเบกเปˆเบ™ 20.3.4. เบ™เบตเป‰เปเบกเปˆเบ™ 4 เบˆเปเบฒเบ™เบงเบ™เบเบฒเบ™เบญเบญเบ patch เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเป„เบ”เป‰เป€เบžเบตเปˆเบกเบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เปƒเบซเบกเปˆ, เปเบ•เปˆเปเบเป‰เป„เบ‚เบšเบฒเบ‡เบ‚เปเป‰เบšเบปเบเบžเปˆเบญเบ‡. เปเบฅเบฐ 4 เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เป€เบฎเบฑเบ”เบชเบตเปˆเบ„เบฑเป‰เบ‡.

เบขเปˆเบฒเบ„เบดเบ”เบงเปˆเบฒเบ™เบตเป‰เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆเบ‚เบตเป‰เบฎเป‰เบฒเบ. เบ›เบปเบเบเบฐเบ•เบดเปเบฅเป‰เบงเบœเบนเป‰เปƒเบŠเป‰เบชเบฒเบกเบฒเบ”เบ•เบดเบ”เบ•เบฑเป‰เบ‡เป€เบงเบตเบŠเบฑเบ™เบซเบผเป‰เบฒเบชเบธเบ”เปเบฅเบฐเบกเบฑเบ™เบˆเบฐเป€เบฎเบฑเบ”เบงเบฝเบเป‚เบ”เบเบšเปเปˆเบกเบตเบšเบฑเบ™เบซเบฒเปƒเบ”เป†เบเบฑเบšเป€เบงเบฅเบฒ uptime เบ•เปเปˆเบ›เบต. เปเบ•เปˆเบˆเบดเบ™เบ•เบฐเบ™เบฒเบเบฒเบ™เบงเปˆเบฒเปƒเบ™เบšเบฒเบ‡เบซเบ™เป‰เบฒเบ—เบตเปˆเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เบธเบ‡เปเบ•เปˆเบ‡ bitmaps, เป€เบŠเบดเปˆเบ‡เป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบกเป‚เบ”เบ comrades เบˆเบตเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ, เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ‚เบญเบ‡ crashes เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบœเปˆเบฒเบ™เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เบ—เบตเปˆเบšเปเปˆเบ–เบทเบเบ•เป‰เบญเบ‡. เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบ„เบงเบฒเบกเบฎเบฑเบšเบœเบดเบ”เบŠเบญเบšเปƒเบ™เบเบฒเบ™เปเบเป‰เป„เบ‚เบ™เบตเป‰. เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบ›เปˆเบญเบเป€เบงเบตเบŠเบฑเบ™ patch เปƒเบซเบกเปˆเปเบฅเบฐ ClickHouse เบˆเบฐเบเบฒเบเป€เบ›เบฑเบ™เบ„เบงเบฒเบกเบซเบกเบฑเป‰เบ™เบ„เบปเบ‡เบซเบผเบฒเบ.

เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบกเบต ClickHouse เปเบฅเปˆเบ™เบขเบนเปˆเปƒเบ™เบเบฒเบ™เบœเบฐเบฅเบดเบ”, เปเบฅเบฐเบฎเบธเปˆเบ™เปƒเบซเบกเปˆเบ‚เบญเบ‡ ClickHouse เบญเบญเบเบกเบฒเบกเบตเบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เป€เบžเบตเปˆเบกเป€เบ•เบตเบก - เบ•เบปเบงเบขเปˆเบฒเบ‡, 20.4.1 เปเบกเปˆเบ™เบ„เบฑเป‰เบ‡เบ—เปเบฒเบญเบดเบ”เบ—เบตเปˆเบชเบธเบ”, เบขเปˆเบฒเบŸเป‰เบฒเบงเบ—เบตเปˆเบˆเบฐเป€เบญเบปเบฒเบกเบฑเบ™เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบเบฒเบ™เบœเบฐเบฅเบดเบ”เปƒเบ™เบกเบทเป‰เบ—เปเบฒเบญเบดเบ”. เป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบกเบฑเบ™เบˆเบถเปˆเบ‡เบˆเปเบฒเป€เบ›เบฑเบ™? เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบšเปเปˆเป„เบ”เป‰เปƒเบŠเป‰ ClickHouse เปเบฅเป‰เบง, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ•เบดเบ”เบ•เบฑเป‰เบ‡เบกเบฑเบ™เป„เบ”เป‰, เปเบฅเบฐเบชเปˆเบงเบ™เบซเบผเบฒเบเปเบกเปˆเบ™เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เบˆเบฐเบ”เบต. เปเบ•เปˆเบ–เป‰เบฒ ClickHouse เป€เบฎเบฑเบ”เบงเบฝเบเบขเปˆเบฒเบ‡เบซเบกเบฑเป‰เบ™เบ„เบปเบ‡เปเบฅเป‰เบง, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เปƒเบซเป‰เบ•เบดเบ”เบ•เบฒเบกเป€เบšเบดเปˆเบ‡ patches เปเบฅเบฐเบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡เป€เบžเบทเปˆเบญเป€เบšเบดเปˆเบ‡เบšเบฑเบ™เบซเบฒเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบเปเบฒเบฅเบฑเบ‡เปเบเป‰เป„เบ‚.

Kirill Shvakov: เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบขเบฒเบเบˆเบฐเป€เบžเบตเปˆเบกเป€เบฅเบฑเบเบ™เป‰เบญเบเบเปˆเบฝเบงเบเบฑเบšเบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบเบฒเบ™เบ—เบปเบ”เบชเบญเบš. เบšเบธเบเบ„เบปเบ™เบ—เบธเบเบ„เบปเบ™เบกเบตเบ„เบงเบฒเบกเบขเป‰เบฒเบ™เบเบปเบงเบซเบผเบฒเบเบ‚เบญเบ‡เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเปเบฅเบฐเบชเปเบฒเบฅเบฑเบšเบšเบฒเบ‡เป€เบซเบ”เบœเบปเบ™เบžเบงเบเป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเป€เบŠเบทเปˆเบญเบงเปˆเบฒเบ–เป‰เบฒเบซเบฒเบเบงเปˆเบฒเบ—เปˆเบฒเบ™เบกเบตเบเบธเปˆเบก ClickHouse เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆเบซเบผเบฒเบ, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบ„เบงเบ™เบˆเบฐเบšเปเปˆเบซเบ™เป‰เบญเบเบซเบผเบทเบขเปˆเบฒเบ‡เบซเบ™เป‰เบญเบเบชเบดเบšเป€เบ—เบปเปˆเบฒ. เบกเบฑเบ™เบšเปเปˆเป€เบ›เบฑเบ™เปเบšเบšเบ™เบฑเป‰เบ™เป€เบฅเบตเบ.

เบ‚เป‰เบญเบเบชเบฒเบกเบฒเบ”เบšเบญเบเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เบˆเบฒเบเบ•เบปเบงเบขเปˆเบฒเบ‡เบ‚เบญเบ‡เบ‚เป‰เบญเบเป€เบญเบ‡. เบ‚เป‰เบญเบเบกเบตเป‚เบ„เบ‡เบเบฒเบ™, เปเบฅเบฐเบกเบต ClickHouse. เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเปเบกเปˆเบ™เบžเบฝเบ‡เปเบ•เปˆเบชเปเบฒเบฅเบฑเบšเป€เบ‚เบปเบฒ - เบ™เบตเป‰เปเบกเปˆเบ™เป€เบ„เบทเปˆเบญเบ‡ virtual เบ‚เบฐเบซเบ™เบฒเบ”เบ™เป‰เบญเบเปƒเบ™ Hetzner เบชเปเบฒเบฅเบฑเบšเบŠเบฒเบงเป€เบญเบตเป‚เบฃ, เบšเปˆเบญเบ™เบ—เบตเปˆเบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เปเบกเปˆเบ™ deployed. เป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เบชเบดเปˆเบ‡เบ™เบตเป‰, เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เบขเปˆเบฒเบ‡เป€เบ•เบฑเบกเบ—เบตเปˆเปƒเบ™ Ansible, เปเบฅเบฐเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เปƒเบ™เบซเบผเบฑเบเบเบฒเบ™, เบกเบฑเบ™เบšเปเปˆเบกเบตเบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡เบ—เบตเปˆเบˆเบฐเป„เบ›เบšเปˆเบญเบ™เปƒเบ” - เบเบฑเบšเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ‚เบญเบ‡เบฎเบฒเบ”เปเบงเบซเบผเบทเบžเบฝเบ‡เปเบ•เปˆเปƒเบŠเป‰เปƒเบ™เป€เบ„เบทเปˆเบญเบ‡ virtual.

เบชเบดเปˆเบ‡เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เป„เบ”เป‰? เบกเบฑเบ™เบˆเบฐเป€เบ›เบฑเบ™เบเบฒเบ™เบ”เบตเบ—เบตเปˆเบˆเบฐเปƒเบซเป‰เบ•เบปเบงเบขเปˆเบฒเบ‡เปƒเบ™เป€เบญเบเบฐเบชเบฒเบ™ ClickHouse เบเปˆเบฝเบงเบเบฑเบšเบงเบดเบ—เบตเบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡เบเบธเปˆเบกเบ‚เบฐเบซเบ™เบฒเบ”เบ™เป‰เบญเบเปƒเบ™เป€เบฎเบทเบญเบ™เบ‚เบญเบ‡เป€เบˆเบปเป‰เบฒเป€เบญเบ‡ - เปƒเบ™ Docker, เปƒเบ™ LXC, เบšเบฒเบ‡เบ—เบตเบญเบฒเบ”เบˆเบฐเบชเป‰เบฒเบ‡ Ansible playbook, เป€เบžเบฒเบฐเบงเปˆเบฒเบ„เบปเบ™เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เบกเบตเบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™. เบ™เบตเป‰เบˆเบฐเบ‡เปˆเบฒเบเบซเบผเบฒเบ. เป€เบกเบทเปˆเบญเบ—เปˆเบฒเบ™เป€เบญเบปเบฒ เปเบฅเบฐเบ™เบณเปƒเบŠเป‰เบเบธเปˆเบกเปƒเบ™เบซเป‰เบฒเบ™เบฒเบ—เบต, เบกเบฑเบ™เบ‡เปˆเบฒเบเบเบงเปˆเบฒเบ—เบตเปˆเบˆเบฐเบžเบฐเบเบฒเบเบฒเบกเบซเบฒเบญเบฑเบ™เปƒเบ”เบญเบฑเบ™เปœเบถเปˆเบ‡เบญเบญเบ. เบ™เบตเป‰เปเบกเปˆเบ™เบชเบฐเบ”เบงเบเบเบงเปˆเบฒ, เป€เบžเบฒเบฐเบงเปˆเบฒเบเบฒเบ™เบกเป‰เบงเบ™เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบฎเบธเปˆเบ™เบเบฒเบ™เบœเบฐเบฅเบดเบ”เบ—เบตเปˆเบ—เปˆเบฒเบ™เบšเปเปˆเป„เบ”เป‰เบ—เบปเบ”เบชเบญเบšเปเบกเปˆเบ™เป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡เป„เบ›เบซเบฒเบšเปˆเบญเบ™เปƒเบ”. เบšเบฒเบ‡เบ„เบฑเป‰เบ‡เบกเบฑเบ™เป€เบฎเบฑเบ”เบงเบฝเบเปเบฅเบฐเบšเบฒเบ‡เบ„เบฑเป‰เบ‡เบกเบฑเบ™เบšเปเปˆเป„เบ”เป‰. เปเบฅเบฐเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบ„เบงเบฒเบกเบซเบงเบฑเบ‡เบชเปเบฒเบฅเบฑเบšเบ„เบงเบฒเบกเบชเปเบฒเป€เบฅเบฑเบ”เปเบกเปˆเบ™เบšเปเปˆเบ”เบต.

Maxim Kotyakov, เบงเบดเบชเบฐเบงเบฐเบเบญเบ™ backend เบญเบฒเบงเบธเป‚เบช Avito: เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบˆเบฐเป€เบžเบตเปˆเบกเป€เบฅเบฑเบเบ™เป‰เบญเบเบเปˆเบฝเบงเบเบฑเบšเบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบˆเบฒเบเบŠเบธเบ”เบ‚เบญเบ‡เบšเบฑเบ™เบซเบฒเบ—เบตเปˆเบšเปเบฅเบดเบชเบฑเบ”เปƒเบซเบเปˆเบ›เบฐเป€เบŠเบตเบ™เบซเบ™เป‰เบฒ. เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบเบธเปˆเบกเบเบฒเบ™เบเบญเบกเบฎเบฑเบš ClickHouse เป€เบ•เบฑเบกเบฎเบนเบšเปเบšเบš; เบเบธเปˆเบกเบ™เบตเป‰เบ–เบทเบเบ™เบณเปƒเบŠเป‰เบขเบนเปˆเปƒเบ™เบ–เบฑเบ‡เป€เบเบฑเบšเบ™เป‰เบณเบ—เบตเปˆเบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡เบžเปเบชเบปเบกเบ„เบงเบ™เบ—เบตเปˆเบกเบตเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบขเปˆเบฒเบ‡เปœเป‰เบญเบเบชเบธเบ”. เบžเบงเบเป€เบฎเบปเบฒเบ‚เบฝเบ™เบ‚เปเป‰เบกเบนเบ™เบเบฒเบ™เบœเบฐเบฅเบดเบ”เบˆเปเบฒเบ™เบงเบ™เบซเบ™เบถเปˆเบ‡เบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™, เป‚เบŠเบเบ”เบตเบ—เบตเปˆเบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบตเปˆเบˆเบฐ replicate เบ™เป‰เปเบฒเปƒเบ™ Kafka. เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เบกเบต synchronized เปเบฅเบฐเบ‚เบฐเบซเบ™เบฒเบ” - เบ—เบฑเบ‡เปƒเบ™เปเบ‡เปˆเบ‚เบญเบ‡เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปเบฅเบฐเบเบฒเบ™เป„เบซเบผเป€เบ‚เบปเป‰เบฒ, เปเบฅเบฐ, เปƒเบ™เบ—เบฒเบ‡เบ—เบดเบ”เบชเบฐเบ”เบต, เบชเบดเปˆเบ‡เบญเบทเปˆเบ™เป†เบ—เบฑเบ‡เบซเบกเบปเบ”เปเบกเปˆเบ™เป€เบ—เบปเปˆเบฒเบ—เบฝเบกเบเบฑเบ™, เบกเบฑเบ™เบ„เบงเบ™เบˆเบฐเบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เบปเบงเป€เบŠเบฑเปˆเบ™เบเบฒเบ™เบœเบฐเบฅเบดเบ”เบ•เบฒเบก metrics. เบ—เบธเบเบขเปˆเบฒเบ‡เบ—เบตเปˆเบญเบฒเบ”เบˆเบฐเป€เบเบตเบ”เบฅเบฐเป€เบšเบตเบ”เปเบกเปˆเบ™เป„เบ”เป‰เบ–เบทเบเบกเป‰เบงเบ™เปƒเบชเปˆเบšเปˆเบญเบ™เบ•เบฑเป‰เบ‡เปเบซเปˆเบ‡เบ™เบตเป‰ เปเบฅเบฐเบ›เบฐเป„เบงเป‰เบšเปˆเบญเบ™เบ™เบฑเป‰เบ™เป€เบ›เบฑเบ™เป€เบงเบฅเบฒเบซเบผเบฒเบเบกเบทเป‰เบˆเบปเบ™เบเบงเปˆเบฒเบˆเบฐเบเบฝเบกเบžเป‰เบญเบก. เปเบ•เปˆเบ•เบฒเบกเบ—เปเบฒเบกเบฐเบŠเบฒเบ”, เบเบฒเบ™เปเบเป‰เป„เบ‚เบ™เบตเป‰เปเบกเปˆเบ™เบฅเบฒเบ„เบฒเปเบžเบ‡, เบกเบตเบ„เบงเบฒเบกเบซเบเบธเป‰เบ‡เบเบฒเบเปเบฅเบฐเบกเบตเบ„เปˆเบฒเปƒเบŠเป‰เบˆเปˆเบฒเบเบ—เบตเปˆเบšเปเปˆเปเบกเปˆเบ™เบชเบนเบ™.

Alexey Milovidov: เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบˆเบฐเบšเบญเบเบ—เปˆเบฒเบ™เบงเปˆเบฒเบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบ‚เบญเบ‡เบซเบกเบนเปˆเป€เบžเบทเปˆเบญเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบˆเบฒเบ Yandex.Metrica เป€เบ›เบฑเบ™เปเบ™เบงเปƒเบ”. เบเบธเปˆเบกเบซเบ™เบถเปˆเบ‡เบกเบต 600-odd servers, เบญเบทเปˆเบ™เบกเบต 360, เปเบฅเบฐเบกเบต clusters เบ—เบตเบชเบฒเบกเปเบฅเบฐเบซเบผเบฒเบ. เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบชเปเบฒเบฅเบฑเบšเบซเบ™เบถเปˆเบ‡เปƒเบ™เบ™เบฑเป‰เบ™เปเบกเปˆเบ™เบžเบฝเบ‡เปเบ•เปˆเบชเบญเบ‡ shards เบ—เบตเปˆเบกเบตเบชเบญเบ‡ replicas เปƒเบ™เปเบ•เปˆเบฅเบฐ. เป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบชเบญเบ‡ shard? เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เป€เบˆเบปเป‰เบฒเบšเปเปˆเป„เบ”เป‰เบขเบนเปˆเบ„เบปเบ™เบ”เบฝเบง. เปเบฅเบฐเบ„เบงเบ™เบˆเบฐเบกเบต replicas เบ„เบทเบเบฑเบ™. เบžเบฝเบ‡เปเบ•เปˆเบˆเปเบฒเบ™เบงเบ™เบ•เปเบฒเปˆเบชเบธเบ”เบ—เบตเปˆเปเบ™เปˆเบ™เบญเบ™เบงเปˆเบฒเบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบˆเปˆเบฒเบเป„เบ”เป‰.

เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบ™เบตเป‰เบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบเบงเบ”เป€เบšเบดเปˆเบ‡เบงเปˆเบฒเบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบ‚เบญเบ‡เบ—เปˆเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบซเบผเบทเบšเปเปˆเปเบฅเบฐเบ–เป‰เบฒเบกเบตเบชเบดเปˆเบ‡เปƒเบ”เปเบ”เปˆเบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เบ–เบทเบเบ—เปเบฒเบฅเบฒเบ. เปเบ•เปˆเป€เบฅเบทเป‰เบญเบเป†เบšเบฑเบ™เบซเบฒเป€เบเบตเบ”เบ‚เบทเป‰เบ™เบ‚เบญเบ‡เบฅเบฑเบเบชเบฐเบ™เบฐเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เบซเบกเบปเบ”, เป€เบกเบทเปˆเบญเบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เป€เบฎเบฑเบ”เบงเบฝเบ, เปเบ•เปˆเบกเบตเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เป€เบฅเบฑเบเบ™เป‰เบญเบเปƒเบ™เบเบฒเบ™เป‚เบซเบผเบ”.

เปƒเบซเป‰เบ‚เป‰เบญเบเบเบปเบเบ•เบปเบงเบขเปˆเบฒเบ‡เปƒเบซเป‰เป€เบˆเบปเป‰เบฒ. เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบ•เบดเบ”เบ•เบฑเป‰เบ‡ ClickHouse เป€เบงเบตเบŠเบฑเบ™เปƒเปเปˆ. เบกเบฑเบ™เป„เบ”เป‰เบ–เบทเบเบˆเบฑเบ”เบžเบตเบกเบกเบฒเบขเบนเปˆเปƒเบ™เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบเบฒเบ™เบ—เบปเบ”เบชเบญเบš, เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เป„เบ”เป‰เบ–เบทเบเบชเปเบฒเป€เบฅเบฑเบ”เปƒเบ™ Yandex.Metrica เบ•เบปเบงเบ‚เบญเบ‡เบกเบฑเบ™เป€เบญเบ‡, เป€เบŠเบดเปˆเบ‡เบ›เบฝเบšเบ—เบฝเบšเบ‚เปเป‰เบกเบนเบ™เปƒเบ™เบฎเบธเปˆเบ™เป€เบเบปเปˆเบฒเปเบฅเบฐเปƒเบซเบกเปˆ, เปเบฅเปˆเบ™เบ—เปเปˆเบ—เบฑเบ‡เบซเบกเบปเบ”. เปเบฅเบฐเปเบ™เปˆเบ™เบญเบ™, เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบชเบตเบ‚เบฝเบงเบ‚เบญเบ‡ CI เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ. เบ–เป‰เบฒเบšเปเปˆเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบšเปเปˆเป„เบ”เป‰เบชเบฐเป€เบซเบ™เบตเบชเบฐเบšเบฑเบšเบ™เบตเป‰.

เบ—เบธเบเบขเปˆเบฒเบ‡เปเบกเปˆเบ™เบ”เบต. เบžเบงเบเป€เบฎเบปเบฒเบเปเบฒเบฅเบฑเบ‡เป€เบฅเบตเปˆเบกเบเป‰เบฒเบงเป„เบ›เบชเบนเปˆเบเบฒเบ™เบœเบฐเบฅเบดเบ”. เบ‚เป‰เบญเบเป„เบ”เป‰เบฎเบฑเบšเบ‚เปเป‰เบ„เบงเบฒเบกเบงเปˆเบฒเบเบฒเบ™เป‚เบซเบผเบ”เปƒเบ™เบเบฒเบŸเป„เบ”เป‰เป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™เบซเบผเบฒเบเบ„เบฑเป‰เบ‡. เบžเบงเบเป€เบฎเบปเบฒเบเปเบฒเบฅเบฑเบ‡เบเบฑเบšเบ„เบทเบ™เบชเบฐเบšเบฑเบš. เบ‚เป‰เบญเบเป€เบšเบดเปˆเบ‡เป€เบชเบฑเป‰เบ™เบชเบฐเปเบ”เบ‡เปเบฅเบฐเป€เบšเบดเปˆเบ‡: เบเบฒเบ™เป‚เบซเบผเบ”เบ•เบปเบงเบˆเบดเบ‡เป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™เบซเบผเบฒเบเบ„เบฑเป‰เบ‡เปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เป€เบ›เบตเบ”เบ•เบปเบง, เปเบฅเบฐเบซเบผเบธเบ”เบฅเบปเบ‡เบ„เบทเบ™เป€เบกเบทเปˆเบญเบžเบงเบเป€เบ‚เบปเบฒเบกเป‰เบงเบ™เบญเบญเบ. เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบžเบงเบเป€เบฎเบปเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™ rolling เบเบฑเบšเบ„เบทเบ™เป„เบ›เบšเปˆเบญเบ™เบชเบฐเบšเบฑเบš. เปเบฅเบฐเบเบฒเบ™เป‚เบซเบผเบ”เป„เบ”เป‰เป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™เปƒเบ™เบ—เบฒเบ‡เบ”เบฝเบงเบเบฑเบ™เปเบฅเบฐเบซเบผเบธเบ”เบฅเบปเบ‡เปƒเบ™เบ—เบฒเบ‡เบ”เบฝเบงเบเบฑเบ™. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบเบฒเบ™เบชเบฐเบซเบฅเบธเบšเปเบกเปˆเบ™เบ™เบตเป‰: เบเบฒเบ™เป‚เบซเบผเบ”เป„เบ”เป‰เป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบเบฒเบ™เบˆเบฑเบ”เบงเบฒเบ‡, เบšเปเปˆเบกเบตเบซเบเบฑเบ‡เปเบ›เบเปƒเบˆ.

เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบกเบฑเบ™เป€เบ›เบฑเบ™เบเบฒเบ™เบเบฒเบเบ—เบตเปˆเบˆเบฐเบŠเบฑเบเบŠเบงเบ™เปƒเบซเป‰เป€เบžเบทเปˆเบญเบ™เบฎเปˆเบงเบกเบ‡เบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡เบชเบฐเบšเบฑเบšเปƒเบซเบกเปˆ. เบ‚เป‰เบญเบเป€เบงเบปเป‰เบฒเบงเปˆเบฒ: "เบšเปเปˆเป€เบ›เบฑเบ™เบซเบเบฑเบ‡, เป€เบฅเบทเปˆเบญเบ™เบญเบญเบ. เบฎเบฑเบเบชเบฒเบ™เบดเป‰เบงเบกเบทเบ‚เบญเบ‡เบ—เปˆเบฒเบ™เบ‚เป‰เบฒเบก, เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เบˆเบฐเป€เบฎเบฑเบ”เบงเบฝเบ. เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบเบฒเบ™เป‚เบซเบผเบ”เปƒเบ™เบเบฒเบŸเป„เบ”เป‰เป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™, เปเบ•เปˆเบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เปเบกเปˆเบ™เบ”เบต. เบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™." เป‚เบ”เบเบ—เบปเปˆเบงเป„เบ›, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เป€เบฎเบฑเบ”เบชเบดเปˆเบ‡เบ™เบตเป‰, เปเบฅเบฐเบ™เบฑเป‰เบ™เปเบกเปˆเบ™เบกเบฑเบ™ - เบชเบฐเบšเบฑเบšเป„เบ”เป‰เบ–เบทเบเบ›เปˆเบญเบเบญเบญเบเบกเบฒเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบœเบฐเบฅเบดเบ”. เปเบ•เปˆเป€เบเบทเบญเบšเบ—เบธเบเบฎเบนเบšเปเบšเบšเบšเบฑเบ™เบซเบฒเบ—เบตเปˆเบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™เป€เบเบตเบ”เบ‚เบทเป‰เบ™.

Kill query เปเบกเปˆเบ™ supposed เบ—เบตเปˆเบˆเบฐเบ‚เป‰เบฒ queries, เปเบ•เปˆเบกเบฑเบ™เบšเปเปˆ. เป€เบ›เบฑเบ™เบซเบเบฑเบ‡?

เบœเบนเป‰เปƒเบŠเป‰, เบšเบฒเบ‡เบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เบ™เบฑเบเบงเบดเป€เบ„เบฒเบฐ, เป„เบ”เป‰เบกเบฒเบซเบฒเบ‚เป‰เบญเบเปเบฅเบฐเบชเป‰เบฒเบ‡เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ—เบตเปˆเป€เบฎเบฑเบ”เปƒเบซเป‰เบเบธเปˆเบก ClickHouse เบ‚เบญเบ‡เบ‚เป‰เบญเบ. เบšเบฒเบ‡ node เบซเบผเบท cluster เบ—เบฑเบ‡เบซเบกเบปเบ”, เบ‚เบถเป‰เบ™เบเบฑเบšเบเบฒเบ™ replica เบซเบผเบท shard เบ—เบตเปˆเบฎเป‰เบญเบ‡เบ‚เปเป„เบ›. เบ‚เป‰เบญเบเป€เบซเบฑเบ™เบงเปˆเบฒเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™ CPU เบ—เบฑเบ‡เปเบปเบ”เบขเบนเปˆเปƒเบ™เป€เบŠเบตเบšเป€เบงเบตเบ™เบตเป‰เบขเบนเปˆเปƒเบ™เบŠเบฑเป‰เบ™เบงเบฒเบ‡, เบ—เบธเบเบขเปˆเบฒเบ‡เปเบกเปˆเบ™เบชเบตเปเบ”เบ‡. เปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™, ClickHouse เบ•เบปเบงเบ‚เบญเบ‡เบกเบฑเบ™เป€เบญเบ‡เบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เป. เปเบฅเบฐเบ‚เป‰เบญเบเบ‚เบฝเบ™เบงเปˆเบฒ: "เบเบฐเบฅเบธเบ™เบฒเบชเบฐเปเบ”เบ‡เปƒเบซเป‰เบ‚เป‰เบญเบ, เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ‚เบฐเบšเบงเบ™เบเบฒเบ™, เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบญเบฑเบ™เปƒเบ”เบ—เบตเปˆเป€เบฎเบฑเบ”เปƒเบซเป‰เบ„เบงเบฒเบกเบšเป‰เบฒเบ™เบตเป‰."

เบ‚เป‰เบญเบเบžเบปเบšเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ™เบตเป‰เปเบฅเบฐเบ‚เบฝเบ™เบ‚เป‰เบฒเบกเบฑเบ™. เปเบฅเบฐเบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป€เบซเบฑเบ™เบงเปˆเบฒเบšเปเปˆเบกเบตเบซเบเบฑเบ‡เป€เบเบตเบ”เบ‚เบถเป‰เบ™. เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ‚เบญเบ‡เบ‚เป‰เบญเบเบขเบนเปˆเปƒเบ™เบŠเบฑเป‰เบ™เบงเบฒเบ‡, ClickHouse เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เปƒเบซเป‰เบ‚เป‰เบญเบเบ„เปเบฒเบชเบฑเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡, เบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เบงเปˆเบฒเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบกเบตเบŠเบตเบงเบดเบ”เบขเบนเปˆ, เปเบฅเบฐเบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เปเบกเปˆเบ™เบ”เบตเบซเบผเบฒเบ. เปเบ•เปˆเบ‚เป‰เบญเบเบกเบตเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเป‚เบŠเบกเปƒเบ™เบ—เบธเบเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ‚เบญเบ‡เบœเบนเป‰เปƒเบŠเป‰, เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเป‚เบŠเบกเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เป‰เบงเบเบšเบฑเบ™เบ—เบถเบเปƒเบ™ ClickHouse, เปเบฅเบฐเบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบ‚เป‰เบฒเบ‚เบญเบ‡เบ‚เป‰เบญเบเบšเปเปˆเป„เบ”เป‰เบœเบปเบ™. เป€เบ›เบฑเบ™เบซเบเบฑเบ‡? เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบ„เบดเบ”โ€‹เบงเปˆเบฒ kill query เบ„เบงเบ™โ€‹เบˆเบฐโ€‹เบ‚เป‰เบฒโ€‹เบเบฒเบ™โ€‹เบชเบญเบšโ€‹เบ–เบฒเบก, เปเบ•เปˆโ€‹เบงเปˆเบฒโ€‹เบกเบฑเบ™โ€‹เบšเปเปˆโ€‹เป„เบ”เป‰.

เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบˆเบฐเบกเบตเบ„เปเบฒเบ•เบญเบšเบ—เบตเปˆเปเบ›เบเบ›เบฐเบซเบผเบฒเบ”เบซเบผเบฒเบ. เบˆเบธเบ”เปเบกเปˆเบ™เบงเปˆเบฒ kill query เบšเปเปˆเป„เบ”เป‰เบ‚เป‰เบฒเบเบฒเบ™เบชเบญเบšเบ–เบฒเบก.

Kill query เบเบงเบ”เป€เบšเบดเปˆเบ‡เบเปˆเบญเบ‡เบ™เป‰เบญเบเบ—เบตเปˆเป€เบญเบตเป‰เบ™เบงเปˆเบฒ "เบ‚เป‰เบญเบเบ•เป‰เบญเบ‡เบเบฒเบ™เปƒเบซเป‰เบ„เปเบฒเบ–เบฒเบกเบ™เบตเป‰เบ–เบทเบเบ‚เป‰เบฒ." เปเบฅเบฐเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบ•เบปเบงเบกเบฑเบ™เป€เบญเบ‡เป€เบšเบดเปˆเบ‡เบ—เบธเบ‡เบ™เบตเป‰เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบ›เบฐเบกเบงเบ™เบœเบปเบ™เปเบ•เปˆเบฅเบฐเบ•เบฑเบ™. เบ–เป‰เบฒเบกเบฑเบ™เบ–เบทเบเบ•เบฑเป‰เบ‡, เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบขเบธเบ”เป€เบฎเบฑเบ”เบงเบฝเบ. เบกเบฑเบ™ turns เปƒเบซเป‰โ€‹เป€เบซเบฑเบ™โ€‹เบงเปˆเบฒโ€‹เบšเปเปˆโ€‹เบกเบตโ€‹เปƒเบœโ€‹เบ‚เป‰เบฒโ€‹เบ„เปเบฒโ€‹เบฎเป‰เบญเบ‡โ€‹เบชเบฐโ€‹เบซเบกเบฑเบโ€‹, เบ•เบปเบ™โ€‹เป€เบญเบ‡โ€‹เบ•เป‰เบญเบ‡โ€‹เป„เบ”เป‰โ€‹เบเบงเบ”โ€‹เบชเบญเบšโ€‹เบ—เบธเบโ€‹เบชเบดเปˆเบ‡โ€‹เบ—เบธเบโ€‹เบขเปˆเบฒเบ‡โ€‹เปเบฅเบฐโ€‹เบขเบธเบ”โ€‹เป€เบŠเบปเบฒโ€‹เบเบฒเบ™โ€‹. เปเบฅเบฐเบ™เบตเป‰เบ„เบงเบ™เบˆเบฐเป€เบฎเบฑเบ”เบงเบฝเบเปƒเบ™เบ—เบธเบเบเปเบฅเบฐเบ™เบตเบ—เบตเปˆเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบขเบนเปˆเปƒเบ™เบชเบฐเบ–เบฒเบ™เบฐเบ‚เบญเบ‡เบเบฒเบ™เบ›เบฐเบกเบงเบ™เบœเบปเบ™เบ•เบฑเบ™เบ‚เบญเบ‡เบ‚เปเป‰เบกเบนเบ™. เบกเบฑเบ™เบˆเบฐเบ›เบฐเบกเบงเบ™เบœเบปเบ™เบ‚เปเป‰เบกเบนเบ™เบšเบฅเบฑเบญเบเบ•เปเปˆเป„เบ›, เบเบงเบ”เป€เบšเบดเปˆเบ‡เบ—เบธเบ‡, เปเบฅเบฐเบขเบธเบ”.

เบ™เบตเป‰เบšเปเปˆเป„เบ”เป‰เบœเบปเบ™เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ—เบตเปˆเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ–เบทเบเบšเบฅเบฑเบญเบเปƒเบ™เบšเบฒเบ‡เบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ‡เบฒเบ™. เบ„เบงเบฒเบกเบˆเบดเบ‡, เบชเปˆเบงเบ™เบซเบผเบฒเบเบกเบฑเบ™เบญเบฒเบ”เบˆเบฐเบšเปเปˆเปเบกเปˆเบ™เบเปเบฅเบฐเบ™เบตเบ‚เบญเบ‡เป€เบˆเบปเป‰เบฒ, เป€เบžเบฒเบฐเบงเปˆเบฒ, เบญเบตเบ‡เบ•เบฒเบกเป€เบˆเบปเป‰เบฒ, เบกเบฑเบ™เปƒเบŠเป‰เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบ‚เบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบซเบผเบฒเบเป‚เบ•เบ™. เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบงเปˆเบฒเบ™เบตเป‰เบšเปเปˆเป€เบฎเบฑเบ”เบงเบฝเบเปƒเบ™เบเปเบฅเบฐเบ™เบตเบ‚เบญเบ‡เบเบฒเบ™เบˆเบฑเบ”เบฅเบฝเบ‡เบžเบฒเบเบ™เบญเบเปเบฅเบฐเปƒเบ™เบšเบฒเบ‡เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบญเบทเปˆเบ™เป†. เปเบ•เปˆเป‚เบ”เบเบ—เบปเปˆเบงเป„เบ›เบ™เบตเป‰เบšเปเปˆเบ„เบงเบ™เป€เบเบตเบ”เบ‚เบถเป‰เบ™, เบกเบฑเบ™เป€เบ›เบฑเบ™เปเบกเบ‡เป„เบกเป‰. เปเบฅเบฐเบชเบดเปˆเบ‡เบ”เบฝเบงเบ—เบตเปˆเบ‚เป‰เบญเบเบชเบฒเบกเบฒเบ”เปเบ™เบฐเบ™เปเบฒเปเบกเปˆเบ™เบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡ ClickHouse.

เบงเบดเบ—เบตเบเบฒเบ™เบ„เบดเบ”เป„เบฅเปˆเป€เบงเบฅเบฒเบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡เบžเบฒเบเปƒเบ•เป‰เบเบฒเบ™เบญเปˆเบฒเบ™เบเบฒเบ™เป‚เบซเบผเบ”?

เบกเบตเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ—เบตเปˆเป€เบเบฑเบšเบฅเบงเบšเบฅเบงเบกเบฅเบฒเบเบเบฒเบ™ - counters เบ•เปˆเบฒเบ‡เป†. เบˆเปเบฒเบ™เบงเบ™เบ‚เบญเบ‡เบชเบฒเบเปเบกเปˆเบ™เบ›เบฐเบกเบฒเบ™เบซเบ™เบถเปˆเบ‡เบฎเป‰เบญเบเบฅเป‰เบฒเบ™. เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเบ™เบฑเบšเป€เบงเบฅเบฒเบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡เบ—เบตเปˆเบ„เบฒเบ”เป€เบ”เบปเบฒเป„เบ”เป‰เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบ–เบญเบ 1K RPS เบชเปเบฒเบฅเบฑเบšเบฅเบฒเบเบเบฒเบ™ 1K?

เบเบฒเบ™เบ•เบฑเบ”เบชเบดเบ™เป‚เบ”เบเบชเบฐเบžเบฒเบšเบเบฒเบ™, เบžเบงเบเป€เบฎเบปเบฒเบเปเบฒเบฅเบฑเบ‡เป€เบงเบปเป‰เบฒเบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เป‚เบซเบผเบ”เบเบฒเบ™เบญเปˆเบฒเบ™, เป€เบžเบฒเบฐเบงเปˆเบฒเบšเปเปˆเบกเบตเบšเบฑเบ™เบซเบฒเบเบฑเบšเบเบฒเบ™เบ‚เบฝเบ™ - เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเบซเบ™เบถเปˆเบ‡เบžเบฑเบ™, เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเบซเบ™เบถเปˆเบ‡เบฎเป‰เบญเบเบžเบฑเบ™, เปเบฅเบฐเบšเบฒเบ‡เบ„เบฑเป‰เบ‡เบซเบผเบฒเบเบฅเป‰เบฒเบ™เปเบ–เบงเบชเบฒเบกเบฒเบ”เปƒเบชเปˆเป„เบ”เป‰.

เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบเบฒเบ™เบญเปˆเบฒเบ™เปเบกเปˆเบ™เปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เบซเบผเบฒเบ. เปƒเบ™เบเบฒเบ™เบ„เบฑเบ”เป€เบฅเบทเบญเบ 1, ClickHouse เบชเบฒเบกเบฒเบ”เบ›เบฐเบ•เบดเบšเบฑเบ”เบ›เบฐเบกเบฒเบ™เบซเบฅเบฒเบเบชเบดเบšเบžเบฑเบ™เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ•เปเปˆเบงเบดเบ™เบฒเบ—เบต, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบชเปเบฒเบฅเบฑเบšเบซเบ™เบถเปˆเบ‡เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เบˆเบฐเบ•เป‰เบญเบ‡เบเบฒเบ™เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบšเบฒเบ‡เบขเปˆเบฒเบ‡. เปเบฅเบฐเบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบˆเบธเบ”เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบˆเบฐเบกเบตเบ„เบงเบฒเบกเบซเบเบธเป‰เบ‡เบเบฒเบเบซเบผเบฒเบเบเปˆเบงเบฒเบšเบฒเบ‡เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™, เป€เบžเบฒเบฐเบงเปˆเบฒเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบญเปˆเบฒเบ™เปเบ•เปˆเบฅเบฐเบ„เบฑเป‰เบ‡เบกเบฑเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป„เบ”เป‰เบญเปˆเบฒเบ™เบšเบฅเบฑเบญเบเบ‚เบญเบ‡เบ‚เปเป‰เบกเบนเบ™เป‚เบ”เบเบ”เบฑเบ”เบชเบฐเบ™เบต. เบ”เบฑเบ”เบŠเบฐเบ™เบตเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเบ‚เบถเป‰เบ™เบเบฑเบšเปเบ•เปˆเบฅเบฐเบšเบฑเบ™เบ—เบถเบ, เปเบ•เปˆเปเบ•เปˆเบฅเบฐเป„เบฅเบเบฐ. เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, เบ—เปˆเบฒเบ™เบˆเบฐเบ•เป‰เบญเบ‡เบญเปˆเบฒเบ™เบ‚เบญเบšเป€เบ‚เบ”เบ—เบฑเบ‡เบซเบกเบปเบ” - เบ™เบตเป‰เปเบกเปˆเบ™ 8192 เป€เบชเบฑเป‰เบ™เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™. เปเบฅเบฐเบ—เปˆเบฒเบ™เบˆเบฐเบ•เป‰เบญเบ‡ decompress เบšเบฅเบฑเบญเบเบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบ–เบทเบเบšเบตเบšเบญเบฑเบ”เบˆเบฒเบ 64 KB เป€เบ›เบฑเบ™ 1 MB. เป‚เบ”เบเบ›เบปเบเบเบฐเบ•เบด, เบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเป€เบ›เบปเป‰เบฒเบซเบกเบฒเบเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเปƒเบŠเป‰เป€เบงเบฅเบฒเบชเบญเบ‡เบชเบฒเบกเบกเบดเบฅเบดเบงเบดเบ™เบฒเบ—เบตเป€เบžเบทเปˆเบญเปƒเบซเป‰เบชเปเบฒเป€เบฅเบฑเบ”. เปเบ•เปˆเบ™เบตเป‰เปเบกเปˆเบ™เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ—เบตเปˆเบ‡เปˆเบฒเบเบ”เบฒเบเบ—เบตเปˆเบชเบธเบ”.

เบกเบฒเบฅเบญเบ‡เป€เบฅเบเป€เบฅเบเปเบšเบšเบ‡เปˆเบฒเบเป†. เบ–เป‰เบฒเป€เบˆเบปเป‰เบฒเบ„เบนเบ™เบชเบญเบ‡เบชเบฒเบกเบกเบดเบฅเบดเบงเบดเบ™เบฒเบ—เบตเบ”เป‰เบงเบเปœเบถเปˆเบ‡เบžเบฑเบ™, เป€เบˆเบปเป‰เบฒเบˆเบฐเป„เบ”เป‰เบฎเบฑเบšเบชเบญเบ‡เบชเบฒเบกเบงเบดเบ™เบฒเบ—เบต. เบกเบฑเบ™เบ„เบทเบเบฑเบšเบงเปˆเบฒเบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เบšเปเปˆเป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเบ•เบดเบ”เบ•เบฒเบกเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเป€เบ›เบฑเบ™เบžเบฑเบ™เป†เบ•เปเปˆเบงเบดเบ™เบฒเบ—เบต, เปเบ•เปˆเปƒเบ™เบ„เบงเบฒเบกเป€เบ›เบฑเบ™เบˆเบดเบ‡เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰, เป€เบžเบฒเบฐเบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบกเบตเปเบเบ™เบ›เบฐเบกเบงเบ™เบœเบปเบ™เบซเบผเบฒเบ. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เปƒเบ™เบซเบผเบฑเบเบเบฒเบ™, ClickHouse เบšเบฒเบ‡เบ„เบฑเป‰เบ‡เบชเบฒเบกเบฒเบ”เบ–เบท 1000 RPS, เปเบ•เปˆเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบชเบฑเป‰เบ™, เป€เบ›เบปเป‰เบฒเบซเบกเบฒเบเป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐ.

เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบเบธเปˆเบก ClickHouse เป‚เบ”เบเบˆเปเบฒเบ™เบงเบ™เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ—เบตเปˆเบ‡เปˆเบฒเบเบ”เบฒเบ, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบ‚เปเปเบ™เบฐเบ™เปเบฒเบชเบดเปˆเบ‡เบ—เบตเปˆเบ‡เปˆเบฒเบเบ”เบฒเบเบ—เบตเปˆเบชเบธเบ” - เป€เบžเบตเปˆเบกเบˆเปเบฒเบ™เบงเบ™ replicas เปเบฅเบฐเบชเบปเปˆเบ‡เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเปƒเบซเป‰เบเบฑเบš replica เปเบšเบšเบชเบธเปˆเบก. เบ–เป‰เบฒเบ•เบปเบงเปเบšเบšเบˆเปเบฒเบฅเบญเบ‡เบซเบ™เบถเปˆเบ‡เบ–เบทเบซเป‰เบฒเบฎเป‰เบญเบเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ•เปเปˆเบงเบดเบ™เบฒเบ—เบต, เบŠเบถเปˆเบ‡เป€เบ›เบฑเบ™เบˆเบดเบ‡เบขเปˆเบฒเบ‡เบชเบปเบกเบšเบนเบ™, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบชเบฒเบก replicas เบˆเบฐเบˆเบฑเบ”เบเบฒเบ™เบเบฑเบšเบซเบ™เบถเปˆเบ‡เบžเบฑเบ™เป€เบ„เบดเปˆเบ‡เบซเบ™เบถเปˆเบ‡.

เบšเบฒเบ‡เบ„เบฑเป‰เบ‡, เปเบ™เปˆเบ™เบญเบ™, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ” config ClickHouse เบชเปเบฒเบฅเบฑเบšเบˆเปเบฒเบ™เบงเบ™เบชเบนเบ‡เบชเบธเบ”เบ‚เบญเบ‡เบเบฒเบ™เบญเปˆเบฒเบ™เบˆเบธเบ”. เบชเบดเปˆเบ‡เบ—เบตเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ™เบตเป‰? เบ—เปเบฒเบญเบดเบ”เปเบกเปˆเบ™เป€เบžเบทเปˆเบญเบซเบผเบธเบ”เบœเปˆเบญเบ™ granularity เบ‚เบญเบ‡เบ”เบฑเบ”เบŠเบฐเบ™เบต. เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ™เบตเป‰, เบกเบฑเบ™เบšเปเปˆเบ„เบงเบ™เบˆเบฐเบ–เบทเบเบซเบผเบธเบ”เบฅเบปเบ‡เป€เบ›เบฑเบ™เบซเบ™เบถเปˆเบ‡, เปเบ•เปˆเบšเบปเบ™เบžเบทเป‰เบ™เบ–เบฒเบ™เบงเปˆเบฒเบˆเปเบฒเบ™เบงเบ™เบฅเบฒเบเบเบฒเบ™เปƒเบ™เบ”เบฑเบ”เบชเบฐเบ™เบตเบˆเบฐเป€เบ›เบฑเบ™เบซเบผเบฒเบเบฅเป‰เบฒเบ™เบซเบผเบทเบซเบผเบฒเบเบชเบดเบšเบฅเป‰เบฒเบ™เบ•เปเปˆเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ. เบ–เป‰เบฒเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบกเบตเบซเบ™เบถเปˆเบ‡เบฎเป‰เบญเบเบฅเป‰เบฒเบ™เปเบ–เบง, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™ granularity เบชเบฒเบกเบฒเบ”เบ–เบทเบเบเปเบฒเบ™เบปเบ”เป€เบ›เบฑเบ™ 64.

เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบซเบผเบธเบ”เบœเปˆเบญเบ™เบ‚เบฐเบซเบ™เบฒเบ”เบ‚เบญเบ‡เบ•เบฑเบ™เบ—เบตเปˆเบ–เบทเบเบšเบตเบšเบญเบฑเบ”. เบกเบตเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ™เบตเป‰ เบ‚เบฐเปœเบฒเบ”เบšเบฅเบฑเบญเบเปœเป‰เบญเบเบชเบธเบ”, เบ‚เบฐเปœเบฒเบ”เบšเบฅเบฑเบญเบเบ‚เบฐเปœเบฒเบ”เบชเบนเบ‡เบชเบธเบ”. เบžเบงเบเป€เบ‚เบปเบฒเบชเบฒเบกเบฒเบ”เบ–เบทเบเบซเบผเบธเบ”เบฅเบปเบ‡, เบ•เบทเปˆเบกเบ‚เปเป‰เบกเบนเบ™เปƒเบชเปˆ, เปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเป€เบ›เบปเป‰เบฒเบซเบกเบฒเบเบˆเบฐเป„เบงเบ‚เบถเป‰เบ™. เปเบ•เปˆเบเบฑเบ‡, ClickHouse เบšเปเปˆเปเบกเปˆเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™. เบˆเปเบฒเบ™เบงเบ™เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆเบ‚เบญเบ‡เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบ‚เบฐเบซเบ™เบฒเบ”เบ™เป‰เบญเบเปเบกเปˆเบ™ antipattern เป‚เบซเบผเบ”.

Kirill Shvakov: เบ‚เป‰เบญเบเบˆเบฐเปƒเบซเป‰เบ„เปเบฒเปเบ™เบฐเบ™เปเบฒเปƒเบ™เบเปเบฅเบฐเบ™เบตเบ—เบตเปˆเบกเบตเบšเบฑเบ™เบŠเบตเบ—เปเบฒเบกเบฐเบ”เบฒเบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™. เบ™เบตเป‰เปเบกเปˆเบ™เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบ—เบตเปˆเบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆ ClickHouse เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบšเบฒเบ‡เบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡ counter. เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบกเบตโ€‹เบœเบนเป‰โ€‹เปƒเบŠเป‰โ€‹, เป€เบ‚เบปเบฒโ€‹เบกเบฒโ€‹เบˆเบฒเบโ€‹เบ›เบฐโ€‹เป€เบ—เบ”โ€‹เบ”เบฑเปˆเบ‡โ€‹เบเปˆเบฒเบงโ€‹เปเบฅเบฐโ€‹เบ”เบฑเปˆเบ‡โ€‹เบเปˆเบฒเบงโ€‹, เปเบฅเบฐโ€‹เบšเบฒเบ‡โ€‹เบžเบฒเบโ€‹เบชเบฐโ€‹เบซเบ™เบฒเบกโ€‹เบ—เบตโ€‹เบชเบฒเบกโ€‹, เปเบฅเบฐโ€‹เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบˆเปเบฒโ€‹เป€เบ›เบฑเบ™โ€‹เบ•เป‰เบญเบ‡โ€‹เป„เบ”เป‰โ€‹เป€เบžเบตเปˆเบกโ€‹เบ—เบฐโ€‹เบงเบตโ€‹เบเบฒเบ™โ€‹เบšเบฒเบ‡โ€‹เบชเบดเปˆเบ‡โ€‹เบšเบฒเบ‡โ€‹เบขเปˆเบฒเบ‡ incrementallyโ€‹. เป€เบญเบปเบฒ MySQL, เป€เบฎเบฑเบ”เบฅเบฐเบซเบฑเบ”เบ—เบตเปˆเป€เบ›เบฑเบ™เป€เบญเบเบฐเบฅเบฑเบ - เปƒเบ™ MySQL เบกเบฑเบ™เป€เบ›เบฑเบ™เบฅเบฐเบซเบฑเบ”เบ—เบตเปˆเบŠเป‰เปเบฒเบเบฑเบ™, เปเบฅเบฐเปƒเบ™ PostgreSQL เบกเบฑเบ™เปเบกเปˆเบ™เบเบฒเบ™เบ‚เบฑเบ”เปเบเป‰เบ‡ - เปเบฅเบฐเป€เบžเบตเปˆเบกเป€เบ„เบทเปˆเบญเบ‡เบซเบกเบฒเบเบšเบงเบ. เบ™เบตเป‰เบˆเบฐเป€เบฎเบฑเบ”เบงเบฝเบเบ”เบตเบ‚เบถเป‰เบ™เบซเบผเบฒเบ.

เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบ—เปˆเบฒเบ™เบšเปเปˆเบกเบตเบ‚เปเป‰เบกเบนเบ™เบซเบผเบฒเบ, เบšเปเปˆเบกเบตเบˆเบธเบ”เบซเบผเบฒเบเปƒเบ™เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰ ClickHouse. เบกเบตเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ›เบปเบเบเบฐเบ•เบดเปเบฅเบฐเบžเบงเบเป€เบ‚เบปเบฒเป€เบฎเบฑเบ”เบชเบดเปˆเบ‡เบ™เบตเป‰เป„เบ”เป‰เบ”เบต.

เบ‚เป‰เบญเบเบชเบฒเบกเบฒเบ”เบ›เบฑเบšเปเบ•เปˆเบ‡เบซเบเบฑเบ‡เปƒเบ™ ClickHouse เป€เบžเบทเปˆเบญเปƒเบซเป‰เบกเบตเบ‚เปเป‰เบกเบนเบ™เบซเบผเบฒเบเบ‚เบถเป‰เบ™เบขเบนเปˆเปƒเบ™เปเบ„เบ”?

เบ‚เปเปƒเบซเป‰เบˆเบดเบ™เบ•เบฐเบ™เบฒเบเบฒเบ™เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™ - เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบกเบต 256 GB เบ‚เบญเบ‡ RAM, เปƒเบ™เบ›เบฐเบˆเปเบฒเบงเบฑเบ™ ClickHouse เปƒเบŠเป‰เป€เบงเบฅเบฒเบ›เบฐเบกเบฒเบ™ 60-80 GB, เบชเบนเบ‡เบชเบธเบ” - เป€เบ–เบดเบ‡ 130. เบชเบดเปˆเบ‡เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เป€เบ›เบตเบ”เปƒเบŠเป‰เปเบฅเบฐ tweaked เป€เบžเบทเปˆเบญเปƒเบซเป‰เบกเบตเบ‚เปเป‰เบกเบนเบ™เบซเบผเบฒเบเบขเบนเปˆเปƒเบ™ cache เปเบฅเบฐ, เบ•เบฒเบกเบ„เบงเบฒเบกเป€เบซเบกเบฒเบฐเบชเบปเบก. เบกเบตเบเบฒเบ™เป€เบ”เบตเบ™เบ—เบฒเบ‡เบซเบ™เป‰เบญเบเบฅเบปเบ‡เปƒเบ™เปเบœเปˆเบ™?

เป‚เบ”เบเบ›เบปเบเบเบฐเบ•เบด, cache เบซเบ™เป‰เบฒเบ‚เบญเบ‡เบฅเบฐเบšเบปเบšเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเป„เบ”เป‰เบ”เบต. เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบžเบฝเบ‡เปเบ•เปˆเป€เบ›เบตเบ”เบ—เบฒเบ‡เป€เบ—เบดเบ‡, เป€เบšเบดเปˆเบ‡เบšเปˆเบญเบ™เบ—เบตเปˆเบกเบตเบ–เบฒเบ™เบ„เบงเบฒเบกเบˆเปเบฒเบซเบผเบทเบšเปเปˆเป€เบชเบเบ„เปˆเบฒ - เบกเบฑเบ™เบเบฑเบ‡เบšเบญเบเบงเปˆเบฒเบกเบตเปเบ„เบ”เบซเบผเบฒเบเบ›เบฒเบ™เปƒเบ” - เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบ—เปˆเบฒเบ™เบˆเบฐเบชเบฑเบ‡เป€เบเบ”เป€เบซเบฑเบ™เบงเปˆเบฒเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบŸเบฃเบตเบ—เบฑเบ‡เบซเบกเบปเบ”เปเบกเปˆเบ™เปƒเบŠเป‰เบชเปเบฒเบฅเบฑเบš cache. เปเบฅเบฐเปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบญเปˆเบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ™เบตเป‰, เบกเบฑเบ™เบˆเบฐเบญเปˆเบฒเบ™เบšเปเปˆเป„เบ”เป‰เบˆเบฒเบเปเบœเปˆเบ™, เปเบ•เปˆเบˆเบฒเบ RAM. เปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™, เบ‚เป‰เบญเบเบชเบฒเบกเบฒเบ”เป€เบงเบปเป‰เบฒเป„เบ”เป‰เบงเปˆเบฒ cache เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เบขเปˆเบฒเบ‡เบกเบตเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเป€เบžเบฒเบฐเบงเปˆเบฒเบกเบฑเบ™เป€เบ›เบฑเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบ–เบทเบเบšเบตเบšเบญเบฑเบ”เบ—เบตเปˆเบ–เบทเบเป€เบเบฑเบšเป„เบงเป‰เปƒเบ™เบ–เบฒเบ™เบ„เบงเบฒเบกเบˆเปเบฒ.

เบขเปˆเบฒเบ‡เปƒเบ”เบเปเบ•เบฒเบก, เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™เป€เบฅเบฑเปˆเบ‡เบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบ—เบตเปˆเบ‡เปˆเบฒเบเบ”เบฒเบเบซเบผเบฒเบ, เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเป€เบ›เบตเบ”เปƒเบŠเป‰ cache เปƒเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบ–เบทเบเบšเบตเบšเบญเบฑเบ”เบžเบฒเบเปƒเบ™ ClickHouse. เบกเบฑเบ™โ€‹เบ–เบทเบโ€‹เป€เบญเบตเป‰เบ™โ€‹เบงเปˆเบฒ uncompressed cache. เปƒเบ™เป„เบŸเบฅเปŒเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ config.xml, เบเปเบฒเบ™เบปเบ”เบ‚เบฐเบซเบ™เบฒเบ” cache เบ—เบตเปˆเบšเปเปˆเบ–เบทเบเบšเบตเบšเบญเบฑเบ”เป€เบ›เบฑเบ™เบกเบนเบ™เบ„เปˆเบฒเบ—เบตเปˆเบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™ - เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเปเบ™เบฐเบ™เปเบฒเปƒเบซเป‰เบšเปเปˆเป€เบเบตเบ™เป€เบ„เบดเปˆเบ‡เบซเบ™เบถเปˆเบ‡เบ‚เบญเบ‡ RAM เบ—เบตเปˆเบšเปเปˆเป€เบชเบเบ„เปˆเบฒ, เป€เบžเบฒเบฐเบงเปˆเบฒเบชเปˆเบงเบ™เบ—เบตเปˆเป€เบซเบผเบทเบญเบˆเบฐเบขเบนเปˆเบžเบฒเบเปƒเบ•เป‰ cache เบ‚เบญเบ‡เบซเบ™เป‰เบฒ.

เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, เบกเบตเบชเบญเบ‡เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบฅเบฐเบ”เบฑเบšเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เป. เบเบฒเบ™โ€‹เบ•เบฑเป‰เบ‡โ€‹เบ„เปˆเบฒโ€‹เบ—เปเบฒโ€‹เบญเบดเบ” - เปƒเบŠเป‰ cache เบ—เบตเปˆเบšเปเปˆเป„เบ”เป‰เบšเบตเบšเบญเบฑเบ” - เบ›เบฐโ€‹เบเบญเบšโ€‹เบกเบตโ€‹เบเบฒเบ™โ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰โ€‹เบ‚เบญเบ‡โ€‹เบ•เบปเบ™โ€‹. เบกเบฑเบ™เปเบ™เบฐเบ™เปเบฒเปƒเบซเป‰เป€เบ›เบตเบ”เปƒเบŠเป‰เบกเบฑเบ™เบชเปเบฒเบฅเบฑเบšเบ—เบธเบเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เป, เบเบปเบเป€เบงเบฑเป‰เบ™เบญเบฑเบ™เบซเบ™เบฑเบเบซเบ™เปˆเบงเบ‡, เป€เบŠเบดเปˆเบ‡เบชเบฒเบกเบฒเบ”เบญเปˆเบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เปเบฅเบฐเบฅเป‰เบฒเบ‡เปเบ„เบ”. เปเบฅเบฐเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ—เบตเบชเบญเบ‡เปเบกเปˆเบ™เบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡เป€เบŠเบฑเปˆเบ™: เบˆเปเบฒเบ™เบงเบ™เบชเบนเบ‡เบชเบธเบ”เบ‚เบญเบ‡เบชเบฒเบเบ—เบตเปˆเบˆเบฐเปƒเบŠเป‰ cache. เบกเบฑเบ™เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เบˆเปเบฒเบเบฑเบ”เบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆเป€เบžเบทเปˆเบญเปƒเบซเป‰เบžเบงเบเป€เบ‚เบปเบฒเบ‚เป‰เบฒเบกเปเบ„เบ”.

เบ‚เป‰เบญเบเบชเบฒเบกเบฒเบ”เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ storage_configuration เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเปƒเบ™ RAM เป„เบ”เป‰เปเบ™เบงเปƒเบ”?

เปƒเบ™เป€เบญเบเบฐเบชเบฒเบ™ ClickHouse เปƒเบซเบกเปˆเบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบญเปˆเบฒเบ™เบžเบฒเบเบชเปˆเบงเบ™เบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡ เบ”เป‰เบงเบเบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบ‚เปเป‰เบกเบนเบ™. เบ„เปเบฒเบญเบฐเบ—เบดเบšเบฒเบเบ›เบฐเบเบญเบšเบกเบตเบ•เบปเบงเบขเปˆเบฒเบ‡เบ—เบตเปˆเบกเบต SSD เป„เบง.

เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบชเบดเปˆเบ‡โ€‹เบกเบฐโ€‹เบซเบฑเบ”โ€‹เบงเบดโ€‹เบ—เบตโ€‹เบเบฒเบ™โ€‹เบ”เบฝเบงโ€‹เบเบฑเบ™โ€‹เบชเบฒโ€‹เบกเบฒเบ”โ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบเบฒเบ™โ€‹เบ•เบฑเป‰เบ‡โ€‹เบ„เปˆเบฒโ€‹เบเบฑเบšโ€‹เบซเบ™เปˆเบงเบโ€‹เบ„เบงเบฒเบกโ€‹เบˆเปเบฒโ€‹เบฎเป‰เบญเบ™โ€‹เบ›เบฐโ€‹เบฅเบดโ€‹เบกเบฒเบ™โ€‹. เปเบฅเบฐเบญเบตเบเบซเบ™เบถเปˆเบ‡เบ„เปเบฒเบ–เบฒเบก. เบเบฒเบ™เป€เบฅเบทเบญเบเป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบญเบปเบ‡เบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบ‚เปเป‰เบกเบนเบ™เบ™เบตเป‰เปเบ™เบงเปƒเบ”, เบกเบฑเบ™เบˆเบฐเบญเปˆเบฒเบ™เบŠเบธเบ”เบ—เบฑเบ‡เบซเบกเบปเบ”เบซเบผเบทเบžเบฝเบ‡เปเบ•เปˆเบซเบ™เบถเปˆเบ‡เบ—เบตเปˆเบขเบนเปˆเปƒเบ™เปเบœเปˆเบ™, เปเบฅเบฐเบ‚เปเป‰เบกเบนเบ™เบ™เบตเป‰เบ–เบทเบเบšเบตเบšเบญเบฑเบ”เบขเบนเปˆเปƒเบ™เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบšเป? เปเบฅเบฐเบžเบฒเบเบชเปˆเบงเบ™ prewhere เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบญเบปเบ‡เบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบ‚เปเป‰เบกเบนเบ™เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเปเบ™เบงเปƒเบ”?

เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ™เบตเป‰เบชเบปเปˆเบ‡เบœเบปเบ™เบเบฐเบ—เบปเบšเบ•เปเปˆเบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบ‚เบญเบ‡เบ‚เปเป‰เบกเบนเบ™, เปเบฅเบฐเบฎเบนเบšเปเบšเบšเบ‚เบญเบ‡เบžเบงเบเบกเบฑเบ™เบšเปเปˆเบ›เปˆเบฝเบ™เปเบ›เบ‡เปƒเบ™เบ—เบฒเบ‡เปƒเบ”เบเปเปˆเบ•เบฒเบก.
เบฅเบญเบ‡เป€เบšเบดเปˆเบ‡เปƒเบเป‰เป†.

เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบ‚เปเป‰เบกเบนเบ™เปƒเบ™ RAM. เบ—เบฑเบ‡เบซเบกเบปเบ”เบ—เบตเปˆเบเปเบฒเบซเบ™เบปเบ”เบ„เปˆเบฒเบชเปเบฒเบฅเบฑเบšเปเบœเปˆเบ™เปเบกเปˆเบ™เป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡เบ‚เบญเบ‡เบกเบฑเบ™. เบ—เปˆเบฒเบ™เบชเป‰เบฒเบ‡เบžเบฒเบ—เบดเบŠเบฑเบ™ tmpfs เบ—เบตเปˆเบ•เบดเบ”เบขเบนเปˆเบเบฑเบšเบšเบฒเบ‡เป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡เปƒเบ™เบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒ. เบ—เปˆเบฒเบ™เบฅเบฐเบšเบธเป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡เบ™เบตเป‰เป€เบ›เบฑเบ™เป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบ‚เปเป‰เบกเบนเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เปเบšเปˆเบ‡เบชเปˆเบงเบ™เบ—เบตเปˆเบฎเป‰เบญเบ™เบ—เบตเปˆเบชเบธเบ”, เบ•เปˆเบญเบ™เบ‚เบญเบ‡เบ‚เปเป‰เบกเบนเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบกเบฒเบฎเบญเบ”เปเบฅเบฐเบ–เบทเบเบ‚เบฝเบ™เบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™, เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เปเบกเปˆเบ™เบ”เบต.

เปเบ•เปˆเบ‚เป‰เบญเบเบšเปเปˆเปเบ™เบฐเบ™เปเบฒเปƒเบซเป‰เป€เบฎเบฑเบ”เบชเบดเปˆเบ‡เบ™เบตเป‰เบเป‰เบญเบ™เบ„เบงเบฒเบกเบซเบ™เป‰เบฒเป€เบŠเบทเปˆเบญเบ–เบทเบ•เปˆเปเบฒ, เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเบ—เปˆเบฒเบ™เบกเบตเบขเปˆเบฒเบ‡เบซเบ™เป‰เบญเบเบชเบฒเบก replicas เปƒเบ™เบชเบนเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™, เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰. เบ–เป‰เบฒเบกเบตเบซเบเบฑเบ‡เป€เบเบตเบ”เบ‚เบทเป‰เบ™, เบ‚เปเป‰เบกเบนเบ™เบˆเบฐเบ–เบทเบเบŸเบทเป‰เบ™เบŸเบนเบ„เบทเบ™เบกเบฒ. เบฅเบญเบ‡เบ™เบถเบเบžเบฒเบšเป€เบšเบดเปˆเบ‡เบงเปˆเบฒเป€เบŠเบตเบšเป€เบงเบตเบ–เบทเบเบ›เบดเบ” เปเบฅเบฐเป€เบ›เบตเบ”เบ„เบทเบ™เบกเบฒเบขเปˆเบฒเบ‡เบเบฐเบ—เบฑเบ™เบซเบฑเบ™. เบเบฒเบ™เปเบšเปˆเบ‡เบชเปˆเบงเบ™เป„เบ”เป‰เบ–เบทเบเบ•เบดเบ”เบ•เบฑเป‰เบ‡เบญเบตเบเป€เบ—เบทเปˆเบญเบซเบ™เบถเปˆเบ‡, เปเบ•เปˆเบšเปเปˆเบกเบตเบซเบเบฑเบ‡เบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™. เป€เบกเบทเปˆเบญเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ ClickHouse เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, เบกเบฑเบ™เป€เบซเบฑเบ™เบงเปˆเบฒเบกเบฑเบ™เบšเปเปˆเบกเบตเบŠเบดเป‰เบ™เบชเปˆเบงเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰, เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒ, เบญเบตเบ‡เบ•เบฒเบก metadata ZooKeeper, เบžเบงเบเป€เบ‚เบปเบฒเบ„เบงเบ™เบˆเบฐเบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™. เบฅเบฒเบงเป€เบšเบดเปˆเบ‡เบงเปˆเบฒเบฎเบนเบšเบˆเบณเบฅเบญเบ‡เบญเบฑเบ™เปƒเบ”เบกเบตเบžเบงเบเบกเบฑเบ™, เบฎเป‰เบญเบ‡เบ‚เปเบžเบงเบเบกเบฑเบ™ เปเบฅเบฐเบ”เบฒเบงเป‚เบซเบผเบ”เบžเบงเบเบกเบฑเบ™. เบ”เป‰เบงเบเบงเบดเบ—เบตเบ™เบตเป‰, เบ‚เปเป‰เบกเบนเบ™เบˆเบฐเบ–เบทเบเบŸเบทเป‰เบ™เบŸเบน.

เปƒเบ™เบ„เบงเบฒเบกเบซเบกเบฒเบเบ™เบตเป‰, เบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบ‚เปเป‰เบกเบนเบ™เปƒเบ™ RAM เปเบกเปˆเบ™เบšเปเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบˆเบฒเบเบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเป„เบงเป‰เปƒเบ™เปเบœเปˆเบ™, เป€เบžเบฒเบฐเบงเปˆเบฒเป€เบกเบทเปˆเบญเบ‚เปเป‰เบกเบนเบ™เบ–เบทเบเบ‚เบฝเบ™เบฅเบปเบ‡เปƒเบ™เปเบœเปˆเบ™, เบกเบฑเบ™เบเบฑเบ‡เบ—เปเบฒเบญเบดเบ”เบˆเบปเบšเบฅเบปเบ‡เปƒเบ™ cache เบ‚เบญเบ‡เบซเบ™เป‰เบฒเปเบฅเบฐเบ–เบทเบเบ‚เบฝเบ™เป„เบงเป‰เบ•เปเปˆเบกเบฒ. เบ™เบตเป‰เปเบกเปˆเบ™เบ‚เบถเป‰เบ™เบเบฑเบšเบ•เบปเบงเป€เบฅเบทเบญเบเบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡เบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒ. เปเบ•เปˆเปƒเบ™เบเปเบฅเบฐเบ™เบต, เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบˆเบฐเป€เบงเบปเป‰เบฒเบงเปˆเบฒ ClickHouse เบšเปเปˆ fsync เป€เบกเบทเปˆเบญเปƒเบชเปˆ.

เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ™เบตเป‰, เบ‚เปเป‰เบกเบนเบ™เปƒเบ™ RAM เบ–เบทเบเป€เบเบฑเบšเป„เบงเป‰เปƒเบ™เบฎเบนเบšเปเบšเบšเบ”เบฝเบงเบเบฑเบ™เบเบฑเบšเปเบœเปˆเบ™. เบ„เปเบฒเบ–เบฒเบกเบ—เบตเปˆเป€เบฅเบทเบญเบเปƒเบ™เบฅเบฑเบเบชเบฐเบ™เบฐเบ”เบฝเบงเบเบฑเบ™เบˆเบฐเป€เบฅเบทเบญเบเป€เบญเบปเบฒเบŠเบดเป‰เบ™เบชเปˆเบงเบ™เบ—เบตเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เบญเปˆเบฒเบ™, เป€เบฅเบทเบญเบเบ‚เบญเบšเป€เบ‚เบ”เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เปƒเบ™เบ•เปˆเบญเบ™, เปเบฅเบฐเบญเปˆเบฒเบ™เบกเบฑเบ™. เปเบฅเบฐ prewhere เป€เบฎเบฑเบ”เบงเบฝเบเบ„เบทเบเบฑเบ™เบญเป‰เบญเบเบ•เป‰เบญเบ, เบšเปเปˆเบ„เปเบฒเบ™เบถเบ‡เป€เบ–เบดเบ‡เบงเปˆเบฒเบ‚เปเป‰เบกเบนเบ™เปเบกเปˆเบ™เบขเบนเปˆเปƒเบ™ RAM เบซเบผเบทเปƒเบ™เปเบœเปˆเบ™.

เป€เบ–เบดเบ‡เบงเปˆเบฒเบˆเปเบฒเบ™เบงเบ™เบ„เปˆเบฒเบ—เบตเปˆเป€เบ›เบฑเบ™เป€เบญเบเบฐเบฅเบฑเบเปเบกเปˆเบ™ Low Cardinality เบกเบตเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเปเบ™เบงเปƒเบ”?

Low Cardinality เบ–เบทเบเบญเบญเบเปเบšเบšเบขเปˆเบฒเบ‡เบชเบฐเบซเบฅเบฒเบ”. เบกเบฑเบ™เบฅเบงเบšเบฅเบงเบกเบงเบฑเบ”เบˆเบฐเบ™เบฒเบ™เบธเบเบปเบกเบ‚เปเป‰เบกเบนเบ™, เปเบ•เปˆเบžเบงเบเบกเบฑเบ™เบขเบนเปˆเปƒเบ™เบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™. เบ›เบฐเบเบฒเบ™เบ—เปเบฒเบญเบดเบ”, เบกเบตเบงเบฑเบ”เบˆเบฐเบ™เบฒเบ™เบธเบเบปเบกเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เบชเปเบฒเบฅเบฑเบšเปเบ•เปˆเบฅเบฐเบŠเบดเป‰เบ™, เปเบฅเบฐเบญเบฑเบ™เบ—เบตเบชเบญเบ‡, เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเบžเบฒเบเปƒเบ™เบซเบ™เบถเปˆเบ‡เบŠเบดเป‰เบ™เบžเบงเบเป€เบ‚เบปเบฒเบชเบฒเบกเบฒเบ”เปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เบชเปเบฒเบฅเบฑเบšเปเบ•เปˆเบฅเบฐเป„เบฅเบเบฐ. เป€เบกเบทเปˆเบญเบ•เบปเบงเป€เบฅเบเบ‚เบญเบ‡เบ„เบธเบ™เบ„เปˆเบฒเบ—เบตเปˆเป€เบ›เบฑเบ™เป€เบญเบเบฐเบฅเบฑเบเบšเบฑเบ™เบฅเบธเป€เบ–เบดเบ‡เบˆเปเบฒเบ™เบงเบ™ - เบซเบ™เบถเปˆเบ‡เบฅเป‰เบฒเบ™, เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบ„เบดเบ”เบงเปˆเบฒ - เบงเบฑเบ”เบˆเบฐเบ™เบฒเบ™เบธเบเบปเบกเป„เบ”เป‰เบ–เบทเบเป€เบเบฑเบšเป„เบงเป‰เบขเปˆเบฒเบ‡เบ‡เปˆเบฒเบเบ”เบฒเบเปเบฅเบฐเบชเป‰เบฒเบ‡เปƒเบซเบกเปˆ.

เบ„เปเบฒโ€‹เบ•เบญเบšโ€‹เปเบกเปˆเบ™โ€‹เป‚เบ”เบโ€‹เบ—เบปเปˆเบงโ€‹เป„เบ›โ€‹: เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เปเบ•เปˆโ€‹เบฅเบฐโ€‹เบ—เป‰เบญเบ‡โ€‹เบ–เบดเปˆเบ™ - เป€เบงเบปเป‰เบฒโ€‹เบงเปˆเบฒโ€‹, เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เปเบ•เปˆโ€‹เบฅเบฐโ€‹เบกเบทเป‰ - somewhere เป€เบ–เบดเบ‡โ€‹เบฅเป‰เบฒเบ™โ€‹เบ„เบธเบ™โ€‹เบ„เปˆเบฒโ€‹เบ—เบตเปˆโ€‹เป€เบ›เบฑเบ™โ€‹เป€เบญโ€‹เบเบฐโ€‹เบฅเบฑเบ Low Cardinality เปเบกเปˆเบ™โ€‹เบ›เบฐโ€‹เบชเบดเบ”โ€‹เบ—เบดโ€‹เบœเบปเบ™โ€‹. เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบˆเบฐเบกเบตเบžเบฝเบ‡เบเบฒเบ™เบ•เบญเบšเปเบ—เบ™, เป€เบŠเบดเปˆเบ‡เบงเบฑเบ”เบˆเบฐเบ™เบฒเบ™เบธเบเบปเบกเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เบซเบผเบฒเบเบˆเบฐเบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰, เปเบฅเบฐเบšเปเปˆเบžเบฝเบ‡เปเบ•เปˆเบซเบ™เบถเปˆเบ‡. เบกเบฑเบ™เบˆเบฐเป€เบฎเบฑเบ”เบงเบฝเบเบ›เบฐเบกเบฒเบ™เบ„เบทเบเบฑเบ™เบเบฑเบšเบ–เบฑเบ™เบชเบฐเบ•เบฃเบดเบ‡เบ›เบปเบเบเบฐเบ•เบด, เบšเบฒเบ‡เบ—เบตเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบซเบ™เป‰เบญเบเบฅเบปเบ‡, เปเบ•เปˆเบˆเบฐเบšเปเปˆเบกเบตเบเบฒเบ™เป€เบชเบทเปˆเบญเบกเป‚เบŠเบกเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบ—เบตเปˆเบฎเป‰เบฒเบเปเบฎเบ‡.

เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ”เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบŠเบญเบเบซเบฒเบ‚เปเป‰เบ„เบงเบฒเบกเป€เบ•เบฑเบกเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ—เบตเปˆเบกเบตเบซเป‰เบฒเบžเบฑเบ™เบฅเป‰เบฒเบ™เปเบ–เบงเปเบกเปˆเบ™เบซเบเบฑเบ‡?

เบกเบตเบ„เปเบฒเบ•เบญเบšเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™. เบ—เปเบฒเบญเบดเบ”เปเบกเปˆเบ™เบเบฒเบ™เป€เบงเบปเป‰เบฒเบงเปˆเบฒ ClickHouse เบšเปเปˆเปเบกเปˆเบ™เป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเบŠเบญเบเบซเบฒเบ‚เปเป‰เบ„เบงเบฒเบกเป€เบ•เบฑเบก. เบกเบตเบฅเบฐเบšเบปเบšเบžเบดเป€เบชเบ”เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ™เบตเป‰, เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบเบปเบเบ•เบปเบงเบขเปˆเบฒเบ‡, Elasticsearch ะธ sphinx. เบขเปˆเบฒเบ‡เปƒเบ”เบเปเบ•เบฒเบก, เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป€เบซเบฑเบ™เบ„เบปเบ™เป€เบงเบปเป‰เบฒเบงเปˆเบฒเบžเบงเบเป€เบ‚เบปเบฒเบเปเบฒเบฅเบฑเบ‡เบ›เปˆเบฝเบ™เบˆเบฒเบ Elasticsearch เป„เบ› ClickHouse.

เป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบชเบดเปˆเบ‡เบ™เบตเป‰เป€เบเบตเบ”เบ‚เบถเป‰เบ™? เบžเบงเบเป€เบ‚เบปเบฒเบญเบฐเบ—เบดเบšเบฒเบเป€เบฅเบทเปˆเบญเบ‡เบ™เบตเป‰เป‚เบ”เบเบ„เบงเบฒเบกเบˆเบดเบ‡เบ—เบตเปˆเบงเปˆเบฒ Elasticsearch เบขเบธเบ”เป€เบŠเบปเบฒเบเบฒเบ™เบฎเบฑเบšเบกเบทเบเบฑเบšเบเบฒเบ™เป‚เบซเบผเบ”เปƒเบ™เบšเบฒเบ‡เบ›เบฐเบฅเบดเบกเบฒเบ™, เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เป‰เบงเบเบเบฒเบ™เบชเป‰เบฒเบ‡เบ”เบฑเบ”เบชเบฐเบ™เบต. เบ”เบฑเบ”เบŠเบฐเบ™เบตเบเบฒเบเป€เบ›เบฑเบ™เป€เบฅเบทเปˆเบญเบ‡เบ—เบตเปˆเบชเบฑเบšเบชเบปเบ™เป€เบเบตเบ™เป„เบ›, เปเบฅเบฐเบ–เป‰เบฒเบ—เปˆเบฒเบ™เบžเบฝเบ‡เปเบ•เปˆเป‚เบญเบ™เบ‚เปเป‰เบกเบนเบ™เป„เบ›เบซเบฒ ClickHouse, เบกเบฑเบ™เบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เบงเปˆเบฒเบžเบงเบเบกเบฑเบ™เบ–เบทเบเป€เบเบฑเบšเป„เบงเป‰เบซเบผเบฒเบเป€เบ—เบปเปˆเบฒเบ—เบตเปˆเบกเบตเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเปƒเบ™เบ›เบฐเบฅเบดเบกเบฒเบ™. เปƒเบ™เบ‚เบฐเบ™เบฐเบ”เบฝเบงเบเบฑเบ™, เบ„เปเบฒเบ–เบฒเบกเบ„เบปเป‰เบ™เบซเบฒเบกเบฑเบเบˆเบฐเบšเปเปˆเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบกเบฑเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบŠเบญเบเบซเบฒเบšเบฒเบ‡เบ›เบฐเป‚เบซเบเบเปƒเบ™เบ›เบฐเบฅเบดเบกเบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”, เบ„เปเบฒเบ™เบถเบ‡เป€เบ–เบดเบ‡ morphology, เปเบ•เปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เบซเบกเบปเบ”. เบ•เบปเบงเบขเปˆเบฒเบ‡, เบŠเบญเบเบซเบฒเบšเบฒเบ‡เบฅเปเบฒเบ”เบฑเบšเบ‚เบญเบ‡ bytes เปƒเบ™เบšเบฑเบ™เบ—เบถเบเปƒเบ™เบชเบญเบ‡เบชเบฒเบกเบŠเบปเปˆเบงเป‚เบกเบ‡เบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ.

เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ™เบตเป‰, เบ—เปˆเบฒเบ™เบชเป‰เบฒเบ‡เบ”เบฑเบ”เบชเบฐเบ™เบตเปƒเบ™ ClickHouse, เบžเบฒเบเบชเบฐเบซเบ™เบฒเบกเบ—เปเบฒเบญเบดเบ”เบ—เบตเปˆเบˆเบฐเป€เบ›เบฑเบ™เบงเบฑเบ™เบ—เบตเปเบฅเบฐเป€เบงเบฅเบฒ. เปเบฅเบฐเบเบฒเบ™เบ•เบฑเบ”เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเปƒเบซเบเปˆเบ—เบตเปˆเบชเบธเบ”เบˆเบฐเบญเบตเบ‡เปƒเบชเปˆเบŠเปˆเบงเบ‡เบงเบฑเบ™เบ—เบต. เบžเบฒเบเปƒเบ™เบ‚เบญเบšเป€เบ‚เบ”เบงเบฑเบ™เบ—เบตเบ—เบตเปˆเป€เบฅเบทเบญเบ, เบ•เบฒเบกเบเบปเบ”เบฅเบฐเบšเบฝเบš, เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบ„เบปเป‰เบ™เบซเบฒเบ‚เปเป‰เบ„เบงเบฒเบกเป€เบ•เบฑเบก, เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเบˆเบฐเปƒเบŠเป‰เบงเบดเบ—เบตเบเบฒเบ™เบšเบฑเบ‡เบ„เบฑเบšเปƒเบŠเป‰ brute force เป‚เบ”เบเปƒเบŠเป‰ like. เบ•เบปเบงเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ„เป‰เบฒเบเบ„เบทเปƒเบ™ ClickHouse เปเบกเปˆเบ™เบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบซเบผเบฒเบเบ—เบตเปˆเบชเบธเบ”เป€เบŠเบฑเปˆเบ™เบœเบนเป‰เบ›เบฐเบเบญเบšเบเบฒเบ™เบ—เบตเปˆเบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบŠเบญเบเบซเบฒ. เบ–เป‰เบฒเป€เบˆเบปเป‰เบฒเบžเบปเบšเบชเบดเปˆเบ‡เบ—เบตเปˆเบ”เบตเบเบงเปˆเบฒ, เบšเบญเบเบ‚เป‰เบญเบ.

เปเบ•เปˆเบขเปˆเบฒเบ‡เปƒเบ”เบเปเปˆเบ•เบฒเบก, เบ„เบทเบเบฑเบšเบเบฒเบ™เบชเบฐเปเบเบ™เป€เบ•เบฑเบก. เปเบฅเบฐเบเบฒเบ™เบชเบฐเปเบเบ™เป€เบ•เบฑเบกเบชเบฒเบกเบฒเบ”เบŠเป‰เบฒเบšเปเปˆเบžเบฝเบ‡เปเบ•เปˆเบขเบนเปˆเปƒเบ™ CPU, เปเบ•เปˆเบเบฑเบ‡เบขเบนเปˆเปƒเบ™เปเบœเปˆเบ™. เบ–เป‰เบฒเบขเปˆเบฒเบ‡เบเบฐเบ—เบฑเบ™เบซเบฑเบ™เบ—เปˆเบฒเบ™เบกเบตเบ‚เปเป‰เบกเบนเบ™เบซเบ™เบถเปˆเบ‡ terabyte เบ•เปเปˆเบกเบทเป‰, เปเบฅเบฐเบ—เปˆเบฒเบ™เบ„เบปเป‰เบ™เบซเบฒเบ„เปเบฒเบชเบฑเบšเปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบกเบทเป‰, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบ—เปˆเบฒเบ™เบˆเบฐเบ•เป‰เบญเบ‡เบชเบฐเปเบเบ™ terabyte. เปเบฅเบฐเบกเบฑเบ™เบญเบฒเบ”เบˆเบฐเบขเบนเปˆเปƒเบ™เบฎเบฒเบ”เป„เบ”เบ›เบปเบเบเบฐเบ•เบด, เปเบฅเบฐเปƒเบ™เบ—เบตเปˆเบชเบธเบ”เบžเบงเบเบกเบฑเบ™เบˆเบฐเบ–เบทเบเป‚เบซเบฅเบ”เปƒเบ™เปเบšเบšเบ—เบตเปˆเบ—เปˆเบฒเบ™เบˆเบฐเบšเปเปˆเบชเบฒเบกเบฒเบ”เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ™เบตเป‰เบœเปˆเบฒเบ™ SSH.

เปƒเบ™โ€‹เบเปโ€‹เบฅเบฐโ€‹เบ™เบตโ€‹เบ™เบตเป‰โ€‹, เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบžเป‰เบญเบกโ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เบชเบฐโ€‹เป€เบซเบ™เบตโ€‹เปƒเบซเป‰โ€‹เบซเบ™เบถเปˆเบ‡ trick เบ™เป‰เบญเบโ€‹เบซเบผเบฒเบโ€‹. เบกเบฑเบ™เป€เบ›เบฑเบ™เบเบฒเบ™เบ—เบปเบ”เบฅเบญเบ‡ - เบกเบฑเบ™เบญเบฒเบ”เบˆเบฐเป€เบฎเบฑเบ”เบงเบฝเบ, เบกเบฑเบ™เบญเบฒเบ”เบˆเบฐเบšเปเปˆ. ClickHouse เบกเบตเบ”เบฑเบ”เบชเบฐเบ™เบตเบ‚เปเป‰เบ„เบงเบฒเบกเป€เบ•เบฑเบกเปƒเบ™เบฎเบนเบšเปเบšเบšเบ‚เบญเบ‡ trigram Bloom filters. เป€เบžเบทเปˆเบญเบ™เบฎเปˆเบงเบกเบ‡เบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบขเบนเปˆ Arenadata เป„เบ”เป‰เบžเบฐเบเบฒเบเบฒเบกเบ”เบฑเบ”เบชเบฐเบ™เบตเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบฅเป‰เบง, เปเบฅเบฐเบžเบงเบเป€เบ‚เบปเบฒเบกเบฑเบเบˆเบฐเป€เบฎเบฑเบ”เบงเบฝเบเบขเปˆเบฒเบ‡เปเบ—เป‰เบˆเบดเบ‡เบ•เบฒเบกเบˆเบธเบ”เบ›เบฐเบชเบปเบ‡.

เป€เบžเบทเปˆเบญเปƒเบŠเป‰เบžเบงเบเบกเบฑเบ™เบขเปˆเบฒเบ‡เบ–เบทเบเบ•เป‰เบญเบ‡, เบ—เปˆเบฒเบ™เบ„เบงเบ™เบกเบตเบ„เบงเบฒเบกเป€เบ‚เบปเป‰เบฒเปƒเบˆเบ”เบตเบเปˆเบฝเบงเบเบฑเบšเบงเบดเบ—เบตเบ—เบตเปˆเบžเบงเบเบกเบฑเบ™เป€เบฎเบฑเบ”เบงเบฝเบ: เบเบฒเบ™เบเบฑเปˆเบ™เบ•เบญเบ‡ Bloom trigram เปเบกเปˆเบ™เบซเบเบฑเบ‡เปเบฅเบฐเบงเบดเบ—เบตเบเบฒเบ™เป€เบฅเบทเบญเบเบ‚เบฐเบซเบ™เบฒเบ”เบ‚เบญเบ‡เบกเบฑเบ™. เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบชเบฒเบกเบฒเบ”เป€เบงเบปเป‰เบฒเป„เบ”เป‰เบงเปˆเบฒเบžเบงเบเป€เบ‚เบปเบฒเบˆเบฐเบŠเปˆเบงเบเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบเปˆเบฝเบงเบเบฑเบšเบšเบฒเบ‡เบ›เบฐเป‚เบซเบเบเบ—เบตเปˆเบซเบฒเบเบฒเบ, substrings เบ—เบตเปˆเบซเบฒเบเบฒเบเปƒเบ™เบ‚เปเป‰เบกเบนเบ™. เปƒเบ™โ€‹เบเปโ€‹เบฅเบฐโ€‹เบ™เบตโ€‹เบ™เบตเป‰, subranges เบˆเบฐโ€‹เบ–เบทเบโ€‹เบ„เบฑเบ”โ€‹เป€เบฅเบทเบญเบโ€‹เป‚เบ”เบโ€‹เบ”เบฑเบ”โ€‹เบŠเบฐโ€‹เบ™เบตโ€‹เปเบฅเบฐโ€‹เบ‚เปเป‰โ€‹เบกเบนเบ™โ€‹เบซเบ™เป‰เบญเบโ€‹เบˆเบฐโ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบเบฒเบ™โ€‹เบญเปˆเบฒเบ™.

เบšเปเปˆเบ”เบปเบ™เบกเบฒเบ™เบตเป‰, ClickHouse เป„เบ”เป‰เป€เบžเบตเปˆเบกเบซเบ™เป‰เบฒเบ—เบตเปˆเบเป‰เบฒเบงเบซเบ™เป‰เบฒเบ—เบฒเบ‡เบ”เป‰เบฒเบ™เบซเบผเบฒเบเบเบงเปˆเบฒเป€เบเบปเปˆเบฒเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ„เบปเป‰เบ™เบซเบฒเบ‚เปเป‰เบ„เบงเบฒเบกเป€เบ•เบฑเบก. เบ™เบตเป‰เปเบกเปˆเบ™, เบ—เปเบฒเบญเบดเบ”, เบเบฒเบ™เบ„เบปเป‰เบ™เบซเบฒเบชเปเบฒเบฅเบฑเบšเบŠเปเปˆเบ‚เบญเบ‡ substrings เปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™เปƒเบ™เบซเบ™เบถเปˆเบ‡ pass, เบฅเบงเบกเบ—เบฑเบ‡เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ—เบตเปˆเบกเบตเบ•เบปเบงเบžเบดเบกเปƒเบซเบเปˆ, เบเปเบฅเบฐเบ™เบต-เบšเปเปˆเบญเปˆเบญเบ™เป„เบซเบง, เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™ UTF-8 เบซเบผเบทเบžเบฝเบ‡เปเบ•เปˆเบชเปเบฒเบฅเบฑเบš ASCII. เป€เบฅเบทเบญเบเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบ—เบตเปˆเบชเบธเบ”เบ—เบตเปˆเบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™.

เบ„เบปเป‰เบ™เบซเบฒเบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ›เบปเบเบเบฐเบ•เบดเบซเบผเบฒเบเปƒเบ™เบซเบ™เบถเปˆเบ‡เบœเปˆเบฒเบ™เบเปเปˆเบ›เบฒเบเบปเบ”. เบ—เปˆเบฒเบ™เบšเปเปˆ เบˆเบณ เป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ‚เบฝเบ™ X เบ„เบทเบเบฑเบšเบชเบฒเบเบเปˆเบญเบ เปœเบถเปˆเบ‡ เบซเบผเบท X เป€เบŠเบฑเปˆเบ™เบชเบฒเบเบเปˆเบญเบเบญเบทเปˆเบ™. เบ—เปˆเบฒเบ™เบ‚เบฝเบ™เบ—เบฑเบ™เบ—เบต, เปเบฅเบฐเบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เปเบกเปˆเบ™เป€เบฎเบฑเบ”เป„เบ”เป‰เบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเป€เบ—เบปเปˆเบฒเบ—เบตเปˆเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰.

เบญเบฑเบ™เบ—เบตเบชเบฒเบก, เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบกเบตเบเบฒเบ™เบ„เบปเป‰เบ™เบซเบฒเป‚เบ”เบเบ›เบฐเบกเบฒเบ™เบชเปเบฒเบฅเบฑเบš regexps เปเบฅเบฐเบเบฒเบ™เบ„เบปเป‰เบ™เบซเบฒเป‚เบ”เบเบ›เบฐเบกเบฒเบ™เบชเปเบฒเบฅเบฑเบš substrings. เบ–เป‰เบฒเปƒเบœเบœเบนเป‰เบซเบ™เบถเปˆเบ‡เบชเบฐเบเบปเบ”เบ„เปเบฒเบœเบดเบ”, เบกเบฑเบ™เบˆเบฐเบ–เบทเบเบ„เบปเป‰เบ™เบซเบฒเบชเปเบฒเบฅเบฑเบšเบ„เปเบฒเบ—เบตเปˆเบเบปเบ‡เบเบฑเบ™เบชเบนเบ‡เบชเบธเบ”.

เบงเบดเบ—เบตเบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ”เปƒเบ™เบเบฒเบ™เบˆเบฑเบ”เบฅเบฐเบšเบฝเบšเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡ ClickHouse เบชเปเบฒเบฅเบฑเบšเบˆเปเบฒเบ™เบงเบ™เบœเบนเป‰เปƒเบŠเป‰เบˆเปเบฒเบ™เบงเบ™เบซเบฅเบฒเบเปเบกเปˆเบ™เบซเบเบฑเบ‡?

เบšเบญเบเบžเบงเบเป€เบฎเบปเบฒเบงเบดเบ—เบตเบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ”เปƒเบ™เบเบฒเบ™เบˆเบฑเบ”เบฅเบฐเบšเบฝเบšเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบชเปเบฒเบฅเบฑเบšเบœเบนเป‰เบšเปเบฅเบดเป‚เบžเบเปเบฅเบฐเบ™เบฑเบเบงเบดเป€เบ„เบฒเบฐเบˆเปเบฒเบ™เบงเบ™เบซเบฅเบฒเบ. เบงเบดเบ—เบตเบเบฒเบ™เบ›เบฐเบเบญเบšเบ„เบดเบง, เบˆเบฑเบ”เบฅเปเบฒเบ”เบฑเบšเบ„เบงเบฒเบกเบชเปเบฒเบ„เบฑเบ™เบ‚เบญเบ‡เบ„เปเบฒเบ–เบฒเบกเบ—เบตเปˆเบเบปเบ‡เบเบฑเบ™เบชเบนเบ‡เบชเบธเบ”, เปเบฅเบฐเบ”เป‰เบงเบเป€เบ„เบทเปˆเบญเบ‡เบกเบทเปƒเบ”?

เบ–เป‰เบฒเบเบธเปˆเบกเปƒเบซเบเปˆเบžเบฝเบ‡เบžเป, เบเบฒเบ™เปเบเป‰เป„เบ‚เบ—เบตเปˆเบ”เบตเปเบกเปˆเบ™เบˆเบฐเบเบปเบเบชเบนเบ‡เบชเบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ, เป€เบŠเบดเปˆเบ‡เบˆเบฐเบเบฒเบเป€เบ›เบฑเบ™เบˆเบธเบ”เป€เบ‚เบปเป‰เบฒเบชเปเบฒเบฅเบฑเบšเบ™เบฑเบเบงเบดเป€เบ„เบฒเบฐ. เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, เบšเปเปˆเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ™เบฑเบเบงเบดเป€เบ„เบฒเบฐเป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡ shards เบชเบฐเป€เบžเบฒเบฐเปƒเบ™เบเบธเปˆเบก, เปเบ•เปˆเบžเบฝเบ‡เปเบ•เปˆเบชเป‰เบฒเบ‡เบชเบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ—เบตเปˆเบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒ, เป‚เบ”เบเบšเปเปˆเบกเบตเบ‚เปเป‰เบกเบนเบ™, เปเบฅเบฐเบเปเบฒเบ™เบปเบ”เบชเบดเบ”เบ—เบดเปƒเบ™เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบžเบงเบเบกเบฑเบ™. เปƒเบ™โ€‹เบเปโ€‹เบฅเบฐโ€‹เบ™เบตโ€‹เบ™เบตเป‰โ€‹, เบเบฒเบ™โ€‹เบ•เบฑเป‰เบ‡โ€‹เบ„เปˆเบฒโ€‹เบ‚เบญเบ‡โ€‹เบœเบนเป‰โ€‹เปƒเบŠเป‰โ€‹เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เบเบฒเบ™โ€‹เบฎเป‰เบญเบ‡โ€‹เบ‚เปโ€‹เบเบฒเบ™โ€‹เปเบˆเบโ€‹เบขเบฒเบโ€‹เปเบกเปˆเบ™โ€‹เป„เบ”เป‰โ€‹เป‚เบญเบ™โ€‹เปƒเบซเป‰โ€‹เบเบฑเบšโ€‹เป€เบ„เบทเปˆเบญเบ‡โ€‹เปเบกเปˆโ€‹เบ‚เปˆเบฒเบโ€‹เบซเปˆเบฒเบ‡โ€‹เป„เบโ€‹เบชเบญเบโ€‹เบซเบผเบตเบโ€‹. เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, เบ—เปˆเบฒเบ™เบเปเบฒเบ™เบปเบ”เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เบขเบนเปˆเปƒเบ™เบชเบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰, เปเบฅเบฐเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบกเบตเบœเบปเบ™เบเบฐเบ—เบปเบšเปƒเบ™เบเบธเปˆเบกเบ—เบฑเบ‡เบซเบกเบปเบ”.

เปƒเบ™เบซเบผเบฑเบเบเบฒเบ™, เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบšเปเปˆเบกเบตเบ‚เปเป‰เบกเบนเบ™, เปเบ•เปˆเบˆเปเบฒเบ™เบงเบ™ RAM เปƒเบ™เบžเบงเบเบกเบฑเบ™เบกเบตเบ„เบงเบฒเบกเบชเปเบฒเบ„เบฑเบ™เบซเบผเบฒเบเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เป. เปเบœเปˆเบ™เบเบฑเบ‡เบชเบฒเบกเบฒเบ”เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เบชเปเบฒเบฅเบฑเบšเบ‚เปเป‰เบกเบนเบ™เบŠเบปเปˆเบงเบ„เบฒเบงเบ–เป‰เบฒเบเบฒเบ™เบฅเบงเบšเบฅเบงเบกเบžเบฒเบเบ™เบญเบเบซเบผเบทเบเบฒเบ™เบˆเบฑเบ”เบฎเบฝเบ‡เบžเบฒเบเบ™เบญเบเบ–เบทเบเป€เบ›เบตเบ”เปƒเบŠเป‰.

เบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบชเปเบฒเบ„เบฑเบ™เบ—เบตเปˆเบˆเบฐเป€เบšเบดเปˆเบ‡เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบ‚เบญเบšเป€เบ‚เบ”เบˆเปเบฒเบเบฑเบ”เบ—เบตเปˆเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบฑเบ‡เบซเบกเบปเบ”. เบ–เป‰เบฒเบ•เบญเบ™เบ™เบตเป‰เบ‚เป‰เบญเบเป„เบ›เบซเบฒเบเบธเปˆเบก Yandex.Metrica เป€เบ›เบฑเบ™เบ™เบฑเบเบงเบดเป€เบ„เบฒเบฐเปเบฅเบฐเบ–เบฒเบกเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เป เป€เบฅเบทเบญเบเบ™เบฑเบšเบˆเบฒเบ hits, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบˆเบฐเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบเบปเบเป€เบงเบฑเป‰เบ™เบ—เบฑเบ™เบ—เบตเบ—เบตเปˆเบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบšเปเปˆเบชเบฒเบกเบฒเบ”เบ›เบฐเบ•เบดเบšเบฑเบ”เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเป„เบ”เป‰. เบˆเปเบฒเบ™เบงเบ™เปเบ–เบงเบชเบนเบ‡เบชเบธเบ”เบ—เบตเปˆเบ‚เป‰เบญเบเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบชเบฐเปเบเบ™เปเบกเปˆเบ™เบซเบ™เบถเปˆเบ‡เบฎเป‰เบญเบเบ•เบทเป‰, เปเบฅเบฐเปƒเบ™เบˆเปเบฒเบ™เบงเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เบกเบตเบซเป‰เบฒเบชเบดเบšเบžเบฑเบ™เบ•เบทเป‰เปƒเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ”เบฝเบงเปƒเบ™เบเบธเปˆเบก. เบ™เบตเป‰เปเบกเปˆเบ™เบ‚เปเป‰เบˆเปเบฒเบเบฑเบ”เบ—เปเบฒเบญเบดเบ”.

เปƒเบซเป‰เป€เบงเบปเป‰เบฒเบงเปˆเบฒเบ‚เป‰เบญเบเป€เบญเบปเบฒเบ‚เบญเบšเป€เบ‚เบ”เบˆเปเบฒเบเบฑเบ”เปเบ–เบงเปเบฅเบฐเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบญเบตเบเป€เบ—เบทเปˆเบญเบซเบ™เบถเปˆเบ‡. เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบ‚เป‰เบญเบเบˆเบฐเป€เบซเบฑเบ™เบ‚เปเป‰เบเบปเบเป€เบงเบฑเป‰เบ™เบ•เปเปˆเป„เบ›เบ™เบตเป‰ - setting enabled เบ”เบฑเบ”เบŠเบฐเบ™เบตเบœเบปเบ™เบšเบฑเบ‡เบ„เบฑเบšเปƒเบŠเป‰เป‚เบ”เบเบงเบฑเบ™เบ—เบต. เบ‚เป‰เบญเบเบšเปเปˆเบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เบชเบณเป€เบฅเบฑเบ”เบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเป„เบ”เป‰ เบ–เป‰เบฒเบ‚เป‰เบญเบเบšเปเปˆเป„เบ”เป‰เบฅเบฐเบšเบธเบŠเปˆเบงเบ‡เบงเบฑเบ™เบ—เบต. เบ—เปˆเบฒเบ™เบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบญเบตเบ‡เปƒเบชเปˆเบ™เบฑเบเบงเบดเป€เบ„เบฒเบฐเป€เบžเบทเปˆเบญเบเปเบฒเบ™เบปเบ”เบกเบฑเบ™เบ”เป‰เบงเบเบ•เบปเบ™เป€เบญเบ‡. เบเปเบฅเบฐเบ™เบตเบ—เบปเปˆเบงเป„เบ›เปเบกเปˆเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบ‚เบฝเบ™เบŠเปˆเบงเบ‡เบงเบฑเบ™เบ—เบตเบ—เบตเปˆเบงเบฑเบ™เบ—เบตเป€เบซเบ”เบเบฒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบญเบฒเบ—เบดเบ”. เปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบžเบงเบเป€เบ‚เบปเบฒเบžเบฝเบ‡เปเบ•เปˆเบฅเบฐเบšเบธเบงเบปเบ‡เป€เบฅเบฑเบšเบขเบนเปˆเปƒเบ™เบชเบฐเบ–เบฒเบ™เบ—เบตเปˆเบ—เบตเปˆเบšเปเปˆเบ–เบทเบเบ•เป‰เบญเบ‡, เปเบฅเบฐเปเบ—เบ™เบ—เบตเปˆเบˆเบฐเป€เบ›เบฑเบ™เบซเบผเบท - เบซเบผเบท URL เบ—เบตเปˆเบเบปเบ‡เบเบฑเบ™. เบ–เป‰เบฒเบšเปเปˆเบกเบตเบ‚เบญเบšเป€เบ‚เบ”เบˆเปเบฒเบเบฑเบ”, เบกเบฑเบ™เบˆเบฐเบฅเบงเบšเบฅเบงเบกเบ–เบฑเบ™ URL เปเบฅเบฐเบžเบฝเบ‡เปเบ•เปˆเป€เบชเบเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบซเบผเบฒเบเป‚เบ•เบ™.

เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, ClickHouse เบกเบตเบชเบญเบ‡เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบšเบนเบฅเบดเบกเบฐเบชเบดเบ”. เปเบ•เปˆเบซเบ™เป‰เบฒเป€เบชเบเบ”เบฒเบ, เบžเบงเบเป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเปเบกเปˆเบ™ primitive เบซเบผเบฒเบ. เบซเบ™เบถเปˆเบ‡เปเบกเปˆเบ™เป€เบญเบตเป‰เบ™เบงเปˆเบฒเบ‡เปˆเบฒเบเบ”เบฒเบ เบšเบนเบฅเบดเบกเบฐเบชเบดเบ”. เบ–เป‰เบฒเบšเบนเบฅเบดเบกเบฐเบชเบดเบ” โ‰  0, เปเบฅเบฐเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบ—เบตเปˆเบกเบตเบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบšเบฒเบ‡เบขเปˆเบฒเบ‡เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”, เปเบ•เปˆเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ—เบตเปˆเบกเบตเบ„เปˆเบฒเบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบซเบ™เป‰เบญเบเบเบงเปˆเบฒ, เบŠเบถเปˆเบ‡เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเบ„เบงเบฒเบกเบชเปเบฒเบ„เบฑเบ™เบชเบนเบ‡เบเบงเปˆเบฒ, เบเปเบฒเบฅเบฑเบ‡เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ—เบตเปˆเบกเบตเบ„เปˆเบฒเบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบชเบนเบ‡เบเบงเปˆเบฒ, เบŠเบถเปˆเบ‡เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเบ„เบงเบฒเบกเบชเปเบฒเบ„เบฑเบ™เบ•เปˆเปเบฒเบเบงเปˆเบฒ. , เบ–เบทเบเบฅเบฐเบ‡เบฑเบšเบขเปˆเบฒเบ‡เบ‡เปˆเบฒเบเบ”เบฒเบเปเบฅเบฐเบšเปเปˆเป€เบฎเบฑเบ”เบงเบฝเบเบ—เบฑเบ‡เบซเบกเบปเบ”เปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เป€เบงเบฅเบฒเบ™เบตเป‰.

เบ™เบตเป‰เปเบกเปˆเบ™เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ—เบตเปˆเบ‚เบตเป‰เบฎเป‰เบฒเบเบซเบผเบฒเบเปเบฅเบฐเบšเปเปˆเป€เบซเบกเบฒเบฐเบชเบปเบกเบชเปเบฒเบฅเบฑเบšเบเปเบฅเบฐเบ™เบตเบ—เบตเปˆ cluster เบกเบตเบเบฒเบ™เป‚เบซเบผเบ”เบ„เบปเบ‡เบ—เบตเปˆ. เปเบ•เปˆเบ–เป‰เบฒเบซเบฒเบเบงเปˆเบฒเบ—เปˆเบฒเบ™เบกเบตเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบชเบฑเป‰เบ™, bursty เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™, เปเบฅเบฐ cluster เบชเปˆเบงเบ™เบซเบผเบฒเบเปเบกเปˆเบ™เบšเปเปˆเบกเบตเบเบฒเบ™เป€เบ„เบทเปˆเบญเบ™เป„เบซเบง, เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เป€เบซเบกเบฒเบฐเบชเบปเบก.

เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบ•เปเปˆเป„เบ›เปเบกเปˆเบ™เป€เบญเบตเป‰เบ™เบงเปˆเบฒ เบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบเบฐเบ—เบนเป‰ OS. เบกเบฑเบ™เบžเบฝเบ‡เปเบ•เปˆเบเปเบฒเบ™เบปเบ”เบกเบนเบ™เบ„เปˆเบฒเบ—เบตเปˆเบ”เบตเบชเปเบฒเบฅเบฑเบšเบซเบปเบงเบ‚เปเป‰เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ—เบฑเบ‡เบซเบกเบปเบ”เบชเปเบฒเบฅเบฑเบšเบ•เบฒเบ•เบฐเบฅเบฒเบ‡ Linux. เบกเบฑเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ„เบทเบเบฑเบ™, เปเบ•เปˆเบกเบฑเบ™เบเบฑเบ‡เป€เบฎเบฑเบ”เบงเบฝเบ. เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบเปเบฒเบ™เบปเบ”เบ„เปˆเบฒเบ—เบตเปˆเบชเบงเบเบ‡เบฒเบกเบ‚เบฑเป‰เบ™เบ•เปˆเปเบฒ - เบกเบฑเบ™เป€เบ›เบฑเบ™เบกเบนเบ™เบ„เปˆเบฒเบ—เบตเปˆเปƒเบซเบเปˆเบ—เบตเปˆเบชเบธเบ”, เปเบฅเบฐเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบ•เปˆเปเบฒเบชเบธเบ” - เปเบฅเบฐเบเปเบฒเบ™เบปเบ” -19 เบชเปเบฒเบฅเบฑเบšเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ—เบตเปˆเบกเบตเบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบชเบนเบ‡, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™ CPU เบˆเบฐเบšเปเบฅเบดเป‚เบžเบเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ—เบตเปˆเบกเบตเบšเบนเบฅเบดเบกเบฐเบชเบดเบ”เบ•เปˆเปเบฒเบ›เบฐเบกเบฒเบ™เบชเบตเปˆเป€เบ—เบปเปˆเบฒเบซเบ™เป‰เบญเบเบเบงเปˆเบฒเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ—เบตเปˆเบกเบตเบ„เบงเบฒเบกเบชเปเบฒเบ„เบฑเบ™เบชเบนเบ‡.

เบ™เบญเบเบ™เบฑเป‰เบ™เบ—เปˆเบฒเบ™เบเบฑเบ‡เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป„เบ”เป‰เบเปเบฒเบ™เบปเบ”เป€เบงเบฅเบฒเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบชเบนเบ‡เบชเบธเบ” - เป€เบงเบปเป‰เบฒเบงเปˆเบฒ, เบซเป‰เบฒเบ™เบฒเบ—เบต. เบ„เบงเบฒเบกเป„เบงเบ•เปเบฒเปˆเบชเบธเบ”เบ‚เบญเบ‡เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเปเบกเปˆเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆเป€เบขเบฑเบ™เบ—เบตเปˆเบชเบธเบ”. เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ™เบตเป‰เบกเบตเบกเบฒเป€เบ›เบฑเบ™เป€เบงเบฅเบฒเบ”เบปเบ™เปเบฅเป‰เบง, เปเบฅเบฐเบกเบฑเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบšเปเปˆเบžเบฝเบ‡เปเบ•เปˆเบขเบทเบ™เบขเบฑเบ™เบงเปˆเบฒ ClickHouse เบšเปเปˆเป„เบ”เป‰เบŠเป‰เบฒเบฅเบปเบ‡, เปเบ•เปˆเบเบฑเบ‡เบšเบฑเบ‡เบ„เบฑเบšเบกเบฑเบ™.

เบˆเบดเบ™เบ•เบฐเบ™เบฒเบเบฒเบ™, เบ—เปˆเบฒเบ™เบเปเบฒเบซเบ™เบปเบ”เบ„เปˆเบฒ: เบ–เป‰เบฒเบšเบฒเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบซเบ™เป‰เบญเบเบเบงเปˆเบฒเบซเบ™เบถเปˆเบ‡เบฅเป‰เบฒเบ™เปเบ–เบงเบ•เปเปˆเบงเบดเบ™เบฒเบ—เบต, เบ—เปˆเบฒเบ™เบšเปเปˆเบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เปเบ™เบงเบ™เบฑเป‰เบ™เป„เบ”เป‰. เบ™เบตเป‰เป€เบฎเบฑเบ”เปƒเบซเป‰เบŠเบทเปˆเบชเบฑเบ”เบ—เบตเปˆเบ”เบตเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ, เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบ”เบตเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ. เปƒเบซเป‰เบ‚เบญเบ‡เบžเบฝเบ‡เปเบ•เปˆเบซเป‰เบฒเบกเบ™เบตเป‰. เบ•เบปเบงเบˆเบดเบ‡เปเบฅเป‰เบงเบกเบตเบชเบญเบ‡เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ. เบญเบฑเบ™เปœเบถเปˆเบ‡เป€เบญเบตเป‰เบ™เบงเปˆเบฒ เบ„เบงเบฒเบกเป„เบงเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‚เบฑเป‰เบ™เบ•เปˆเปเบฒ - เปƒเบ™เปเบ–เบงเบ•เปเปˆเบงเบดเบ™เบฒเบ—เบต, เปเบฅเบฐเบ—เบตเบชเบญเบ‡เป€เบญเบตเป‰เบ™เบงเปˆเบฒเบซเบกเบปเบ”เป€เบงเบฅเบฒเบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเบเบงเบ”เบชเบญเบšเบ„เบงเบฒเบกเป„เบงเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ™เบฒเบ—เบต - เบชเบดเบšเบซเป‰เบฒเบงเบดเบ™เบฒเบ—เบตเป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™. เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, เบชเบดเบšเบซเป‰เบฒเบงเบดเบ™เบฒเบ—เบตเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰, เปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบ–เป‰เบฒเบกเบฑเบ™เบŠเป‰เบฒ, เบžเบฝเบ‡เปเบ•เปˆเบ–เบดเป‰เบกเบ‚เปเป‰เบเบปเบเป€เบงเบฑเป‰เบ™เปเบฅเบฐเบเบปเบเป€เบฅเบตเบเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เป.

เบ™เบญเบเบ™เบฑเป‰เบ™เบ—เปˆเบฒเบ™เบเบฑเบ‡เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป„เบ”เป‰เบเปเบฒเบ™เบปเบ”เป‚เบ„เบ•เป‰เบฒ. ClickHouse เบกเบตเบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เป‚เบ„เบ•เป‰เบฒเปƒเบ™เบ•เบปเบงเบ—เบตเปˆเบ™เบฑเบšเบเบฒเบ™เบšเปเบฅเบดเป‚เบžเบเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™. เปเบ•เปˆเบซเบ™เป‰เบฒเป€เบชเบเบ”เบฒเบ, เบšเปเปˆเปเบกเปˆเบ™เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบฎเบฒเบ”เปเบงเป€เบŠเบฑเปˆเบ™ CPU, เปเบœเปˆเบ™, เปเบ•เปˆเบกเบตเป€เบซเบ”เบœเบปเบ™ - เบˆเปเบฒเบ™เบงเบ™เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ—เบตเปˆเบ›เบธเบ‡เปเบ•เปˆเบ‡, เบชเบฒเบเปเบฅเบฐ bytes เบญเปˆเบฒเบ™. เปเบฅเบฐเบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ” configure, เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบเบปเบเบ•เบปเบงเบขเปˆเบฒเบ‡, เบชเบนเบ‡เบชเบธเบ”เบ‚เบญเบ‡เบซเบ™เบถเปˆเบ‡เบฎเป‰เบญเบเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบžเบฒเบเปƒเบ™เบซเป‰เบฒเบ™เบฒเบ—เบตเปเบฅเบฐเบžเบฑเบ™เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ•เปเปˆเบŠเบปเปˆเบงเป‚เบกเบ‡.

เป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบกเบฑเบ™เบˆเบถเปˆเบ‡เบชเปเบฒเบ„เบฑเบ™? เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒเบšเบฒเบ‡เบ„เปเบฒเบ–เบฒเบกเบเบฒเบ™เบงเบดเป€เบ„เบฒเบฐเบˆเบฐเบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เบ”เป‰เบงเบเบ•เบปเบ™เป€เบญเบ‡เป‚เบ”เบเบเบปเบ‡เบˆเบฒเบเบฅเบนเบเบ„เป‰เบฒ ClickHouse. เปเบฅเบฐเบ—เบฑเบ‡เบซเบกเบปเบ”เบˆเบฐเบ”เบต. เปเบ•เปˆเบ–เป‰เบฒเบ—เปˆเบฒเบ™เบกเบตเบ™เบฑเบเบงเบดเป€เบ„เบฒเบฐเบ‚เบฑเป‰เบ™เบชเบนเบ‡เปƒเบ™เบšเปเบฅเบดเบชเบฑเบ”เบ‚เบญเบ‡เบ—เปˆเบฒเบ™, เบžเบงเบเป€เบ‚เบปเบฒเบˆเบฐเบ‚เบฝเบ™เบชเบฐเบ„เบดเบš, เปเบฅเบฐเบญเบฒเบ”เบˆเบฐเบกเบตเบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เปƒเบ™เบชเบฐเบ„เบดเบš. เปเบฅเบฐเบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เบ™เบตเป‰เบˆเบฐเป€เบฎเบฑเบ”เปƒเบซเป‰เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เปƒเบ™ loop infinite. เบ™เบตเป‰เปเบกเปˆเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ›เบปเบเบ›เป‰เบญเบ‡เบ•เบปเบ™เป€เบญเบ‡เบˆเบฒเบ.

เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเปƒเบซเป‰เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเบ‚เบญเบ‡เบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบซเบ™เบถเปˆเบ‡เปƒเบซเป‰เบเบฑเบšเบฅเบนเบเบ„เป‰เบฒเบชเบดเบšเบ„เบปเบ™?

เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เบกเบตโ€‹เบœเบนเป‰โ€‹เปƒเบŠเป‰โ€‹เบˆเปเบฒโ€‹เบ™เบงเบ™โ€‹เบซเบ™เบถเปˆเบ‡โ€‹เบ—เบตเปˆโ€‹เบกเบฑเบโ€‹เบˆเบฐโ€‹เบกเบฒโ€‹เปƒเบ™โ€‹เบ„เปเบฒโ€‹เบฎเป‰เบญเบ‡โ€‹เบชเบฐโ€‹เบซเบกเบฑเบโ€‹เบ‚เบฐโ€‹เบซเบ™เบฒเบ”โ€‹เปƒเบซเบเปˆโ€‹เบ—เบตเปˆโ€‹เบชเบธเบ”โ€‹เปƒเบ™โ€‹เบˆเบธเบ”โ€‹เบ”เบฝเบงโ€‹เบเบฑเบ™โ€‹เปƒเบ™โ€‹เป€เบงโ€‹เบฅเบฒโ€‹. เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเปเบกเปˆเบ™เบกเบตเบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆเปเบฅเบฐ, เปƒเบ™เบซเบผเบฑเบเบเบฒเบ™, เบ›เบฐเบ•เบดเบšเบฑเบ”เบขเปˆเบฒเบ‡เป„เบงเบงเบฒ, เปเบ•เปˆเป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบ„เบงเบฒเบกเบˆเบดเบ‡เบ—เบตเปˆเบงเปˆเบฒเบกเบตเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบซเบผเบฒเบเปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™, เบกเบฑเบ™เบˆเบฐเบเบฒเบเป€เบ›เบฑเบ™เบ„เบงเบฒเบกเป€เบˆเบฑเบšเบ›เบงเบ”เบซเบผเบฒเบ. เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเบ›เบฐเบ•เบดเบšเบฑเบ”เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ”เบฝเบงเบเบฑเบ™, เป€เบŠเบดเปˆเบ‡เบกเบฒเบฎเบญเบ”เบชเบดเบšเป€เบ—เบทเปˆเบญเบ•เบดเบ”เบ•เปเปˆเบเบฑเบ™, เบซเบ™เบถเปˆเบ‡เบ„เบฑเป‰เบ‡, เปเบฅเบฐเปƒเบซเป‰เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเปเบเปˆเบฅเบนเบเบ„เป‰เบฒเบชเบดเบšเบ„เบปเบ™?

เบšเบฑเบ™เบซเบฒเปเบกเปˆเบ™เบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเบกเบตเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเบ‚เบญเบ‡ cache เบซเบผเบท cache เบ‚เบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบฅเบฐเบ”เบฑเบšเบเบฒเบ‡. เบกเบตเบซเบ™เป‰เบฒ cache เบ‚เบญเบ‡เบฅเบฐเบšเบปเบšเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™, เป€เบŠเบดเปˆเบ‡เบˆเบฐเบ›เป‰เบญเบ‡เบเบฑเบ™เบšเปเปˆเปƒเบซเป‰เบ—เปˆเบฒเบ™เบญเปˆเบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบˆเบฒเบเปเบœเปˆเบ™เบญเบตเบเป€เบ—เบทเปˆเบญเบซเบ™เบถเปˆเบ‡, เปเบ•เปˆเบซเบ™เป‰เบฒเป€เบชเบเบ”เบฒเบ, เบ‚เปเป‰เบกเบนเบ™เบเบฑเบ‡เบˆเบฐเบ–เบทเบเบšเบตเบšเบญเบฑเบ”, deserialized เปเบฅเบฐ reprocessed.

เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบขเบฒเบเบˆเบฐเบซเบผเบตเบเบฅเป‰เบฝเบ‡เบเบฒเบ™เบ™เบตเป‰เบขเปˆเบฒเบ‡เปƒเบ”เบเปเปˆเบ•เบฒเบก, เบšเปเปˆเบงเปˆเบฒเบˆเบฐเป‚เบ”เบเบเบฒเบ™เป€เบเบฑเบšเบ‚เปเป‰เบกเบนเบ™เบฅเบฐเบ”เบฑเบšเบ›เบฒเบ™เบเบฒเบ‡, เบซเบผเบทเป‚เบ”เบเบเบฒเบ™เบงเบฒเบ‡เบ„เปเบฒเบ–เบฒเบกเบ—เบตเปˆเบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™เปƒเบ™เบšเบฒเบ‡เบ›เบฐเป€เบžเบ”เบ„เบดเบงเปเบฅเบฐเป€เบžเบตเปˆเบก cache เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš. เบžเบงเบเป€เบฎเบปเบฒเบ›เบฐเบˆเบธเบšเบฑเบ™เบกเบตเบซเบ™เบถเปˆเบ‡เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ”เบถเบ‡เปƒเบ™เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบ—เบตเปˆเป€เบžเบตเปˆเบก cache เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เป, เปเบ•เปˆเบงเปˆเบฒเบžเบฝเบ‡เปเบ•เปˆเบชเปเบฒเบฅเบฑเบš subqueries เปƒเบ™เบžเบฒเบเบชเปˆเบงเบ™เปƒเบ™เปเบฅเบฐเป€เบ‚เบปเป‰เบฒเบฎเปˆเบงเบก - เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, เบเบฒเบ™เปเบเป‰เป„เบ‚เปเบกเปˆเบ™เบšเปเปˆเบ„เบปเบšเบ–เป‰เบงเบ™.

เบขเปˆเบฒเบ‡เปƒเบ”เบเปเบ•เบฒเบก, เบžเบงเบเป€เบฎเบปเบฒเบเบฑเบ‡เบ›เบฐเป€เบŠเบตเบ™เบเบฑเบšเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ”เบฑเปˆเบ‡เบเปˆเบฒเบง. เบ•เบปเบงเบขเปˆเบฒเบ‡ canonical เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐเปเบกเปˆเบ™เบเบฒเบ™เบชเบญเบšเบ–เบฒเบก paginated. เบกเบตเบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™, เบกเบฑเบ™เบกเบตเบซเบผเบฒเบเบซเบ™เป‰เบฒ, เปเบฅเบฐเบกเบตเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบˆเปเบฒเบเบฑเบ” 10. เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบชเบดเปˆเบ‡เบ”เบฝเบงเบเบฑเบ™, เปเบ•เปˆเบˆเปเบฒเบเบฑเบ” 10,10. เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบญเบตเบเบซเบ™เป‰เบฒเบ•เปเปˆเป„เบ›. เปเบฅเบฐเบ„เปเบฒเบ–เบฒเบกเปเบกเปˆเบ™, เป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเบ™เบฑเบšเบ—เบฑเบ‡เบซเบกเบปเบ”เบ™เบตเป‰เบ—เบธเบเป†เบ„เบฑเป‰เบ‡? เปเบ•เปˆเปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบšเปเปˆเบกเบตเบเบฒเบ™เปเบเป‰เป„เบ‚, เปเบฅเบฐเบšเปเปˆเบกเบตเบ—เบฒเบ‡เบ—เบตเปˆเบˆเบฐเบซเบฅเบตเบเบฅเป‰เบฝเบ‡เบกเบฑเบ™.

เบกเบตเบเบฒเบ™เปเบเป‰เป„เบ‚เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ—เบตเปˆเบงเบฒเบ‡เป„เบงเป‰เป€เบ›เบฑเบ™ sidecar เบ–เบฑเบ”เบˆเบฒเบ ClickHouse - ClickHouse Proxy.

Kirill Shvakov: ClickHouse Proxy เบกเบตเบ•เบปเบงเบˆเปเบฒเบเบฑเบ”เบญเบฑเบ”เบ•เบฒเปƒเบ™เบ•เบปเบงเปเบฅเบฐเบ–เบฒเบ™เบ„เบงเบฒเบกเบˆเปเบฒเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเปƒเบ™เบ•เบปเบง. เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบซเบผเบฒเบเบขเปˆเบฒเบ‡เป„เบ”เป‰เบ–เบทเบเป€เบฎเบฑเบ”เบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™เป€เบžเบฒเบฐเบงเปˆเบฒเบšเบฑเบ™เบซเบฒเบ—เบตเปˆเบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™เบเปเบฒเบฅเบฑเบ‡เบ–เบทเบเปเบเป‰เป„เบ‚. เบ•เบปเบงเปเบ—เบ™เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบˆเปเบฒเบเบฑเบ”เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเป‚เบ”เบเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบ„เบดเบงเปƒเบซเป‰เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเปเบฅเบฐเบเปเบฒเบ™เบปเบ”เป„เบฅเบเบฐเป€เบงเบฅเบฒเบ‚เบญเบ‡ cache เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เป. เบ–เป‰เบฒเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเปเบกเปˆเบ™เบ„เบทเบเบฑเบ™, Proxy เบˆเบฐเบชเบปเปˆเบ‡เบžเบงเบเป€เบ‚เบปเบฒเบซเบผเบฒเบเบ„เบฑเป‰เบ‡, เปเบ•เปˆเบˆเบฐเป„เบ›เบซเบฒ ClickHouse เบžเบฝเบ‡เปเบ•เปˆเบ„เบฑเป‰เบ‡เบ”เบฝเบง.

Nginx เบเบฑเบ‡เบกเบต cache เปƒเบ™เบชเบฐเบšเบฑเบšเบŸเบฃเบต, เปเบฅเบฐเบ™เบตเป‰เบเบฑเบ‡เบˆเบฐเป€เบฎเบฑเบ”เบงเบฝเบ. Nginx เบกเบตเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบงเปˆเบฒเบ–เป‰เบฒเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบกเบฒเบฎเบญเบ”เปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™, เบกเบฑเบ™เบˆเบฐเบŠเป‰เบฒเบฅเบปเบ‡เบ„เบปเบ™เบญเบทเปˆเบ™เบˆเบปเบ™เบเปˆเบงเบฒเบซเบ™เบถเปˆเบ‡เบชเปเบฒเป€เบฅเบฑเบ”. เปเบ•เปˆเบกเบฑเบ™เบขเบนเปˆเปƒเบ™ ClickHouse Proxy เบ—เบตเปˆเบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡เปเบกเปˆเบ™เป€เบฎเบฑเบ”เป„เบ”เป‰เบ”เบตเบเบงเปˆเบฒเบซเบผเบฒเบ. เบกเบฑเบ™เป„เบ”เป‰เบ–เบทเบเบชเป‰เบฒเบ‡เบ‚เบทเป‰เบ™เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐเบชเปเบฒเบฅเบฑเบš ClickHouse, เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบกเบฑเบ™เป€เบซเบกเบฒเบฐเบชเบปเบกเบเบงเปˆเบฒ. เบ”เบต, เบกเบฑเบ™เบ‡เปˆเบฒเบเบ—เบตเปˆเบˆเบฐเบ•เบดเบ”เบ•เบฑเป‰เบ‡.

เบˆเบฐเป€เบ›เบฑเบ™เปเบ™เบงเปƒเบ”เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ‡เบฒเบ™ asynchronous เปเบฅเบฐ views materialized?

เบกเบตเบšเบฑเบ™เบซเบฒเบ—เบตเปˆเบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ‡เบฒเบ™เบเบฑเบšเป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบ replay เปเบกเปˆเบ™ asynchronous - เบ—เปเบฒเบญเบดเบ”เบ‚เปเป‰เบกเบนเบ™เบ–เบทเบเบ‚เบฝเบ™, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบกเบฑเบ™เบฅเบปเป‰เบกเบฅเบปเบ‡. เบ–เป‰เบฒเปเบ—เบฑเบšเป€เบฅเบฑเบ”เบ—เบตเปˆเป€เบ›เบฑเบ™เบงเบฑเบ”เบ–เบธเบ—เบตเปˆเบกเบตเบชเปˆเบงเบ™เบฅเบงเบกเบขเบนเปˆเปƒเบ•เป‰เป€เบ„เบทเปˆเบญเบ‡เปเบฒเบ, เบŠเปเป‰เบฒเบเบฑเบ™เบˆเบฐเบ–เบทเบเบ‚เบฝเบ™เปƒเบชเปˆเบกเบฑเบ™. เปเบฅเบฐเบ–เป‰เบฒเบšเปเปˆเบกเบตเป€เบซเบ”เบœเบปเบ™เบชเบฐเบฅเบฑเบšเบชเบฑเบšเบŠเป‰เบญเบ™, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบ‚เปเป‰เบกเบนเบ™เบˆเบฐเบ–เบทเบเบŠเป‰เปเบฒเบเบฑเบ™. เป€เบˆเบปเป‰เบฒเบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เปเบ™เบงเปƒเบ”เบเปˆเบฝเบงเบเบฑเบšเบกเบฑเบ™?

เบกเบตเบเบฒเบ™เปเบเป‰เป„เบ‚เบ—เบตเปˆเบŠเบฑเบ”เป€เบˆเบ™ - เป€เบžเบทเปˆเบญเบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เบปเบงเบเบฐเบ•เบธเป‰เบ™เปƒเบ™เบซเป‰เบญเบ‡เบฎเบฝเบ™เบ—เบตเปˆเปเบ™เปˆเบ™เบญเบ™เบ‚เบญเบ‡ matviews เปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบฅเบปเป‰เบกเบฅเบปเบ‡ asynchronous. เบกเบตเบฅเบนเบเบ›เบทเบ™เป€เบ‡เบดเบ™เบซเบผเบทเปเบœเบ™เบเบฒเบ™เบ—เบตเปˆเบˆเบฐเบ›เบฐเบ•เบดเบšเบฑเบ”เบซเบ™เป‰เบฒเบ—เบตเปˆเบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™เบšเป?

เบกเบฑเบ™เป€เบ›เบฑเบ™เบกเบนเบ™เบ„เปˆเบฒเบ—เบตเปˆเบˆเบฐเป€เบ‚เบปเป‰เบฒเปƒเบˆเบงเบดเบ—เบตเบเบฒเบ™ deduplication เป€เบฎเบฑเบ”เบงเบฝเบ. เบชเบดเปˆเบ‡โ€‹เบ—เบตเปˆโ€‹เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบˆเบฐโ€‹เบšเบญเบโ€‹เบ—เปˆเบฒเบ™โ€‹เปƒเบ™โ€‹เบ›เบฑเบ”โ€‹เบˆเบธโ€‹เบšเบฑเบ™โ€‹เปเบกเปˆเบ™โ€‹เบšเปเปˆโ€‹เบเปˆเบฝเบงโ€‹เบ‚เป‰เบญเบ‡โ€‹เบเบฑเบšโ€‹เบ„เปเบฒโ€‹เบ–เบฒเบกโ€‹, เปเบ•เปˆโ€‹เบ–เป‰เบฒโ€‹เบซเบฒเบโ€‹เบงเปˆเบฒโ€‹เบกเบฑเบ™โ€‹เบ„เบงเบ™โ€‹เบˆเบฐโ€‹เบˆเบทเปˆโ€‹เบˆเปเบฒโ€‹.

เป€เบกเบทเปˆเบญเปƒเบชเปˆเปƒเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ—เบตเปˆเป€เบฎเบฑเบ”เป€เบฅเบทเป‰เบกเบ„เบทเบ™, เบกเบตเบเบฒเบ™เบŠเปเป‰เบฒเบŠเป‰เบญเบ™เบ‚เบญเบ‡เบ—เปˆเบญเบ™เป„เบกเป‰เบ—เบตเปˆเปƒเบชเปˆเบ—เบฑเบ‡เบซเบกเบปเบ”. เบ–เป‰เบฒโ€‹เบซเบฒเบโ€‹เบงเปˆเบฒโ€‹เบ—เปˆเบฒเบ™ reinsert เบ•เบฑเบ™โ€‹เบ”เบฝเบงโ€‹เบเบฑเบ™โ€‹เบ—เบตเปˆโ€‹เบ›เบฐโ€‹เบเบญเบšโ€‹เบ”เป‰เบงเบโ€‹เบˆเปเบฒโ€‹เบ™เบงเบ™โ€‹เบ”เบฝเบงโ€‹เบเบฑเบ™โ€‹เบ‚เบญเบ‡โ€‹เปเบ–เบงโ€‹เบ—เบตเปˆโ€‹เบ”เบฝเบงโ€‹เบเบฑเบ™โ€‹เปƒเบ™โ€‹เบฅเปเบฒโ€‹เบ”เบฑเบšโ€‹เบ”เบฝเบงโ€‹เบเบฑเบ™โ€‹, เบซเบผเบฑเบ‡โ€‹เบˆเบฒเบโ€‹เบ™เบฑเป‰เบ™โ€‹เบ‚เปเป‰โ€‹เบกเบนเบ™โ€‹เปเบกเปˆเบ™ deduplicatedโ€‹. เบ—เปˆเบฒเบ™เบˆเบฐเป„เบ”เป‰เบฎเบฑเบš "เบ•เบปเบเบฅเบปเบ‡" เปƒเบ™เบเบฒเบ™เบ•เบญเบšเป‚เบ•เป‰เปƒเบชเปˆ, เปเบ•เปˆเปƒเบ™เบ„เบงเบฒเบกเป€เบ›เบฑเบ™เบˆเบดเบ‡เบซเบ™เบถเปˆเบ‡เบŠเบธเบ”เบ‚เบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบˆเบฐเบ–เบทเบเบ‚เบฝเบ™, เปเบฅเบฐเบกเบฑเบ™เบˆเบฐเบšเปเปˆเบŠเป‰เปเบฒเบเบฑเบ™.

เบ™เบตเป‰เปเบกเปˆเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบชเปเบฒเบฅเบฑเบšเบ„เบงเบฒเบกเปเบ™เปˆเบ™เบญเบ™. เบ–เป‰เบฒโ€‹เบซเบฒเบโ€‹เบงเปˆเบฒโ€‹เบ—เปˆเบฒเบ™โ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบš "Okโ€‹" เปƒเบ™โ€‹เบฅเบฐโ€‹เบซเบงเปˆเบฒเบ‡โ€‹เบเบฒเบ™โ€‹เปเบŠเบโ€‹, เบซเบผเบฑเบ‡โ€‹เบˆเบฒเบโ€‹เบ™เบฑเป‰เบ™โ€‹เบ‚เปเป‰โ€‹เบกเบนเบ™โ€‹เบ‚เบญเบ‡โ€‹เบ—เปˆเบฒเบ™โ€‹เป„เบ”เป‰โ€‹เบ–เบทเบโ€‹เปƒเบชเปˆโ€‹. เบ–เป‰เบฒเบ—เปˆเบฒเบ™เป„เบ”เป‰เบฎเบฑเบšเบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เบˆเบฒเบ ClickHouse, เบกเบฑเบ™เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเบžเบงเบเป€เบ‚เบปเบฒเบšเปเปˆเป„เบ”เป‰เบ–เบทเบเปƒเบชเปˆเปเบฅเบฐเบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป€เบฎเบฑเบ”เบŠเป‰เปเบฒเบเบฒเบ™เปเบŠเบ. เปเบ•เปˆเบ–เป‰เบฒเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบ–เบทเบเบ‚เบฑเบ”เปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เปƒเบชเปˆ, เบ—เปˆเบฒเบ™เบšเปเปˆเบฎเบนเป‰เบงเปˆเบฒเบ‚เปเป‰เบกเบนเบ™เบ–เบทเบเปƒเบชเปˆเบซเบผเบทเบšเปเปˆ. เบ—เบฒเบ‡โ€‹เป€เบฅเบทเบญเบโ€‹เบžเบฝเบ‡โ€‹เปเบ•เปˆโ€‹เปเบกเปˆเบ™โ€‹เป€เบžเบทเปˆเบญโ€‹เป€เบฎเบฑเบ”โ€‹เป€เบฅโ€‹เบทเป‰เบกโ€‹เบ„เบทเบ™โ€‹เบเบฒเบ™โ€‹เปเบŠเบโ€‹เปƒเบชเปˆโ€‹เบญเบตเบโ€‹เป€เบ—เบทเปˆเบญโ€‹เบซเบ™เบถเปˆเบ‡โ€‹. เบ–เป‰เบฒโ€‹เบซเบฒเบโ€‹เบงเปˆเบฒโ€‹เบ‚เปเป‰โ€‹เบกเบนเบ™โ€‹เบ—เบตเปˆโ€‹เปเบ—เป‰โ€‹เบˆเบดเบ‡โ€‹เป„เบ”เป‰โ€‹เบ–เบทเบโ€‹เปเบŠเบโ€‹เป€เบ‚เบปเป‰เบฒโ€‹เปเบฅเบฐโ€‹เบ—เปˆเบฒเบ™โ€‹เปƒเบชเปˆโ€‹เบกเบฑเบ™โ€‹เบ„เบทเบ™โ€‹เปƒเบซเบกเปˆโ€‹, เบกเบตโ€‹เบเบฒเบ™โ€‹เบฅเบปเบšโ€‹เบฅเป‰เบฒเบ‡โ€‹เบเบฒเบ™โ€‹เบฅเบปเบšโ€‹. เบ™เบตเป‰เปเบกเปˆเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เป€เบžเบทเปˆเบญเบซเบผเบตเบเป€เบงเบฑเป‰เบ™เบเบฒเบ™เบŠเป‰เปเบฒเบเบฑเบ™.

เปเบฅเบฐเบกเบฑเบ™เบเบฑเบ‡เบกเบตเบ„เบงเบฒเบกเบชเปเบฒเบ„เบฑเบ™เปเบ™เบงเปƒเบ”เบกเบฑเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบšเบดเปˆเบ‡เบ—เบตเปˆเป€เบ›เบฑเบ™เบงเบฑเบ”เบ–เบธ. เบ–เป‰เบฒเบ‚เปเป‰เบกเบนเบ™เบ–เบทเบเบ•เบฑเบ”เบŠเปเป‰เบฒเบเบฑเบ™เป€เบกเบทเปˆเบญเปƒเบชเปˆเป€เบ‚เบปเป‰เบฒเปƒเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบซเบผเบฑเบ, เบกเบฑเบ™เบˆเบฐเบšเปเปˆเป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบกเบธเบกเป€เบšเบดเปˆเบ‡เบ—เบตเปˆเป€เบ›เบฑเบ™เบงเบฑเบ”เบ–เบธ.

เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบเปˆเบฝเบงเบเบฑเบšเบ„เปเบฒเบ–เบฒเบก. เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เบชเบฑเบšเบชเบปเบ™เบซเบผเบฒเบเป€เบžเบฒเบฐเบงเปˆเบฒเบ—เปˆเบฒเบ™เบเปเบฒเบฅเบฑเบ‡เบšเบฑเบ™เบ—เบถเบเบเบฒเบ™เบŠเป‰เปเบฒเบเบฑเบ™เบ‚เบญเบ‡เปเบ•เปˆเบฅเบฐเปเบ–เบง. เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, เบกเบฑเบ™เบšเปเปˆเปเบกเปˆเบ™เบŠเบธเบ”เบ—เบฑเบ‡เบซเบกเบปเบ”เบ—เบตเปˆเบŠเป‰เปเบฒเบเบฑเบ™, เปเบ•เปˆเบชเบฒเบเบชเบฐเป€เบžเบฒเบฐ, เปเบฅเบฐเบžเบงเบเบกเบฑเบ™เบฅเบปเป‰เบกเบฅเบปเบ‡เปƒเบ™เบžเบทเป‰เบ™เบซเบฅเบฑเบ‡. เปเบ—เป‰เบˆเบดเบ‡เปเบฅเป‰เบง, เบ‚เปเป‰เบกเบนเบ™เบˆเบฐเบเบธเบšเบฅเบปเบ‡เปƒเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ•เบปเป‰เบ™เบ•เป, เปเบ•เปˆเบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบšเปเปˆเป„เบ”เป‰เบฅเบงเบšเบฅเบงเบกเบˆเบฐเป„เบ›เบขเบนเปˆเปƒเบ™เบกเบธเบกเป€เบšเบดเปˆเบ‡เบ—เบตเปˆเป€เบ›เบฑเบ™เบงเบฑเบ”เบ–เบธ, เปเบฅเบฐเปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เบฅเบงเบกเป€เบ‚เบปเป‰เบฒเบเบฑเบ™, เบšเปเปˆเบกเบตเบซเบเบฑเบ‡เป€เบเบตเบ”เบ‚เบถเป‰เบ™เบเบฑเบšเบกเบธเบกเป€เบšเบดเปˆเบ‡เบ—เบตเปˆเป€เบ›เบฑเบ™เบงเบฑเบ”เบ–เบธ. เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒเบ—เบฑเบ”เบชเบฐเบ™เบฐเบ—เบตเปˆเป€เบ›เบฑเบ™เบงเบฑเบ”เบ–เบธเปเบกเปˆเบ™เบšเปเปˆเบกเบตเบซเบเบฑเบ‡เบ™เบญเบ เป€เปœเบทเบญ เบˆเบฒเบเบœเบปเบ™เบเบฐเบ—เบปเบšเบ•เปเปˆเบเบฒเบ™เปเบŠเบ. เปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‡เบฒเบ™เบญเบทเปˆเบ™เป†, เบšเปเปˆเบกเบตเบซเบเบฑเบ‡เป€เบเบตเบ”เบ‚เบถเป‰เบ™เบเบฑเบšเบกเบฑเบ™.

เปเบฅเบฐเบ‚เป‰เบญเบเบšเปเปˆเบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เบกเบตเบ„เบงเบฒเบกเบชเบธเบเบขเบนเปˆเบ—เบตเปˆเบ™เบตเป‰. เบ—เปˆเบฒเบ™เบžเบฝเบ‡เปเบ•เปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เบŠเบญเบเบซเบฒเบงเบดเบ—เบตเปเบเป‰เป„เบ‚เบชเบฐเป€เบžเบฒเบฐเบชเปเบฒเบฅเบฑเบšเบเปเบฅเบฐเบ™เบตเบ™เบตเป‰. เบ•เบปเบงเบขเปˆเบฒเบ‡, เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเบซเบผเบดเป‰เบ™เบ„เบทเบ™เปƒเบ™เบกเบธเบกเป€เบšเบดเปˆเบ‡เบ—เบตเปˆเป€เบ›เบฑเบ™เบงเบฑเบ”เบ–เบธ, เปเบฅเบฐเบงเบดเบ—เบตเบเบฒเบ™ deduplication เบญเบฒเบ”เบˆเบฐเป€เบฎเบฑเบ”เบงเบฝเบเปเบšเบšเบ”เบฝเบงเบเบฑเบ™. เปเบ•เปˆเบซเบ™เป‰เบฒเป€เบชเบเบ”เบฒเบ, เบšเปเปˆเบชเบฐเป€เบซเบกเบตเป„เบ›. เบ–เป‰เบฒเบกเบฑเบ™เบ–เบทเบเบฅเบงเบšเบฅเบงเบก, เบกเบฑเบ™เบˆเบฐเบšเปเปˆเป€เบฎเบฑเบ”เบงเบฝเบ.

Kirill Shvakov: เบžเบงเบเป€เบฎเบปเบฒเบเบฑเบ‡เบกเบตเบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡ crutch เบเบฑเบšเบ„เบทเบ™เป„เบ›เบšเปˆเบญเบ™เปƒเบ™เบกเบทเป‰. เบกเบตเบšเบฑเบ™เบซเบฒเบงเปˆเบฒเบกเบตเบ„เบงเบฒเบกเบ›เบฐเบ—เบฑเบšเปƒเบˆเปƒเบ™เบเบฒเบ™เป‚เบ„เบชเบฐเบ™เบฒ, เปเบฅเบฐเบกเบตเบ‚เปเป‰เบกเบนเบ™เบšเบฒเบ‡เบขเปˆเบฒเบ‡เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเปเบ—เป‰เบˆเบดเบ‡ - เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เบžเบฝเบ‡เปเบ•เปˆเบ„เบงเบฒเบกเบ›เบฐเบ—เบฑเบšเปƒเบˆ. เบžเบงเบเบกเบฑเบ™เบšเปเปˆเบ„เปˆเบญเบเบˆเบฐเบŠเปเป‰เบฒเบเบฑเบ™, เปเบ•เปˆเบ–เป‰เบฒเบญเบฑเบ™เบ™เบตเป‰เป€เบเบตเบ”เบ‚เบถเป‰เบ™, เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบฅเบปเป‰เบกเบฅเบปเบ‡เปƒเบ™เบžเบฒเบเบซเบผเบฑเบ‡. เปเบฅเบฐเบกเบตเบชเบดเปˆเบ‡เบ—เบตเปˆเบšเปเปˆเบชเบฒเบกเบฒเบ”เบŠเป‰เปเบฒเบเบฑเบ™เป„เบ”เป‰ - เบเบปเบ”เปเบฅเบฐเป€เบฅเบทเปˆเบญเบ‡เบ—เบฑเบ‡เบซเบกเบปเบ”เบ™เบตเป‰. เปเบ•เปˆเบ‚เป‰เบญเบเบเบฑเบ‡เบขเบฒเบเบชเบฐเปเบ”เบ‡เปƒเบซเป‰เบžเบงเบเป€เบ‚เบปเบฒเป€เบเบทเบญเบšเบ—เบฑเบ™เบ—เบต.

เบ—เบฑเบ”เบชเบฐเบ™เบฐเบ—เบตเปˆเป€เบ›เบฑเบ™เบงเบฑเบ”เบ–เบธเป„เบ”เป‰เบ–เบทเบเบชเป‰เบฒเบ‡เบ‚เบทเป‰เบ™เปเบ™เบงเปƒเบ”? เบกเบตเบ—เบฑเบ”เบชเบฐเบ™เบฐเบ—เบตเปˆเบกเบฑเบ™เบ–เบทเบเบ‚เบฝเบ™เป‚เบ”เบเบเบปเบ‡ - เบกเบฑเบ™เบ–เบทเบเบ‚เบฝเบ™เป€เบ›เบฑเบ™เบ‚เปเป‰เบกเบนเบ™เบ”เบดเบš, เปเบฅเบฐเบ‚เบฝเบ™เป€เบ–เบดเบ‡ views. เบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™, เปƒเบ™เบšเบฒเบ‡เบˆเบธเบ”เบ‚เปเป‰เบกเบนเบ™เบšเปเปˆเบ–เบทเบเบ•เป‰เบญเบ‡เบซเบผเบฒเบ, เบกเบฑเบ™เบ–เบทเบเบŠเป‰เปเบฒเบเบฑเบ™, เปเบฅเบฐเบญเบทเปˆเบ™เป†. เปเบฅเบฐเบกเบตเบชเปˆเบงเบ™เบ—เบตเบชเบญเบ‡เบ‚เบญเบ‡เบ•เบฒเบ•เบฐเบฅเบฒเบ‡, เบšเปˆเบญเบ™เบ—เบตเปˆเบžเบงเบเป€เบ‚เบปเบฒเป€เบšเบดเปˆเบ‡เบ„เบทเบเบฑเบ™เบเบฑเบšเบ—เบฑเบ”เบชเบฐเบ™เบฐเบ—เบตเปˆเป€เบ›เบฑเบ™เบงเบฑเบ”เบ–เบธ, เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, เบžเบงเบเบกเบฑเบ™เบกเบตเบ„เบงเบฒเบกเบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™เบขเปˆเบฒเบ‡เปเบ—เป‰เบˆเบดเบ‡เปƒเบ™เป‚เบ„เบ‡เบชเป‰เบฒเบ‡. เป€เบกเบทเปˆเบญเปƒเบ”เบ™เบถเปˆเบ‡เบžเบงเบเป€เบฎเบปเบฒเบ„เบดเบ”เป„เบฅเปˆเบ‚เปเป‰เบกเบนเบ™เบ„เบทเบ™เปƒเปเปˆ, เบ™เบฑเบšเบ‚เปเป‰เบกเบนเบ™เป‚เบ”เบเบšเปเปˆเบŠเปเป‰เบฒเบเบฑเบ™, เบ‚เบฝเบ™เปƒเบชเปˆเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เป€เบซเบผเบปเปˆเบฒเบ™เบฑเป‰เบ™.

เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบœเปˆเบฒเบ™ API - เบ™เบตเป‰เบˆเบฐเบšเปเปˆเป€เบฎเบฑเบ”เบงเบฝเบเบขเบนเปˆเปƒเบ™ ClickHouse เบ”เป‰เบงเบเบ•เบปเบ™เป€เบญเบ‡. เปเบฅเบฐ API เป€เบšเบดเปˆเบ‡: เป€เบกเบทเปˆเบญเบ‚เป‰เบญเบเบกเบตเบงเบฑเบ™เบ—เบตเบ‚เบญเบ‡เบเบฒเบ™เป€เบžเบตเปˆเบกเบชเบธเบ”เบ—เป‰เบฒเบเบ‚เบญเบ‡เบ•เบฒเบ•เบฐเบฅเบฒเบ‡, เบšเปˆเบญเบ™เบ—เบตเปˆเบกเบฑเบ™เบฎเบฑเบšเบ›เบฐเบเบฑเบ™เบงเปˆเบฒเบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบ–เบทเบเบ•เป‰เบญเบ‡เป„เบ”เป‰เบ–เบทเบเบ„เบดเบ”เป„เบฅเปˆเปเบฅเป‰เบง, เปเบฅเบฐเบกเบฑเบ™เป€เบฎเบฑเบ”เปƒเบซเป‰เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเป„เบ›เบซเบฒเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบซเบ™เบถเปˆเบ‡เปเบฅเบฐเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบญเบทเปˆเบ™. เบˆเบฒเบเบซเบ™เบถเปˆเบ‡เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเป€เบฅเบทเบญเบเป€เบ–เบดเบ‡เบˆเปเบฒเบ™เบงเบ™เบ—เบตเปˆเปเบ™เปˆเบ™เบญเบ™เบ‚เบญเบ‡เป€เบงเบฅเบฒ, เปเบฅเบฐเบˆเบฒเบเบญเบทเปˆเบ™เบกเบฑเบ™เป„เบ”เป‰เบฎเบฑเบšเบชเบดเปˆเบ‡เบ—เบตเปˆเบเบฑเบ‡เบšเปเปˆเบ—เบฑเบ™เป„เบ”เป‰เบ„เบดเบ”เป„เบฅเปˆ. เปเบฅเบฐเบกเบฑเบ™เป€เบฎเบฑเบ”เบงเบฝเบ, เปเบ•เปˆเบšเปเปˆเปเบกเปˆเบ™เบœเปˆเบฒเบ™ ClickHouse เบ”เบฝเบง.

เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบกเบตเบšเบฒเบ‡เบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡ API - เบชเปเบฒเบฅเบฑเบšเบ™เบฑเบเบงเบดเป€เบ„เบฒเบฐ, เบชเปเบฒเบฅเบฑเบšเบœเบนเป‰เปƒเบŠเป‰ - เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เปƒเบ™เบซเบผเบฑเบเบเบฒเบ™, เบ™เบตเป‰เปเบกเปˆเบ™เบ—เบฒเบ‡เป€เบฅเบทเบญเบ. เป€เบˆเบปเป‰เบฒเบ™เบฑเบšเบชเบฐ เป€เปเบต, เบ™เบฑเบšเบชเบฐ เป€เปเบต. เบ™เบตเป‰เบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เป„เบ”เป‰เบซเบ™เบถเปˆเบ‡เบ„เบฑเป‰เบ‡เบ•เปเปˆเบกเบทเป‰เบซเบผเบทเบšเบฒเบ‡เป€เบงเบฅเบฒเบญเบทเปˆเบ™เป†. เบ—เปˆเบฒเบ™เป€เบฅเบทเบญเบเบชเปเบฒเบฅเบฑเบšเบ•เบปเบงเบ—เปˆเบฒเบ™เป€เบญเบ‡เบ‚เบญเบšเป€เบ‚เบ”เบ—เบตเปˆเบ—เปˆเบฒเบ™เบšเปเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เปเบฅเบฐเบšเปเปˆเบชเปเบฒเบ„เบฑเบ™.

ClickHouse เบกเบตเบซเบผเบฒเบเบšเบฑเบ™เบ—เบถเบ. เบ‚เป‰เบญเบเบˆเบฐเป€เบซเบฑเบ™เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบตเปˆเป€เบเบตเบ”เบ‚เบถเป‰เบ™เบเบฑเบšเป€เบŠเบตเบšเป€เบงเบตเป„เบ”เป‰เปเบ™เบงเปƒเบ”?

ClickHouse เบกเบตเบˆเปเบฒเบ™เบงเบ™เบˆเปเบฒเบ™เบงเบ™เบซเบฅเบฒเบเบ‚เบญเบ‡เบšเบฑเบ™เบ—เบถเบเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™, เปเบฅเบฐเบˆเปเบฒเบ™เบงเบ™เบ™เบตเป‰เป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™. เปƒเบ™เบฎเบธเปˆเบ™เปƒเบซเบกเปˆ, เบšเบฒเบ‡เบชเปˆเบงเบ™เบ‚เบญเบ‡เบžเบงเบเบกเบฑเบ™เบ–เบทเบเป€เบ›เบตเบ”เปƒเบŠเป‰เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™; เบขเปˆเบฒเบ‡เปƒเบ”เบเปเบ•เบฒเบก, เบกเบตเบซเบผเบฒเบเบเบงเปˆเบฒเปเบฅเบฐเบซเบผเบฒเบเบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒ. เปƒเบ™เบ—เบตเปˆเบชเบธเบ”, เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบขเบฒเบเป€เบซเบฑเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆเป€เบเบตเบ”เบ‚เบถเป‰เบ™เบเบฑเบšเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ‚เบญเบ‡เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™, เบšเบฒเบ‡เบ—เบตเบขเบนเปˆเปƒเบ™ dashboard เบชเบฐเบซเบผเบธเบšเบšเบฒเบ‡เบ›เบฐเป€เบžเบ”.

เบ—เปˆเบฒเบ™เบกเบตเบขเบนเปˆเปƒเบ™เบ—เบตเบกเบ‡เบฒเบ™ ClickHouse เบ‚เบญเบ‡เบ—เปˆเบฒเบ™, เบซเบผเบทเปƒเบ™เบ—เบตเบกเบ‡เบฒเบ™เบ‚เบญเบ‡เบซเบกเบนเปˆเป€เบžเบทเปˆเบญเบ™เบ‚เบญเบ‡เบ—เปˆเบฒเบ™, เบœเบนเป‰เบ—เบตเปˆเบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบšเบฒเบ‡เบขเปˆเบฒเบ‡เบ‚เบญเบ‡ dashboards เบเบฝเบกเบžเป‰เบญเบกเบ—เบตเปˆเบˆเบฐเบชเบฐเปเบ”เบ‡เบšเบฑเบ™เบ—เบถเบเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เป€เบ›เบฑเบ™เบœเบฐเบฅเบดเบ”เบ•เบฐเบžเบฑเบ™เบ—เบตเปˆเบเบฝเบกเบžเป‰เบญเบก? เปƒเบ™เบ—เบตเปˆเบชเบธเบ”, เบžเบฝเบ‡เปเบ•เปˆเป€เบšเบดเปˆเบ‡เบšเบฑเบ™เบ—เบถเบเปƒเบ™ ClickHouse เปเบกเปˆเบ™เบ”เบตเบซเบผเบฒเบ. เปเบ•เปˆเบกเบฑเบ™เบˆเบฐเป€เบขเบฑเบ™เบซเบผเบฒเบเบ–เป‰เบฒเบกเบฑเบ™เบ–เบทเบเบเบฐเบเบฝเบกเปเบฅเป‰เบงเปƒเบ™เบฎเบนเบšเปเบšเบšเบ‚เบญเบ‡ dashboard. เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบˆเบฐเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เป€เบ•เบฐเบญเบญเบเบˆเบฒเบเบ™เบตเป‰.

เบกเบต dashboards, เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเบžเบงเบเป€เบ‚เบปเบฒเบšเปเปˆเป„เบ”เป‰เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™. เปƒเบ™เบšเปเบฅเบดเบชเบฑเบ”เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ, เบ›เบฐเบกเบฒเบ™ 60 เบ—เบตเบกเปƒเบŠเป‰ ClickHouse, เปเบฅเบฐเบชเบดเปˆเบ‡เบ—เบตเปˆเปเบ›เบเบ—เบตเปˆเบชเบธเบ”เปเบกเปˆเบ™เบงเปˆเบฒเบžเบงเบเป€เบ‚เบปเบฒเบˆเปเบฒเบ™เบงเบ™เบซเบผเบฒเบเบกเบต dashboards เบ—เบตเปˆเบžเบงเบเป€เบ‚เบปเบฒเป€เบฎเบฑเบ”เบชเปเบฒเบฅเบฑเบšเบ•เบปเบงเป€เบญเบ‡, เปเบฅเบฐเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เป€เบฅเบฑเบเบ™เป‰เบญเบ. เบšเบฒเบ‡เบ—เบตเบกเปƒเบŠเป‰เบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡ Yandex.Cloud เบžเบฒเบเปƒเบ™. เบกเบตเบšเบฒเบ‡เบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™เบ—เบตเปˆเบเบฝเบกเบžเป‰เบญเบก, เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเบšเปเปˆเปเบกเปˆเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เบ—เบตเปˆเบˆเปเบฒเป€เบ›เบฑเบ™. เบ„เบปเบ™เบญเบทเปˆเบ™เบกเบตเบ‚เบญเบ‡เบ•เบปเบ™เป€เบญเบ‡.

เป€เบžเบทเปˆเบญเบ™เบฎเปˆเบงเบกเบ‡เบฒเบ™เบ‚เบญเบ‡เบ‚เป‰เบญเบเบˆเบฒเบ Metrica เบกเบต dashboard เบ‚เบญเบ‡เบ•เบปเบ™เป€เบญเบ‡เปƒเบ™ Grafana, เปเบฅเบฐเบ‚เป‰เบญเบเบกเบตเบ‚เบญเบ‡เบ‚เป‰เบญเบเบชเปเบฒเบฅเบฑเบšเบเบธเปˆเบกเบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒ. เบ‚เป‰เบญเบเบเปเบฒเบฅเบฑเบ‡เป€เบšเบดเปˆเบ‡เบชเบดเปˆเบ‡เบ•เปˆเบฒเบ‡เป†เป€เบŠเบฑเปˆเบ™ cache hit เบชเปเบฒเบฅเบฑเบš cache serif. เปเบฅเบฐเป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเบกเบตเบ„เบงเบฒเบกเบซเบเบธเป‰เบ‡เบเบฒเบเบซเบผเบฒเบเปเบกเปˆเบ™เบžเบงเบเป€เบฎเบปเบฒเปƒเบŠเป‰เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™. เบ‚เป‰เบญเบเบชเป‰เบฒเบ‡ dashboard เบ‚เบญเบ‡เบ‚เป‰เบญเบเป‚เบ”เบเปƒเบŠเป‰เป€เบ„เบทเปˆเบญเบ‡เบกเบทเป€เบเบปเปˆเบฒเบซเบผเบฒเบเบ—เบตเปˆเป€เบญเบตเป‰เบ™เบงเปˆเบฒ Graphite-web. เบฅเบฒเบงเบ‚เบตเป‰เบ„เป‰เบฒเบ™เปเบปเบ”. เปเบฅเบฐเบ‚เป‰เบญเบเบเบฑเบ‡เปƒเบŠเป‰เบงเบดเบ—เบตเบ™เบตเป‰, เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒ Grafana เบญเบฒเบ”เบˆเบฐเบชเบฐเบ”เบงเบเปเบฅเบฐเบชเบงเบเบ‡เบฒเบกเบเบงเปˆเบฒ.

เบชเบดเปˆเบ‡เบžเบทเป‰เบ™เบ–เบฒเบ™เปƒเบ™ dashboards เปเบกเปˆเบ™เบ„เบทเบเบฑเบ™. เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เบ•เบปเบงเบงเบฑเบ”เปเบ—เบเบฅเบฐเบšเบปเบšเบชเปเบฒเบฅเบฑเบšเบเบธเปˆเบก: CPU, เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒ, เปเบœเปˆเบ™, เป€เบ„เบทเบญเบ‚เปˆเบฒเบ. เบญเบทเปˆเบ™ เป† - เบˆเปเบฒเบ™เบงเบ™เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบžเป‰เบญเบกเป†เบเบฑเบ™, เบˆเปเบฒเบ™เบงเบ™เบเบฒเบ™เบฅเบงเบกเป€เบ‚เบปเป‰เบฒเบเบฑเบ™, เบˆเปเบฒเบ™เบงเบ™เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบ•เปเปˆเบงเบดเบ™เบฒเบ—เบต, เบˆเปเบฒเบ™เบงเบ™เบชเบนเบ‡เบชเบธเบ”เบ‚เบญเบ‡ chunks เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เปเบšเปˆเบ‡เบ›เบฑเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡ MergeTree, replication lag, เบ‚เบฐเบซเบ™เบฒเบ”เปเบ–เบงเบเบฒเบ™เบˆเปเบฒเบฅเบญเบ‡, เบˆเปเบฒเบ™เบงเบ™เปเบ–เบงเปƒเบชเปˆเบ•เปเปˆเบงเบดเบ™เบฒเบ—เบต, เบˆเปเบฒเบ™เบงเบ™เบ‚เบญเบ‡เบเบฒเบ™เปเบŠเบเปƒเบชเปˆเบ•เปเปˆเบงเบดเบ™เบฒเบ—เบต. เบ™เบตเป‰เปเบกเปˆเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เบ—เบตเปˆเป„เบ”เป‰เบกเบฒเบšเปเปˆเปเบกเปˆเบ™เบกเบฒเบˆเบฒเบเบšเบฑเบ™เบ—เบถเบ, เปเบ•เปˆเบกเบฒเบˆเบฒเบ metrics.

Vladimir Kolobaev: Alexey, เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบขเบฒเบเบˆเบฐเปเบเป‰เป„เบ‚เบกเบฑเบ™เป€เบฅเบฑเบเบ™เป‰เบญเบ. เบกเบต Grafana. Grafana เบกเบตเปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™, เป€เบŠเบดเปˆเบ‡เปเบกเปˆเบ™ ClickHouse. เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, เบ‚เป‰เบญเบเบชเบฒเบกเบฒเบ”เบฎเป‰เบญเบ‡เบ‚เปเบˆเบฒเบ Grafana เป‚เบ”เบเบเบปเบ‡เบเบฑเบš ClickHouse. ClickHouse เบกเบตเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ—เบตเปˆเบกเบตเบšเบฑเบ™เบ—เบถเบ, เบกเบฑเบ™เปเบกเปˆเบ™เบ„เบทเบเบฑเบ™เบชเปเบฒเบฅเบฑเบšเบ—เบธเบเบ„เบปเบ™. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบ‚เป‰เบญเบเบ•เป‰เบญเบ‡เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบšเบฑเบ™เบ—เบถเบเบ™เบตเป‰เปƒเบ™ Grafana เปเบฅเบฐเป€เบšเบดเปˆเบ‡เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ—เบตเปˆเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ‚เบญเบ‡เบ‚เป‰เบญเบเป€เบฎเบฑเบ”. เบกเบฑเบ™เบˆเบฐเป€เบ›เบฑเบ™เบเบฒเบ™เบ”เบตเบ—เบตเปˆเบˆเบฐเบกเบต dashboard เปเบšเบšเบ™เบตเป‰.

เบ‚เป‰เบญเบเบ‚เบตเปˆเบฅเบปเบ”เบ–เบตเบšเป€เบญเบ‡. เปเบ•เปˆเบ‚เป‰เบญเบเบกเบตเบ„เปเบฒเบ–เบฒเบก - เบ–เป‰เบฒเบกเบฑเบ™เป€เบ›เบฑเบ™เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”, เปเบฅเบฐ Grafana เบ–เบทเบเปƒเบŠเป‰เป‚เบ”เบเบ—เบธเบเบ„เบปเบ™, เป€เบ›เบฑเบ™เบซเบเบฑเบ‡ Yandex เบšเปเปˆเบกเบต dashboard เบ—เบตเปˆเป€เบ›เบฑเบ™เบ—เบฒเบ‡เบเบฒเบ™?

Kirill Shvakov: เปƒเบ™เบ„เบงเบฒเบกเป€เบ›เบฑเบ™เบˆเบดเบ‡, เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเป„เบ›เบซเบฒ ClickHouse เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™ Altinity. เปเบฅเบฐเบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบžเบฝเบ‡เปเบ•เปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เปƒเบซเป‰ vector เบ‚เบญเบ‡เบšเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเบ‚เบธเบ”เปเบฅเบฐเบœเบนเป‰เบ—เบตเปˆเบˆเบฐเบเบนเป‰. เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ–เบฒเบกเบžเบงเบเป€เบ‚เบปเบฒเป„เบ”เป‰, เป€เบžเบฒเบฐเบงเปˆเบฒ Yandex เบเบฑเบ‡เบชเป‰เบฒเบ‡ ClickHouse, เปเบฅเบฐเบšเปเปˆเปเบกเปˆเบ™เป€เบฅเบทเปˆเบญเบ‡เบ—เบตเปˆเบญเป‰เบญเบกเบฎเบญเบšเบกเบฑเบ™. Altinity เปเบกเปˆเบ™เบšเปเบฅเบดเบชเบฑเบ”เบ•เบปเป‰เบ™เบ•เปเบ—เบตเปˆเบชเบปเปˆเบ‡เป€เบชเบตเบก ClickHouse. เบžเบงเบเป€เบ‚เบปเบฒโ€‹เบˆเบฐโ€‹เบšเปเปˆโ€‹เบ›เบฐเบ–เบดเป‰เบกโ€‹เบฅเบฒเบง, เปเบ•เปˆโ€‹เบˆเบฐโ€‹เบชเบฐเปœเบฑเบšเบชเบฐเปœเบนเบ™โ€‹เบฅเบฒเบง. เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒ, เปƒเบ™เบซเบผเบฑเบเบเบฒเบ™, เป€เบžเบทเปˆเบญเบญเบฑเบšเป‚เบซเบฅเบ” dashboard เป„เบ›เบซเบฒเป€เบงเบฑเบšเป„เบŠเบ—เปŒ Grafana, เบ—เปˆเบฒเบ™เบžเบฝเบ‡เปเบ•เปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เบฅเบปเบ‡เบ—เบฐเบšเบฝเบ™เปเบฅเบฐเบญเบฑเบšเป‚เบซเบฅเบ”เบกเบฑเบ™ - เบšเปเปˆเบกเบตเบšเบฑเบ™เบซเบฒเบžเบดเป€เบชเบ”.

Alexey Milovidov: เปƒเบ™เบ›เบตเบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ, ClickHouse เป„เบ”เป‰เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบ‚เปเป‰เบกเบนเบ™เบซเบผเบฒเบเบขเปˆเบฒเบ‡. เบกเบต metrics เบชเปเบฒเบฅเบฑเบšเปเบ•เปˆเบฅเบฐเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™. เปเบฅเบฐเบšเปเปˆเบ”เบปเบ™เบกเบฒเบ™เบตเป‰, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เป€เบžเบตเปˆเบกเบ•เบปเบงเปเบšเบšเบชเบญเบšเบ–เบฒเบกเบฅเบฐเบ”เบฑเบšเบ•เปˆเปเบฒเบเบงเปˆเบฒเป€เบžเบทเปˆเบญเป€เบšเบดเปˆเบ‡เบšเปˆเบญเบ™เบ—เบตเปˆเบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเปƒเบŠเป‰เป€เบงเบฅเบฒเบ—เบธเบเป† millisecond. เปเบ•เปˆเป€เบžเบทเปˆเบญเปƒเบŠเป‰เบซเบ™เป‰เบฒเบ—เบตเปˆเบ™เบตเป‰, เบ‚เป‰เบญเบเบ•เป‰เบญเบ‡เป€เบ›เบตเบ” console client เปเบฅเบฐเบžเบดเบกเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เป, เป€เบŠเบดเปˆเบ‡เบ‚เป‰เบญเบเบฅเบทเบกเบชเบฐเป€เบซเบกเบต. เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เป„เบ”เป‰โ€‹เบšเบฑเบ™โ€‹เบ—เบถเบโ€‹เป„เบงเป‰โ€‹เบšเบฒเบ‡โ€‹เบšเปˆเบญเบ™โ€‹เปเบฅเบฐโ€‹เป€เบฎเบฑเบ”โ€‹เปƒเบซเป‰โ€‹เบฅเบทเบกโ€‹เบšเปˆเบญเบ™โ€‹เบ—เบตเปˆโ€‹เปเบ™เปˆโ€‹เบ™เบญเบ™.

เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบ›เบฒเบ”เบ–เบฐเบซเบ™เบฒเบงเปˆเบฒเบกเบตเป€เบ„เบทเปˆเบญเบ‡เบกเบทเบ—เบตเปˆเบžเบฝเบ‡เปเบ•เปˆเป€เบงเบปเป‰เบฒเบงเปˆเบฒ, เบ™เบตเป‰เปเบกเปˆเบ™เบ„เปเบฒเบ–เบฒเบกเบ—เบตเปˆเบซเบ™เบฑเบเปเบซเบ™เป‰เบ™เบ‚เบญเบ‡เบ—เปˆเบฒเบ™, เบˆเบฑเบ”เบเบธเปˆเบกเป‚เบ”เบเบซเป‰เบญเบ‡เบฎเบฝเบ™เปเบšเบšเบชเบญเบšเบ–เบฒเบก. เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบเบปเบ”โ€‹เบ”เบฑเบ™โ€‹เบซเบ™เบถเปˆเบ‡โ€‹, เปเบฅเบฐโ€‹เป€เบ‚เบปเบฒโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบˆเบฐโ€‹เบšเบญเบโ€‹เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบงเปˆเบฒโ€‹เป€เบ›เบฑเบ™โ€‹เบซเบเบฑเบ‡โ€‹เบกเบฑเบ™โ€‹เป€เบ›เบฑเบ™โ€‹เบซเบ™เบฑเบโ€‹. เบšเปเปˆเบกเบตเบเบฒเบ™เปเบเป‰เป„เบ‚เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™. เปเบฅเบฐเบกเบฑเบ™เบเปเปˆเป€เบ›เบฑเบ™เป€เบฅเบทเปˆเบญเบ‡เปเบ›เบเบ—เบตเปˆเป€เบกเบทเปˆเบญเบ„เบปเบ™เบ–เบฒเบกเบ‚เป‰เบญเบเบงเปˆเบฒ: "เบšเบญเบเบ‚เป‰เบญเบ, เบกเบต dashboards เบเบฝเบกเบžเป‰เบญเบกเบชเปเบฒเบฅเบฑเบš Grafana เบšเป?", เบ‚เป‰เบญเบเป€เบงเบปเป‰เบฒเบงเปˆเบฒ: "เป„เบ›เบซเบฒเป€เบงเบฑเบšเป„เบŠเบ—เปŒ Grafana, เบกเบตเบŠเบธเบกเบŠเบปเบ™ "Dashboards", เปเบฅเบฐเบกเบต dashboard. เบˆเบฒเบ Dimka, เบกเบต dashboard เบˆเบฒเบ Kostyan. เบ‚เป‰เบญเบเบšเปเปˆเบฎเบนเป‰เบงเปˆเบฒเบกเบฑเบ™เปเบกเปˆเบ™เบซเบเบฑเบ‡, เบ‚เป‰เบญเบเบšเปเปˆเป„เบ”เป‰เปƒเบŠเป‰เบกเบฑเบ™เป€เบญเบ‡.โ€

เบงเบดเบ—เบตเบเบฒเบ™เบกเบตเบญเบดเบ”เบ—เบดเบžเบปเบ™เบ•เปเปˆเบเบฒเบ™เบ›เบฐเบชเบปเบกเบ›เบฐเบชเบฒเบ™เป€เบžเบทเปˆเบญเปƒเบซเป‰เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบšเปเปˆ crash เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ OOM?

เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบกเบตโ€‹เบ•เบฒโ€‹เบ•เบฐโ€‹เบฅเบฒเบ‡โ€‹, เบกเบตโ€‹เบžเบฝเบ‡โ€‹เปเบ•เปˆโ€‹เบซเบ™เบถเปˆเบ‡โ€‹เบเบฒเบ™โ€‹เปเบšเปˆเบ‡โ€‹เบ›เบฑเบ™โ€‹เปƒเบ™โ€‹เบ•เบฒโ€‹เบ•เบฐโ€‹เบฅเบฒเบ‡โ€‹, เบกเบฑเบ™โ€‹เปเบกเปˆเบ™ ReplaceingMergeTreeโ€‹. เบ‚เป‰เบญเบเป„เบ”เป‰เบ‚เบฝเบ™เบ‚เปเป‰เบกเบนเบ™เปƒเบชเปˆเบกเบฑเบ™เป€เบ›เบฑเบ™เป€เบงเบฅเบฒเบชเบตเปˆเบ›เบตเปเบฅเป‰เบง. เบ‚เป‰เบญเบเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป„เบ”เป‰เปเบเป‰เป„เบ‚เบกเบฑเบ™เปเบฅเบฐเบฅเบถเบšเบ‚เปเป‰เบกเบนเบ™เบšเบฒเบ‡เบขเปˆเบฒเบ‡.

เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เป€เบฎเบฑเบ”เบชเบดเปˆเบ‡เบ™เบตเป‰, เปเบฅเบฐเปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เบ›เบฐเบกเบงเบ™เบœเบปเบ™เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบ™เบตเป‰, เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบ—เบฑเบ‡เบซเบกเบปเบ”เปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ—เบฑเบ‡เบซเบกเบปเบ”เปƒเบ™ cluster เป„เบ”เป‰เบ–เบทเบเบšเปเบฅเบดเป‚เบžเบ, เปเบฅเบฐเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ—เบฑเบ‡เบซเบกเบปเบ”เปƒเบ™ cluster เป„เบ”เป‰เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ OOM. เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบžเบงเบเป€เบ‚เบปเบฒเบ—เบฑเบ‡เบซเบกเบปเบ”เป„เบ”เป‰เบฅเบธเบเบ‚เบถเป‰เบ™เบฎเปˆเบงเบกเบเบฑเบ™, เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบเบฒเบ™เบฅเบงเบกเป€เบญเบปเบฒเบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ‡เบฒเบ™เบ”เบฝเบงเบเบฑเบ™เบ™เบตเป‰, เบšเบฅเบฑเบญเบเบ‚เปเป‰เบกเบนเบ™เบ™เบตเป‰, เปเบฅเบฐเบ•เบปเบเบขเบนเปˆเปƒเบ™ OOM เบญเบตเบเป€เบ—เบทเปˆเบญเบซเบ™เบถเปˆเบ‡. เบˆเบฒเบโ€‹เบ™เบฑเป‰เบ™โ€‹เป€เบ‚เบปเบฒโ€‹เป€เบˆเบปเป‰เบฒโ€‹เป„เบ”เป‰โ€‹เบฅเบธเบโ€‹เบ‚เบถเป‰เบ™โ€‹เบญเบตเบ เปเบฅเบฐโ€‹เบฅเบปเป‰เบกโ€‹เบฅเบปเบ‡โ€‹เบญเบตเบ. เปเบฅเบฐเป€เบฅเบทเปˆเบญเบ‡เบ™เบตเป‰เบšเปเปˆเป„เบ”เป‰เบขเบธเบ”เป€เบŠเบปเบฒ.

เบซเบผเบฑเบ‡โ€‹เบˆเบฒเบโ€‹เบ™เบฑเป‰เบ™โ€‹, เบกเบฑเบ™โ€‹เป„เบ”เป‰โ€‹เบซเบฑเบ™โ€‹เบญเบญเบโ€‹เบงเปˆเบฒโ€‹เบ™เบตเป‰โ€‹เปเบกเปˆเบ™โ€‹เบ•เบปเบงโ€‹เบˆเบดเบ‡โ€‹เปเบฅเป‰เบง bug เบ—เบตเปˆ guys เป„เบ”เป‰โ€‹เปเบเป‰โ€‹เป„เบ‚โ€‹เป„เบ”เป‰โ€‹. เบ™เบตเป‰เปเบกเปˆเบ™เป€เบขเบฑเบ™เบซเบผเบฒเบ, เบ‚เบญเบšเปƒเบˆเบซเบผเบฒเบเป†. เปเบ•เปˆเบเบฑเบ‡เบกเบตเบชเบฒเบ™เบ•เบปเบเบ„เป‰เบฒเบ‡เบขเบนเปˆ. เปเบฅเบฐเบ”เบฝเบงเบ™เบตเป‰, เป€เบกเบทเปˆเบญเบ‚เป‰เบญเบเบ„เบดเบ”เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบชเป‰เบฒเบ‡เบเบฒเบ™เบ›เบฐเบชเบปเบกเบ›เบฐเบชเบฒเบ™เบšเบฒเบ‡เบ›เบฐเป€เบžเบ”เปƒเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡, เบ‚เป‰เบญเบเบกเบตเบ„เปเบฒเบ–เบฒเบก - เป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบ‚เป‰เบญเบเบˆเบถเปˆเบ‡เบšเปเปˆเบชเบฒเบกเบฒเบ”เบกเบตเบญเบดเบ”เบ—เบดเบžเบปเบ™เบ•เปเปˆเบเบฒเบ™เบ›เบฐเบชเบปเบกเบ›เบฐเบชเบฒเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰? เบ•เบปเบงเบขเปˆเบฒเบ‡, เบˆเปเบฒเบเบฑเบ”เบžเบงเบเป€เบ‚เบปเบฒเป‚เบ”เบเบˆเปเบฒเบ™เบงเบ™ RAM เบ—เบตเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™, เบซเบผเบท, เปƒเบ™เบซเบผเบฑเบเบเบฒเบ™, เป‚เบ”เบเบˆเปเบฒเบ™เบงเบ™เบ—เบตเปˆเบˆเบฐเบ›เบฐเบกเบงเบ™เบœเบปเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบชเบฐเป€เบžเบฒเบฐเบ™เบตเป‰.

เบ‚เป‰เบญเบเบกเบตเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ—เบตเปˆเป€เบญเบตเป‰เบ™เบงเปˆเบฒ "Metrics", เบเบฐเบฅเบธเบ™เบฒเบ›เบธเบ‡เปเบ•เปˆเบ‡เบกเบฑเบ™เบชเปเบฒเบฅเบฑเบšเบ‚เป‰เบญเบเปƒเบ™เบชเบญเบ‡เบซเบปเบงเบ‚เปเป‰. เบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบชเป‰เบฒเบ‡เบชเบดเบšเบซเบผเบทเบซเป‰เบฒเบ›เบฐเบชเบปเบกเบ›เบฐเบชเบฒเบ™เปƒเบ™เบ‚เบฐเบซเบ™เบฒเบ™, เป€เบฎเบฑเบ”เปƒเบ™เบชเบญเบ‡. เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบ„เบดเบ”เบงเปˆเบฒเบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบกเบตเบ„เบงเบฒเบกเบŠเบปเบ‡เบˆเปเบฒเบžเบฝเบ‡เบžเปเบชเปเบฒเบฅเบฑเบšเบชเบญเบ‡, เปเบ•เปˆเบกเบฑเบ™เบญเบฒเบ”เบˆเบฐเบšเปเปˆเบžเบฝเบ‡เบžเปเบ—เบตเปˆเบˆเบฐเบ›เบฐเบกเบงเบ™เบœเบปเบ™เบชเบดเบš. เป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบ„เบงเบฒเบกเบขเป‰เบฒเบ™เบเบปเบงเบˆเบถเปˆเบ‡เบเบฑเบ‡เบ„เบปเบ‡เบขเบนเปˆ? เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบเปเบฒเบฅเบฑเบ‡เป€เบ•เบตเบšเปƒเบซเบเปˆ, เปเบฅเบฐเบกเบทเป‰เบซเบ™เบถเปˆเบ‡เบ‚เป‰เบญเบเบˆเบฐเบ›เบฐเป€เบŠเบตเบ™เบเบฑเบšเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ—เบตเปˆ, เปƒเบ™เบซเบผเบฑเบเบเบฒเบ™, เบšเปเปˆเปเบกเปˆเบ™เบเป‰เบญเบ™ bug เบญเบตเบเบ•เปเปˆเป„เบ›, เปเบ•เปˆเป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒเบ‚เปเป‰เบกเบนเบ™เบˆเบฐเบ›เปˆเบฝเบ™เปเบ›เบ‡เป€เบ›เบฑเบ™เบˆเปเบฒเบ™เบงเบ™เบซเบผเบงเบ‡เบซเบผเบฒเบ, เบ—เบตเปˆเบ‚เป‰เบญเบเบžเบฝเบ‡เปเบ•เปˆเบˆเบฐเบšเปเปˆเบกเบตเบ„เบงเบฒเบกเบŠเบปเบ‡เบˆเปเบฒเบžเบฝเบ‡เบžเป. เป€เบŠเบตเบšเป€เบงเบต. เปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบˆเบฐ crash เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ OOM เป€เบกเบทเปˆเบญเบฅเบงเบกเป€เบ‚เบปเป‰เบฒเบเบฑเบ™. เบเบดเปˆเบ‡เป„เบ›เบเบงเปˆเบฒเบ™เบฑเป‰เบ™, เบ‚เป‰เบญเบเบชเบฒเบกเบฒเบ”เบเบปเบเป€เบฅเบตเบเบเบฒเบ™เบเบฒเบเบžเบฑเบ™เป„เบ”เป‰, เปเบ•เปˆ Merji เบšเปเปˆเบกเบตเบญเบตเบเปเบฅเป‰เบง.

เป€เบˆเบปเป‰เบฒเบฎเบนเป‰, เป€เบกเบทเปˆเบญเบเบฒเบ™เบฅเบงเบกเป€เบ‚เบปเป‰เบฒเบเบฑเบ™, เป€เบŠเบตเบšเป€เบงเบตเบˆเบฐเบšเปเปˆเบ•เบปเบเบขเบนเปˆเปƒเบ™ OOM, เป€เบžเบฒเบฐเบงเปˆเบฒเป€เบกเบทเปˆเบญเบฅเบงเบกเป€เบ‚เบปเป‰เบฒเบเบฑเบ™, เบˆเปเบฒเบ™เบงเบ™ RAM เปเบกเปˆเบ™เปƒเบŠเป‰เบžเบฝเบ‡เปเบ•เปˆเบชเปเบฒเบฅเบฑเบšเบ‚เปเป‰เบกเบนเบ™เบ‚เบฐเบซเบ™เบฒเบ”เบ™เป‰เบญเบเบซเบ™เบถเปˆเบ‡. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เบˆเบฐเบ”เบตเป‚เบ”เบเบšเปเปˆเบ„เปเบฒเบ™เบถเบ‡เป€เบ–เบดเบ‡เบˆเปเบฒเบ™เบงเบ™เบ‚เปเป‰เบกเบนเบ™.

Vladimir Kolobaev: เบ”เบต. เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบ™เบตเป‰เปเบกเปˆเบ™เบงเปˆเบฒเบซเบผเบฑเบ‡เบˆเบฒเบ bug เป„เบ”เป‰เบ–เบทเบเปเบเป‰เป„เบ‚เปเบฅเป‰เบง, เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เบ”เบฒเบงเป‚เบซเบฅเบ”เป€เบงเบตเบŠเบฑเบ™เปƒเบซเบกเปˆเบชเปเบฒเบฅเบฑเบšเบ•เบปเบงเบ‚เป‰เบญเบเป€เบญเบ‡, เปเบฅเบฐเปƒเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบญเบทเปˆเบ™, เบ‚เบฐเบซเบ™เบฒเบ”เบ™เป‰เบญเบเบเบงเปˆเบฒ, เบšเปˆเบญเบ™เบ—เบตเปˆเบกเบตเบซเบผเบฒเบเบเบฒเบ™เปเบšเปˆเบ‡เบ›เบฑเบ™, เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบ—เบตเปˆเบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™. เปเบฅเบฐเปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เบœเบฐเบชเบปเบกเบœเบฐเบชเบฒเบ™, เบ›เบฐเบกเบฒเบ™ 100 GB เบ‚เบญเบ‡ RAM เป„เบ”เป‰เบ–เบทเบเป„เบŸเป„เบซเบกเป‰เบขเบนเปˆเปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ. เบ‚เป‰เบญเบเบกเบต 150 เบ„เบญเบšเบ„เบญเบ‡, 100 เบเบดเบ™, เปเบฅเบฐเบ›เปˆเบญเบ‡เบขเป‰เบฝเบก 50 GB เบŠเป‰เบฒเบ, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบ‚เป‰เบญเบเบšเปเปˆเป„เบ”เป‰เบ•เบปเบเบขเบนเปˆเปƒเบ™ OOM.

เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆเบ›เป‰เบญเบ‡เบเบฑเบ™เบ‚เป‰เบญเบเบˆเบฒเบเบเบฒเบ™เบ•เบปเบเบขเบนเปˆเปƒเบ™ OOM เบ–เป‰เบฒเบกเบฑเบ™เปƒเบŠเป‰ RAM 100 GB เปเบ—เป‰เป†? เป€เบฎเบฑเบ”เปเบ™เบงเปƒเบ”เบ–เป‰เบฒเบ—เบฑเบ™เบ—เบตเบ—เบฑเบ™เปƒเบ” RAM เปƒเบ™เบเบฒเบ™เบ›เบฐเบชเบปเบกเบ›เบฐเบชเบฒเบ™เบซเบกเบปเบ”?

Alexey Milovidov: เบกเบตเบšเบฑเบ™เบซเบฒเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบงเปˆเบฒเบเบฒเบ™เบšเปเบฅเบดเป‚เบžเบเบ‚เบญเบ‡ RAM เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบฅเบงเบกเบ•เบปเบงเปเบกเปˆเบ™เบšเปเปˆเบˆเปเบฒเบเบฑเบ”. เปเบฅเบฐเบšเบฑเบ™เบซเบฒเบ—เบตเบชเบญเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเบ–เป‰เบฒเบซเบฒเบเบงเปˆเบฒเบšเบฒเบ‡เบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เบเบฒเบ™เบœเบฐเบชเบปเบกเบœเบฐเบชเบฒเบ™เป„เบ”เป‰เบ–เบทเบเบกเบญเบšเบซเบกเบฒเบ, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบกเบฑเบ™เบ•เป‰เบญเบ‡เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒเบกเบฑเบ™เบ–เบทเบเบšเบฑเบ™เบ—เบถเบเป„เบงเป‰เปƒเบ™เบšเบฑเบ™เบ—เบถเบเบเบฒเบ™เบˆเปเบฒเบฅเบญเบ‡. เบšเบฑเบ™เบ—เบถเบเบเบฒเบ™เบˆเปเบฒเบฅเบญเบ‡เปเบกเปˆเบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบตเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เปƒเบซเป‰เบเบฒเบ™เบˆเปเบฒเบฅเบญเบ‡เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบชเบฐเบ–เบฒเบ™เบฐเบ—เบตเปˆเบชเบญเบ”เบ„เปˆเบญเบ‡. เบ–เป‰เบฒโ€‹เบซเบฒเบโ€‹เบงเปˆเบฒโ€‹เบ—เปˆเบฒเบ™โ€‹เบšเปเปˆโ€‹เป„เบ”เป‰โ€‹เป€เบฎเบฑเบ”โ€‹เปƒเบซเป‰โ€‹เบเบฒเบ™โ€‹เบˆเบฑเบ”โ€‹เบเบฒเบ™โ€‹เบ„เบนเปˆโ€‹เบกเบทโ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เบเบฑเบšโ€‹เบ„เบทเบ™โ€‹เป„เบ›โ€‹เบšเปˆเบญเบ™โ€‹เบšเบฑเบ™โ€‹เบ—เบถเบโ€‹เบเบฒเบ™โ€‹เบˆเปเบฒโ€‹เบฅเบญเบ‡โ€‹เบ™เบตเป‰โ€‹, เบเบฒเบ™โ€‹เบœเบฐโ€‹เบชเบปเบกโ€‹เบœเบฐโ€‹เบชเบฒเบ™โ€‹เบˆเบฐโ€‹เบ•เป‰เบญเบ‡โ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบเบฒเบ™โ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹เบซเบ™เบถเปˆเบ‡โ€‹เบซเบผเบทโ€‹เบญเบทเปˆเบ™เป†โ€‹.

เปเบ™เปˆเบ™เบญเบ™, เบกเบฑเบ™เบˆเบฐเบšเปเปˆเป€เบ›เบฑเบ™เป€เบฅเบทเปˆเบญเบ‡เปเบ›เบเบ—เบตเปˆเบˆเบฐเบกเบตเบ‚เปเป‰เบˆเปเบฒเบเบฑเบ” RAM เบ—เบตเปˆ "เบžเบฝเบ‡เปเบ•เปˆเปƒเบ™เบเปเบฅเบฐเบ™เบต" เบ›เบปเบเบ›เป‰เบญเบ‡ OOM. เบกเบฑเบ™เบˆเบฐเบšเปเปˆเบŠเปˆเบงเบเปƒเบซเป‰เบเบฒเบ™เบœเบฐเบชเบปเบกเบœเบฐเบชเบฒเบ™เบชเปเบฒเป€เบฅเบฑเบ”, เบกเบฑเบ™เบˆเบฐเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบญเบตเบเป€เบ—เบทเปˆเบญเบซเบ™เบถเปˆเบ‡, เบšเบฑเบ™เบฅเบธเป€เบ›เบปเป‰เบฒเบซเบกเบฒเบเบšเบฒเบ‡เบขเปˆเบฒเบ‡, เบ–เบดเป‰เบกเบ‚เปเป‰เบเบปเบเป€เบงเบฑเป‰เบ™, เปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบญเบตเบเป€เบ—เบทเปˆเบญเบซเบ™เบถเปˆเบ‡ - เบšเปเปˆเบกเบตเบซเบเบฑเบ‡เบ—เบตเปˆเบ”เบตเบˆเบฐเบกเบฒเบˆเบฒเบเบ™เบตเป‰. เปเบ•เปˆเปƒเบ™เบซเบผเบฑเบเบเบฒเบ™, เบกเบฑเบ™เบˆเบฐเป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เบ—เบตเปˆเบˆเบฐเปเบ™เบฐเบ™เปเบฒเบ‚เปเป‰เบˆเปเบฒเบเบฑเบ”เบ™เบตเป‰.

เป„เบ”เป€เบงเบต Golang เบชเปเบฒเบฅเบฑเบš ClickHouse เบˆเบฐเบ–เบทเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเปเบ™เบงเปƒเบ”?

เบ„เบปเบ™เบ‚เบฑเบš Golang, เป€เบŠเบดเปˆเบ‡เบ‚เบฝเบ™เป‚เบ”เบ Kirill Shvakov, เบ›เบฐเบˆเบธเบšเบฑเบ™เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบขเปˆเบฒเบ‡เป€เบ›เบฑเบ™เบ—เบฒเบ‡เบเบฒเบ™เป‚เบ”เบเบ—เบตเบกเบ‡เบฒเบ™ ClickHouse. เบฅเบฒเบง เบขเบนเปˆเปƒเบ™เบšเปˆเบญเบ™เป€เบเบฑเบšเบ‚เปเป‰เบกเบนเบ™ ClickHouse, เบฅเบฒเบงเปเบกเปˆเบ™เปƒเบซเบเปˆเปเบฅเบฐเบˆเบดเบ‡.

เบšเบฑเบ™เบ—เบถเบเบ™เป‰เบญเบเป†. เบกเบตเบšเปˆเบญเบ™เป€เบเบฑเบšเบกเป‰เบฝเบ™เบ—เบตเปˆเบ›เบฐเป€เบชเบตเบ”เปเบฅเบฐเป€เบ›เบฑเบ™เบ—เบตเปˆเบฎเบฑเบเบ‚เบญเบ‡เบฎเบนเบšเปเบšเบšเบ›เบปเบเบเบฐเบ•เบดเบ‚เบญเบ‡เบ„เปเบฒเบชเบฑเปˆเบ‡เบ—เบตเปˆเบšเปเปˆเบกเบตเบ‚เบญเบšเป€เบ‚เบ” - เบ™เบตเป‰เปเบกเปˆเบ™ Vertica. เบžเบงเบเป€เบ‚เบปเบฒเบเบฑเบ‡เบกเบตเบœเบนเป‰เบ‚เบฑเบšเบ‚เบตเปˆ python เบขเปˆเบฒเบ‡เป€เบ›เบฑเบ™เบ—เบฒเบ‡เบเบฒเบ™เบ‚เบญเบ‡เบ•เบปเบ™เป€เบญเบ‡, เป€เบŠเบดเปˆเบ‡เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบˆเบฒเบเบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒ Vertica. เปเบฅเบฐเบซเบผเบฒเบเป†เบ„เบฑเป‰เบ‡เบกเบฑเบ™เป„เบ”เป‰เป€เบเบตเบ”เบ‚เบทเป‰เบ™เบงเปˆเบฒเบชเบฐเบšเบฑเบšเป€เบเบฑเบšเบฎเบฑเบเบชเบฒเปเบฅเบฐเบฎเบธเปˆเบ™เป„เบ”เป€เบงเบตเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เบขเปˆเบฒเบ‡เบซเบผเบงเบ‡เบซเบผเบฒเบ, เปเบฅเบฐเป„เบ”เป€เบงเบตเปƒเบ™เบšเบฒเบ‡เบˆเบธเบ”เบขเบธเบ”เป€เบฎเบฑเบ”เบงเบฝเบ. เปเบฅเบฐเบˆเบธเบ”เบ—เบตเบชเบญเบ‡. เบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบœเบนเป‰เบ‚เบฑเบšเบ‚เบตเปˆเบขเปˆเบฒเบ‡เป€เบ›เบฑเบ™เบ—เบฒเบ‡เบเบฒเบ™เบ™เบตเป‰, เบกเบฑเบ™เป€เบšเบดเปˆเบ‡เบ„เบทเบงเปˆเบฒเบ‚เป‰เบญเบ, เปเบกเปˆเบ™เบ”เปเบฒเป€เบ™เบตเบ™เป‚เบ”เบเบฅเบฐเบšเบปเบš "เบซเบปเบงเบ™เบปเบก" - เบ—เปˆเบฒเบ™เบ‚เบฝเบ™เบšเบฑเบ™เบซเบฒเปƒเบซเป‰เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒ, เปเบฅเบฐเบกเบฑเบ™เบ•เบดเบ”เบขเบนเปˆเบ•เบฐเบซเบผเบญเบ”เป„เบ›.

เบ‚เป‰เบญเบเบกเบตเบชเบญเบ‡เบ„เปเบฒเบ–เบฒเบก. เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบ„เบปเบ™เบ‚เบฑเบš Golang เบ‚เบญเบ‡ Kirill เปเบกเปˆเบ™เป€เบเบทเบญเบšเป€เบ›เบฑเบ™เบงเบดเบ—เบตเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เปƒเบ™เบเบฒเบ™เบชเบทเปˆเบชเบฒเบ™เบˆเบฒเบ Golang เบเบฑเบš ClickHouse. เป€เบงเบฑเป‰เบ™เป€เบชเบเปเบ•เปˆเบงเปˆเบฒเบœเบนเป‰เปƒเบ”เบœเบนเป‰เบซเบ™เบถเปˆเบ‡เบเบฑเบ‡เบ•เบดเบ”เบ•เปเปˆเบชเบทเปˆเบชเบฒเบ™เบœเปˆเบฒเบ™เบญเบดเบ™เป€เบ•เบตเป€เบŸเบ” http เป€เบžเบฒเบฐเบงเปˆเบฒเบฅเบฒเบงเบกเบฑเบเบกเบฑเบ™เปเบšเบšเบ™เบฑเป‰เบ™. เบเบฒเบ™โ€‹เบžเบฑเบ”โ€‹เบ—เบฐโ€‹เบ™เบฒโ€‹เบ‚เบญเบ‡โ€‹เบœเบนเป‰โ€‹เบ‚เบฑเบšโ€‹เบฅเบปเบ”โ€‹เบ™เบตเป‰โ€‹เบˆเบฐโ€‹เบ”เปเบฒโ€‹เป€เบ™เบตเบ™โ€‹เป„เบ›โ€‹เปเบ™เบงโ€‹เปƒเบ”โ€‹? เบกเบฑเบ™เบˆเบฐเบ–เบทเบ synchronized เบเบฑเบšเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ—เบตเปˆเปเบ•เบเบซเบฑเบเปƒเบ”เป†เปƒเบ™ repository เบ•เบปเบงเบ‚เบญเบ‡เบกเบฑเบ™เป€เบญเบ‡? เปเบฅเบฐเบ‚เบฑเป‰เบ™เบ•เบญเบ™เบเบฒเบ™เบžเบดเบˆเบฒเบฅเบฐเบ™เบฒเบšเบฑเบ™เบซเบฒเปเบกเปˆเบ™เบซเบเบฑเบ‡?

Kirill Shvakov: เบ—เปเบฒเบญเบดเบ”เปเบกเปˆเบ™เบงเบดเบ—เบตเบเบฒเบ™เบˆเบฑเบ”เบฅเบฐเบšเบฝเบš bureaucratically. เบˆเบธเบ”เบ™เบตเป‰เบšเปเปˆเป„เบ”เป‰เบ–เบทเบเบ›เบถเบเบชเบฒเบซเบฒเบฅเบท, เบชเบฐเบ™เบฑเป‰เบ™เบ‚เป‰เบญเบเบšเปเปˆเบกเบตเบซเบเบฑเบ‡เบ•เบญเบš.

เป€เบžเบทเปˆเบญเบ•เบญเบšเบ„เปเบฒเบ–เบฒเบกเบเปˆเบฝเบงเบเบฑเบšเบšเบฑเบ™เบซเบฒ, เบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เบ›เบฐเบซเบงเบฑเบ”เป€เบฅเบฑเบเบ™เป‰เบญเบเบ‚เบญเบ‡เบœเบนเป‰เบ‚เบฑเบšเบ‚เบตเปˆ. เบ‚เป‰เบญเบเป€เบฎเบฑเบ”เบงเบฝเบเปƒเบซเป‰เบšเปเบฅเบดเบชเบฑเบ”เบ—เบตเปˆเบกเบตเบ‚เปเป‰เบกเบนเบ™เบซเบผเบฒเบ. เบกเบฑเบ™เปเบกเปˆเบ™ spinner เบเบฒเบ™เป‚เบ„เบชเบฐเบ™เบฒเบ—เบตเปˆเบกเบตเบˆเปเบฒเบ™เบงเบ™เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆเบ‚เบญเบ‡เป€เบซเบ”เบเบฒเบ™เบ—เบตเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เบ—เบตเปˆเบˆเบฐเป€เบเบฑเบšเบฎเบฑเบเบชเบฒเป„เบงเป‰เบšเปˆเบญเบ™เปƒเบ”เบซเบ™เบถเปˆเบ‡. เปเบฅเบฐเปƒเบ™เบšเบฒเบ‡เบˆเบธเบ” ClickHouse เบ›เบฒเบเบปเบ”. เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบ•เบทเปˆเบกเบ‚เปเป‰เบกเบนเบ™เปƒเบชเปˆเบกเบฑเบ™, เปเบฅเบฐเปƒเบ™เบ•เบญเบ™เบ—เปเบฒเบญเบดเบ”เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เปเบกเปˆเบ™เบ”เบต, เปเบ•เปˆเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™ ClickHouse crashed. เปƒเบ™เป€เบงเบฅเบฒเบ™เบตเป‰, เบžเบงเบเป€เบฎเบปเบฒเบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เบกเบฑเบ™.

เบ›เบตเบ•เปเปˆเบกเบฒ, เบžเบงเบเป€เบฎเบปเบฒเบเบฑเบšเบ„เบทเบ™เป„เบ›เบซเบฒเบ„เบงเบฒเบกเบ„เบดเบ”เบ‚เบญเบ‡เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰ ClickHouse, เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ‚เบฝเบ™เบ‚เปเป‰เบกเบนเบ™เบขเบนเปˆเบ—เบตเปˆเบ™เบฑเป‰เบ™ somehow. เบ‚เปเป‰เบ„เบงเบฒเบกเปเบ™เบฐเบ™เปเบฒเบ™เบตเป‰เปเบกเปˆเบ™: เบฎเบฒเบ”เปเบงเปเบกเปˆเบ™เบญเปˆเบญเบ™เปเบญเบซเบผเบฒเบ, เบกเบตเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบˆเปเบฒเบ™เบงเบ™เบซเบ™เป‰เบญเบ. เปเบ•เปˆเบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เป€เบฎเบฑเบ”เบงเบฝเบเปเบšเบšเบ™เบตเป‰เบขเบนเปˆเบชเบฐเป€เปเบต, เปเบฅเบฐเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบžเบงเบเป€เบฎเบปเบฒเบˆเบถเปˆเบ‡เป€เบšเบดเปˆเบ‡เป„เบ›เบซเบฒเบญเบฐเบ™เบธเบชเบฑเบ™เบเบฒเบžเบทเป‰เบ™เป€เบกเบทเบญเบ‡.

เบ™เบฑเบšเบ•เบฑเป‰เบ‡เปเบ•เปˆเบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เบงเบฝเบเบขเบนเปˆเปƒเบ™ Go, เบกเบฑเบ™เป€เบ›เบฑเบ™เบ—เบตเปˆเบŠเบฑเบ”เป€เบˆเบ™เบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เบ„เบปเบ™เบ‚เบฑเบš Go. เบ‚เป‰เบญเบเป„เบ”เป‰เป€เบฎเบฑเบ”เบกเบฑเบ™เป€เบเบทเบญเบšเป€เบ•เบฑเบกเป€เบงเบฅเบฒ - เบกเบฑเบ™เปเบกเปˆเบ™เบงเบฝเบเบ‚เบญเบ‡เบ‚เป‰เบญเบ. เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เป€เบญเบปเบฒเบกเบฑเบ™เบกเบฒเป€เบ–เบดเบ‡เบˆเบธเบ”เบ—เบตเปˆเปเบ™เปˆเบ™เบญเบ™, เปเบฅเบฐเปƒเบ™เบซเบผเบฑเบเบเบฒเบ™เบšเปเปˆเบกเบตเปƒเบœเบชเบปเบกเบกเบธเบ”เบงเปˆเบฒเบ„เบปเบ™เบญเบทเปˆเบ™เบ™เบญเบเป€เบซเบ™เบทเบญเบˆเบฒเบเบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเปƒเบŠเป‰เบกเบฑเบ™. เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, CloudFlare เบเปเปˆเบกเบฒเบžเป‰เบญเบกเบเบฑเบšเบšเบฑเบ™เบซเบฒเบ”เบฝเบงเบเบฑเบ™, เปเบฅเบฐเบชเปเบฒเบฅเบฑเบšเบšเบฒเบ‡เป€เบงเบฅเบฒเบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบžเบงเบเป€เบ‚เบปเบฒเบขเปˆเบฒเบ‡เบ„เปˆเบญเบ‡เปเบ„เป‰เบง, เป€เบžเบฒเบฐเบงเปˆเบฒเบžเบงเบเป€เบ‚เบปเบฒเบกเบตเบงเบฝเบเบ”เบฝเบงเบเบฑเบ™. เบเบดเปˆเบ‡เป„เบ›เบเบงเปˆเบฒเบ™เบฑเป‰เบ™, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เป€เบฎเบฑเบ”เบชเบดเปˆเบ‡เบ™เบตเป‰เบ—เบฑเบ‡เปƒเบ™ ClickHouse เบ•เบปเบงเป€เบฎเบปเบฒเป€เบญเบ‡เปเบฅเบฐเปƒเบ™เบ„เบปเบ™เบ‚เบฑเบš.

เปƒเบ™เบšเบฒเบ‡เบˆเบธเบ”, เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบžเบฝเบ‡เปเบ•เปˆเบขเบธเบ”เป€เบŠเบปเบฒเบเบฒเบ™เป€เบฎเบฑเบ”เบกเบฑเบ™, เป€เบžเบฒเบฐเบงเปˆเบฒเบเบดเบ”เบˆเบฐเบเปเบฒเบ‚เบญเบ‡เบ‚เป‰เบญเบเปƒเบ™เป€เบ‡เบทเปˆเบญเบ™เป„เบ‚เบ‚เบญเบ‡ ClickHouse เปเบฅเบฐเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเป„เบ”เป‰เบ›เปˆเบฝเบ™เปเบ›เบ‡เป€เบฅเบฑเบเบ™เป‰เบญเบ. เป€เบžเบฒเบฐเบชเบฐเบ™เบฑเป‰เบ™, เบšเบฑเบ™เบซเบฒเบšเปเปˆเป„เบ”เป‰เบ–เบทเบเบ›เบดเบ”. เปเบ•เปˆเบฅเบฐเป„เบฅเบเบฐ, เบœเบนเป‰เบ—เบตเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡เบ”เป‰เบงเบเบ•เบปเบ™เป€เบญเบ‡เบซเบกเบฑเป‰เบ™เบชเบฑเบ™เบเบฒเบเบฑเบš repository. เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบ‚เป‰เบญเบเป€เบšเบดเปˆเบ‡เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เปเบเบฒเบ™เบ”เบถเบ‡เปเบฅเบฐเบšเบฒเบ‡เบ„เบฑเป‰เบ‡เบ‚เป‰เบญเบเบเปเปˆเปเบเป‰เป„เบ‚เบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡เบ”เป‰เบงเบเบ•เบปเบ™เป€เบญเบ‡, เปเบ•เปˆเบ™เบตเป‰เบšเปเปˆเบ„เปˆเบญเบเบˆเบฐเป€เบเบตเบ”เบ‚เบทเป‰เบ™.

เบ‚เป‰เบญเบเบ•เป‰เบญเบ‡เบเบฒเบ™เบเบฑเบšเบ„เบทเบ™เบซเบฒเบ„เบปเบ™เบ‚เบฑเบš. เป€เบกเบทเปˆเบญเบซเบฅเบฒเบเบ›เบตเบเปˆเบญเบ™, เป€เบกเบทเปˆเบญเบชเบดเปˆเบ‡เบ—เบฑเบ‡เบซเบกเบปเบ”เบ™เบตเป‰เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, ClickHouse เบเบฑเบ‡เปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เปเบฅเบฐเบกเบตเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™. เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบ„เบงเบฒเบกเป€เบ‚เบปเป‰เบฒเปƒเบˆเบเปˆเบฝเบงเบเบฑเบšเบงเบดเบ—เบตเบเบฒเบ™ remake เป„เบ”เป€เบงเบตเป€เบžเบทเปˆเบญเปƒเบซเป‰เบกเบฑเบ™เป€เบฎเบฑเบ”เบงเบฝเบเป„เบ”เป‰เบ”เบต. เบ–เป‰เบฒเบชเบดเปˆเบ‡เบ™เบตเป‰เป€เบเบตเบ”เบ‚เบทเป‰เบ™, เบฎเบธเปˆเบ™ 2 เบˆเบฐเบšเปเปˆเป€เบ‚เบปเป‰เบฒเบเบฑเบ™เป„เบ”เป‰เปƒเบ™เบเปเบฅเบฐเบ™เบตเปƒเบ”เบเปเปˆเบ•เบฒเบกเป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเป„เบกเป‰เบ„เป‰เบญเบ™เบ—เบตเปˆเบชเบฐเบชเบปเบก.

เบ‚เป‰เบญเบเบšเปเปˆเบฎเบนเป‰เบงเบดเบ—เบตเบˆเบฑเบ”เบฅเบฐเบšเบฝเบšเป€เบฅเบทเปˆเบญเบ‡เบ™เบตเป‰. เบ‚เป‰เบญเบเป€เบญเบ‡เบšเปเปˆเบกเบตเป€เบงเบฅเบฒเบซเบผเบฒเบ. เบ–เป‰เบฒเบšเบฒเบ‡เบ„เบปเบ™เบˆเบปเบšเบ„เบปเบ™เบ‚เบฑเบš, เบ‚เป‰เบญเบเบชเบฒเบกเบฒเบ”เบŠเปˆเบงเบเป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเปเบฅเบฐเบšเบญเบเป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเบงเปˆเบฒเบˆเบฐเป€เบฎเบฑเบ”เปเบ™เบงเปƒเบ”. เปเบ•เปˆเบเบฒเบ™เบกเบตเบชเปˆเบงเบ™เบฎเปˆเบงเบกเบขเปˆเบฒเบ‡เบซเป‰เบฒเบงเบซเบฑเบ™เบ‚เบญเบ‡ Yandex เปƒเบ™เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเป‚เบ„เบ‡เบเบฒเบ™เบเบฑเบ‡เบšเปเปˆเบ—เบฑเบ™เป„เบ”เป‰เบ›เบถเบเบชเบฒเบซเบฒเบฅเบท.

Alexey Milovidov: เปƒเบ™เบ„เบงเบฒเบกเป€เบ›เบฑเบ™เบˆเบดเบ‡, เบšเปเปˆเบกเบต bureaucracy เบเปˆเบฝเบงเบเบฑเบšเบ„เบปเบ™เบ‚เบฑเบšเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เป€เบ—เบทเปˆเบญ. เบชเบดเปˆเบ‡เบ”เบฝเบงเปเบกเปˆเบ™เบงเปˆเบฒเบžเบงเบเป€เบ‚เบปเบฒเบ–เบทเบเบชเบปเปˆเบ‡เบเบฑเบšเบญเบปเบ‡เบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบ—เบตเปˆเป€เบ›เบฑเบ™เบ—เบฒเบ‡เบเบฒเบ™, เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, เบœเบนเป‰เบ‚เบฑเบšเบ‚เบตเปˆเบ™เบตเป‰เบ–เบทเบเบฎเบฑเบšเบฎเบนเป‰เบงเปˆเบฒเป€เบ›เบฑเบ™เบเบฒเบ™เปเบเป‰เป„เบ‚เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™เบขเปˆเบฒเบ‡เป€เบ›เบฑเบ™เบ—เบฒเบ‡เบเบฒเบ™เบชเปเบฒเบฅเบฑเบš Go. เบกเบตเบšเบฒเบ‡เบ„เบปเบ™เบ‚เบฑเบšเบฅเบปเบ”เบญเบทเปˆเบ™, เปเบ•เปˆเบžเบงเบเป€เบ‚เบปเบฒเบกเบฒเปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ.

เบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเบกเบตเบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบžเบฒเบเปƒเบ™เบชเปเบฒเบฅเบฑเบšเบ„เบปเบ™เบ‚เบฑเบšเบฅเบปเบ”เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰. เบ„เปเบฒเบ–เบฒเบกเปเบกเปˆเบ™เบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เบˆเป‰เบฒเบ‡เบšเบธเบเบ„เบปเบ™เปƒเบ”เบซเบ™เบถเปˆเบ‡, เบšเปเปˆเปเบกเปˆเบ™เบชเปเบฒเบฅเบฑเบšเบ„เบปเบ™เบ‚เบฑเบšเบฅเบปเบ”เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐเบ™เบตเป‰, เปเบ•เปˆเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบ„เบปเบ™เบ‚เบฑเบšเบฅเบปเบ”เบŠเบธเบกเบŠเบปเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”, เบซเบผเบทเบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เบŠเบญเบเบซเบฒเบ„เบปเบ™เบžเบฒเบเบ™เบญเบเป„เบ”เป‰.

เบงเบฑเบ”เบˆเบฐเบ™เบฒเบ™เบธเบเบปเบกเบžเบฒเบเบ™เบญเบเบšเปเปˆเป‚เบซเบผเบ”เบซเบผเบฑเบ‡เบˆเบฒเบเบ›เบดเบ”เป€เบ›เบตเบ”เบ„เบทเบ™เปƒเปเปˆเบ”เป‰เบงเบเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ lazy_load เป€เบ›เบตเบ”เปƒเบŠเป‰เบ‡เบฒเบ™. เบˆเบฐเป€เบฎเบฑเบ”เปเบ™เบงเปƒเบ”?

เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เบกเบตโ€‹เบเบฒเบ™โ€‹เบ•เบฑเป‰เบ‡โ€‹เบ„เปˆเบฒ lazy_load เบ–เบทเบโ€‹เป€เบ›เบตเบ”โ€‹เปƒเบŠเป‰โ€‹เบ‡เบฒเบ™โ€‹, เปเบฅเบฐโ€‹เบซเบผเบฑเบ‡โ€‹เบˆเบฒเบโ€‹เบ—เบตเปˆโ€‹เป€เบ„เบทเปˆเบญเบ‡โ€‹เปเบกเปˆโ€‹เบ‚เปˆเบฒเบโ€‹เป„เบ”เป‰โ€‹เบ–เบทเบ rebootedโ€‹, เบงเบฑเบ”โ€‹เบˆเบฐโ€‹เบ™เบฒโ€‹เบ™เบธโ€‹เบเบปเบกโ€‹เบšเปเปˆโ€‹เป„เบ”เป‰โ€‹เป‚เบซเบผเบ”โ€‹เบ”เป‰เบงเบโ€‹เบ•เบปเบ™โ€‹เป€เบญเบ‡โ€‹. เบกเบฑเบ™เป„เบ”เป‰เบ–เบทเบเบเบปเบเบ‚เบถเป‰เบ™เบกเบฒเบซเบผเบฑเบ‡เบˆเบฒเบเบœเบนเป‰เปƒเบŠเป‰เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบงเบฑเบ”เบˆเบฐเบ™เบฒเบ™เบธเบเบปเบกเบ™เบตเป‰เป€เบ—เบปเปˆเบฒเบ™เบฑเป‰เบ™. เปเบฅเบฐเบ„เบฑเป‰เบ‡เบ—เปเบฒเบญเบดเบ”เบ—เบตเปˆเบ‚เป‰เบญเบเป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบกเบฑเบ™, เบกเบฑเบ™เป€เบฎเบฑเบ”เปƒเบซเป‰เบกเบตเบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ”. เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบšเบฒเบ‡เบขเปˆเบฒเบ‡เบ—เบตเปˆเบˆเบฐเป‚เบซเบฅเบ”เบงเบฑเบ”เบˆเบฐเบ™เบฒเบ™เบธเบเบปเบกเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เป‚เบ”เบเปƒเบŠเป‰ ClickHouse, เบซเบผเบทเบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™เบ„เบงเบšเบ„เบธเบกเบ„เบงเบฒเบกเบžเป‰เบญเบกเบ‚เบญเบ‡เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเบชเบฐเป€เบซเบกเบตเป€เบžเบทเปˆเบญเปƒเบซเป‰เบœเบนเป‰เปƒเบŠเป‰เบšเปเปˆเป„เบ”เป‰เบฎเบฑเบšเบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เบšเป?

เบšเบฒเบ‡เบ—เบตเบžเบงเบเป€เบฎเบปเบฒเบกเบตเป€เบงเบตเบŠเบฑเบ™เป€เบเบปเปˆเบฒเบ‚เบญเบ‡ ClickHouse, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบงเบฑเบ”เบˆเบฐเบ™เบฒเบ™เบธเบเบปเบกเบšเปเปˆเป„เบ”เป‰เป‚เบซเบฅเบ”เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”. เบ™เบตเป‰เบญเบฒเบ”เบˆเบฐเป€เบ›เบฑเบ™เบเปเบฅเบฐเบ™เบตเบšเป?

เบเปˆเบญเบ™เบญเบทเปˆเบ™ เปเบปเบ”, เบงเบฑเบ”เบˆเบฐเบ™เบฒเบ™เบธเบเบปเบกเบชเบฒเบกเบฒเบ”เบ–เบทเบเบšเบฑเบ‡เบ„เบฑเบšเปƒเบซเป‰เป‚เบซเบฅเบ”เป‚เบ”เบเปƒเบŠเป‰ เบ„เบณ เบ–เบฒเบก เบฅเบฐเบšเบปเบšเป‚เบซเบผเบ”เบงเบฑเบ”เบˆเบฐเบ™เบฒเบ™เบธเบเบปเบกเบ„เบทเบ™เปƒเปเปˆ. เบญเบฑเบ™เบ—เบตเบชเบญเบ‡, เบเปˆเบฝเบงเบเบฑเบšเบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ” - เบ–เป‰เบฒเบงเบฑเบ”เบˆเบฐเบ™เบฒเบ™เบธเบเบปเบกเบ–เบทเบเป‚เบซเบฅเบ”เปเบฅเป‰เบง, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบเบฒเบ™เบชเบญเบšเบ–เบฒเบกเบˆเบฐเป€เบฎเบฑเบ”เบงเบฝเบเป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเป‚เบซเบฅเบ”. เบ–เป‰เบฒเบงเบฑเบ”เบˆเบฐเบ™เบฒเบ™เบธเบเบปเบกเบเบฑเบ‡เบšเปเปˆเบ—เบฑเบ™เป„เบ”เป‰เป‚เบซเบฅเบ”, เบกเบฑเบ™เบˆเบฐเบ–เบทเบเป‚เบซเบฅเบ”เป‚เบ”เบเบเบปเบ‡เปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เป.

เบญเบฑเบ™เบ™เบตเป‰เบšเปเปˆเบชเบฐเบ”เบงเบเบซเบผเบฒเบเบชเบณเบฅเบฑเบšเบงเบฑเบ”เบˆเบฐเบ™เบฒเบ™เบธเบเบปเบกเบ—เบตเปˆเปœเบฑเบเปœเปˆเบงเบ‡. เบ•เบปเบงเบขเปˆเบฒเบ‡, เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ”เบถเบ‡เบซเบ™เบถเปˆเบ‡เบฅเป‰เบฒเบ™เปเบ–เบงเบˆเบฒเบ MySQL. เบšเบฒเบ‡เบ„เบปเบ™เป€เบฎเบฑเบ”เบเบฒเบ™เป€เบฅเบทเบญเบเปเบšเบšเบ‡เปˆเบฒเบเป†, เปเบ•เปˆเบเบฒเบ™เป€เบฅเบทเบญเบเบ™เบตเป‰เบˆเบฐเบฅเปเบ–เป‰เบฒเป€เบ›เบฑเบ™เบฅเป‰เบฒเบ™เปเบ–เบงเบ”เบฝเบงเบเบฑเบ™. เบกเบตเบชเบญเบ‡เบงเบดเบ—เบตเปเบเป‰เป„เบ‚เบขเบนเปˆเบ—เบตเปˆเบ™เบตเป‰. เบ—เปเบฒเบญเบดเบ”เปเบกเปˆเบ™เป€เบžเบทเปˆเบญเบ›เบดเบ” lazy_load. เบญเบฑเบ™เบ—เบตเบชเบญเบ‡, เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเปเบกเปˆเบ™เบ‚เบถเป‰เบ™, เบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเบงเบฒเบ‡เบเบฒเบ™เป‚เบซเบผเบ”เปƒเบชเปˆเบกเบฑเบ™, เป€เบฎเบฑเบ” เบฅเบฐเบšเบปเบšเป‚เบซเบผเบ”เบงเบฑเบ”เบˆเบฐเบ™เบฒเบ™เบธเบเบปเบกเบ„เบทเบ™เปƒเปเปˆ เบซเบผเบทเบžเบฝเบ‡เปเบ•เปˆเป€เบฎเบฑเบ”เปเบšเบšเบชเบญเบšเบ–เบฒเบกเบ—เบตเปˆเปƒเบŠเป‰เบงเบฑเบ”เบˆเบฐเบ™เบฒเบ™เบธเบเบปเบก. เบˆเบฒเบเบ™เบฑเป‰เบ™เบงเบฑเบ”เบˆเบฐเบ™เบฒเบ™เบธเบเบปเบกเบˆเบฐเบ–เบทเบเป‚เบซเบฅเบ”. เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ„เบงเบšเบ„เบธเบกเบเบฒเบ™เบกเบตเบงเบฑเบ”เบˆเบฐเบ™เบฒเบ™เบธเบเบปเบกเบ”เป‰เบงเบเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ lazy_load เบ—เบตเปˆเป€เบ›เบตเบ”เปƒเบŠเป‰, เป€เบžเบฒเบฐเบงเปˆเบฒ ClickHouse เบšเปเปˆเป„เบ”เป‰เป‚เบซเบฅเบ”เบžเบงเบเบกเบฑเบ™เป‚เบ”เบเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”.

เบ„เปเบฒเบ•เบญเบšเบ‚เบญเบ‡เบ„เปเบฒเบ–เบฒเบกเบชเบธเบ”เบ—เป‰เบฒเบเปเบกเปˆเบ™เบชเบฐเบšเบฑเบšเป€เบเบปเปˆเบฒเบซเบผเบทเบกเบฑเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เปเบเป‰เป„เบ‚.

เบˆเบฐเป€เบฎเบฑเบ”เปเบ™เบงเปƒเบ”เบเบฑเบšเบ„เบงเบฒเบกเบˆเบดเบ‡เบ—เบตเปˆเบงเปˆเบฒเบงเบฑเบ”เบˆเบฐเบ™เบฒเบ™เบธเบเบปเบกเบเบฒเบ™เป‚เบซเบผเบ”เบ„เบทเบ™เบฅเบฐเบšเบปเบšเบšเปเปˆเป‚เบซเบผเบ”เบงเบฑเบ”เบˆเบฐเบ™เบฒเบ™เบธเบเบปเบกเปƒเบ”เบ™เบถเปˆเบ‡เปƒเบ™เบซเบผเบฒเบเป†เบงเบฑเบ”เบˆเบฐเบ™เบฒเบ™เบธเบเบปเบก เบ–เป‰เบฒเบขเปˆเบฒเบ‡เปœเป‰เบญเบเบ™เบถเปˆเบ‡เปƒเบ™เบ™เบฑเป‰เบ™เป€เบเบตเบ”เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”?

เบกเบตเบ„เบณเบ–เบฒเบกเบญเบตเบเบขเปˆเบฒเบ‡เปœเบถเปˆเบ‡เบเปˆเบฝเบงเบเบฑเบšเบงเบฑเบ”เบˆเบฐเบ™เบฒเบ™เบธเบเบปเบกเบเบฒเบ™เป‚เบซเบผเบ”เบ„เบทเบ™เปƒเปเปˆเบ‚เบญเบ‡เบฅเบฐเบšเบปเบš. เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบงเบฑเบ”เบˆเบฐเบ™เบฒเบ™เบธเบเบปเบกเบชเบญเบ‡เบญเบฑเบ™ - เบญเบฑเบ™เปœเบถเปˆเบ‡เบšเปเปˆเป„เบ”เป‰เป‚เบซเบฅเบ”, เบญเบฑเบ™เบ—เบตเบชเบญเบ‡เบ–เบทเบเป‚เบซเบผเบ”. เปƒเบ™โ€‹เบเปโ€‹เบฅเบฐโ€‹เบ™เบตโ€‹เบ™เบตเป‰, System reload Dictionaries เบšเปเปˆเป„เบ”เป‰เป‚เบซเบฅเบ”เบงเบฑเบ”เบˆเบฐเบ™เบฒเบ™เบธเบเบปเบกเปƒเบ”เบ™เบถเปˆเบ‡, เปเบฅเบฐเบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เป€เบญเบปเบฒเบงเบฑเบ”เบˆเบฐเบ™เบฒเบ™เบธเบเบปเบกเบเบฒเบ™เป‚เบซเบผเบ”เปเบšเบšเบŠเบตเป‰เป„เบ›เบˆเบธเบ”เปƒเบ”เปœเบถเปˆเบ‡เป‚เบ”เบเบŠเบทเปˆเบ‚เบญเบ‡เบกเบฑเบ™เป‚เบ”เบเปƒเบŠเป‰เบงเบฑเบ”เบˆเบฐเบ™เบฒเบ™เบธเบเบปเบกเบฅเบฐเบšเบปเบš reload. เบ™เบตเป‰เบเบฑเบ‡เบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบชเบฐเบšเบฑเบš ClickHouse เบšเป?

เบ‚เป‰เบญเบเบขเบฒเบเป€เบฎเบฑเบ”เปƒเบซเป‰เป€เบˆเบปเป‰เบฒเบกเบตเบ„เบงเบฒเบกเบชเบธเบ. เบžเบถเบ”เบ•เบดเบเปเบฒเบ™เบตเป‰เบกเบตเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡. เบ™เบตเป‰เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเบ–เป‰เบฒเบ—เปˆเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡ ClickHouse, เบกเบฑเบ™เบˆเบฐเบ›เปˆเบฝเบ™เปเบ›เบ‡เป€เบŠเบฑเปˆเบ™เบเบฑเบ™. เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบšเปเปˆเบžเปเปƒเบˆเบเบฑเบšเบžเบถเบ”เบ•เบดเบเปเบฒเปƒเบ™เบ›เบฐเบˆเบธเบšเบฑเบ™เบ‚เบญเบ‡เบ—เปˆเบฒเบ™ เบฅเบฐเบšเบปเบšเป‚เบซเบผเบ”เบงเบฑเบ”เบˆเบฐเบ™เบฒเบ™เบธเบเบปเบกเบ„เบทเบ™เปƒเปเปˆ, เบ›เบฑเบšเบ›เบธเบ‡, เปเบฅเบฐเปƒเบซเป‰เป€เบฎเบปเบฒเบซเบงเบฑเบ‡เบงเปˆเบฒเบกเบฑเบ™เบกเบตเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ—เบตเปˆเบ”เบตเบเบงเปˆเบฒ.

เบกเบตเบงเบดเบ—เบตเบเบฒเบ™เบเปเบฒเบ™เบปเบ”เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เปƒเบ™ ClickHouse config, เปเบ•เปˆเบšเปเปˆเบชเบฐเปเบ”เบ‡เบžเบงเบเบกเบฑเบ™เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ—เบตเปˆเบกเบตเบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ”เบšเป?

เบ„เปเบฒเบ–เบฒเบกเบ•เปเปˆเป„เบ›เปเบกเปˆเบ™เบเปˆเบฝเบงเบเบฑเบšเบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบงเบฑเบ”เบˆเบฐเบ™เบฒเบ™เบธเบเบปเบก, เบ„เบทเบฅเบฒเบเบฅเบฐเบญเบฝเบ”. เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบฅเบฐเบšเบธเบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเปƒเบ™ ClickHouse config เบชเปเบฒเบฅเบฑเบšเบงเบฑเบ”เบˆเบฐเบ™เบฒเบ™เบธเบเบปเบก, เปเบฅเบฐเบ–เป‰เบฒเบกเบตเบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ”, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบฎเบฑเบšเบฅเบฒเบเบฅเบฐเบญเบฝเบ”เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบฅเบฐเบฅเบฐเบซเบฑเบ”เบœเปˆเบฒเบ™เปƒเบ™เบเบฒเบ™เบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡.

เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เปเบเป‰เป„เบ‚เบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ”เบ™เบตเป‰เป‚เบ”เบเบเบฒเบ™เป€เบžเบตเปˆเบกเบฅเบฒเบเบฅเบฐเบญเบฝเบ”เปƒเบชเปˆเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเป„เบ”เป€เบงเบต ODBC. เบกเบตเบงเบดเบ—เบตเปƒเบ”เบ—เบตเปˆเบˆเบฐเบเปเบฒเบ™เบปเบ”เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เปƒเบ™ ClickHouse config, เปเบ•เปˆเบšเปเปˆเบชเบฐเปเบ”เบ‡เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ—เบตเปˆเบกเบตเบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ”เบšเป?

เบเบฒเบ™เปเบเป‰เป„เบ‚เบ—เบตเปˆเปเบ—เป‰เบˆเบดเบ‡เบ™เบตเป‰เปเบกเปˆเบ™เป€เบžเบทเปˆเบญเบฅเบฐเบšเบธเบ‚เปเป‰เบกเบนเบ™เบ›เบฐเบˆเปเบฒเบ•เบปเบงเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบขเบนเปˆเปƒเบ™ odbc.ini, เปเบฅเบฐเปƒเบ™ ClickHouse เบ•เบปเบงเบ‚เบญเบ‡เบกเบฑเบ™เป€เบญเบ‡เบฅเบฐเบšเบธเบžเบฝเบ‡เปเบ•เปˆเบŠเบทเปˆเปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™ ODBC. เบ™เบตเป‰เบˆเบฐเบšเปเปˆเป€เบเบตเบ”เบ‚เบถเป‰เบ™เบชเปเบฒเบฅเบฑเบšเปเบซเบผเปˆเบ‡เบงเบฑเบ”เบˆเบฐเบ™เบฒเบ™เบธเบเบปเบกเบญเบทเปˆเบ™ - เบ—เบฑเบ‡เบงเบฑเบ”เบˆเบฐเบ™เบฒเบ™เบธเบเบปเบกเบ—เบตเปˆเบกเบต MySQL, เบซเบผเบทเบชเปเบฒเบฅเบฑเบšเบ„เบปเบ™เบญเบทเปˆเบ™, เบ—เปˆเบฒเบ™เบšเปเปˆเบ„เบงเบ™เป€เบซเบฑเบ™เบฅเบฐเบซเบฑเบ”เบœเปˆเบฒเบ™เป€เบกเบทเปˆเบญเบ—เปˆเบฒเบ™เป„เบ”เป‰เบฎเบฑเบšเบ‚เปเป‰เบ„เบงเบฒเบกเบชเบฐเปเบ”เบ‡เบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ”. เบชเปเบฒเบฅเบฑเบš ODBC, เบ‚เป‰เบญเบเบˆเบฐเป€เบšเบดเปˆเบ‡ - เบ–เป‰เบฒเบกเบฑเบ™เบกเบตเบขเบนเปˆ, เบ—เปˆเบฒเบ™เบžเบฝเบ‡เปเบ•เปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เป€เบญเบปเบฒเบกเบฑเบ™เบญเบญเบ.

เป‚เบšเบ™เบฑเบ”: เบžเบทเป‰เบ™เบซเบผเบฑเบ‡เบชเบณเบฅเบฑเบšเบเบฒเบ™เบŠเบนเบกเบˆเบฒเบเบเบฒเบ™เบŠเบธเบกเบ™เบธเบก

เป‚เบ”เบเบเบฒเบ™เบ„เบฅเบดเบเปƒเบชเปˆเบฎเบนเบš, เบ›เบฐเบซเบงเบฑเบ”เป‚เบšเบ™เบฑเบ”เบˆเบฒเบเบเบฒเบ™เป€เบ•เบปเป‰เบฒเป‚เบฎเบกเบˆเบฐเป€เบ›เบตเบ”เปƒเบซเป‰เบœเบนเป‰เบญเปˆเบฒเบ™เบ„เบปเบ‡เบ—เบปเบ™เบ—เบตเปˆเบชเบธเบ”. เบžเบงเบเป€เบฎเบปเบฒเบ”เบฑเบšเป„เบŸเบฎเปˆเบงเบกเบเบฑเบ™เบเบฑเบš mascots เป€เบ•เบฑเบเป‚เบ™เป‚เบฅเบขเบต Avito, เบžเบงเบเป€เบฎเบปเบฒเบ›เบฐเบŠเบธเบกเบเบฑเบšเป€เบžเบทเปˆเบญเบ™เบฎเปˆเบงเบกเบ‡เบฒเบ™เบˆเบฒเบเบซเป‰เบญเบ‡เบ‚เบญเบ‡เบœเบนเป‰เป€เบšเบดเปˆเบ‡เปเบเบ‡เบฅเบฐเบšเบปเบšเบซเบผเบทเบชเบฐเป‚เบกเบชเบญเบ™เบ„เบญเบกเบžเบดเบงเป€เบ•เบตเปƒเบ™เป‚เบฎเบ‡เบฎเบฝเบ™เป€เบเบปเปˆเบฒ, เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบ›เบฐเบŠเบธเบกเบ›เบฐเบˆเปเบฒเบงเบฑเบ™เบžเบฒเบเปƒเบ•เป‰เบ‚เบปเบงเบ•เปเปˆเบเบฑเบšเบžเบทเป‰เบ™เบซเบฅเบฑเบ‡เบ‚เบญเบ‡ graffiti.

ClickHouse เบชเปเบฒเบฅเบฑเบšเบœเบนเป‰เปƒเบŠเป‰เบ‚เบฑเป‰เบ™เบชเบนเบ‡เปƒเบ™เบ„เปเบฒเบ–เบฒเบกเปเบฅเบฐเบ„เปเบฒเบ•เบญเบš

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: www.habr.com

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™