Size: a a a

ClickHouse не тормозит

2020 September 10

MG

Mikhail Glader in ClickHouse не тормозит
Smoked Cheese
Issues в гитхабе
Мне кажется, что issues - это сообщения о багах, а я просто посоветоваться хочу.
источник

SC

Smoked Cheese in ClickHouse не тормозит
Mikhail Glader
Мне кажется, что issues - это сообщения о багах, а я просто посоветоваться хочу.
Там и обычные вопросы задают, это ок
источник

MG

Mikhail Glader in ClickHouse не тормозит
Smoked Cheese
Там и обычные вопросы задают, это ок
Спасибо
источник

G

Grigory in ClickHouse не тормозит
Grigory
Здравия!

Есть база данных, в которой такие таблицы

CREATE TABLE IF NOT EXISTS db1.table1_local ON CLUSTER '{cluster}' (
 transaction_id UUID,
 common_tenant String,
 common_device UUID,
 internal_datetime_utc DateTime64(3, 'UTC'),
) ENGINE = ReplicatedReplacingMergeTree(
 '/clickhouse/tables/{shard}/table1_local', '{replica}'
) ORDER BY (common_tenant, common_device, internal_datetime_utc, transaction_id)
 PRIMARY KEY (common_tenant, common_device)
 PARTITION BY toYYYYMM(internal_datetime_utc)
 
 
CREATE TABLE IF NOT EXISTS db1.table1 ON CLUSTER '{cluster}' (
 transaction_id UUID,
 common_tenant String,
 common_device UUID,
 internal_datetime_utc DateTime64(3, 'UTC'),
) ENGINE = Distributed(
 '{cluster}', db1, table1_local, rand()
)

Таблицы наполнили тестовыми данными и сейчас делаю селекты. И не могу понять, должно ли так быть
Вот такой селект не возвращает ничего
SELECT common_tenant, common_device FROM db1.table1_local WHERE (common_tenant, common_device) IN tuple(('23c38aa5-64a7-461b-a4a4-6cb3c01fa3b9', '4fb6b657-b4c7-4d47-a4fd-1eeda65a4d1d'), ('2e63a510-8aab-4255-ad44-c72e3ef0f6aa', 'cdfc6dc1-927f-447e-913c-4da33ef03f90')) AND isNull(customer) ORDER BY common_tenant, common_device
Вот такие селекты возвращают записанные ранее данные
В этом запросе я убрал tuple
SELECT common_tenant, common_device FROM db1.table1_local WHERE (common_tenant, common_device) IN (('23c38aa5-64a7-461b-a4a4-6cb3c01fa3b9', '4fb6b657-b4c7-4d47-a4fd-1eeda65a4d1d'), ('2e63a510-8aab-4255-ad44-c72e3ef0f6aa', 'cdfc6dc1-927f-447e-913c-4da33ef03f90')) AND isNull(customer) ORDER BY common_tenant, common_device


В этом запросе обратился к таблице table1:
SELECT common_tenant, common_device FROM db1.table1 WHERE (common_tenant, common_device) IN tuple(('23c38aa5-64a7-461b-a4a4-6cb3c01fa3b9', '4fb6b657-b4c7-4d47-a4fd-1eeda65a4d1d'), ('2e63a510-8aab-4255-ad44-c72e3ef0f6aa', 'cdfc6dc1-927f-447e-913c-4da33ef03f90')) AND isNull(customer) ORDER BY common_tenant, common_device

Так должно быть? В какую сторону смотреть, подскажите, плиз
В продолжение вчерашнего вопроса
Тестирую на managed кликхаусе в Яндекс облаке с такой же структурой БД. Там первый вариант селекта работает
Вижу, что версии различаются в облаке - 20.3, самоподнятый - 20.5.4
И, возможно, в настройках что то различается. Настройки на менеджед не вижу

Почему так может быть?
источник

G

Gleb in ClickHouse не тормозит
Пытаюсь засунуть протобаф в Kafka Engine, получаю «No common columns with provided protobuf schema» хотя уверен, что в топик пишу нужный формат по нужной схеме, что может быть не так?)
источник

AK

Alex Konstantinov in ClickHouse не тормозит
Gleb
Пытаюсь засунуть протобаф в Kafka Engine, получаю «No common columns with provided protobuf schema» хотя уверен, что в топик пишу нужный формат по нужной схеме, что может быть не так?)
Там есть папка, куда нужно подложить protobuf схемы, вы это делали?
источник

G

Gleb in ClickHouse не тормозит
Alex Konstantinov
Там есть папка, куда нужно подложить protobuf схемы, вы это делали?
конечно
источник

AZ

Anton Zhuravsky in ClickHouse не тормозит
привет всем! правильно понимаю, что билды под арм можно только лишь самому собирать, официальных (кроме найтли) билдов, пакетов и докер образов нет?
источник

YV

Yuri Velgosha in ClickHouse не тормозит
Anton Zhuravsky
привет всем! правильно понимаю, что билды под арм можно только лишь самому собирать, официальных (кроме найтли) билдов, пакетов и докер образов нет?
Хм, кажись если докер на арм встанет, то можно юзать официальные образы с hub.docker.com
источник

AZ

Anton Zhuravsky in ClickHouse не тормозит
Yuri Velgosha
Хм, кажись если докер на арм встанет, то можно юзать официальные образы с hub.docker.com
увы и ах, там точно x86 билды 🙁
источник

AS

Alexander Selivanov in ClickHouse не тормозит
А вообще нормальная история делать join-ы в запросах для графиков? Не совсем понимаю такую вещь что типа при join-е правая таблица грузится в память, прям вся? или только по ключу все записи, которые нашлись?
источник

D

Dj in ClickHouse не тормозит
Alexander Selivanov
А вообще нормальная история делать join-ы в запросах для графиков? Не совсем понимаю такую вещь что типа при join-е правая таблица грузится в память, прям вся? или только по ключу все записи, которые нашлись?
прям вся, и это норма, все базы так делают хеш джоины, просто некоторые жрут меньше и имеют некоторые оптимизации в виде partition-wise join/buckets/grace =)
источник

AS

Alexander Selivanov in ClickHouse не тормозит
то есть если у меня таблица, которая джойнится имеет ~50 млн записей - она вся войдет в память?)
источник

AS

Alexander Selivanov in ClickHouse не тормозит
Выходит запросы с джойнами не стоит делать?
источник

ЕА

Егор Андреевич... in ClickHouse не тормозит
не стоит делать если не хватает памяти
источник

D

Dj in ClickHouse не тормозит
Alexander Selivanov
то есть если у меня таблица, которая джойнится имеет ~50 млн записей - она вся войдет в память?)
можете профильтровать её, норм паттерн в кх
источник

AS

Alexander Selivanov in ClickHouse не тормозит
Dj
можете профильтровать её, норм паттерн в кх
А можете пример дать? или ссылку на доку
источник

-

-_- in ClickHouse не тормозит
как не делать join-ы в случае с графитовым деревом?
источник

D

Dj in ClickHouse не тормозит
Alexander Selivanov
А можете пример дать? или ссылку на доку
select * from table1 join (
 select * from table2 where rowid in (
    select rowid from table1 where somecondition
  )
) t2 ON ...
источник

AS

Alexander Selivanov in ClickHouse не тормозит
у меня например выборка по транзакциям и мне надо знать статус подписки у этих транзакций, то есть выбрать все транзакции у котоорых подписка в статусе актив
источник