@clickhouse_ru

Страница 150 из 723
Alexander
22.05.2017
21:56:29
Я тут вроде не причём :)

Pavel
22.05.2017
21:56:39
DB::Settings::... вызывает такое поведение

Let Eat
22.05.2017
21:56:50
DB::Settings::Set это что-то в кликхаусе, по названию оно не дложно бы вызываться слишком часто)

Pavel
22.05.2017
21:56:55
вот да

Google
Alexander
22.05.2017
22:00:54
DB::Settings::Set это что-то в кликхаусе, по названию оно не дложно бы вызываться слишком часто)
Ещё раз напишу что я вставляю по одной строке. Но тем не менее.

Pavel
22.05.2017
22:01:29
слушайте, у меня есть машина с такой нагрузкой

секнду

Alexander
22.05.2017
22:02:33
Так что там нагружать: curl_easy_perform с одной строкой rowbinary в цикле.

В #define Apply_for_settings видно random на loadbalancing. , Если оно вообще к этому.

Pavel
22.05.2017
22:10:49
http://paste.org.ru/?qjf5hy

у меня вот так

но у меня не хттп протокол

я открываю базу 1 раз и пишу строки туда через С++ либу

Alexander
22.05.2017
22:14:15
Попробую завтра с другим load_bal

Pavel
22.05.2017
22:53:47
Поодной да

Alexey
23.05.2017
00:02:22
SHA256 используется при проверке пароля, если для пользователя он указан в таком виде. Но порядок не совпадает, так как хэширование коротких строк - это по крайней мере миллионы в секунду, даже таким тяжёлым алгоритмом.

Google
Alexander
23.05.2017
00:47:54
Сомнительно. У меня одно соединение.

Alexey
23.05.2017
01:00:27
sudo perf top —call-graph dwarf покажет более правильные стек-трейсы.

Alexander
23.05.2017
01:29:42
Ok, завтра сделаю. Просто, если я правильно понимаю, то всё же при вставке в буфер ничего сложного происходить не должно, кроме обработки http.

Извиняюсь, чаты перепутал, надеюсь удалилось.

Pavel
23.05.2017
09:27:38
а может цурл каждый раз открывает новое соединение?

и это вызывает валидацию пароля повторно?

Roman
23.05.2017
09:48:40
В http протоколе пароль проверяется на каждый запрос. Нет сущности "пароль на соединение"

Pavel
23.05.2017
09:50:00
ну, видимо в этом и ответ, почему столько ша1 в выдаче

Alexey
23.05.2017
11:02:23
ну, видимо в этом и ответ, почему столько ша1 в выдаче
Пока ещё это не ответ. Не совпадает количество.

Norbert
23.05.2017
11:22:38
Всем привет! Это внутрияндексовский чат или тут действует NDA

?

Felixoid
23.05.2017
11:23:00
это внешний чат

Norbert
23.05.2017
11:23:36
ладно я тогда пойду в другое место :)

Andrey
23.05.2017
11:28:44
Но мы не против послушать))

Alexey
23.05.2017
11:46:04
после обновления до последней версии появилась ошибка во внешнем словаре: last_exception: Code: 36, e.displayText() = DB::Exception: Unknown key \'name[1]\' inside attribute section, e.what() = DB::Exception ругается вот на это: <name>created</name> <type>DateTime</type> <null_value>NULL</null_value> хотя в мускуле поле (timestamp) селектится нормально, и до обновления работало нормально. Никто не знает в чем причина?

Nikolai
23.05.2017
11:55:37
<name> случайно не дублируется?

Alexey
23.05.2017
12:07:30
точно, мой косяк, почему-то раньше не алертило об ошибке =)

значит никто словарем и не пользовался, можно выпиливать

Alexey
23.05.2017
12:17:55
Мы планируем устроить хакатон по ClickHouse для frontend разработчиков. Основная тема - всевозможные визуализации данных, инструменты для работы с ClickHouse. Нужны ваши идеи :)

Геннадий
23.05.2017
12:26:18
Здравствуйте. Можно ли найти пересечение двух массивов? Не смог найти подходящие функции. Массивы содержат строки, и мне нужно найти элементы массива A, которые не содержатся в массиве B.

Google
Alexey
23.05.2017
12:26:43
Да.

Vladislav
23.05.2017
13:11:49
Мы планируем устроить хакатон по ClickHouse для frontend разработчиков. Основная тема - всевозможные визуализации данных, инструменты для работы с ClickHouse. Нужны ваши идеи :)
посмотреть на все возможные инструменты визуализации, сделать выводы, еще раз посмотреть, потом еще раз посмотреть, пересмотреть выводы, а потом запилить универсальную ??

