Size: a a a

ClickHouse не тормозит

2021 March 22

DT

Dmitry Titov in ClickHouse не тормозит
Dj
нормальная идея, но лучше поделить на отдельные колонки и партиционировать по первой.
Наверное min max index с гранулой >1000 почти как partition minmax сработает
источник

D

Dj in ClickHouse не тормозит
Dmitry Titov
Наверное min max index с гранулой >1000 почти как partition minmax сработает
все равно колонки лучше. те же операции над партициями/range. uuid - 128 bit - все время кастить для range- сравнений итд, попросту греть планету
источник

D

Dj in ClickHouse не тормозит
короче можно, но если разного рода запросов может быть много - будет больно
источник

D

Dj in ClickHouse не тормозит
если веб интерфейс условно кидающий одинаковый запрос - можно... но я б все равно жалкие 16 бит для даты не пожалел
источник
2021 March 23

a

akira in ClickHouse не тормозит
Хай. В клик завезли уже норм апдейт и удаление? Лень искать, ответьте плиз))
источник

AK

Alexey Kh in ClickHouse не тормозит
akira
Хай. В клик завезли уже норм апдейт и удаление? Лень искать, ответьте плиз))
нет
>уже
есть некий Lightweight DELETE/UPDATE в roadmap 2021
источник

IS

Illia Slobozhanin in ClickHouse не тормозит
akira
Хай. В клик завезли уже норм апдейт и удаление? Лень искать, ответьте плиз))
Ну есть неблокирующие мутации (давно, вроде) и в роадмапе - лайтвейт есть
источник

a

akira in ClickHouse не тормозит
Спасибо. Гляну в следующем году. Авось допилят.
источник

АШ

Александр Шаповалов... in ClickHouse не тормозит
Что-то поддержки нормальных CTE не нашел в роад мапе. Не могу понять, они будут когда-нибудь или нет?
источник

AV

Aleksandr Vasilev in ClickHouse не тормозит
Добрый день! Подскажите, пожалуйста, как переехать на новый zookeeper кластер. Достаточно ли в конфиге указать ссылку на новый zookeeper или нужно каким-то образом перетаскивать информацию о реплицированных таблицах из старого zookeeper или вообще пересоздавать таблицы Replicated?
источник

YV

Yuri Velgosha in ClickHouse не тормозит
Aleksandr Vasilev
Добрый день! Подскажите, пожалуйста, как переехать на новый zookeeper кластер. Достаточно ли в конфиге указать ссылку на новый zookeeper или нужно каким-то образом перетаскивать информацию о реплицированных таблицах из старого zookeeper или вообще пересоздавать таблицы Replicated?
источник

AV

Aleksandr Vasilev in ClickHouse не тормозит
Спасибо
источник

JR

John Robert in ClickHouse не тормозит
How to integrate clickhouse with Java.?
источник

MD

Maxim Dzeckelev in ClickHouse не тормозит
Добрый день.
Помогите пожалуйста разобраться в MATERIALIZED VIEW
Проблама в том, выполнятеся фул скан всех партов представления, но мне бы хотелось этого избежать

сырые данные лежат подобным образом

CREATE TABLE IF NOT EXISTS v1_fts.local_ids
   ON CLUSTER cluster
(
   date        Date,
   id          UInt64,
   words       Array(UInt64)
)
   ENGINE = ReplicatedMergeTree(
            '/clickhouse/tables/{shard}/v1_fts/local_ids',
            '{replica}')
       PARTITION BY date
       ORDER BY (date, id)
       SETTINGS index_granularity = 8192;

распределеённая таблица

CREATE TABLE IF NOT EXISTS v1_fts.ids
   ON CLUSTER cluster
(
   date        Date,
   id          UInt64,
   words       Array(UInt64)
)
   ENGINE Distributed(cluster, v1_fts, local_ids, id);
   
Я бы хотел исполнять запрос подобного вида:
SELECT date, id
FROM
   (
    SELECT DISTINCT
        date,
        id
    FROM v1_fts.ids
        PREWHERE date = '2021-03-18' AND words hasAll(words, [16015426228996655908,1584244114596650083])
    ORDER BY id
    LIMIT 0,10);
но это фулскан из-за того что индекс не по words

делаю новую таблицу

CREATE TABLE v1_fts.local_words
   ON CLUSTER cluster
