@clickhouse_ru

Страница 491 из 723
papa
10.04.2018
17:12:47
еще 70 лет, живем. видимо начали секунды считать как uint.

Denis
10.04.2018
17:26:21
ОК, отлично, но вообще 70 лет хватит не всем (Desperate gas producers sign 100-year shipping deals....).

Alexander
10.04.2018
17:27:45
если Газпром заюзаеют CH, тогда придется подумать )

LeiDruid
10.04.2018
17:31:59
1.1.54310 Диапазон значений типов Date и DateTime расширен до 2105 года.
гораздо хуже, что он начинается с 1970 года

Google
Mitrofanov
10.04.2018
17:50:26
Здравствуйте! Есть таблица типа Memory. После удаления таблицы память не освобождается. Только после перезапуска сервера. Это баг или фича? Или есть возможность покрутить конфигурацию, что бы память срузу освобождалась. ClickHouse server version 1.1.54370

Denis
10.04.2018
18:01:05
Здравствуйте! Есть таблица типа Memory. После удаления таблицы память не освобождается. Только после перезапуска сервера. Это баг или фича? Или есть возможность покрутить конфигурацию, что бы память срузу освобождалась. ClickHouse server version 1.1.54370
скорее всего фича. Кстати какая память? Вот пример из top PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 3189 clickho+ 20 0 0.105t 0.022t 40820 S 1480 12.0 48474:04 clickhouse-serv Я бы на VIRT столбик вообще не смотрел, т.е. реально КХ занимает 0.022TБ.

Mitrofanov
10.04.2018
18:15:03
скорее всего фича. Кстати какая память? Вот пример из top PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 3189 clickho+ 20 0 0.105t 0.022t 40820 S 1480 12.0 48474:04 clickhouse-serv Я бы на VIRT столбик вообще не смотрел, т.е. реально КХ занимает 0.022TБ.
Нет, вроде физическая До добавления таблицы PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 3928 clickho+ 20 0 1819520 1,029g 38588 S 0,0 6,6 0:04.20 /usr/bin/clickhouse-server —config=/etc/clickhouse-server/config.xml После добавления таблицы PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 3928 clickho+ 20 0 1844096 1,170g 42748 S 0,0 7,5 0:05.80 /usr/bin/clickhouse-server —config=/etc/clickhouse-server/config.xml После drop table PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 3928 clickho+ 20 0 1844096 1,169g 42748 S 0,3 7,5 0:05.89 /usr/bin/clickhouse-server —config=/etc/clickhouse-server/config.xml З.Ы. Таблица мелкая - 3KK строк.

Denis
10.04.2018
18:25:46
1,169g ну по-моему это нормально, это не отдаст, чтобы не перезапрашивать. Можно смотреть SELECT metric, formatReadableSize(value) FROM system.asynchronous_metrics where (metric LIKE 'generic%') сколько показывает generic.current_allocated_bytes, должно быть около 1,169 (не отличаться в разы)

Alexey
10.04.2018
18:45:47
нужно ли что-то делать если селект висит и висит и не отваливается

kill не помогает

elapsed: 13608.366977925

вроде не мешает...

'waiting' - запросу отправлен сигнал завершения, ожидается его остановка; и так 3 часа уже

Mitrofanov
10.04.2018
18:52:09
1,169g ну по-моему это нормально, это не отдаст, чтобы не перезапрашивать. Можно смотреть SELECT metric, formatReadableSize(value) FROM system.asynchronous_metrics where (metric LIKE 'generic%') сколько показывает generic.current_allocated_bytes, должно быть около 1,169 (не отличаться в разы)
Прямо после drop'a generic.heap_size 1.25 GiB generic.current_allocated_bytes 1.14 GiB Через секунд 30 generic.heap_size 1.25 GiB generic.current_allocated_bytes 23.54 MiB Это он оказывается для heap'а держит. Спасибо за консультацию.

Michal
10.04.2018
19:44:11
а если в какой-нибудь vim-mcedit вставлять то все норм ?
угу. По ощущениям - это связано в первую очередь со сложностью запроса, во вторую очередь с размером. Т.е. тривиальные большие запросы без проблем из буфера вставляются, а нетривиальные большие - часто портятся при вставке. Попробую сделать воспроизводимый пример.

prll
10.04.2018
19:46:37
'waiting' - запросу отправлен сигнал завершения, ожидается его остановка; и так 3 часа уже
Снять трейс всех тредов через gdb и показать - sudo apt install clickhouse-common-dbg gdb sudo gdb -ex run -batch -ex 'set pagination off' -ex "set logging file gdb.log" -ex 'set logging on' -ex 'continue' -ex 'thread apply all backtrace' -ex 'detach' -ex 'quit' -p $(pidof clickhouse-server)

