clickhouse_ru | Неотсортированное

Telegram-канал clickhouse_ru - ClickHouse не тормозит

11016

Обсуждаем ClickHouse

Подписаться на канал

ClickHouse не тормозит

кх нужен драйвер чтобы работать сам с собой ? интересная для меня инфа, не знал

Читать полностью…

ClickHouse не тормозит

встретили ошибку при мутациях c UNION 25.3.2.39, куда смотреть? как исправить?

(DELETE WHERE `Ссылка` IN (SELECT `Ссылка` FROM temp_tables.S_Nomenklatura_update UNION DISTINCT SELECT `Ссылка` FROM temp_tables.S_Nomenklatura_delete))


ошибка
Code: 36. DB::Exception: UNION mode UNION_DEFAULT must be normalized. (BAD_ARGUMENTS), Stack trace (when copying this message, always include the lines below):

DB::Exception::Exception(DB::Exception::MessageMasked&&, int, bool) @ 0x000000000f48dcdb
DB::Exception::Exception(PreformattedMessage&&, int) @ 0x0000000009f6520c
DB::Exception::Exception(int, FormatStringHelperImpl::type>, char const*&&) @ 0x000000000c5bf66b
DB::UnionNode::UnionNode(std::shared_ptr, DB::SelectUnionMode) @ 0x0000000012bceb18
DB::(anonymous namespace)::QueryTreeBuilder::buildSelectWithUnionExpression(std::shared_ptr const&, bool, String const&, std::shared_ptr const&, std::shared_ptr const&) const @ 0x0000000012c41645
DB::(anonymous namespace)::QueryTreeBuilder::buildExpression(std::shared_ptr const&, std::shared_ptr const&) const @ 0x0000000012c3fd6e
DB::(anonymous namespace)::QueryTreeBuilder::buildExpression(std::shared_ptr const&, std::shared_ptr const&) const @ 0x0000000012c4064a
DB::(anonymous namespace)::QueryTreeBuilder::buildSelectExpression(std::shared_ptr const&, bool, String const&, std::shared_ptr const&, std::shared_ptr const&) const @ 0x0000000012c448fa
DB::(anonymous namespace)::QueryTreeBuilder::buildSelectOrUnionExpression(std::shared_ptr const&, bool, String const&, std::shared_ptr const&, std::shared_ptr const&) const @ 0x0000000012c3e326
DB::buildQueryTree(std::shared_ptr, std::shared_ptr) @ 0x0000000012c3e066
DB::(anonymous namespace)::prepareQueryAffectedQueryTree(std::vector> const&, std::shared_ptr const&, std::shared_ptr) @ 0x0000000013615c7e
DB::isStorageTouchedByMutations(std::shared_ptr, std::shared_ptr, std::shared_ptr const&, std::vector> const&, std::shared_ptr) @ 0x0000000013614fb1
DB::MutateTask::prepare() @ 0x00000000147c2e40
DB::MutateTask::execute() @ 0x00000000147c2a04
DB::ReplicatedMergeMutateTaskBase::executeStep() @ 0x000000001482e841
DB::MergeTreeBackgroundExecutor::threadFunction() @ 0x000000001454326d
ThreadPoolImpl>::ThreadFromThreadPool::worker() @ 0x000000000f5c3e1b
void std::__function::__policy_invoker::__call_impl[abi:ne190107]::ThreadFromGlobalPoolImpl>::ThreadFromThreadPool::)(), ThreadPoolImpl>::ThreadFromThreadPool>(void (ThreadPoolImpl>::ThreadFromThreadPool::&&)(), ThreadPoolImpl>::ThreadFromThreadPool&&)::'lambda'(), void ()>>(std::__function::__policy_storage const*) @ 0x000000000f5ca942
ThreadPoolImpl::ThreadFromThreadPool::worker() @ 0x000000000f5c114f
void* std::__thread_proxy[abi:ne190107]>, void (ThreadPoolImpl::ThreadFromThreadPool::)(), ThreadPoolImpl::ThreadFromThreadPool>>(void*) @ 0x000000000f5c841a
? @ 0x00007f85e249f802
? @ 0x00007f85e243f450
(version 25.3.2.39 (official build))

Читать полностью…

ClickHouse не тормозит

А вот чтобы работал новый тип json нужно подключать кликхауз драйвер 0.8.2 и в нём временки не видны становятся, это как-то обошли?

Читать полностью…

ClickHouse не тормозит

ага, идею понял. Так возможно проще будет. Попробую.

Читать полностью…

ClickHouse не тормозит

да, я из бачта достаю уникальные ids и генерю запрос

Читать полностью…

ClickHouse не тормозит

ну у меня там и так уже есть стейджовая таблица для левой таблицы. А для правой CTE в которой как раз и ошибка. Возможно между надо какую-то временную таблицу сделать и для правой.

Читать полностью…

ClickHouse не тормозит

Из подводных камней - если у вас в IN значений на 2 Мб, то, скорее всего, запросы будут еле ползать. А так увеличивайте, почему нет то.

Читать полностью…

ClickHouse не тормозит

Если вы про max_threads, то я с зафиксированным количеством в 16 тредов проверял

Читать полностью…

ClickHouse не тормозит

написать issue кликам, если вы правы - это "общая" проблема и ее бы поправить

Читать полностью…

ClickHouse не тормозит

