184 похожих чатов

Всем привет, такая проблема. Есть статичные (как правло строки и

айдишники) данные о событии, а есть динамичные (только числовые).

Хочется поместить все данные в одну таблицу, динамичные данные просто обновлять с помощью добавления новых строк + используя движок summingmergetree.

Но событий очень много, следовательно и обновлять динамичные данные придется часто.
А чтобы динамику вставить в таблицу, надо добавлять её вместе со статикой, чтобы статика при слиянии summingmergetree не потерялась. Следовательно встала проблема как эту статику вытаскивать быстрее всего. Если вытаскивать из кликхауса, то это будет очень медленно (т.к. point queries).

Что можете посоветовать в данном кейсе?

14 ответов

6 просмотров
Tony- Автор вопроса

У меня пока только мысли появились в сторону создать materialized view, где будет index_granularity занижен и делать point queries (но это антипаттерн и хз сколько запросов эта система выдержит)

Что значит статические? Сколько их? Это дименшины? Тогда external dictionary

Tony
У меня пока только мысли появились в сторону созда...

Мало выдержит. Тыщу в секунду может, может 5 тыщ. Там проблема из-за блоков компрессии и вообще кх не приспособлен для такого

Bulat Ziganshin
а блоки нельзя уменьшить?

https://kb.altinity.com/engines/altinity-kb-embeddedrocksdb-and-dictionary/

Tony- Автор вопроса
Denny [Altinity]
Что значит статические? Сколько их? Это дименшины?...

пример строки: статика: datetime, campaign_id, key (уникальный), lang, country и еще порядка 10 строк различных (некоторые из них в словари не запишешь) динамика: cost, event, payout и еще подобных штук 10 так вот чтобы мне например изменить payout, то я добавляю всю строку целиком, а для payout добавляю разницу с предыдущим значением

Clir
тыщу в секунду selectов на summingMT?

Причем тут самминг. Вообще не про эту таблицу речь была?

Tony
пример строки: статика: datetime, campaign_id, key...

В ETL до втставки в кх надо такое делать

Denny [Altinity]
Причем тут самминг. Вообще не про эту таблицу речь...

ну там человек написал, что вроде хочет самминг использовать и как я понял писать в нее через МВ. мой вопрос про "тыщу" Тыщу селектов выдержит или чего?

Clir
ну там человек написал, что вроде хочет самминг ис...

Вот тут тесты с direct словарем https://kb.altinity.com/engines/altinity-kb-embeddedrocksdb-and-dictionary/ все числа видны. Там был nvme

Tony- Автор вопроса
Denny [Altinity]
В ETL до втставки в кх надо такое делать

а можете пояснить как это? Как я понял, это где-то в другой key-value БД иметь мою строку, оттуда ее быстро достать и уже потом вставить в КХ

Tony- Автор вопроса
Denny [Altinity]
Да. MySQL redis Cassandra

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

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта