@clickhouse_ru

Страница 713 из 723
Se
22.10.2018
12:14:55
хостнеймы в конфиге указал. не помогло

а такой вопрос еще <macros> <shard>01</shard> <replica>hostnsme</replica> </macros>

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

Google
Se
22.10.2018
12:16:46
вроде все верно тогда ((

daria
22.10.2018
12:17:12
у кого-нибудь есть в последнее время проблемы с выгрузкой из метрики скриптом по крону? 15 часов выполняется в субботу, потом отваливается и перестает

Григорий
22.10.2018
12:21:19
а такой вопрос еще <macros> <shard>01</shard> <replica>hostnsme</replica> </macros>
моя конфигурация: <zookeeper> <node index="1"> <host>01-zookeeper</host> <port>2181</port> </node> <node index="2"> <host>02-zookeeper</host> <port>2181</port> </node> <node index="3"> <host>03-zookeeper</host> <port>2181</port> </node> </zookeeper> <macros> <shard>01</shard> <replica>{{ inventory_hostname }}</replica> </macros> {{ inventory_hostname }} - это ансибл хостнейм подставляет уже. 2 сервера, на каждом такая конфигурация. перезапустил кликхаусы и создал таблицу. Ну и ЗК должен быть предварительно настроен как кластер

Se
22.10.2018
12:22:21
спасибо, все похоже. но чтото не то. дебажим )

Kirill
22.10.2018
12:23:03
тут должен быть один и тот же хостнейм или на каждом сервере свой?
При регистрации КХ пишет хостнейм машины в Zookeeper, в конфиге нужно было указывать в interserver_http_host

То что написано в макросах никак не влияет на адреса машин для репликации

Se
22.10.2018
12:24:23
<interserver_http_host>example.yandex.ru</interserver_http_host>

это плохо?

Григорий
22.10.2018
12:25:20
спасибо, все похоже. но чтото не то. дебажим )
можно ещё ЗК посмотреть, действиьельно ли настроен как кластер. на любой ноде выполни: telnet localhost 2181 stats если строка Mode: standalone - значит не настроен.

Se
22.10.2018
12:25:27
а оно закомменчено

Mode: leader

Mode: follower

соответснвенно на первом и втором

Google
Григорий
22.10.2018
12:26:13
ну вроде ок, да

правда ему нечетное кол-во нужно для кластера

Denys
22.10.2018
12:34:21
docker-compose.yml: command: cat /tmp/initdb.sql | xargs -I {} clickhouse-client --host clickhouse --query={} Ответ: clickhouse-init_1 | cat: invalid option -- 'I' clickhouse-init_1 | Try 'cat --help' for more information.

wtf

Roman
22.10.2018
12:46:43
Добрый день! А кто-нибудь сталквался с тем, что в лог выпадает такая ошибка DB::Exception: Attempt to read after eof в исходниках глянул, там может быть много мест, где это может выкинуть. Проявляется это не всегда. И получаешь это в datagrip. Ошибки стали выпадать, когда обновил до последней версии. До этого работало норм

Roman
22.10.2018
12:53:36
привет. Сталкивался, когда забыл в group by поле добавить, возможно еще каки-то кейсы были, но точно не вспомню
Думаю не в этом дело. Забыл указать, что это случилость, после того как обновил до последней версии

Vladislav
22.10.2018
13:34:58
Всем привет. Во время переездов\обновления кликхауса, разошлись данные в репликах. Различаются данные только за 1 минуту. В одной реплике 15к события, в другой реплике 30к В логах были ошибки Part … is lost forever. Вопрос, как заставить кликхаус синкнуть таблицы?

Kirill
22.10.2018
13:43:15
DETACH/ATTACH партиции \

Vladislav
22.10.2018
13:44:46
а он сам не должен восстановить их?

сделали optimize table, расхождение стало еще больше

Kirill
22.10.2018
13:51:06
а он сам не должен восстановить их?
Должен, но если вы уверены что одна из реплик - ОК, сделайте на ней детач, он реплицируется, после атача куски снова зарегистрируются в ZK и КХ их быстро растащит по репликам

Vladislav
22.10.2018
13:52:47
не уверены

optimize final - норм план?