и в open-source ?

Alexey
23.05.2017
13:20:06
За один день трудновато.

papa
23.05.2017
13:20:42
QueryEditor extends React.Component, вот это все.

Norbert
23.05.2017
13:41:35
Мне сказали что для просмотра статистики запросов к базе можно смотреть в system.query_log

но позже когда я залез в документацию, то ничего такого не нашел

Alexander
23.05.2017
13:42:29
Norbert
23.05.2017
13:44:50
ее переименовали или теперь такой функциональности больше нет?

Igor
23.05.2017
13:46:27
https://github.com/yandex/ClickHouse/issues/230

Norbert
23.05.2017
13:46:49
похоже нет

Спасибо! Сейчас попробую

Alexey
23.05.2017
13:47:41
Логгирование запросов включается настройкой log_queries. Настройка может быть изменена динамически, так же как все остальные настройки. По-умолчанию включено везде в нашем пакете и отключено в пакете для сторонних пользователей. Логгирование запросов полностью асинхронное. Запись сначала вставляется в очередь. Очередь блокирующая, но её максимальный размер достаточно большой, чтобы это не вызывало проблем. Затем запись из этой очереди достаёт отдельный поток и кладёт себе в массив. Периодически, этот поток сбрасывает массив, записывая данные в таблицу. Периодичность сброса по-умолчанию - 7.5 секунд. Записи, не сброшенные в таблицу, недоступны для чтения. По-умолчанию, запись осуществляется в таблицу system.query_log. Если таблица для записи уже существует, то проверяется соответствие её структуры текущей структуре лога. Если она не соответствует, то существующая таблица сначала переименовывается в query_log_0 или query_log_1 и т. п, а затем создаётся новая таблица, как если бы её не было. Если таблица не существует, то создаётся новая таблица с движком MergeTree. Проверка и создание таблицы осуществляется только один раз - при первой записи в лог. Эти действия (инициализация логгера) делаются синхронно (при первом запросе). Периодичность сброса и имя таблицы могут быть настроены в конфиге: <!— Лог запросов. Используется, только для запросов с настройкой log_queries = 1. —> <query_log> <!— В какую таблицу писать. Если таблицы нет, она создаётся. При изменении структуры лога, старая таблица переименовывается и создаётся новая. —> <database>system</database> <table>query_log</table> <!— Интервал сброса данных в таблицу. —> <flush_interval_milliseconds>7500</flush_interval_milliseconds> </query_log> При штатном завершении работы сервера, данные тоже сбрасываются в таблицу. Если при записи данных возникает ошибка, то данные теряются и ошибка пишется в обычный лог. Логгирование производится в четырёх случаях: В начале выполнения запроса. При успешном завершении запроса. В случае исключения до начала выполнения запроса. В случае исключения в середине выполнения запроса. Лог запросов не очищается автоматически. Для ручной очистки можно использовать запрос ALTER ... DROP PARTITION.

Felixoid
23.05.2017
13:52:10
Логгирование запросов включается настройкой log_queries. Настройка может быть изменена динамически, так же как все остальные настройки. По-умолчанию включено везде в нашем пакете и отключено в пакете для сторонних пользователей. Логгирование запросов полностью асинхронное. Запись сначала вставляется в очередь. Очередь блокирующая, но её максимальный размер достаточно большой, чтобы это не вызывало проблем. Затем запись из этой очереди достаёт отдельный поток и кладёт себе в массив. Периодически, этот поток сбрасывает массив, записывая данные в таблицу. Периодичность сброса по-умолчанию - 7.5 секунд. Записи, не сброшенные в таблицу, недоступны для чтения. По-умолчанию, запись осуществляется в таблицу system.query_log. Если таблица для записи уже существует, то проверяется соответствие её структуры текущей структуре лога. Если она не соответствует, то существующая таблица сначала переименовывается в query_log_0 или query_log_1 и т. п, а затем создаётся новая таблица, как если бы её не было. Если таблица не существует, то создаётся новая таблица с движком MergeTree. Проверка и создание таблицы осуществляется только один раз - при первой записи в лог. Эти действия (инициализация логгера) делаются синхронно (при первом запросе). Периодичность сброса и имя таблицы могут быть настроены в конфиге: <!— Лог запросов. Используется, только для запросов с настройкой log_queries = 1. —> <query_log> <!— В какую таблицу писать. Если таблицы нет, она создаётся. При изменении структуры лога, старая таблица переименовывается и создаётся новая. —> <database>system</database> <table>query_log</table> <!— Интервал сброса данных в таблицу. —> <flush_interval_milliseconds>7500</flush_interval_milliseconds> </query_log> При штатном завершении работы сервера, данные тоже сбрасываются в таблицу. Если при записи данных возникает ошибка, то данные теряются и ошибка пишется в обычный лог. Логгирование производится в четырёх случаях: В начале выполнения запроса. При успешном завершении запроса. В случае исключения до начала выполнения запроса. В случае исключения в середине выполнения запроса. Лог запросов не очищается автоматически. Для ручной очистки можно использовать запрос ALTER ... DROP PARTITION.
#faq #query_log #log_queries

