Size: a a a

ClickHouse не тормозит

2021 March 16

AS

Alexey Sokolov in ClickHouse не тормозит
Danil
Про подготовку данных перед загрузкой в кх это понятно

А в чём преимущество схемы с Null + MaterializedView перед использованием временной таблицы?
Плюсы есть:
1. Ненужные данные вообще не будут храниться и мерджиться.
2. Не нужно внешней приложухи, которая будет делать все эти переливания\конвертации по таймеру
3. Преобразования будут происходить не раз в N времени над большим объёмом записей, а в реальном времени над небольшими пачками данных.

Пример сейчас неудобно печатать. Общий смысл: делаете одну таблицу с движком Null с полями как в источнике - она будет нужна только как точка входа для работы MV, делаете вторую таблицу с нужным движком и правильными полями - это будет само хранилище, делаете MV на первую таблицу - оно будет преобразовывать данные по мере поступления и складывать их в хранилище в нужном виде.
источник

D

Danil in ClickHouse не тормозит
Alexey Sokolov
Плюсы есть:
1. Ненужные данные вообще не будут храниться и мерджиться.
2. Не нужно внешней приложухи, которая будет делать все эти переливания\конвертации по таймеру
3. Преобразования будут происходить не раз в N времени над большим объёмом записей, а в реальном времени над небольшими пачками данных.

Пример сейчас неудобно печатать. Общий смысл: делаете одну таблицу с движком Null с полями как в источнике - она будет нужна только как точка входа для работы MV, делаете вторую таблицу с нужным движком и правильными полями - это будет само хранилище, делаете MV на первую таблицу - оно будет преобразовывать данные по мере поступления и складывать их в хранилище в нужном виде.
Понял, нашёл пример использования Null + MV - как раз разбираюсь с ним.
Это позволяет мне реализовать текущие хотелки.

Спасибо за пинок в правильном направлении
источник

D

Danil in ClickHouse не тормозит
Danil
Понял, нашёл пример использования Null + MV - как раз разбираюсь с ним.
Это позволяет мне реализовать текущие хотелки.

Спасибо за пинок в правильном направлении
как раз протестирую как оно отработает заливку из старой базы на 600+ млн записей
источник

ИТ

Игорь Трофимов... in ClickHouse не тормозит
Ребят не подскажите, как можно мониторить, были ли инсерты за последний час в таблицу ? Так чтобы это не нагружало clickhouse ?
источник

S

Slach in ClickHouse не тормозит
Игорь Трофимов
Ребят не подскажите, как можно мониторить, были ли инсерты за последний час в таблицу ? Так чтобы это не нагружало clickhouse ?
счетчики смотрите изменение
SELECT * FROM system.events WHERE metric='InsertedRows';
источник

ИТ

Игорь Трофимов... in ClickHouse не тормозит
Slach
счетчики смотрите изменение
SELECT * FROM system.events WHERE metric='InsertedRows';
Спасибо, а есть ли где нибудь инфа, с какого адреса выполняется запрос?
источник

AK

Andrew Kochen in ClickHouse не тормозит
Игорь Трофимов
Спасибо, а есть ли где нибудь инфа, с какого адреса выполняется запрос?
в system.query_log есть address и initial_address, что-то такое
источник

ИТ

Игорь Трофимов... in ClickHouse не тормозит
Slach
счетчики смотрите изменение
SELECT * FROM system.events WHERE metric='InsertedRows';
А это общий счётчик же? А по таблицам такого нет?
источник

VB

Vladimir Bunchuk in ClickHouse не тормозит
Коллеги, всем привет!
Сделал Feature Issue на GitHub на тему мониторинга вставок в КХ. Прошу заплюсовать кому это было бы интересно.
https://github.com/ClickHouse/ClickHouse/issues/21781
источник

V

Vladimir in ClickHouse не тормозит
Alex S
В плане можно ли это сделать
Посмотрите движки вроде SummingMergeTree, возможно попадает в ваш юзкейс https://clickhouse.tech/docs/en/engines/table-engines/mergetree-family/summingmergetree/
источник

S

Slach in ClickHouse не тормозит
Игорь Трофимов
А это общий счётчик же? А по таблицам такого нет?
system.tables - total_rows
если раз в час снимать, то нормально будет
источник

VB

Vladimir Bunchuk in ClickHouse не тормозит
Игорь Трофимов
А это общий счётчик же? А по таблицам такого нет?
мы делаем такое через матвью на каждую таблицу в которую идут вставки
источник

VB

Vladimir Bunchuk in ClickHouse не тормозит
такой дашборд на выходе получаем
источник

ИТ

Игорь Трофимов... in ClickHouse не тормозит
Vladimir Bunchuk
мы делаем такое через матвью на каждую таблицу в которую идут вставки
Это как? Через mat view вставляете?
источник

ИТ

Игорь Трофимов... in ClickHouse не тормозит
Slach
system.tables - total_rows
если раз в час снимать, то нормально будет
этот счетчик скачет сильно, тяжело смотреть
источник

D

Dj in ClickHouse не тормозит
всем добра,
какие запросы КХ кушает хорошо, которые заваливает Импала? нужно сделать "правильный" бенчмарк
источник

VB

Vladimir Bunchuk in ClickHouse не тормозит
Есть таблица, в которой собраны метрики по всем вставкам во все таблицы. Назвали её insert_monitor.
На те таблицы, в которые идет вставка повешены матвью.
Все эти матвью в момент вставки данных записывают кол-во вставленных строк в таблицу insert_monitor
источник

VB

Vladimir Bunchuk in ClickHouse не тормозит
Игорь Трофимов
Это как? Через mat view вставляете?
Такая структура таблицы
┌─name─────┬─type────┐
│ date     │ Date    │
│ ts       │ DateTime│
│ table    │ String  │
│ rows     │ Int64   │
│ hostname │ String  │
│ source   │ String  │
└──────────┴─────────┘
источник

ИТ

Игорь Трофимов... in ClickHouse не тормозит
Vladimir Bunchuk
Есть таблица, в которой собраны метрики по всем вставкам во все таблицы. Назвали её insert_monitor.
На те таблицы, в которые идет вставка повешены матвью.
Все эти матвью в момент вставки данных записывают кол-во вставленных строк в таблицу insert_monitor
интересно, а как считаете количество вставляемых строк?
источник

S

Slach in ClickHouse не тормозит
Игорь Трофимов
этот счетчик скачет сильно, тяжело смотреть
в смысле скачет?
вы данные удаляете? или что?
источник