@clickhouse_ru

Страница 470 из 723
Алексей
25.03.2018
10:59:45
Господа, а можно выключалку встроенному переопределятору ctrl+f на странице с докой ?

она грузит 100500 мой бедный проц и делает не то что я хочу.

Vladimir
25.03.2018
11:49:39
Всем привет. Мне нужно создать словарь из вьюшки в кликхаусе. Обязательно ли указывать порт, логин и пароль к локальному CH для источника словаря? <source> <clickhouse> <host>localhost</host> <port>9000</port> <user>default</user> <password></password> <db>default</db> <table>ids</table> </clickhouse> </source>

Ivan
25.03.2018
12:04:08
Господа, подскажите по бд system

Google
Ivan
25.03.2018
12:04:39
Она разрослась и весит больше, чем бд, в которой я данные храню

Можно ее без последствий почистить, например?

Ivan
25.03.2018
12:07:42
Query log?
Дык и?



Можно это отключить и почистить?

Ilya
25.03.2018
12:35:48
Можно это отключить и почистить?
Можно, если у вас никаких сервисов на эту таблицу не завязано)

Alexey
25.03.2018
15:48:22
'DB::Exception: Block structure mismatch in MergingSorted stream: different number of columns: id Int64 Int64(size = 10), pcount Int32 Int32(size = 10), date Date UInt16(size = 10) id Int64 Int64(size = 0), pcount Int32 Int32(size = 0). '
Это не напрямую связано с LIMIT - конечно, LIMIT работает в 1.1.54370. Тем не менее, это сообщение говорит о том, что для какого-то запроса нарушена логика. Нужен пример, по которому можно будет понять, в каких случаях это происходит. Какая-то особенность конкретного запроса - например, ORDER BY без GROUP BY из Distributed, или какая-то взаимосвязь с ALIAS столбцами или ещё что-то в этом роде.

Господа, а можно выключалку встроенному переопределятору ctrl+f на странице с докой ?
А какой браузер? В Firefox ctrl+f не перехватывается - так что я даже не знал, что такая функциональность есть. Думаю, её можно будет просто выкинуть :)

Можно ее без последствий почистить, например?
Да, можно просто удалить таблицу system.query_log. Или отдельные партиции из неё.

Google
Alexey
25.03.2018
15:53:50
Если удалите таблицу query_log, то данные в неё перестанут записываться и сервер будет писать ошибки в лог до перезапуска.

Wolf
25.03.2018
15:59:11
А как легко дропнуть все записи из нее?

Ivan
25.03.2018
16:32:17
drop table TableName

можно предварительно скопировать структуру таблицы в другую временную таблицу, а потом вернуть, если нужно почистить содержимое таблицы без удаления самой таблицы

Nikita
25.03.2018
18:46:34
Есть ли разница по скорости вычисления uint8 столбец или uint64 (например посчитать среднее)? Мне подсознание говорит что меньше объем данных — быстрее вычисления. Но современные процессоры со всякими своими оффсетами могут со мной не согласится.

Andrey
25.03.2018
19:54:11
Есть ли разница по скорости вычисления uint8 столбец или uint64 (например посчитать среднее)? Мне подсознание говорит что меньше объем данных — быстрее вычисления. Но современные процессоры со всякими своими оффсетами могут со мной не согласится.
Есть и сильная. Мы на наших данных сначала не правильно заехали. Взяли типы с запасом. Потом откорректировали типы под наши числа и был ощутимый профит как по памяти так и по скорости.

Alexey
25.03.2018
22:28:14
Есть ли разница по скорости вычисления uint8 столбец или uint64 (например посчитать среднее)? Мне подсознание говорит что меньше объем данных — быстрее вычисления. Но современные процессоры со всякими своими оффсетами могут со мной не согласится.
Для того, чтобы обработать данные, обычно нужно по крайней мере по ним пройти. Поэтому UInt8 будет эффективнее - проходить по меньшему объёму данных в оперативке или в кэше. Хотя иногда бывает, что разница совсем небольшая.

Артемий
26.03.2018
05:37:34
Всем привет. Хотелось бы попасть на "Я.Субботник по базам данных" на этой неделе. Можно как-то увеличить вероятность одобрения завявки?

Kirill
26.03.2018
05:41:35
Можно это отключить и почистить?
Можно партиции удалять, это обычная MergeTree таблица. Можно выставить log_queries в 0 и дропнуть таблицу

Stanislav
26.03.2018
07:06:09
После дизастера с зукипером и последующего восстановления (пришлось прибить лог зукипера и восстанавливать только со снапшота, затем аттачить партишны, которые посыпались в detached) вижу в логах зукипера много такого: NoNode for /clickhouse/tables/01/telegraf_disk/block_numbers/201803/block-0001874180 На работе кликхауса на первый взгляд никак не отражается, но неаккуратненько как-то. Насколько это страшно и что с этим принято делать?