Доброго времени суток , смотрите какой вопрос , мне необходимо скопировать из MySQL в ClickHouse около 1 миллиарда записей , для этого я залинковал таблицу и с помощью скрипта копировал по определенному количеству записей
INSERT INTO dbo.table1
SELECT
created_at,
data_hash,
CAST(id AS UUID) AS id,
receipt_hash,
source_table,
updated_at
FROM dbo.table2
WHERE created_at >= '2024-03-31 14:56:46'
AND created_at < '2024-04-15 14:56:46';

Но у меня начала появляется вот такая ошибка
SQL Error [1000] [08000]: Poco::Exception. Code: 1000, e.code() = 2013, mysqlxx::Exception: Lost connection to MySQL server during query (10.107.81.4:3306) (version 24.5.1.1763 (official build))
Кто знает в чем проблема и как можно ее решить , заранее спасибо!

Читать полностью…

ClickHouse не тормозит

Это уже лирика и эмпирика. Главное, что есть решение ,)

Читать полностью…

ClickHouse не тормозит

Похоже уже чаще наоборот

Читать полностью…

ClickHouse не тормозит

Final проще в запросе написать, но argMax по ресурсам выигрывает

Читать полностью…

ClickHouse не тормозит

у нас главный поинт - одна плоская таблица

Читать полностью…

ClickHouse не тормозит

Мы триллионы строк хранили на одном хосте, и было норм :)

Читать полностью…

ClickHouse не тормозит

В 25.3 уже без allow работает, но чтобы селект делать нужен новый драйвер

Читать полностью…

ClickHouse не тормозит

я с таким не сталкивался, allow_expirimental_.... чего-то там мне достаточно было чтобы включить джсон на кх

Читать полностью…

ClickHouse не тормозит

У меня один insert в одну таблицу. Батчи большие. Я просто хочу балансировку между репликами. Уменьшить время рассинхрона при селекте. Не то чтобы это было критично. Но все же было бы приятно, чтобы уменьшилось время.

Тогда другой вопрос про балансировку. Уже про chproxy. Пусть есть кластер - 2 шарда по 2 реплики. Есть два варианта настройки Chproxy - просто прописать все ноды и реплики либо сделать группировку по шардам. Может кто-то пробовал и скажет - какой лучше?

Читать полностью…

ClickHouse не тормозит

а может есть возможность доставать эти ид уже из таблицы куда этот батч вставлен ?
если нет
тогда сделайте временную таблицу в памяти и оттуда
where id in (select id from temp_table)

Читать полностью…

ClickHouse не тормозит

возможно вам CTE не нужно
у вас, как я понял, where in (list_of_ids) и этот list_of_ids генерируется скриптом ?

Читать полностью…

ClickHouse не тормозит

я такой момент обошел за счет создания временных таблиц или подзапросов (смотря что нужно в каких случаях)

Читать полностью…

ClickHouse не тормозит

Всем привет. Какие есть подводные камни увелечения max_query_size до например 2mb? История в чем - надо поджойнить две таблицы (писал уже выше) и для таблицы с права (это таблица users) подготавливаю dataset с условием WHERE id in (...). Запросы стали пролезли по памяти, но там где слева кардинальность поля высокая, запросы падают с ошибкой по этому параметру.

Читать полностью…

ClickHouse не тормозит

попробуй задать количество потоков в settings для обоих кликов, возможно там дефолтное кол-во поменялось

Читать полностью…

ClickHouse не тормозит

Всем привет. У меня проблема с обновлением кх с 24.3 до 25.3.
Сильно проседает скорость вставок из jsoneachrow файлов в MergeTree таблицы.
Становится примерно в 1.5-2 раза медленнее. Это заметно только когда нагрузка на кх высокая — старый кх использует больше цпу, а новый отдыхает.
В кх 12TiB данных, 2.3к баз данных и 165к таблиц.

я потестил на разных версиях кх, и выяснил что деградация в перформансе происходит при переходе с v24.5 на v24.6.
Подскажите, в какую сторону можно поисследовать

Читать полностью…

ClickHouse не тормозит

в доке сказано что работает только с select_sequential_consistancy=1 insert_quorum_parallel=0 insert_quorum>=2 ....
значит с остальным тупо вообще не работает

engine=distributed вообще ничего не знает про состояние целевой таблицы не реплике в SELECT, только replication_delay

можно попробовать конечно max_replica_delay_for_distributed_queries=1 выставить...

но тогда вообще непонятно как вы собираетесь конкурентные insert делать которые тупо ничего друг о друге не знают на разных репликах и всегда будут давать replica_delay > 1

может вам проще на клиенте умную балансировку организовать
чтобы и INSERT и SELECT на одну реплику приходил?

или у вас там куча конкурентных INSERT?
если еще и маленькие батчи, то вы клик тупо убиваете и не надо так...

Читать полностью…

ClickHouse не тормозит

Ну за свежие версии не скажу точно. Раньше так было

Читать полностью…

ClickHouse не тормозит

С чего бы это так категорично? Версия, колонки в запросе, партиционирование, order by таблицы, включенные оптимизации - все влияет. Прошло то время когда можно было уверенно говорить что argMax выигрывает.

Читать полностью…

ClickHouse не тормозит

final очень оптимизированный. При правильном партиционировании, при наличии 1 парта в партиции FINAL автоматически пропускается. Запускайте OPTIMIZE FINAL на старые партиции и будет вам счастье

Читать полностью…

ClickHouse не тормозит

звучит отлично тогда )

Читать полностью…

ClickHouse не тормозит

Не нужно использовать GROUP BY вместо FINAL в свежих версиях если колонки группировки такиеже как ORDER BY таблицы. Это не быстрее, а скорее - медленнее

Читать полностью…
Подписаться на канал