@clickhouse_ru

Страница 521 из 723
Andrey
08.05.2018
16:39:24
Andrey
08.05.2018
16:50:04
Спасибо?

Andrew
08.05.2018
19:19:42
подскажите, пожалуйста, по словарям внешним. не работает внешний словарь: Code: 85, e.displayText() = DB::Exception: Format JSON is not suitable for input, json такой [ { "id": 1, "name": "ya.ru" } ] в JSONEachRow все получилось, а вот какой json должне быть в словаре? конфиг словаря https://gist.github.com/andrewrbe/9c4196322a309457fd971b87725d4e93

Google
Pavel
08.05.2018
19:47:28
а почему при подневных партициях в именах партишенов добавляются обратные слеши?

\'2018-05-07\' traffic \'2018-05-07\' traffic \'2018-05-07\' traffic \'2018-05-07\' traffic \'2018-05-07\' traffic

Alexey
08.05.2018
19:55:53
Format TSVRaw

Но это вопроса не отменяет :)

Alex
08.05.2018
20:28:43
Это ошибка (лишнее квотирование) - давно хотели исправить. У @kshvakov даже был PR с исправлением, но до мержа не довели.

Igor
08.05.2018
20:33:54
Сообщество, если тут есть пользователи phpClickHouse в новой версии будут сильные изменения в классах, из за моей изначальной ошибки в namespace - придется править ваши зависимости, мое сорри (( Билд в packagist еще не собран https://github.com/smi2/phpClickHouse#2018-05-09

Kirill
09.05.2018
04:43:23
Andrew
09.05.2018
05:27:29
Ок, спасибо

Michal
09.05.2018
05:29:16
а почему при подневных партициях в именах партишенов добавляются обратные слеши?
Обратные слеши около кавычек добавляет формат вывода, хранятся значения просто в кавычках без слешей. Попробуйте SELECT partition FROM system.parts FORMAT TSVRaw

Сейчас вроде бы как всё достаточно последовательно. Только большинство форматов вывода (Pretty*, Vertical, TSV etc.) по умолчанию кавычки слешами прикрывает. Что не удобно при всяких системных запросах, типа SHOW CREATE TABLE или SELECT * FROM system.parts. Но если добавлять каждый раз FORMAT TSVRaw или FORMAT VerticalRaw то жить можно.

Paul
09.05.2018
08:44:20
Коллеги, а подскажите, пожалуйста, нормально ли что я при вставке в Distributed-таблицу вижу в show processlist пароль для пользователя, которым кликхаус ходит для записи в другие шарды, в открытом виде?

Google
Kirill
09.05.2018
08:44:45
Не уверен что стоит это менять.
Это стоит менять, другой вопрос как это сделать более аккуратно

Paul
09.05.2018
08:46:14
а именно тут: client_name: ClickHouse Distributed_cluster_user:<password_here>@10%2E3%2E0%2E20:9000,cluster_user:<password_here>@10%2E3%2E0%2E195:9000

версия сервера - 1.1.54292

prll
09.05.2018
09:08:24
Исправлено в master

Michal
09.05.2018
09:19:07
Это стоит менять, другой вопрос как это сделать более аккуратно
Поэксперементировал немного. Я был уверен что при кастомовых ключах партиционирования - всегда используется синтаксис tuple (даже при единственном ключе). И в принципе вместо удаления кавычек можно было бы добавить скобки вокруг значения, тогда CAST работал бы без проблем. Но там похоже есть некоторая непоследовательность. Сейчас сделаю gist'a чтоб показать.

Paul
09.05.2018
09:23:19
Исправлено в master
Благодарю. Значит, в следующем релизе выйдет?

Michal
09.05.2018
10:15:50
Поэксперементировал немного. Я был уверен что при кастомовых ключах партиционирования - всегда используется синтаксис tuple (даже при единственном ключе). И в принципе вместо удаления кавычек можно было бы добавить скобки вокруг значения, тогда CAST работал бы без проблем. Но там похоже есть некоторая непоследовательность. Сейчас сделаю gist'a чтоб показать.
Ок. Наверное всё же кавычек при простых типах быть не должно. Я был уверен что кликхаус при произвольном ключе партиционирования всегда использует tuple, даже для одного элемента (на это указывает синтаксис в примерах где ключ партиционирования всегда появляется в скобках). Но на практике там какая-то магия, которая иногда работает немного непоследовательно https://gist.github.com/filimonov/2604a328cddaf3d004b8ef4ddf0617ec

Paul
09.05.2018
10:18:15
Исправлено в master
а можно узнать номер коммита?

Michal
09.05.2018
10:53:40
а можно узнать номер коммита?
Вероятно вот это: https://github.com/yandex/ClickHouse/pull/2292

Paul
09.05.2018
12:07:54
Да
Спасибо

Анатолий
09.05.2018
12:34:34
Посоны, подскажите ламеру. Как присосаться при помощи табикса к базе на самом же ПК (локалхост в адресе писать?) или подскажите где инфу найти.

Wolf
09.05.2018
12:35:04
ну да локалхост

Руслан
09.05.2018
17:16:48
Вечер добрый. Nullable(Date) не инсертится через clickhouse-client, если формат CSV. Если переделать файл и запрос на формат Values, то инсертится. Никто не сталкивался? Может быть, я что-то неверно делаю. Записал пример сюда https://github.com/yandex/ClickHouse/issues/79#issuecomment-386027065

Руслан
10.05.2018
04:53:53
Спасибо, Михаил!

Гаврилов
10.05.2018
05:15:52
а не подскажете нужен ли ссд кликхаусу?

есть 2 машинки 16 ядер и hdd или 8 ядер и ссд

оперативки примерно в 2 раза больше чем данных

Google
Гаврилов
10.05.2018
05:16:50
какая машинка быстрее будет работать?

Wolf
10.05.2018
05:18:37
Смотря какие запросы, если много читаете с диска то вероятно с ссд

Если много мат операций делаете то наверно с хдд

Kirill
10.05.2018
06:08:55
Сейчас накидал простое API для внешних словарей, можно его поднять и ходить из ClickHouse к словарям по HTTP (формат JSONEachRow). В API пул конектов (пока хардкод https://github.com/ClickHouse-Ninja/clickhouse-dictionary-api/blob/master/clickhouse-dictionary-api.go#L31 ) https://github.com/ClickHouse-Ninja/clickhouse-dictionary-api

Michal
10.05.2018
06:52:19
Сейчас накидал простое API для внешних словарей, можно его поднять и ходить из ClickHouse к словарям по HTTP (формат JSONEachRow). В API пул конектов (пока хардкод https://github.com/ClickHouse-Ninja/clickhouse-dictionary-api/blob/master/clickhouse-dictionary-api.go#L31 ) https://github.com/ClickHouse-Ninja/clickhouse-dictionary-api
Гуд :) В рамках ревью: 1) TSV требует пересылки через сеть меньшего количества данных. В некоторых случае разница больше чем в 2 раза (например длинные названия колонок содержащих небольшие строки/числа). И обычно быстрее в сериализации/десериализации 2) там только полное чтение словаря реализовано, хорошо бы ещё по ключам чтоб умел читать (для layout <cache>). 3) можно ещё сделать сразу обвязку чтоб можно было запускать как системную службу. 4) пример xml файла с конфигурацией словаря для Clickhouse можно добавить.

