Как стать автором
Поиск
Написать публикацию
Обновить

Комментарии 5

Шел 2025, ClickHouse Keeper упомянут автором и он внедрен уже 100 лет в обед (ну пару лет как назад)

Почему статья про развертывание именно старого zookeeper, почему не ClickHouse Keeper?

P.S.: Я не смог найти быстро ВНЯТНУЮ информацию, почему клик вообще вместо zookeeper решил свой самопис ClickHouse Keeper родить?

Действительно, сейчас актуальная тема, это clickhousekeeper, о котором я упомянул. Данная статья больше про мой опыт с zookeeper’ом, нежели обозревание чего то «нового». Тем не менее, данный инструмент используется в продакте, я уверен.

На счет их инструмента, они просто решили сделать продукт максимально из коробки для удобства пользования

Все описано в доке https://clickhouse.com/docs/ru/guides/sre/keeper/clickhouse-keeper

Акцент на линейность чтения и записи и конечно по ресурсам кипер в отношении памяти менее прожорлив в отличие от zookeeper.

По статье - надеюсь тут говорится про тестовый стенд, а не реализацию в production.

Стенд тестовый, не переживайте)

  • «линейность» чтения — это некорректный перевод термина «linearizability» т.е. «линеаризуемости». Что такое эта линеаризуемость - к сожалению ни в документации, ни в блоге кликхауса решили не пояснять, вместо этого отправляют на википедию, где этот термин описан так, что лучше бы не описывали вообще (за пояснением я бы все-таки порекомендовал почитать Мартина Клеппмана - есть соответствующая глава, все-равно в интернете все более-менее внятные пояснения термина ссылаются на «Кабанчика»)

  • Про то, что де «ZooKeeper не предоставляет линеаризованные чтения» — это откровенная, наглая ложь кликхауса.

    https://martin.kleppmann.com/2015/05/11/please-stop-calling-databases-cp-or-ap.html
    It is possible to make linearizable reads in ZooKeeper by preceding a read with a sync command. That isn’t the default though, because it comes with a performance penalty. People do use sync, but usually not all the time.

    Сделай настройку, смирись с просадкой по производительности и вперед. Я читал профильную статью на блоге самого кликхауса:

    https://clickhouse.com/blog/clickhouse-keeper-a-zookeeper-alternative-written-in-cpp?loc=keeper-hero
    Additionally, and optionally (via a quorum_reads setting), ClickHouse Keeper provides linearizable reads.

    — абсолютно идентичная ситуация - по-умолчанию нет линеаризованных чтений, добавляешь настройку и вперед (а по умолчанию нет опять таки потому, что производительность падает - классическая проблематика обеспечения согласованности в СУБД)

  • Перечитав блог кликхауса повторный раз, я увидел, что действительно в кипере доказанное преимущество относительно зоокипера в потребляемых ресурсах:

    https://clickhouse.com/blog/clickhouse-keeper-a-zookeeper-alternative-written-in-cpp?loc=keeper-hero
    Время выполнения ClickHouse Keeper практически не отличается от времени выполнения ZooKeeper, несмотря на значительно меньшее использование оперативной памяти

    Но есть нюансы:

    https://clickhouse.com/blog/clickhouse-keeper-a-zookeeper-alternative-written-in-cpp?loc=keeper-hero
    Производительность (нелинеаризуемых) запросов на чтение и вспомогательных задач (управление сетевыми запросами, пакетная обработка данных и т. д.) <...>. Результаты наших тестов в целом показывают, что ZooKeeper в настоящее время справляется с этим лучше, чем Clickhouse Keeper

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации