@clickhouse_ru

Страница 288 из 723
V
16.10.2017
15:16:20
этого не может быть: я специально использовать криптографически уникальные данные. это может быть только в случае, если используется что-то типа отложенного сжатия.

Tima
16.10.2017
15:17:41
Потом почитайте что такое сжатие

V
16.10.2017
15:18:40
пробовал

Google
V
16.10.2017
15:18:49
и не могут

они же зашифрованны

с cbc

Tima
16.10.2017
15:19:27
пробовал
Покажите как вы сжимали

Nikolai
16.10.2017
15:19:56
а также проверьте, что данные не изменились после мержа.

Александр
16.10.2017
15:22:51
Первая нецензурщина за последние полгода в чате, как то печально совсем...

Vladimir
16.10.2017
15:26:25
Ребята, привет! Скажите как через http залить данные INSERT .... SELECT FROM

Александр
16.10.2017
15:26:32
не, утром уже было
Я просто постоянно мониторю чатик, видимо пропустил )

Vladimir
16.10.2017
15:26:56
через консольку данные вставляются. Через веб не хочет. Что хочет непонятно

Konstantin
16.10.2017
15:27:13
Vladimir
16.10.2017
15:28:56
да. Может неправильно както формирую. Я посылаю сразу весь запрос. Есть запрос через INSERT INTO .... VALUES и потом вывод туплов. Данный запрос все ок. Надо ли формировать хидер в начале запроса или нет

Google
Александр
16.10.2017
15:29:35
Нет. Просто insert into table select * from table2

Структура таблиц должна совпадать, в селекте можно менять структуру колонок и преобразовывать данные. Делал так недавно, когда неправильно тип колонки прописал и она работала, пока за предел uint16 не вылез

Vladimir
16.10.2017
15:30:58
так-с

Александр
16.10.2017
15:31:13
Точнее не структура таблиц, а структура результата селект запроса должна совпадать с таблицей в которую данные писать собираетесь

Vladimir
16.10.2017
15:31:18
интересно а что же ему нужно. Вложенные запросы работают?

Александр
16.10.2017
15:31:47
интересно а что же ему нужно. Вложенные запросы работают?
Да там вроде бы все что угодно должно работать

Vladimir
16.10.2017
15:32:27
Странно. при этом в логе КХ не видно что идет INSERT вообще

Nikolai
16.10.2017
15:33:30
какая-нибудь ошибка пишется?

Vladimir
16.10.2017
15:35:53
ну в нгинксе 500. При этом я копирую тело POST и напрямую вставляю в консоль - отрабатывает на ура.

Александр
16.10.2017
15:36:24
Не тестировал сложные запросы

какая-нибудь ошибка пишется?
Я думаю тут стоит просто лог посмотреть на предмет входящих запросов, приходит ли он вообще

Nikolai
16.10.2017
15:41:30
логично. что-нибудь в логе есть?

Vladimir
16.10.2017
15:41:36
либо я не туда смотрю

в логах на один запрос есть INSERT на другой нет

где можно глянуть query

подзабыл))

Nikolai
16.10.2017
15:45:03
system.query_log надо отдельно включить: https://clickhouse.yandex/docs/ru/operations/server_settings/settings.html?highlight=query_log

Google
Nikolai
16.10.2017
15:47:50
по-моему, это обычная merge - таблица

Vladimir
16.10.2017
15:50:32
Хм. дропнул ее)) перезапустил КХ и все. Больше не создается) Хотя написано что если ее нет - она пересоздается. Что я делаю не так

Nikolai
16.10.2017
15:51:14
а если сделать select 1 то создастся?

Vladimir
16.10.2017
15:51:48


Nikolai
16.10.2017
15:52:02
кстати, а обычные запросы на вставку через http проходят?

Vladimir
16.10.2017
15:52:50
кстати, а обычные запросы на вставку через http проходят?
есть 2 запроса. Один нормально, второй нет. Как мне вернуть чтобы велись логи то?)))

Nikolai
16.10.2017
15:55:02
точно не скажу, почему query_log не восстановился. попробуйте сделать touch config.xml и перезапустить

у пользователя случайно не стоит настройка readonly?