Michal
10.05.2018
07:26:00
Кстати сейчас в голову пришла забавная идея: как источник HTTP словаря можно использовать Clickhouse :D Типа http://localhost:8123/?query=SELECT%20*%20FROM%20mysql(...)

Ну и форматы он все свои умеет быстро читать/писать :D

Кликхаус порой напоминает этакий конструктор ЛЕГО, в которым части иногда можно соединить каким-то неожиданным способом. :)

LeiDruid
10.05.2018
07:42:26
Кстати сейчас в голову пришла забавная идея: как источник HTTP словаря можно использовать Clickhouse :D Типа http://localhost:8123/?query=SELECT%20*%20FROM%20mysql(...)
Очевидно же, что это так себе идея, т.к. UPDATE пока в планах Обновление словаря будет выглядеть так-то очень стрёмно

Michal
10.05.2018
07:51:43
Очевидно же, что это так себе идея, т.к. UPDATE пока в планах Обновление словаря будет выглядеть так-то очень стрёмно
Кажется мы говорим о разных вещах :) При обновлении словаря - его просто нужно перечитать (целиком). При этом если используешь в качестве источника словаря MySQL - то кликхаус держит открытые соединения в количестве = кол-во серверов х кол-во словарей (даже если все словари используют один и тот же сервер MySQL). Если вместо этого использовать HTTP обвязку (как в примере @kshvakov ) то можно сделать пул соединений.

Теоретически можно попробовать в качестве этой прослойки обеспечивающей пул соединений использовать и сам кликхаус (он умеет читать данные из MySQL при помощи табличной функции), но через протокол HTTP. Что само по себе выглядит несколько забавной конструкцией.

как-то так.