и версию сервера конечно

Google
Alexey
10.04.2018
20:42:14
спс, если до завтра висеть будет, сделаю

пока висит :)

Slach
11.04.2018
04:19:06
Всем кому интересно как мониторить Clickhouse встроенными в CH средствами собрал демо-стенд https://github.com/Slach/clickhouse-metrics-grafana планирую улучшать Dashboards и добавить Moira Alerts и попробую все таки написать документацию

Jen
11.04.2018
04:20:21
Интересно, надо будет прикрутить к себе, спасибо

Andron
11.04.2018
06:23:08
Подскажите пожалуйста, CH из коробки, столбец с часто повторяющимися значениями Строки, создает ли CH под капотом какой-то словарь по столбцу для улучшения производительности, отъедает ли эта оптимизация оперативки у системы для дальнейшего отображения резулататов запроса? Спасибо

Wolf
11.04.2018
06:24:27
не создает

в целом все данные пожаты, тем более повторяющиеся

Andron
11.04.2018
06:25:49
спасибо!

Serge
11.04.2018
07:07:26
Друзья, приветствую! подскажите, есть ли аналог mysql функции bit_count? (не нашел в доке) нужно посчитать расстояние Хэмминга по симхешу

?
11.04.2018
07:15:17
или это два разных дашборда?

а, у меня через прометеус все тянется, это не подойдет, похоже

Andrew
11.04.2018
09:46:15
Добрый день друзья прочитав доку по КХ и посмотрев как делаются там бекапы верно ли я понимаю что можно удалить /var/lib/clickhouse/shadow/ после копирования и сам КХ не сломается? подскажите пожалуйста

Andrew
11.04.2018
10:01:39
а зачем удалять?
ну потому-что я скопировал на другой сервер локально бекапы ненужны

Andrew
11.04.2018
10:14:25
Артемий
11.04.2018
10:14:50
а почему лучше оставить
Если будете делать бекапы еще, они будут складыватсья в эту папку

Я не уверен, что CH сам ее создаст

Andrew
11.04.2018
10:16:08
спасибо огромное за помощь

Google
Alexander
11.04.2018
10:39:11
Привет! Подскажите, кто знает Например, есть таблица, где три колонки(date, value, type) И в type есть три возможных значения Как теперь это таблицу "транспонировать", чтобы эти три возможных значения стали новыми колонками? Как нибудь по-простому можно?

Serge
11.04.2018
10:43:46
привет, у меня типа такого insert into agg_table (url_hash, count_in_301_redirects, count_in_3xx_redirects, count_in_canonicals) SELECT url_hash, sumIf(value, vtype = 1) AS count_in_301_redirects, sumIf(value, vtype = 2) AS count_in_3xx_redirects, sumIf(value, vtype = 3) AS count_in_canonicals from raw_table

Ivan
11.04.2018
10:44:06
Привет! Подскажите, кто знает Например, есть таблица, где три колонки(date, value, type) И в type есть три возможных значения Как теперь это таблицу "транспонировать", чтобы эти три возможных значения стали новыми колонками? Как нибудь по-простому можно?
судя по справке все манипуляции с данными делаются через INSERT INTO table2 SELECT * FROM table1, т.е. перебросом в созданную таблицу по заданным критериям, а потом заменой исходной. Могу ошибаться, но ничего более подходящего не видел

Alexander
11.04.2018
10:45:27
Окей, всем спасиб)

papa
11.04.2018
10:58:40
Друзья, приветствую! подскажите, есть ли аналог mysql функции bit_count? (не нашел в доке) нужно посчитать расстояние Хэмминга по симхешу
судя по SELECT * FROM system.functions WHERE name LIKE '%bit%'функции нет, но ее должно быть несложно добавить, можете сделать задачу об этом.

а пока можно на простом sql попробовать тот кусок из hacker's delight реализовать.

Alexander
11.04.2018
11:06:54
новыми колонками в структуре или выводе select?
Я может не совсем правильно объяснил что хочу Но вот как сейчас : date | value | type ------------------- 1 | 10 | 1 1 | 15 | 2 1 | 20 | 3 И как я хочу : date | type_1 | type_2 | type_3 ------------------------------ 1 | 10 | 15 | 20

Alexey
11.04.2018
11:07:19
если у вас имя колонки содержится в значении type, то по-простому никак

