@clickhouse_ru

Страница 628 из 723
Alexey
20.08.2018
23:43:51
Alexey
20.08.2018
23:47:57
Выложены презентации с ClickHouse Meetup в Санкт-Петербурге: https://yandex.github.io/clickhouse-presentations/meetup17/1_low_cardinality_strings.pdf https://yandex.github.io/clickhouse-presentations/meetup17/2_update_delete.pdf https://yandex.github.io/clickhouse-presentations/meetup17/3_vk.pdf https://yandex.github.io/clickhouse-presentations/meetup17/4_bloxy.pptx https://yandex.github.io/clickhouse-presentations/meetup17/5_semrush.pdf https://yandex.github.io/clickhouse-presentations/meetup17/6_datagrip.pdf https://yandex.github.io/clickhouse-presentations/meetup17/7_new_features_the_rest

В качестве бонуса, появилось ещё видео с РИТ++: https://youtu.be/ChR38RJznEA

Google
Alexey
20.08.2018
23:49:35
И с Highload++ Siberia: https://www.youtube.com/watch?v=V2CqQBICt7M

Alexey
21.08.2018
00:29:19
Доброго времени суток, есть смысл ждать видео ?
Да, видео записано, и сейчас его готовят.

Александр
21.08.2018
00:39:07
Dmitry
21.08.2018
06:40:47
А у HTTP интерфейса есть какие-то ограничения?

Какия проблема, есть большое сообщение, которое не вставляется через HTTP

Но через tabix запрос отрабатывает, также как и через clickhouse-clienbt

Александр
21.08.2018
06:49:51
А у HTTP интерфейса есть какие-то ограничения?
Есть ограничение на длину запроса через query parameters, но фиксится тем, что можно запрос передать post запросом прямо в body. Это до недавнего времени не работало с использованием внешних данных для обработки запроса, т.е. нельзя было отправить в теле большой запрос и пару файлов, например. Сейчас эта проблема устранена и http интерфейс не имеет каких-то ограничений, по крайней мере известных мне :)

Александр
21.08.2018
06:51:38
Ну у меня все запросы POST и через body
А вот захотите на старой версии воспользоваться внешними данными и работать не будет

Нам из-за этого пришлось пилить обертку над cli клиентом и через него гонять запросы

Google
Александр
21.08.2018
07:17:29
А кто-то в курсе, materialized колонки они вычисляются при селекте или при инсерте?

Sergey
21.08.2018
07:21:16
Не уверен, что "вычисляются" тут верное слово, но общее правило для баз (ну, просто привычное): если что-то Materialized, основная работа во время INSERT, если нет, основная работа во время SELECT.

Александр
21.08.2018
07:27:03
Sergey
21.08.2018
07:30:01
Проверили, при инсерте пишет, т.к. select * from system.columns показал, что фактически data_uncompressed_bytes меняется при инсертах
Ну... В документации прям явный ответ на вопрос, кстати. :) A materialized view works as follows: when inserting data to the table specified in SELECT, part of the inserted data is converted by this SELECT query, and the result is inserted in the view. Normal views don't store any data, but just perform a read from another table. In other words, a normal view is nothing more than a saved query. When reading from a view, this saved query is used as a subquery in the FROM clause.

Alexey
21.08.2018
08:04:13
Кто-нибудь пробовал подключатся из Power BI к ClickHouse ? Не пойму возможно ли это вообще. Может через ODBC там...

Alexey
21.08.2018
08:09:42
Я так понял через ODBC можно подключать сторонние таблицы из других баз в клик хаус. Но подключать клик хаус в другие базы через ODBC нельзя. Верно ?

Alexey
21.08.2018
08:15:46
То есть в PostgreSQL можно подключить базы или таблицы ClickHous'a ?

Ilyas
21.08.2018
08:16:07
Подскажите как удалить словарь из КХ? Из конфига убрал, но он остался в system.dictionaries

Nik
21.08.2018
08:17:21
я потому и написал “это фича, не баг”. это такие тонкости КХ о которых надо знать, ибо будет очень весело это потом это исправлять..
Хелло, а никто не сталкивался с обновлением ip адресов хостов без перезагрузки? У меня в конфигах указаны dns имена, но ip могут меняться. Соответственно CH при старте разрешает имена в IP и обращается по ним к пирам, если ip меняется, то надо перезапускать процесс. Мб есть вариант через api это делать? Или что-то ещё лучше?

Андрей
21.08.2018
08:17:54
Подскажите как удалить словарь из КХ? Из конфига убрал, но он остался в system.dictionaries
По идее словари автоматом обновляются, попробуйте переподключиться к базе

Ilyas
21.08.2018
08:18:45
новые словари цепляются без дополнительных телодвижений, а те что я убрал из конфига остаются даже после рестарта

Denis
21.08.2018
08:19:09
То есть в PostgreSQL можно подключить базы или таблицы ClickHous'a ?
для постгри есть clickhouse_fdw, но мне что-то не нравится как он работает

можете проверить, расскажете потом что получилось

Alexey
21.08.2018
08:21:18
для постгри есть clickhouse_fdw, но мне что-то не нравится как он работает
Я вот нашел ссылку: https://devhub.io/repos/yandex-clickhouse-odbc Я так понимаю можно на установить данный драйвер и через какую-нибудь прогу использовать данный драйвер для подключения к ClickHouse

Андрей
21.08.2018
08:21:36
новые словари цепляются без дополнительных телодвижений, а те что я убрал из конфига остаются даже после рестарта
Странно, у меня была похожая ситуация с таббиксом, заново создал сессию в браузере и словари удалились.

Ilyas
21.08.2018
08:23:21
Alexey
21.08.2018
08:23:31
так программы-то цепляются конечно. и через odbc, и jdbc. но вопрос же про другие базы?
Я хочу через Power BI подключится к базе ClickHouse, и думается мне что это можно сделать только через ODBC.

Google
Ilyas
21.08.2018
08:40:05
Странно, у меня была похожая ситуация с таббиксом, заново создал сессию в браузере и словари удалились.
видимо я что-то не то делал, попробовал ещё ребутнуть - всё починилось

Но получается что словари удаляются только с ребутом КХ?

Alexey
21.08.2018
08:45:27
Но получается что словари удаляются только с ребутом КХ?
у меня так же было, пока не рестартанул, удаленный словарь не удалялся

Pavel
21.08.2018
09:10:17
всем привет! А кто-то поборол проблему с libclickhouse-cpp, когда из-за часового пояса текущая дата счиатется неверно https://github.com/artpaul/clickhouse-cpp/issues/38 ?

я когда вставляю данные, то передаю и date и datetime, date считает сам libclickhouse-cpp используя простой алгоритм timestamp/3600/24, datetime передается как есть, как unix timestamp.

со стороны Clickhouse сервера это выглядит следующим образом: datetime он считает корректно и сохраняет в нужном часовом поясе, а вот date, так как его посчитала либа самостоятельно сохарянется в UTC по факту.

может есть возможность просто передавать datetime и отдать вычисление date на его основе Clickhouse?

со стороны CH это выглядит вот так:

metricDateTime | metricDate 2017-12-10 00:23:05 │ 2017-12-09

Viktor
21.08.2018
09:36:58
а в какой секции надо прописывать опцию <distributed_product_mode> … </distributed_product_mode> ? прописал в config.xml <yandex> … <distributed_product_mode>allow</distributed_product_mode> </yandex> но select * from system.settings where name = 'distributed_product_mode'; показывает deny

Michal
21.08.2018
09:45:32
metricDateTime | metricDate 2017-12-10 00:23:05 │ 2017-12-09
CREATE table name ( timestamp DateTime, date Date DEFAULT toDate(timestamp) ... ) ...

Pavel
21.08.2018
09:46:24
Ухты!

Michal
21.08.2018
09:48:31
а в какой секции надо прописывать опцию <distributed_product_mode> … </distributed_product_mode> ? прописал в config.xml <yandex> … <distributed_product_mode>allow</distributed_product_mode> </yandex> но select * from system.settings where name = 'distributed_product_mode'; показывает deny
Это пользовательская настройка. Или в users.xml для конкретного пользователя (или в default для всех), или в сессии через SET ... или в параметрах для clickhouse-client, или в GET параметрах для HTTP запроса. Или в SETTINGS при конкретном запросе.

Viktor
21.08.2018
09:48:49
ага, уже понял

спасиб

Pavel
21.08.2018
09:51:38
@mfilimonov спасибо большое ?

Paul
21.08.2018
09:57:21
А подскажите, пожалуйста, как скоро баг с юзером из конфига для clickhouse-client будет пофикшен? вот этот: https://github.com/yandex/ClickHouse/issues/2629

Pavel
21.08.2018
10:51:35
господа, а подскажите / киньте ссылкой, планируется ли создание экосистемы экстеншнов (как например у постгреса) для КХ?

Google
Denis
21.08.2018
11:07:44
Проверили, при инсерте пишет, т.к. select * from system.columns показал, что фактически data_uncompressed_bytes меняется при инсертах
Все также как и для default колонок, вычисляется при инсерте и пишется на диск, если колонка добавлена alter table add column, то будет вычислятся на лету при select, и писаться на диск при мержах. Т.е. можно добавить колонку с дефолтом или materialized пройтись optimize, колонка создастся на диске для всей таблицы. Отличие от дефолт только в невидимости для select * и insert.

Alexey
21.08.2018
11:52:35
Короче вдруг кому то пригодится. Инструкция по подключению Power BI к ClickHouse. 1) Если у вас 64-битный Power BI, скачивайте 64-битный ODBC драйвер для подключения к ClickHouse по следующей ссылке https://github.com/yandex/clickhouse-odbc/releases 2) Пуск / Панель управления / Администрирование / Источники данных ODBC 3) Польовательский DSN / Добавить / выбирайте либо ClickHouse ANSI либо ClickHouse Unicode / нажимаем готово 4) Вбиваем поля: Name, Host, Port, Database, User, Password и нажимаем Ок. 5) Заходим в 64-битный Power BI и нажимаем на кнопку "Get Data", выбираем "Other", выбираем ODBC, нажимаем Connect. 6) Выбираем наше только что созданное ODBC подключение и нажимаем Ок 7) ставим галочку на таблицах которые хотим загрузить, и нажимаем Load. 8) Далее читаем мануал по Power BI как рисовать графики Если что вопросы касательно работы ODBC драйвера я так понял можно задавать по ссылке https://github.com/yandex/clickhouse-odbc/issues/25 p.s. проверял на Windows 7

Alexander
21.08.2018
12:00:40
Короче вдруг кому то пригодится. Инструкция по подключению Power BI к ClickHouse. 1) Если у вас 64-битный Power BI, скачивайте 64-битный ODBC драйвер для подключения к ClickHouse по следующей ссылке https://github.com/yandex/clickhouse-odbc/releases 2) Пуск / Панель управления / Администрирование / Источники данных ODBC 3) Польовательский DSN / Добавить / выбирайте либо ClickHouse ANSI либо ClickHouse Unicode / нажимаем готово 4) Вбиваем поля: Name, Host, Port, Database, User, Password и нажимаем Ок. 5) Заходим в 64-битный Power BI и нажимаем на кнопку "Get Data", выбираем "Other", выбираем ODBC, нажимаем Connect. 6) Выбираем наше только что созданное ODBC подключение и нажимаем Ок 7) ставим галочку на таблицах которые хотим загрузить, и нажимаем Load. 8) Далее читаем мануал по Power BI как рисовать графики Если что вопросы касательно работы ODBC драйвера я так понял можно задавать по ссылке https://github.com/yandex/clickhouse-odbc/issues/25 p.s. проверял на Windows 7
???

Иван
21.08.2018
12:20:38
Короче вдруг кому то пригодится. Инструкция по подключению Power BI к ClickHouse. 1) Если у вас 64-битный Power BI, скачивайте 64-битный ODBC драйвер для подключения к ClickHouse по следующей ссылке https://github.com/yandex/clickhouse-odbc/releases 2) Пуск / Панель управления / Администрирование / Источники данных ODBC 3) Польовательский DSN / Добавить / выбирайте либо ClickHouse ANSI либо ClickHouse Unicode / нажимаем готово 4) Вбиваем поля: Name, Host, Port, Database, User, Password и нажимаем Ок. 5) Заходим в 64-битный Power BI и нажимаем на кнопку "Get Data", выбираем "Other", выбираем ODBC, нажимаем Connect. 6) Выбираем наше только что созданное ODBC подключение и нажимаем Ок 7) ставим галочку на таблицах которые хотим загрузить, и нажимаем Load. 8) Далее читаем мануал по Power BI как рисовать графики Если что вопросы касательно работы ODBC драйвера я так понял можно задавать по ссылке https://github.com/yandex/clickhouse-odbc/issues/25 p.s. проверял на Windows 7
Я просто по https получаю csv из кх, это источник Web в Power Bi называется. А ваш метод будет работать если отчет опубликовать на портале PBI?

Alexey
21.08.2018
12:23:29
Я просто по https получаю csv из кх, это источник Web в Power Bi называется. А ваш метод будет работать если отчет опубликовать на портале PBI?
Я читал про тот метод который вы используете. Мне не понравилось то что вручную csv нужно генерировать. А ваш метод будет работать если отчет опубликовать на портале PBI? Ну метод не мой, меня просто коллеги попросили изучить возможность подключения Power BI к ClickHouse, я поключился загрузил в Power BI 2 таблицы. На этом моя работа закончена, я только вчера в 8 вечера впервые услышал словосочетание Power BI, так что не смогу вам помочь ссори

Иван
21.08.2018
12:26:03
В смысле csv в ручную генерить? Я просто кудаю в кх запрос, он выдает csv. На стороне PBI это почти ни чем не отличается от любого другого типа подключения, на выходе такаяже табличка.

Alexey
21.08.2018
12:26:35
Ну я вам в этом деле не советник, можете узнать ответ на свой вопрос только методом тыка))

Иван
21.08.2018
12:28:41
Поскольку у вас нужно что то доставлять на машину то скорее всего опубликованый отчет работать не будет.

