Size: a a a

2021 April 13

AL

Anton Lapshin in pro.elixir
имейте в виду один нюанс, который обычно через некоторое время в проде всплывает. под нагрузкой, если никаких workarounds не сделано уже, кх может начать скипать вставки, и есть шанс хорошо так потерять данных
источник

AL

Anton Lapshin in pro.elixir
в pillar это уже решено
источник

IG

Igоr Gоrуаchev in pro.elixir
это особенность поведения кликхауса?
источник

DR

Dmitry Russ (Aleksan... in pro.elixir
У нас clickhousex, но без ecto.
источник

AL

Anton Lapshin in pro.elixir
я так понял да. видимо не вывозит по таймауту, или что-то такое. @JustStealIt сможет чуть лучше прояснить как автор pillar
источник

AL

Anton Lapshin in pro.elixir
главные два правила кх - 1. максимальная денормализация (в идеале одна большая таблица с кучей колонок) 2. как можно меньше вставок
источник

ML

Maksim Lapshin in pro.elixir
1. Для работы с кликхаусом надо выстроить пайплайн подготовки батча. Мы это делаем сами


2. Дальше надо подготовить вставку. Мы делаем это в raw binary, код могу пошарить.

3. Отправить это по http
источник

ML

Maksim Lapshin in pro.elixir
Это повод для рефлексии.


Кликхаус стал стандартом для хранения структурированных логов.

Например ты можешь работать в заказной разработке, где своих данных попросту нет
источник

a

arikai in pro.elixir
На это бы особенно обратил внимание. Дёргать кликхаус на вставку по одной записи – в ноги стрелять.
источник

ML

Maksim Lapshin in pro.elixir
да. В кликхаус достаточно разумно вставлять раз в секунду.

Если за секунду набегает больше миллиона записей, тут уж своей думкой надо думать, а не по чатам вопросы задавать. Если меньше, то нечего париться.
источник

ML

Maksim Lapshin in pro.elixir
ээм, ну слушай, я не смог сходу посчитать snowflake, но что-то я подозреваю, что например несколько сот миллиардов строк вряд ли кто-то возьмется хранить за 40$ =)
источник

DS

Dmitry Shpagin in pro.elixir
Да, КХ себя хорошо показывает. Местами есть проблема, но если все делать досконально по документации - то многие проблемы получится избежать. Например, по началу мы решили, что у нас мало данных и можем себе позволить делать одиночные вставки, как с обычной реляционной БД, так вот, нифига - сами не заметите, как начнутся ошибки при вставке.

Pillar тоже не все проблемы со вставкой решает, мы дополнительно поставили перед кликхаусом мини прокси https://github.com/nikepan/clickhouse-bulk (он дампит неудачные вставки и автоматически делает повторы, т.е. если кликхаус отвалится, он сохранит запросы и вставит позже)
источник

a

arikai in pro.elixir
clickhousex и clickhouse_ecto мы с @fried_zucchini и @LamaLove собирались заняться: актуализации кода и других задач там навалом, но времени не хватает.

Пока что Pillar является более предпочтительным вариантом: как раз из-за наличия батчинга.
Clickhousex + _ecto – если вдруг нужно делать запросы к clickhouse и желательно удобство ecto.

Как-то так
источник

IG

Igоr Gоrуаchev in pro.elixir
всем большое спасибо за ценные советы.
источник

a

arikai in pro.elixir
Есть ещё такой вариант
https://cloud.yandex.ru/services/managed-clickhouse
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Может это дело моды? Хз
источник

ŹR

Źmićer Rubinštejn in pro.elixir
источник

ŹR

Źmićer Rubinštejn in pro.elixir
источник

ŹR

Źmićer Rubinštejn in pro.elixir
Но я прям не назвал бы такое положение вещей “стандартом”
источник

DR

Dmitry Russ (Aleksan... in pro.elixir
А, мы вставляем данные из Rust-а а кверим из эликсира, понял почему с проблемами не сталкивались... А вообще, clickhousex - у нас своя стопка улучшений висит, которую в апстрим планируем отправить.
источник