Maksim
23.05.2017
14:06:56
Добрый день, что нибудь появилось для миграций в clickhouse ?

Google
Maksim
23.05.2017
14:09:08
Ну это, select, insert :(
а как же алтер столбцов

создание новых таблиц и т.д.

Maksim
23.05.2017
14:10:04
а как же алтер столбцов
Делаешь новую таблицу и переливаешь туда

Maksim
23.05.2017
14:10:48
Яндекс дайте миграции(

Alexey
23.05.2017
14:11:36
Вот рад бы к вам как-то присоединиться. Мы как и многие делаем сейчас морду вокруг кликхауса
Отлично! Пока ещё не анонсировали. Наверное это где-то в конце июня будет. Сейчас только собираем идеи.

Andrey
23.05.2017
14:11:39
Яндекс дайте миграции(
А сами написать?)

Pavel
23.05.2017
14:12:02
за миграции -- минус минус.

это не первостепенная фича, первостепенная - кастомные шардирования)

и батчер)

Maksim
23.05.2017
14:12:22
о нет

)) блин

Vladimir
23.05.2017
14:12:29
и батчер)
Trivial Buffer вмержили

Pavel
23.05.2017
14:12:37
оооо, дай доки)

Alexey
23.05.2017
14:13:07
Trivial Buffer вмержили
На всякий случай предупрежу, что он ещё не разработан. Он вмержен для удобства последующей разработки.

Pavel
23.05.2017
14:13:24
а в чем ключевое отличие от обычноно буфера ожидается?

Alexey
23.05.2017
14:15:02
В общем случае он ничем не лучше Buffer, и использовать его не надо. Подходит для специфических кейсов - когда данные вставляются пачками, но всё-таки достаточно часто. И нужно сохранять порядок вставленных блоков, а также осуществлять дедупликацию блоков.

Pavel
23.05.2017
14:15:32
тогда это не батчер

Google
Oleg
23.05.2017
14:17:36
Привет, у нас в ZK у некоторых ReplicatedMergeTree таблиц по 19 миллионов znode-ов (при том что в system.parts у соотв. таблиц не более 500-600 записей). Похоже, это ненормально и ZK от этого нехорошо. Есть идеи, что может быть не так и как починить?

Alex
23.05.2017
14:23:32
Были ли случаи добавления/удаления реплик?

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

Oleg
23.05.2017
14:27:50
Да, похоже, дело именно в этом. А как теперь это починить, если старой реплики уже нет и не будет?

Alex
23.05.2017
14:31:33
Можно вручную удалить каталог в ZK: rmr /<path-to-table>/replicas/<replica>

Главное не перепутать с живой репликой :)

Oleg
23.05.2017
14:32:13
Ясно, так и подумал. Спасибо большое за быстрый ответ! :)

Roman
23.05.2017
14:51:36
Месяц назад поменялся формат записей в Zookeeper-е. С версии 3 на версию 4. Теперь новую версию КХ нельзя откатить на более старую, ругается на DB::Exception: Unknown ReplicatedMergeTreeLogEntry format version: 4 Есть простой способ все-таки откатиться?

Alexey
23.05.2017
16:09:13
Простого нет, лучше всё-таки не откатываться. Есть только сложный.

Roman
23.05.2017
16:10:38
Простого нет, лучше всё-таки не откатываться. Есть только сложный.
Наступил на баг https://github.com/yandex/ClickHouse/pull/810 . Надо либо откатываться, либо собирать из исходников версию с патчем :(

Alexey
23.05.2017
16:15:30
Баг присутствовал во всех старых версиях.

Roman
23.05.2017
16:18:33
В логах ошибка "Sizes of columns doesn't match" появилась только в новых версиях (в 1.1.54135 не было). Но возможно я наступил еще в какой-то баг? Симптомы - растет количество несмердженных чанков, от этого растет потребление CPU, через пару дней cpu заканчивается совсем

Alexey
23.05.2017
16:22:57
Возможно, раньше не проявлялось по другой причине. Или я ошибаюсь. Поставить версию из master будет нормально. Мы как раз сейчас из неё собираем релиз. Но ещё не факт, что она пойдёт в stable.

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