Alexander
11.04.2018
11:11:14
Я так и думал( Ну ладно, спасибо

Slach
11.04.2018
11:15:34
а, у меня через прометеус все тянется, это не подойдет, похоже
для тех у кого тянется через прометеус уже есть дашборды от fl1egor

?
11.04.2018
11:15:49
ага, ну я думал там что-то другое

Slach
11.04.2018
11:16:35
ага, ну я думал там что-то другое
там будет другого со временем, если руки дойдут

Павел
11.04.2018
11:22:32
Приветствую , работали с командой в CH , но он упал , при вызове комманды : clickhouse-client --password ... выдает ошибку : code: 210. BD:netexception: connection refused: (localhost: 9000, ::1) проверили этот порт ничем другим не занят, конфиги отредактировали (так что содержит и :: и ::1). Как запустить ?

Павел
11.04.2018
11:33:40
Жека
11.04.2018
11:45:12
Подскажите пожалуйста функцию, для вычисления интервала между датами

Jen
11.04.2018
11:45:34
через таймстамп?

Google
Жека
11.04.2018
11:45:46
да

Jen
11.04.2018
11:49:16
это было предложение)

Alex
11.04.2018
11:49:37
select toDate('2018-02-01') - toDate('2018-01-01') не?)

Жека
11.04.2018
11:51:18
Спасибо

zVlad
11.04.2018
12:22:46
Помогите с запросом. Aggregate function sum(Click) is found in WHERE or PREWHERE in query IN:SELECT SiteId, (View) as views, sum(Click) as clicks FROM t.events WHERE clicks=150 group by SiteId FORMAT JSON Как его составить, что бы небыло такой ошибки?

Kirill
11.04.2018
12:24:28
У ClickHouse с алиасами столбцов нужно быть осторожнее и не называть их также как и колонки

zVlad
11.04.2018
12:24:43
Подзапрос?
Думал, но не сильно ли нагрузит базу?

Алиасы не совпадают с названием колонок

Kirill
11.04.2018
12:25:39
Совпадают

clicks

zVlad
11.04.2018
12:26:22
sum(Click) as clicks не совпадают

Kirill
11.04.2018
12:28:00
where clicks = 150 ? Если хотите повесить условие на выполнение агрегатной функции то используйте HAVING

Konstantin
11.04.2018
12:28:13
having clicks = 150 не пробовали?

zVlad
11.04.2018
12:28:36
Пробовал HAVING. Тоже ничего

Kirill
11.04.2018
12:30:38
Значит неправильно пробовали SELECT SiteId, (View) as views, sum(Click) as clicks FROM t.events group by SiteId having clicks=150

Konstantin
11.04.2018
12:31:37
:) select game_id, sum(user_id) as sm from event_log group by game_id having sm = 6; SELECT game_id, sum(user_id) AS sm FROM event_log GROUP BY game_id HAVING sm = 6 ┌─game_id─┬─sm─┐ │ 186 │ 6 │ └─────────┴────┘ 1 rows in set. Elapsed: 0.279 sec. Processed 7.95 million rows, 63.57 MB (28.52 million rows/s., 228.17 MB/s.)

zVlad
11.04.2018
12:34:33
Спасибо! Но что то всеравно не так как мне надо )))

Andron
11.04.2018
12:49:09
Подскажите пожалуйста что делать в случае <Debug> MergeTreeReadPool: Slow read, event №1. ? Запрос просто выгребает данные за весь день, дата в индексе

M
11.04.2018
12:53:30
ничего не делать. Если у вас много потоков на чтение, то с каждым таким событием он будеи их уменьшать. Можете это запретить настройкой. Это значит что во время чтнения анализатор говорит что уж слижком медленно, и наверное высокая нагрузка на диск, и тем самым уменьшает в дальнейшем кол-во потоков на чтение

Google
M
11.04.2018
12:54:58
если интересно, посмотрите параметр read_backoff_min_latency_ms

если выставить его в ноль, то clickhouse не будет уменьшать кол-во потоков на чтенние

M
11.04.2018
13:10:08
Можно полагать, что SSD будут в этом случае показывать лучше результаты против HDD?
в любом случае да. но тут многое зависит от кол-ва одновременных запросов и прочего. Если завысить max_threads то и SSD будет тормозить

Andron
11.04.2018
13:11:13
спасибо за ответы