2018.10.22 16:54:41.529740 [ 95 ] {7619ace6-4088-4ff9-9dab-fd01d7bcc3ac} <Information> (StorageReplicatedMergeTree): Cannot select parts for optimization: There are 5 parts (from 20181008_20181022_76869_76886_2 to 20181022_20181022_76898_76898_0) that are still not present on this replica between 20181008_20181022_76802_76868_3 and 20181008_20181022_76899_77001_3

Вот так отвечает на optimize final

Kirill
22.10.2018
13:59:23
optimize final - норм план?
Норм, только вот КХ видит что у вас кусок из середины потерян и не хочет мержить, можете партицию пофризить и на таблице с такой же структурой атачнуть и поиграться

Vladislav
22.10.2018
14:00:58
а он разве не должен, скачать с другой репликой более полный кусок, который покроет эту дырку?

Сделает ли он что-то сам? Или все-таки нужно ручное вмешательство?

Kirill
22.10.2018
14:04:21
По идее руками ничего не нужно делать и он уже, пока мы тут говорим, скачать его. Если этого не произошло то, скорее всего, придется помочь

Google
Vladislav
22.10.2018
14:05:25
не произошло. Ошибок в логах нет

Kirill
22.10.2018
14:09:35
А в папке детач для данной таблице что у вас? Он просто так куски не удаляет, если что-то пошло не так они могут оказаться там. Но все равно это ситуация не очень, мягко скажем

Vladislav
22.10.2018
14:10:41
в папке детач есть много кусков

У нас основной косяк был с тем, что в макросе replica на двух серверах было одно значение

Kirill
22.10.2018
14:12:15
У нас основной косяк был с тем, что в макросе replica на двух серверах было одно значение
Понял, да, это может сильно заафектить. В Zookeeper некоректные реплики почистили?

Vladislav
22.10.2018
14:12:52
нет. Оба КХ смотрели в одну папку ЗК(одно и тоже значение)

т.е. хз что чистить

по папке detach [root@ch0 ~]# cd /var/lib/clickhouse/data/../…/detached/ [root@ch0 detached]# ls -latr total 164 drwxr-xr-x 2 clickhouse clickhouse 4096 Oct 22 15:06 unexpected_20181022_20181022_76897_76897_0 drwxr-xr-x 2 clickhouse clickhouse 4096 Oct 22 15:07 unexpected_20181022_20181022_76898_76898_0 drwxr-xr-x 2 clickhouse clickhouse 4096 Oct 22 16:38 unexpected_20181022_20181022_76892_76896_1 drwxr-xr-x 2 clickhouse clickhouse 4096 Oct 22 16:38 unexpected_20181022_20181022_76887_76891_1 drwxr-xr-x 2 clickhouse clickhouse 4096 Oct 22 16:38 unexpected_20181008_20181022_76869_76886_2

attach сделать им?

Kirill
22.10.2018
14:15:03
Vladislav
22.10.2018
14:39:58
2018.10.22 17:27:01.697987 [ 21419 ] {0ebe578f-4df8-45eb-afb3-9b795fa86d60} <Error> executeQuery: Code: 226, e.displayText() = DB::Exception: No columns in part 20181003_20181022_0_4479_3801, e.what() = DB::Exception (from [::1]:43293) (in query: alter table ATTACH PART '20181003_20181022_0_4479_3801'), Stack trace: Попробьовали для другоой табличке с такими же симтомами. В итоге ошибка + КХ удалил папку из detached

Denis
22.10.2018
14:57:19
Приветствую! Подскажите, пожалуйста, какую схему лучше использовать. У нас 2 типа данных: метрики, которые постоянно накапливаются, которые можно записать в SummingMergeTree, и метрики, которые периодически будут перезаписываться, скорее всего будут записаны в ReplacingMergeTree. Ключи этих двух таблиц пересекаются (есть составной уникальный ключ, одинаковый для обеих таблиц). Мы хотим использовать одну общую таблицу для хранения всех метрик. Скорее всего, для этого также подойдет ReplacingMergeTree. Данные из двух таблиц мержатся несколько раз в час во временную таблицу, после чего копируются в общую таблицу. Но после этого, чтобы получать корректные данные из общей таблицы, нужно делать SELECT с использованием FINAL. Такие запросы выполняются очень долго. Также, после optimize в общей таблице остаются дубликаты. Как можно улучшить эту схему? Использовать для общей таблицы CollapsingMergeTree? Джойнить данные без общей таблицы? Есть лучшее решение?
https://gist.github.com/den-crane/49ce2ae3a688651b9c2dd85ee592cb15

