Size: a a a

ClickHouse не тормозит

2019 December 17

P

Pookie in ClickHouse не тормозит
Denny Crane (I don't work at Yandex (never did))
все это ненужные велосипеды. Надо просто делать атомарные инсерты и использовать дедупликацию КХ и делать ретрай, при таймауте.
А как быть с тем, что в один поток писать не очень по http? Мы например пишем в 10 потоков и процесс, который пишет упал например. Даже архитектурно пока сложно представить как это реализовать в php...
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
или можно писать во временную таблицу и аттачить ее парт в основную, при успешной вставке
источник

P

Pookie in ClickHouse не тормозит
Denny Crane (I don't work at Yandex (never did))
или можно писать во временную таблицу и аттачить ее парт в основную, при успешной вставке
А вот это хорошая мысль, кстати говоря
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
Pookie
А как быть с тем, что в один поток писать не очень по http? Мы например пишем в 10 потоков и процесс, который пишет упал например. Даже архитектурно пока сложно представить как это реализовать в php...
wut?
источник

P

Pookie in ClickHouse не тормозит
PHP умеет асинхронно слать запросы при помощи curl, но вот результат сможет отдать после выполнения всех запросов, он не асинхронный.
источник

P

Pookie in ClickHouse не тормозит
Denny Crane (I don't work at Yandex (never did))
или можно писать во временную таблицу и аттачить ее парт в основную, при успешной вставке
В любом случае эта идея нравится больше, чем query_id
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
источник

SA

Sergei Alekseev in ClickHouse не тормозит
Добрый вечер! подскажите плиз, для одбс движка постгреса для для словарика можно  использовать запрос? Или только таблицу?
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
Sergei Alekseev
Добрый вечер! подскажите плиз, для одбс движка постгреса для для словарика можно  использовать запрос? Или только таблицу?
только таблицу (сделайте вью в PG и используйте его) и where у таблицы в словаре можно написать
источник

AK

Anton Kondakov in ClickHouse не тормозит
Так все таки подскажите куда покопать? Зукиперы в проде дохнут, ухи просят :( Пока, единственная идея и отличие, что значения ключей, которые учавствуют в партиционировании, в пачке логов выбираемых на проде "разнообразнее" чем в стейджинге. Хотя общее количество разных значений такое же. Это может так влиять?
источник

T

TRADER in ClickHouse не тормозит
Denny Crane (I don't work at Yandex (never did))
мне кажется вы ошибаетесь, query_id нельзя передать.

вам проще сделать

select /* q_id=UUID */ .... (добавлять уникальный id в тект запроса)
потом селектом по system.processes выбирать like '%UUID%'

и если вы не в курсе то http тоже умеет возвращать прогресс
curl -vv 'http://localhost:8123/?send_progress_in_http_headers=1' --data-binary @testa3.sql
< X-ClickHouse-Progress: {"read_rows":"24 996 720","read_bytes":"204755840","total_rows":"38 308 864"}
< X-ClickHouse-Progress: {"read_rows":"22 941 868","read_bytes":"233006776","total_rows":"36 059 136"}
/
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
Anton Kondakov
Так все таки подскажите куда покопать? Зукиперы в проде дохнут, ухи просят :( Пока, единственная идея и отличие, что значения ключей, которые учавствуют в партиционировании, в пачке логов выбираемых на проде "разнообразнее" чем в стейджинге. Хотя общее количество разных значений такое же. Это может так влиять?
ну конечно это и есть причина, insert разбивается на множество партов
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
вообще не рекомендуется делать инсерты которые (охватывают несколько партиций) создают несколько партов, это ломает дофига чего.
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
атомарность, работу с зукипером, too many parts ...
источник

AK

Anton Kondakov in ClickHouse не тормозит
Так вроде общее количество партов одинаковое, что в стейджинге, что в проде
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
Anton Kondakov
Так вроде общее количество партов одинаковое, что в стейджинге, что в проде
что написано в partition by ?
источник

AK

Anton Kondakov in ClickHouse не тормозит
Там написано PARTITION BY (logid, toStartOfDay(timestamp)) logid это container_id/appname. Я проверил количество уникальных значений logid на стейджинге примерно 1000 в проде 700
источник

AK

Anton Kondakov in ClickHouse не тормозит
Я уже наступал на эти грабли :( Это должно аффектить общее количество партов по таблице, но оно одинаковое
источник

AK

Anton Kondakov in ClickHouse не тормозит
В свое время рост количества партов таблицы сделал нам сильно больно, у нас теперь даже отдельный график и аларм в заббиксе есть. И я перпроверил порядок количества партов одинаковый. На входящих данных разнообразие значений разное, но не два порядка
источник

AK

Anton Kondakov in ClickHouse не тормозит
Можно как то отследить, какие парты реплицируются?
источник