Vladimir
16.10.2017
15:57:29
Завести issue? не восстанавливается. Или же есть какие то другие методы ?

Vladimir
16.10.2017
16:04:19
? Ну да. видно лучше в issue завести.

Vladimir
16.10.2017
16:05:38
Nikolai
16.10.2017
16:05:57
set log_queries=1 select 1 после этого появляется?

Google
Vladimir
16.10.2017
16:06:36
да)

Ilya
16.10.2017
16:06:37
А в system.settings что?

Admin


Nikolai
16.10.2017
16:07:12
если через http, то тоже надо указывать, как обычную настройку :)

Vladimir
16.10.2017
16:07:51
если через http, то тоже надо указывать, как обычную настройку :)
? не знаю но до этого (до удаления) работало. То есть полчаса назад не надо было ничего указывать

Yuri
16.10.2017
16:07:59
а можно вопрос, насколько работа через http медленнее на больших вставках, чем через какие-либо c++ адаптеры? кто-нибудь мерил такое?

Aliaksandr
16.10.2017
16:08:27
если через http, то тоже надо указывать, как обычную настройку :)
у нас запросы логируются без указания log_queries=1 в гет-параметрах

о, у нас у каждого юзера в users.xml прописано <log_queries>1</log_queries>

Nikolai
16.10.2017
16:09:29
у нас запросы логируются без указания log_queries=1 в гет-параметрах
значит, я говорю неправду. возможно, для http по умолчанию включено

Aliaksandr
16.10.2017
16:09:57
вернее не у юзера, а в профиле каждом

Ilya
16.10.2017
16:10:16
Vladimir
16.10.2017
16:11:44
Aliaksandr
16.10.2017
16:12:20
1.1.54292

а можно вопрос, насколько работа через http медленнее на больших вставках, чем через какие-либо c++ адаптеры? кто-нибудь мерил такое?
мы не заморачивались и с самого начала вставляли данные по http. Причем мы их еще сжимаем перед отправкой на сервер, чтобы уменьшить траф. На каждый сервер спокойно вставляется 200К строк в секунду, в каждой строке по 50 значений.

Aliaksandr
16.10.2017
16:21:40
использование http вместо native протокола позволяет использовать nginx для балансировки нагрузки на шарды. Мы раньше использовали nginx, теперь перешли на свой https://github.com/Vertamedia/chproxy , который умеет не только балансировать нагрузку, но и устанавливать по-юзерные ограничения на стоящие за ним кластера.

Vladimir
16.10.2017
16:21:52
Ребята, еще вопрос. Как в http заэкранировать ' - если посылаю в таком виде то пишет про error INSERT INTO document_score SELECT date, datetime, document_id, service_type, value FROM (SELECT toDate(\'2017-10-16T16:18:01\') as date

Google
Aliaksandr
16.10.2017
16:22:24
вставляйте в TSV формате

там нужно экранировать только два символа - таб и перевод строки

ну и еще бэкслеш )

Ой, неправильно прочитал вопрос :) Отправляйте запрос POST'ом или используйте urlencoding, если отправляете запрос GET-ом

Vladimir
16.10.2017
16:27:00
Ой, неправильно прочитал вопрос :) Отправляйте запрос POST'ом или используйте urlencoding, если отправляете запрос GET-ом
ок. Попробую POST но что то подсказывает что не в нем дело, так как если обычная вставка то \' проходит на ура

Aliaksandr
16.10.2017
16:30:45
Может, кому-нибудь будет интересен http клиент, оптимизированный для чтения больших объемов данных из кликхауса - https://github.com/valyala/chclient

V
16.10.2017
16:31:38
@FacedSID >Делал так недавно, когда неправильно тип колонки прописал и она работала, пока за предел uint16 не вылез он он же отвалидировал запрос и не дал впихнуть нестандартные данные?

Александр
16.10.2017
16:32:59
V
16.10.2017
16:48:18
@FacedSID можно подробнее про эту функцию и про повреждение данных?

Vladimir
16.10.2017
17:10:01
Ребята а можно все таки без touch config.xml пересоздавать таблицу логов. Или фича такая?



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