Stas
10.05.2018
08:19:25
коллеги, а в последних версиях ch все еще не научился в подзапросы внутри вьюшек?

Oleksandr
10.05.2018
09:09:44
Добрый день. Подскажите пожалуйста, как в ch сделать срез данных, не используя агрегатный функций select toStartOfDay(date_time) AS grouped_time, AVG(close) from am_coll.buckets where date_time >= toDateTime('2018-05-01 00:00:00') and date_time <= toDateTime('2018-05-05 00:00:00,') group by grouped_time order by grouped_time в этом случае я получу среднее значение close, а я хотел бы получить значение close на 00:00:00 в периоде дат например с 2018-05-01 на 2018-05-05. с ch первый опыт, с timeSlots как-то сложно выходит...

Google
Oleksandr
10.05.2018
09:56:00
за сутки есть очень много данных, мне нужен именно срез, а не AVG, MIN и.т.д. чтобы каждый на день в 00:00:00 получить срез того, что есть. фактически первый row каждого дня

Michal
10.05.2018
09:56:04
Тем временем у Кликхауса 4000 звездочек и 600 (без одного) форков ?

Oleksandr
10.05.2018
10:01:19
на mysql, это было бы примерно так SELECT b.timestamp, b.close FROM am_coll.buckets b INNER JOIN ( SELECT MIN(timestamp) first_timestamp FROM am_coll.buckets GROUP BY DATE(timestamp) ) sub_b ON b.first_timestamp = b.timestamp) WHERE b.timestamp >= '2018-05-01 00:00:00') AND b.timestamp <= '2018-05-01 00:00:00');

Michal
10.05.2018
10:02:04
Если хотите без группировки и агрегатных функций - то можно например так SELECT * FROM table WHERE timestamp IN ( select toDateTime( toDate('2018-05-01') + number ) from numbers(10) ). Только если в этой секунде не будет данных то ничего не получите, а если будет больше 1 строки - то получите больше.

Ivan
10.05.2018
10:02:43
Кто нибудь реализовал GDPR на кликхаусе?

Michal
10.05.2018
10:03:05
@lavi1555 , так не честно, в вашем примере есть группироки и агрегатные функции :P

Yuri
10.05.2018
10:04:29
select * from table order by date, num limit 1 by date

Michal
10.05.2018
10:04:30
select toDate(timestamp) date, argMin(close, timestamp) from table group by date

Alex
10.05.2018
10:04:32
Michal
10.05.2018
10:10:16
http://www.timqian.com/star-history/#yandex/ClickHouse



Vasily
10.05.2018
10:10:25
SELECT * FROM table WHERE my_microtime = (SELECT MIN(my_microtime) FROM table WHERE date = '2018-01-01') limit 1 Вот такой выход еще может быть подойдет

Алексей
10.05.2018
10:19:12
господа а как правильно определять наличие sse на фре ?

пока лучший вариант grep "SSE4.2" /var/run/dmesg.boot

Oleksandr
10.05.2018
10:32:33
select date_time,close from am_coll.buckets where (date_time) in ( select toDateTime(date) from am_coll.buckets where date >= toDate('2018-05-01 00:00:00') and date <= toDate('2018-05-05 00:00:00') group by date ) вот так :)

Google
Oleksandr
10.05.2018
10:33:16
на выходе будет так 2018-05-01 00:00:00 9250 2018-05-02 00:00:00 9066 2018-05-03 00:00:00 9216 2018-05-04 00:00:00 9741.5 2018-05-05 00:00:00 9683

всем спасибо

Анатолий
10.05.2018
10:38:01
*оффтоп Как популизировать Tabix и ClickHouse среди подрастающих разработчиков? (94 - 99 годы, выход из демографической ямы. Мнение студента программиста, целевая аудитория.) На портале GeekBrains есть недостаток в курсах по БД. Учитывая что все большее и большее количество студентов предпочитают самообразование вместо того чтобы ходить на пары, учитывая высокий недостаток высококвалифицированных кадров в IT сфере сделать курс по табиксу и по кликхаусу в принципе на портале было бы не плохо. Все выше сказанное исключительно ИМХО. P.S. Образование в РФ сейчас реально в жопе, товарищи. Особенно IT.

Oleksandr
10.05.2018
10:38:54
кроме табикса и консоли альтернатив нет совсем

Oleksandr
10.05.2018
10:40:40
в датагрип появился плагин?

потому что не находит его в репозитории, а по дефолту такого нет



Гаврилов
10.05.2018
10:46:08
jdbc драйвер

и вперед

Oleksandr
10.05.2018
10:46:45
так да )

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