Konstantin
22.10.2018
15:06:31
а есть в планах снятие с pointInPolygon ограничения на константность многоугольника?

Evgeniy
22.10.2018
15:12:15
Приветствую! Подскажите, в ClickHouse реально реализовать рекурсивные запросы? Связка id <— —> parent_id ?

Alex
22.10.2018
15:19:03
WITH RECURSIVE нет, но может быть в вашей задаче будут полезны иерархические словари https://clickhouse.yandex/docs/ru/query_language/functions/ext_dict_functions/#dictisin

Константин
22.10.2018
19:47:03
народ, поскажите

имеется куча файлов, дампов запросов из КХ

надо эти данные вставить в КХ

в кажом файле 1 запрос на вставку, с кучей values

Google
Константин
22.10.2018
19:49:00
пробовал так: cat filter_xzedk | clickhouse-client -h 127.0.0.1 --query Bad arguments: the required argument for option '--query' is missing

Denis
22.10.2018
19:49:01
типа cat file* |clickhouse-client -mn

Константин
22.10.2018
19:55:19
спасибо

Pavel
22.10.2018
20:40:27
Hi :)

Андрей
22.10.2018
20:46:08
Подскажите, поменял пароль у юзера, но видимо некоторые данные не успели записаться в кластер и теперь в лог валится ошибка: DB::Exception: Wrong password for user default Как победить?

Denis
22.10.2018
20:50:31
так а где вы поменяли пароль-то? The default user is also used for distributed query processing, if the configuration of the server or cluster doesn't specify the user and password (see the section on the Distributed engine). https://clickhouse.yandex/docs/ru/operations/table_engines/distributed/

Denis
22.10.2018
21:07:11
Мм. Пароли не в config.xml. они в users.xml

Андрей
22.10.2018
21:08:11
Denis
22.10.2018
21:08:36
Андрей
22.10.2018
21:12:43


Я связываю эту ошибку вот с этими данными:

Красным выделен старый пароль

Pavel
22.10.2018
21:13:53
пароль с esc символами?

Андрей
22.10.2018
21:15:10
пароль с esc символами?
Я не встречал ограничений на пароль кажется, просто взял случайны, но с ним не было проблем, пока я его не поменял.

Pavel
22.10.2018
21:20:29
возможно, это не связано, но в http клиенте у нас экранирование - самая основная проблема

Vladislav
22.10.2018
21:54:02
ch0 :) select eventDate, count() from Events where eventDate = today()-1 group by eventDate SELECT eventDate, count() FROM Events WHERE eventDate = (today() - 1) GROUP BY eventDate ┌──eventDate─┬─count()─┐ │ 2018-10-21 │ 758 │ └────────────┴─────────┘ 1 rows in set. Elapsed: 3.063 sec. Processed 70.06 million rows, 140.12 MB (22.87 million rows/s., 45.75 MB/s.) ch0 :) select eventDate, count() from Events where eventDate = '2018-10-21' group by eventDate SELECT eventDate, count() FROM Events WHERE eventDate = '2018-10-21' GROUP BY eventDate ┌──eventDate─┬──count()─┐ │ 2018-10-21 │ 71963905 │ └────────────┴──────────┘ 1 rows in set. Elapsed: 0.952 sec. Processed 71.97 million rows, 143.95 MB (75.57 million rows/s., 151.15 MB/s.) ch0 :) select eventDate, count() from Events where eventDate = '2018-10-22' group by eventDate SELECT eventDate, count() FROM Events WHERE eventDate = '2018-10-22' GROUP BY eventDate ┌──eventDate─┬──count()─┐ │ 2018-10-22 │ 70056042 │ └────────────┴──────────┘ 1 rows in set. Elapsed: 0.052 sec. Processed 70.06 million rows, 140.12 MB (1.34 billion rows/s., 2.68 GB/s.) SELECT today() - 1 ┌─minus(today(), 1)─┐ │ 2018-10-22 │ └───────────────────┘ 1 rows in set. Elapsed: 0.004 sec. Структура eventDate Date