Ilya
21.08.2018
12:43:08
Подскажите, есть ли какое-то ограничение на количество условий в WHERE? SELECT userId, count() FROM table WHERE (userId=1 and date>date1) or (userId=2 and date>date2) or …x1000? group by userId

Yuran
21.08.2018
12:43:39
Вроде есть ограничение на максимальное число элементов в AST, как минимум

и на размер запроса

Но всё это настраивается

Ilya
21.08.2018
12:46:14
спасибо

Aliaksandr
21.08.2018
12:51:41
а chproxy не умеет вести access log?
только если включить debug logging с помощью log_debug: true в конфиге

Alexander
21.08.2018
12:56:58
Ребят, повторю сюда вопрос - бы ли ли пробелемы с вычислением max в graphitemergetree, я вижу что в релизе 1.1.54378 они считаются как то неправильно.

Vladislav
21.08.2018
12:59:38
Возможно уже известная проблема но в 18.10.3 наблюдается очень медленное выполнение запросов вида select A from t group by a или select distinct A from t При том что поле A используется для партицирования и это первая часть ключа: CREATE TABLE t ( A UInt32, B UInt32, C UInt32, D UInt32) ENGINE = MergeTree() PARTITION BY toUInt32(A / 128) ORDER BY (A, C, D) SETTINGS index_granularity = 8192 select count() from t; -> 162573124579 in 25 sec select A from t group by A; -> 3060 rows in set. Elapsed: 64.401 sec ЧЯДНТ? Может пропустил ишую на гитхабе?

Dmitry
21.08.2018
13:01:37
А не ли какой возможности возвращать вложенный json внутри селекта с format JSON ?

Aliaksandr
21.08.2018
13:02:47
а chproxy не умеет вести access log?
вообще, chproxy добавляет важную инфу в User-Agent при проксировании запроса в clickhouse: Prepends User-Agent request header with remote/local address and in/out usernames before proxying it to ClickHouse, so this info may be queried from system.query_log.http_user_agent. Потом эту инфу можно анализировать, если в clickhouse включить query_log - см. https://github.com/yandex/ClickHouse/issues/847 . Поверх локльных таблиц system.query_log можно сделать distributed таблицу, чтобы можно было легче анализировать лог запросов ко всем инстансам кликхауса

Google
molo4ko
21.08.2018
13:04:03
@valyala да, я потом перечитал документацию, включил query log - все работает. спасибо!

Maria
21.08.2018
13:05:45
Есть ли способ избавления от дубликатов при использовании ReplacingMergeTree кроме выполнения OPTIMIZE?

Viktor
21.08.2018
13:08:46
Проапгрейдил кластер до 18.6.0, вот такой запрос и подобные стали отваливатся с ошибкой SELECT user_id , if( user_id not in (SELECT user_id FROM events.finance WHERE project_id = 282 GROUP BY user_id), 'yes', 'no') as project282 FROM events.login LIMIT 100 Code: 10, e.displayText() = DB::Exception: Not found column if(notIn(user_id, _subquery1), 'yes', 'no') in block. There are only columns: user_id, if(notIn(user_id, _subquery1__subquery_2798086608428224864_7530129903691534915), 'yes', 'no'), e.what() = DB::Exception

это баг или фича?

artem
21.08.2018
13:57:31
Короче вдруг кому то пригодится. Инструкция по подключению Power BI к ClickHouse. 1) Если у вас 64-битный Power BI, скачивайте 64-битный ODBC драйвер для подключения к ClickHouse по следующей ссылке https://github.com/yandex/clickhouse-odbc/releases 2) Пуск / Панель управления / Администрирование / Источники данных ODBC 3) Польовательский DSN / Добавить / выбирайте либо ClickHouse ANSI либо ClickHouse Unicode / нажимаем готово 4) Вбиваем поля: Name, Host, Port, Database, User, Password и нажимаем Ок. 5) Заходим в 64-битный Power BI и нажимаем на кнопку "Get Data", выбираем "Other", выбираем ODBC, нажимаем Connect. 6) Выбираем наше только что созданное ODBC подключение и нажимаем Ок 7) ставим галочку на таблицах которые хотим загрузить, и нажимаем Load. 8) Далее читаем мануал по Power BI как рисовать графики Если что вопросы касательно работы ODBC драйвера я так понял можно задавать по ссылке https://github.com/yandex/clickhouse-odbc/issues/25 p.s. проверял на Windows 7
Подскажите пожалуйста с какой, ориентировочно, скоростью грузятся данные через ODBC коннектор в Power Bi/ ~(строк/сек)

Alexey
21.08.2018
13:58:48
посмотрю чуть позже еще раз, может как то можно понять

Не обращал внимания, посмотрю

@artseo 40932 записи загрузило за примерно 1-2 секунды

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