M
11.04.2018
13:13:17
впрочем, если контролируете кол-во одновременных запросов (например через chproxy) и знаете что дисковую подсистему можно подгрузить то можно поиграться с read_backoff_max_throughput и read_backoff_min_interval_between_events_ms. И выставить так, чтобы чтнение было с max_threads как можно дольше

Anton
11.04.2018
13:24:16
Добрый день. Имеется 3 таблицы, а именно связка Kafka -> MaterializedView -> MergeTree (все по официальной документации) SQL таблиц следующий: -- ClickHouse table CREATE TABLE IF NOT EXISTS webrtc_stats_audio_received_kafka ( timestamp UInt64, clientPlatform String, clientId String, appVersion String, conferenceId String, participantId String, trackId String, audioDelay UInt16, audioDelayDiff UInt16, isHighAudioDelayDiff UInt8 ) ENGINE = Kafka('localhost:9092', 'webrtc_stats_audio_received', 'webrtc_stats_audio_received_clickhouse', 'JSONEachRow'); -- ClickHouse table CREATE TABLE IF NOT EXISTS webrtc_stats_audio_received_merge_tree ( date Date, timestamp UInt64, clientPlatform String, clientId String, appVersion String, conferenceId String, participantId String, trackId String, audioDelay UInt16, audioDelayDiff UInt16, isHighAudioDelayDiff UInt8 ) ENGINE = MergeTree(date, (trackId, date), 8192); -- ClickHouse table CREATE MATERIALIZED VIEW IF NOT EXISTS webrtc_stats_audio_received_materialized_view TO webrtc_stats_audio_received_merge_tree AS SELECT toDate(timestamp) AS date, toUInt64(round(timestamp / 1000000)) AS timestamp, clientPlatform, clientId, appVersion, conferenceId, participantId, trackId, audioDelay, audioDelayDiff, isHighAudioDelayDiff FROM webrtc_stats_audio_received_kafka; При отсутствии записи в кафка топик в логах вижу достаточно частые пары логов: clickhouse_1 | 2018.04.11 13:15:53.353265 [ 26 ] <Debug> StorageKafka (webrtc_stats_audio_received_kafka): Started streaming to 1 attached views clickhouse_1 | 2018.04.11 13:15:57.855020 [ 26 ] <Debug> StorageKafka (webrtc_stats_audio_received_kafka): Stopped streaming to views При непрерывной записи данных в кафка топик (где-то раз в секунду) вижу только clickhouse_1 | 2018.04.11 13:15:53.353265 [ 26 ] <Debug> StorageKafka (webrtc_stats_audio_received_kafka): Started streaming to 1 attached views а стоппед стриминг не появляетс. Причем данные в мердж три не появляются. И только после того, как я прекращаю запись в кафка топик, в логах внезапно появляется clickhouse_1 | 2018.04.11 13:25:57.865020 [ 26 ] <Debug> StorageKafka (webrtc_stats_audio_received_kafka): Stopped streaming to views а также в мердж три появляются все "накопленные" вьюхой данные. Как будто активная запись в кафка таблицу заставляет вьюшку накапливать и ждать окончание записи в кафка таблицу. Использую докер, версия ClickHouse, на которой появились проблемы: 1.1.54370 До этого все предположительно работало на версии 1.1.54327 Настройки выглядят верно: max_block_size │ 65536 и stream_flush_interval_ms │ 7500 Спасибо!

Anton
11.04.2018
14:08:39
Здравствуйте Пытаемся восстановиться после потери железного хоста по инструкции: https://clickhouse.yandex/docs/ru/table_engines/replication/#_4 На хосте жил 1 из 3х Zookeeper и 1 из 4х ClickHouse - будем считать, что это реплика одного шарда Zookeeper был просто переустановлен КХ после выполнения процедуры вроде ожил Но количество записей (ReplicatedMergeTree, count(*)) в нем и в его реплике _больше_ того, что было ранее Причем логи полны всяких разных записей, самые удивительные это <Debug> executeQuery: (from 192.168.0.43:56604) INSERT INTO events ... Этот INSERT с "соседа"

Подскажите пожалуйста хотя бы куда копать

M
11.04.2018
14:12:17
IP / настройки макросов / хостнейм такие же как и были?

Anton
11.04.2018
14:12:28
Да

Все ставили из пакетов (своих)

M
11.04.2018
14:13:49
А Insert с "соседа". "Сосед" это другой шард?

или реплика?

Anton
11.04.2018
14:37:26
А Вы знаете, "сосед" - это хост, на котором была вставка в Distributed-таблицу. Клиенты все отключены (вроде как). Это может быть очередь записи?

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