Size: a a a

ClickHouse не тормозит

2021 March 27

S

Slach in ClickHouse не тормозит
Yuran
Я кстати так и не смог найти настройки, с которыми бы ngram индекс бы действительно что-то существенно ускорял для фильтрации текста логов :(. Может у кого-то есть пример?
ну .. у вас же врое получалось что-то около 2х раз ускорить?
но в целом тут такое дело
что data skip index существенно будут ускорять только если вы ищете что-то редкое.
потому что оно проверяет не то что в данном парте искомый токен есть. а то что в данном парте искомого токена нет
а если токен высокочастотный и есть в 100% партов, то наверное оно даже и замедлится слегка
источник

S

Slach in ClickHouse не тормозит
Anton
Подскажите, что именно я делаю не так.

У меня имеется большая таблица которая обновляется через python скрипт. после обновления данных запускается другой скрипт который считает витрину по этим данным, но я заметил что данные не сразу становятся доступными.

К примеру: мы посчитали что у пользователей из группы А в день Х -> 200 кликов по разным страницам, то лишь спустя N минут эти данные можно будет получить при запросах.

Движок таблицы с которой возникают проблемы - MergeTree

Данные вставляются в таблицу батчами по 50 000 строк в несколько потоков. Потоки бьются по разным источникам чтобы за раз не исчерпывать много оперативы и проще было перезапустить упавшую задачу

В данный момент в таблице более 100 миллионов строк.

Также подобная проблемы была впервые обнаружена пару месяцев назад на старой версии кликхауса. Получилось решать ее при помощи ожидания optimize table final после окончания вставки всех данных.

Скорее всего я делаю что-то не так.
что значит слово "обновляется"? вы только новые данные вставляете или у вас там какой нибудь ReplacingMergeTree?
у вас один сервер или несколько?

что такое "витрина"? это отдельная таблица? или что?
источник

VR

Vladislav Ross in ClickHouse не тормозит
доброе утро
из-за неаккуратных действий с DETACH/ATTACH partition (были выполнены сразу на нескольких репликах) в таблице задвоились-затроились парты
можно ли что-то с этим сделать? или только откатываться на бекап?
источник

A

Arsen in ClickHouse не тормозит
Slach
что значит слово "обновляется"? вы только новые данные вставляете или у вас там какой нибудь ReplacingMergeTree?
у вас один сервер или несколько?

что такое "витрина"? это отдельная таблица? или что?
Я ему уже подсказал, где собака зарыта) Там дело в кощунственном alter table delete оказалось перед вставкой. Забыли, что ch, это не постгрес 😒
источник

DT

Dmitry Titov in ClickHouse не тормозит
Vladislav Ross
доброе утро
из-за неаккуратных действий с DETACH/ATTACH partition (были выполнены сразу на нескольких репликах) в таблице задвоились-затроились парты
можно ли что-то с этим сделать? или только откатываться на бекап?
можно посравнить хеши и кол-во строк и осторожно убрать дубликаты
источник

VR

Vladislav Ross in ClickHouse не тормозит
Dmitry Titov
можно посравнить хеши и кол-во строк и осторожно убрать дубликаты
с помощью DETACH PART?
источник

DT

Dmitry Titov in ClickHouse не тормозит
Vladislav Ross
с помощью DETACH PART?
Да
источник

VR

Vladislav Ross in ClickHouse не тормозит
спасибо, попробуем
источник

DT

Dmitry Titov in ClickHouse не тормозит
On all replicas
SYSTEM STOP FETCHES table;
SYSTEM STOP FETCHES table;

1 Save list of parts for ATTACH.

clickhouse-client --query="SELECT 'ALTER TABLE ' || database || '.' || table || ' ATTACH PART \'' || any(name) || '\';'  FROM system.parts WHERE database = 'table' AND table = 'table' AND partition_id = '20201130' GROUP BY database, table, rows, bytes_on_disk, hash_of_all_files, hash_of_uncompressed_files, uncompressed_hash_of_compressed_files FORMAT TSVRaw" > file.sql

ALTER TABLE table DETACH PARTITION ID '20201130';


On all replicas
SYSTEM START FETCHES table;
SYSTEM START FETCHES table;


cat ./file.sql | clickhouse-client -mn;
источник

DT

Dmitry Titov in ClickHouse не тормозит
Я вообще таким пользовался, но в той версии просто нельзя было сделать ALTER DETACH PART
источник

АЗ

Андрей З in ClickHouse не тормозит
Denny Crane [not a Yandex bot]
проблема с NUllable что все в раза медленее и больше места на диске
А какие рекомендации по избавлению от nullable? Если есть в таблице поля, у которых значения может не быть. Придумывать дефолтовое значение, заменяющее null? Или есть другие варианты?
источник

DC

Denny Crane [not a Y... in ClickHouse не тормозит
Андрей З
А какие рекомендации по избавлению от nullable? Если есть в таблице поля, у которых значения может не быть. Придумывать дефолтовое значение, заменяющее null? Или есть другие варианты?
Если все очень сложно то использовать nullable.
А так да, например у меня есть поле -- температура float32, там лежит -7000. Клиент при отображении все что меньше -1000 показывает пустотой.
источник

c

corpix in ClickHouse не тормозит
Привет
Делаю clickhouse драйвер к одной из реализаций Scheme(Gerbil),
имею на входе запрос (insert/select/...), хочу получить информацию
о колонках из запроса.

Есть где-нибудь парсер используемого подмножества SQL?
Или может грамматика описана в одном из популярных форматов, позволяющих генерировать парсеры?

Смотрел на https://github.com/ClickHouse/clickhouse-jdbc/blob/094ed0b9d2dd8a18ae0c7b3f8f22c35e595822a6/clickhouse-jdbc/src/main/java/ru/yandex/clickhouse/PreparedStatementParser.java#L19-L21
Очень не хотелось бы делать это регулярками :)
источник

DT

Dmitry Titov in ClickHouse не тормозит
Переслано от Dmitry Titov
Есть зачаток ANTLR парсера
источник

DT

Dmitry Titov in ClickHouse не тормозит
Переслано от Danila Migalin
красота, нашел Parsers/New/ClickHouseParser.g4, то что надо - спасибо
источник

c

corpix in ClickHouse не тормозит
Dmitry Titov
Переслано от Danila Migalin
красота, нашел Parsers/New/ClickHouseParser.g4, то что надо - спасибо
Оу еее
Похоже что для решения моих задач этой декларации будет достаточно
Спасибо!
источник
2021 March 28

G

GithubReleases in ClickHouse не тормозит
ClickHouse/ClickHouse tagged: v21.3.4.25-lts
Link: https://github.com/ClickHouse/ClickHouse/releases/tag/v21.3.4.25-lts
Release notes:
ClickHouse lts release v21.3.4.25-lts
источник

AM

Ada Min in ClickHouse не тормозит
Подскажите, как можно получить userID у которых время между запросами больше Х, если в базе есть только время запроса timestamp?
источник

MV

M VS in ClickHouse не тормозит
Добрый день.
А как найти на каком сообщении из всей очереди это происходит:
DB::ParsingException: Cannot parse input: expected '"' before: '4"}'{}: (while reading the value of key publish_date),
?
источник

MV

M VS in ClickHouse не тормозит
как посмотреть для конкретной группы оффсет в топике и увидеть это сообщение?
источник