Stanislav
26.03.2018
07:14:17
Предыстория - zookeeper объявил себя read-only. После рестарта начал бесконечно перечитывать свой снапшот + лог.

Почему объявил - непонятно, в логах по этому поводу единственный эксепшн: 2018-03-24 08:20:46,955 - WARN [RecvWorker:3:QuorumCnxManager$RecvWorker@810] - Connection broken for id 3, my id = 1, error = java.io.EOFException at java.io.DataInputStream.readInt(DataInputStream.java:392) at org.apache.zookeeper.server.quorum.QuorumCnxManager$RecvWorker.run(QuorumCnxManager.java:795) 2018-03-24 08:20:46,956 - WARN [RecvWorker:3:QuorumCnxManager$RecvWorker@813] - Interrupting SendWorker 2018-03-24 08:20:46,957 - WARN [SendWorker:3:QuorumCnxManager$SendWorker@727] - Interrupted while waiting for message on queue java.lang.InterruptedException at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.reportInterruptAfterWait(AbstractQueuedSynchronizer.java:2014) at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2088) at java.util.concurrent.ArrayBlockingQueue.poll(ArrayBlockingQueue.java:418) at org.apache.zookeeper.server.quorum.QuorumCnxManager.pollSendQueue(QuorumCnxManager.java:879) at org.apache.zookeeper.server.quorum.QuorumCnxManager.access$500(QuorumCnxManager.java:65) at org.apache.zookeeper.server.quorum.QuorumCnxManager$SendWorker.run(QuorumCnxManager.java:715) 2018-03-24 08:20:46,957 - WARN [SendWorker:3:QuorumCnxManager$SendWorker@736] - Send worker leaving thread

M
26.03.2018
07:16:24
а сколько у вас в кластере зукипера серверов?

Stanislav
26.03.2018
07:16:27
3

M
26.03.2018
07:16:40
все живы были при этом?

Stanislav
26.03.2018
07:16:43
да

Эксепшн был на всех примерно в одно и то же время

Jack
26.03.2018
07:32:16
Всем привет. Помогите пожалуйста. Есть большой запрос. Мне нужно сгруппировать записи если их больше 1 по часам. Но если запись одна то вывести значение ReceiveDate из этой записи. И как я понимаю, дергать каждый раз такой большой запрос - не правильно. Подскажите, каким образом можно оптимизировать такую работу. SELECT toHour(toDateTime(toUnixTimestamp(ReceiveDate) + 14400)) + 1 as "Index", MIN(UpperValue) as MinUpper, MAX(UpperValue) as MaxUpper, MIN(LowerValue) as MinLower, MAX(LowerValue) as MaxLower, minIf(HeartRate, HeartRate > 0) as MinHeartRate, maxIf(HeartRate, HeartRate > 0) as MaxHeartRate FROM default.TestTable WHERE ReceiveDate >= toDateTime('2018-01-12T07:38:46') AND SubjectId = 2 GROUP BY toHour(toDateTime(toUnixTimestamp(ReceiveDate) + 14400)) ORDER BY toHour(toDateTime(toUnixTimestamp(ReceiveDate) + 14400))

Ivan
26.03.2018
07:35:07
Можно партиции удалять, это обычная MergeTree таблица. Можно выставить log_queries в 0 и дропнуть таблицу
Вот я об этом и спрашивал. Если я с самой таблицей system не работаю - мне этот дроп и отключение log_queries ничем не аукнется?

Google
M
26.03.2018
07:36:10
Эксепшн был на всех примерно в одно и то же время
Скажите, а долго ли ждали прежде чем перезугрзили инстанс с id=1? Я о том, что может нужно было еще подождать пока он сам не выбрал бы лидера?

Ivan
26.03.2018
07:37:14
Нет, ничем.
спасибо!

Stanislav
26.03.2018
07:38:29
Не думаю, что выборы лидера длились бы столько времени.

Ivan
26.03.2018
07:39:13
Нет, ничем.
А можно ее дропать или просто почистить и выставить параметр в 0?

Kirill
26.03.2018
07:40:08
А можно ее дропать или просто почистить и выставить параметр в 0?
Можно просто дропнуть, но если запросы будут идти от пользователя с log_queries=1 она снова будет создана

Kirill
26.03.2018
07:42:35
а для каких целей она вообще создается?
Можно смотреть: какие запросы выполнялись, сколько времени заняли, от какого пользователя, какие ошибки и т.д..

Kirill
26.03.2018
07:43:45
а для каких целей она вообще создается?
Например можно Графаной подцепиться https://grafana.com/dashboards/2515

Wolf
26.03.2018
08:14:19
А вот при обновлении с оф репо на убунту 16.04 сервер автоматом не перезапускается и работает на старой версии, это так задумано ?

Wolf
26.03.2018
08:18:30
очень странная задумка