(
   date        Date,
   word        UInt64,
   words       Array(UInt64),
   id          UInt64
) ENGINE = ReplicatedMergeTree(
          '/clickhouse/tables/{shard}/v1_fts/local_words', '{replica}')
     PARTITION BY tuple()
     ORDER BY (date, word, words, id);

и mat view для нее

CREATE MATERIALIZED VIEW IF NOT EXISTS v1_fts.words_mv
           ON CLUSTER cluster
           TO v1_fts.local_words
AS
SELECT date,
      word,
      words
FROM v1_fts.local_ids
        ARRAY JOIN words AS word
GROUP BY (date, word, words, id);

и распределенная таблица для words

CREATE TABLE IF NOT EXISTS v1_fts.words
   ON CLUSTER cluster
(
   date        Date,
   word        UInt64,
   words       Array(UInt64),
   id          UInt64,
) ENGINE = Distributed(cluster, v1_fts, local_words, word);


заливаю новые данные в распределенную таблицу v1_fts.words небольшими кусками по 10000 строк, общее количкство строк порядка десяти миллинов.

выплняю модицированный запрос

SELECT date, id
FROM
   (
    SELECT DISTINCT
        date,
        id
    FROM v1_fts.words
        PREWHERE date = '2021-03-18' AND word IN (16015426228996655908,1584244114596650083) AND hasAll(words, [16015426228996655908,1584244114596650083])
    ORDER BY id
    LIMIT 0,10);
   
по логу я вижу, что выполнятеся фулскан таблицы v1_fts.local_words на всех шардах

Подскажите пожалуйста как организовать даные и избежать фулскан таблицы v1_fts.local_words в этом кейсе?
источник

P

Protey in ClickHouse не тормозит
Всем доброго дня! Для всех shell скриптов мониторинга и информации ClickHouse добавлен единый файл настроек соединений settings.txt. Теперь для подключения к ClickHouse можно задавать хост, порт, логин пользователя и пароль для подключения к локальному или удалённому серверу. Добавлены скрипты clickhouse_information_metrics.sh, отображающий метрики и события, и clickhouse_client.sh для запуска clickhouse-client с текущими настройками из файла settings.txt.
https://github.com/Azmodey/ch_dba_scripts
источник

P

Protey in ClickHouse не тормозит
Обновлены скриншоты, например так выглядит информация по пользователям, ролям, правам и квотам.
источник

AR

Alex Ryndin in ClickHouse не тормозит
Привет. Как в кликхаусе сделать adhoc таблицу из одного столбца?
Нужно сделать запрос вида SELECT * from ('foo', 'bar') ...
где foo и bar соответственно строки единственного столбца таблцы
источник

K

Konstantin Ilchenko in ClickHouse не тормозит
Alex Ryndin
Привет. Как в кликхаусе сделать adhoc таблицу из одного столбца?
Нужно сделать запрос вида SELECT * from ('foo', 'bar') ...
где foo и bar соответственно строки единственного столбца таблцы
например так можно
select arrayJoin(['a', 'b'])
источник

AR

Alex Ryndin in ClickHouse не тормозит
Konstantin Ilchenko
например так можно
select arrayJoin(['a', 'b'])
думаю то что надо. Казалось что sql должен такое предоставлять более красиво
источник

i

ivan in ClickHouse не тормозит
Добрый день! Не происходит вставка в одну из таблиц бд:
Code: 252. DB::Exception: Received from localhost:9000. DB::Exception: Too many parts (300). Merges are processing significantly slower than inserts..
Вставка происходит 4-5 раз в день из csv на несколько тысяч строк. Руками попробовал скормить КХ csv на 17 строк - вышеупомянутая ошибка.
select * from system.merges - пусто
select * from system.replication_queue - пусто
select * from parts where table='<table_name>' - данных нет уже пару дней (столько живем с ошибкой)
select * from replicas - здесь обратил внимание, что данные по проблемной таблице отличаются от ее соседей. Привлекли внимание следующие параметры:
is_leader - 0 (у здоровых соседей 1)
absolute_delay - 1616488909 (у соседей 0. Полагаю, это задержка. Видимо репликация не происходит)
active_replicas - 0 (2 у соседей)
engine проблемной таблицы - ReplicatedSummingMergeTree, версия КХ - ClickHouse server version 20.9.2 revision 54439
Подскажите пожалуйста, в чем проблема и как исправить?
источник