Всем привет

Почему-то после обновление КХ до последней версии сломался today()-1 в where Это нормально?)

ch0 :) select eventDate, count() from Events where eventDate = today()-1 group by eventDate SELECT eventDate, count() FROM Events WHERE eventDate = (today() - 1) GROUP BY eventDate ┌──eventDate─┬─count()─┐ │ 2018-10-21 │ 758 │ └────────────┴─────────┘ 1 rows in set. Elapsed: 0.033 sec. Processed 70.06 million rows, 140.12 MB (2.09 billion rows/s., 4.19 GB/s.) ch0 :) select eventDate, count() from Events where eventDate = yesterday() group by eventDate SELECT eventDate, count() FROM Events WHERE eventDate = yesterday() GROUP BY eventDate ┌──eventDate─┬──count()─┐ │ 2018-10-22 │ 70056042 │ └────────────┴──────────┘ 1 rows in set. Elapsed: 0.114 sec. Processed 70.06 million rows, 140.12 MB (614.55 million rows/s., 1.23 GB/s.)

Google
Vladislav
22.10.2018
22:04:30
today Принимает ноль аргументов и возвращает текущую дату на один из моментов выполнения запроса. То же самое, что toDate(now()) yesterday Принимает ноль аргументов и возвращает вчерашнюю дату на один из моментов выполнения запроса. Делает то же самое, что today() - 1. то ли дока, не дока, то ли функция поломалось

papa
22.10.2018
22:07:59
значит вчера у нас 22е, а один день назад от сегодня - 21е. но не всегда. интересно.

Alexey
22.10.2018
22:08:45
?

Vladislav
22.10.2018
22:14:29
ch0 :) select eventDate, count() from Events where eventDate = today()-1 group by eventDate settings compile_expressions = 0; SELECT eventDate, count() FROM Events WHERE eventDate = (today() - 1) GROUP BY eventDate SETTINGS compile_expressions = 0 ┌──eventDate─┬──count()─┐ │ 2018-10-22 │ 70056042 │ └────────────┴──────────┘ 1 rows in set. Elapsed: 0.069 sec. Processed 70.06 million rows, 140.12 MB (1.02 billion rows/s., 2.04 GB/s.) ch0 :) select eventDate, count() from Events where eventDate = today()-1 group by eventDate settings compile_expressions = 1; SELECT eventDate, count() FROM Events WHERE eventDate = (today() - 1) GROUP BY eventDate SETTINGS compile_expressions = 1 ┌──eventDate─┬─count()─┐ │ 2018-10-21 │ 758 │ └────────────┴─────────┘ 1 rows in set. Elapsed: 0.017 sec. Processed 70.06 million rows, 140.12 MB (4.13 billion rows/s., 8.27 GB/s.)

Почему же нам так везет, это уже пятый баг за неделю, который мы поймали в проде…:)

papa
22.10.2018
22:17:15
зато в четыре раза быстрее работает

Pavel
22.10.2018
22:19:16
пойманный баг лучше не пойманного :)

Vladislav
22.10.2018
22:37:28
значит вчера у нас 22е, а один день назад от сегодня - 21е. но не всегда. интересно.
Причем только для каждой сто тысятной записи, для остальных вообще не понятно что

Dmitry
22.10.2018
22:51:46
Как-то можно по дефолту в конфигах сервера указать compile_expressions = 0 ?

Denis
22.10.2018
22:52:31
# cat /etc/clickhouse-server/conf.d/compile_expressions.xml <?xml version="1.0"?> <yandex> <profiles> <default> <compile_expressions>0</compile_expressions> </default> </profiles> </yandex>

Dmitry
22.10.2018
22:53:47
спасибо

Denis
22.10.2018
22:54:29
перегружать не надо. Это заработает для всех новых запросов.

Vladislav
22.10.2018
23:00:54
Спасибо!

Alexander
23.10.2018
04:31:15
Доброе утро. Как лучше хранить в КХ objectId из Mongo? В каких-то случаях они используются для словаря, в кдругих как идентификаторы (например сессии)?

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