Alexander
26.03.2018
08:19:12
Не моя. Сожрало всю память и рухнуло. Думал, я один такой.

Wolf
26.03.2018
08:20:44
Такой проблемы не наблюдаю, сказать честно ничего в логах про запуск второго нового кликхауса тоже не наблюдаю

prll
26.03.2018
08:20:53
очень странная задумка
предпологается что автоматический рестарт сервера может навредить кому-нибудь

Wolf
26.03.2018
08:21:42
ну тут мне кажется скорее плохое решение чем даже среднее

Google
Deance
26.03.2018
08:24:40
Всем привет, а есть ли у кликхауза возможность принудительно обновить внешние словари?

Alexander
26.03.2018
08:25:08
У меня раз в пол минуты шла ошибка в лог. Рестарт сервиса ни к чему хорошему не проводил. Я сварщик не настоящий, смог только грохнуть старый совсем.

Kirill
26.03.2018
08:28:28
А вот при обновлении с оф репо на убунту 16.04 сервер автоматом не перезапускается и работает на старой версии, это так задумано ?
Так и должно быть, поэтому, например, постгресовые дбашники плачут от официальных deb пакетов которые рестартять сервис )

Deance
26.03.2018
08:34:33
Спасибо!

SYSTEM RELOAD DICTIONARIES

Artiom
26.03.2018
08:45:53
Всем добрый день. Есть вопрос: как избавиться от дублирующихся по primary key записей? Пример: есть данные, которые грузятся из разных источников, но они могут дублироваться по первичному ключу, в конечном счёте в clickhouse должна остаться только одна запись для каждого первичного ключа

Artiom
26.03.2018
08:52:12
Спасибо, изучу. Но есть вероятность, что данные в момент формирования запроса могут быть по прежнему с дублями

Правильно я понимаю?

Kirill
26.03.2018
08:53:59
Да, есть. Вообще вариантов много: можно движками пользоваться, можно LIMIT N BY и т.д. смотрите что для вас лучше

Wolf
26.03.2018
08:54:03
Так и будет

Artiom
26.03.2018
08:54:49
И на сколько вижу, нужно знать, что запись новая или старая, а это не совсем наш use case, записи все актуальные, но нужна только одна.

Artiom
26.03.2018
08:56:54
Про limit by?

Kirill
26.03.2018
08:58:52
Про limit by?
Можно https://clickhouse.yandex/docs/en/single/#limit-n-by-clause

Artiom
26.03.2018
08:59:09
Благодарю

prll
26.03.2018
09:12:21
Так и должно быть, поэтому, например, постгресовые дбашники плачут от официальных deb пакетов которые рестартять сервис )
ну на самом деле лучше всего сделать опцию которая будет настраиваться через /etc/default/clickhouse но по умолчанию рестарта не будет

Vsevolod
26.03.2018
09:20:03
┌─url──────────────────────────────────────────────────────────┐ │ https://seo.miraiserver.com/redirect.php?url=http://?????.ᴿ? │ └──────────────────────────────────────────────────────────────┘

Google
Vsevolod
26.03.2018
09:20:16
а откуда у меня вот это вот zalgo вместо utf8?

гм, похоже, это спамеры так idn эксплуатируют, вопрос снимается

Jack
26.03.2018
10:01:51
Можно ли вернуть COUNT() для определенного запроса?

Ilya
26.03.2018
10:18:41
Count(*)

Jack
26.03.2018
10:20:53
Это будет одно и тоже что и COUNT() ? я не могу понять разницу

Ilya
26.03.2018
10:24:59
Андрей
26.03.2018
11:06:42
Хочу в докер-образ КХ добавить установку id пользователя и группы clickhouse, переданные в переменных окружения. Это нужно для того, чтобы при запуске контейнера монтировать не отдельные файлы конфигов, а папку с конфигами (и чтобы у КХ были права на запись в эту папку). Примете подобный PR?

prll
26.03.2018
11:08:01
Давай посмотрим

Michal
26.03.2018
11:09:01
Это будет одно и тоже что и COUNT() ? я не могу понять разницу
count() это синтаксис, который поддерживается в ClickHouse, а count(*) - это часть стандарта SQL. Насколько я понимаю count(*) - добавлено в ClickHouse чтобы проще было при переходе и при использовании всяких стандартных утилит. Результат count() и count(*) - тот же самый.

Ivan
26.03.2018
11:39:22
Господа, а truncate в КХ не предусмотрен?

Konstantin
26.03.2018
11:47:45
вроде был же truncate, вот буквально на той неделе сталкивался

Ievgen
26.03.2018
11:55:30
Всем привет, есть вопрос - есть ли какие либо встроенные методы программного управления базами таблицами - версионирование схемы итд итп, или все за пределами KX? автоматизирую этот процесс и вот решил на всякий случай уточнить. Спасибо.

Страница 470 из 723