@clickhouse_ru

Страница 686 из 723
Alex
03.10.2018
12:29:12
не помоголо(
Тогда, вероятно, через https://clickhouse.yandex/docs/ru/single/#_188

?
03.10.2018
12:30:50
а это вообще нормально, что SELECT одной строчки из кафки находящейся в соседнем контейнере – занимает 2-2.5 секунды?

Google
Kirill
03.10.2018
12:37:26
@kshvakov Кирилл, не подскажете, в каком формате массивные структуры из го-клиента в кафку удобней лить?
В кафку? В любом что для вас приемлимо поддерживать, мы в кафку, пока, json пишем и оно не является узким местом для нас. Были какие-то попытки посмотреть другие форматы, но, пока, ничего другого так и не заиспользовали. Единственное что у нас сделано - это в тегах указаны короткие имена для филдов json чтоб оно компактнее было. Пример AdvertiserID int64 `json:"adv,omitempty"` PublisherID int64 `json:"pub,omitempty"` ApplicationID int64 `json:"app,omitempty"` SpotID int64 `json:"spt,omitempty"` CampaignID int64 `json:"cmp,omitempty"` AdFormatID int64 `json:"adf,omitempty"` BannerID int64 `json:"bnn,omitempty"`

?
03.10.2018
12:37:44
ага, супер, спасибо

Denis
03.10.2018
12:41:14
а это вообще нормально, что SELECT одной строчки из кафки находящейся в соседнем контейнере – занимает 2-2.5 секунды?
селект из таблицы c кафка энжин? Это бессмысленно. А в MV оно флашит раз 7.5 секунд вроде (по умолчанию).

?
03.10.2018
12:41:48
ага, ну я просто тесты провожу пока, уточняю непонятные моменты

Артем
03.10.2018
12:55:41
столкнулся с проблемой висящих процессов, которые были созданны из Tableo, и видимо после получение какой то части данных  Tableo закрыло коннект с сервером, но в ClickHouse процесс не прибился и просто висит, как с этм можно бороться

prll
03.10.2018
13:00:10
а точно закрыло? это разные хосты с табло и ClickHouse ?

Michal
03.10.2018
13:23:50
Нет, только через боль
Ну в принципе, если выходить из соображений что уже записанные данные - верны и к тому же нет репликации, то наверное боль можно свести к минимуму. Добавить колонку с версией. Остановить сервер, изменить определение таблицы в метаданных, запустить КХ снова. И скорее всего всё взлетит. Но для начала и так надо потренироваться "на кошках".

Артем
03.10.2018
13:27:56
а точно закрыло? это разные хосты с табло и ClickHouse ?
да, Табло отключилось, хосты разные

prll
03.10.2018
13:31:46
а что и в каком состоянии висит? select * from system.processes;

Alexey
03.10.2018
14:40:52
запретите квотами такие селекты для tableu

prll
03.10.2018
14:48:30
а цифры меняются? это или просто долгий запрос или серверу поплохело.

Google
Roman
03.10.2018
15:26:12
Подскажите, как подсчитать количество уникальных записей в таблице!

?
03.10.2018
15:29:19
если держать в уме возможность коллизий, то можно так попробовать SELECT uniqExact(cityHash64(*)) FROM table

или возможно даже так SELECT uniqExact(*) FROM table

Артем
03.10.2018
15:44:58
а цифры меняются? это или просто долгий запрос или серверу поплохело.
цифры не меняются, если бы он менялись, то для меня было бы очевидно что запрос тяжелый

molo4ko
03.10.2018
15:46:16
Roman distinct?)

непонятно, откуда там цитата ?

prll
03.10.2018
15:47:27
цифры не меняются, если бы он менялись, то для меня было бы очевидно что запрос тяжелый
тогда можно gdb трейс снять? sh -x clickhouse-report gdb > ch.dmp 2>&1 и версия какая?

Roman
03.10.2018
15:47:45
Distinct не совсем правильно выдаст

Артем
03.10.2018
16:10:24
тогда можно gdb трейс снять? sh -x clickhouse-report gdb > ch.dmp 2>&1 и версия какая?
версия ClickHouse 18.6.0, по логам сложнее, прямого доступа у меня к серверу нету, запрошу получение трейса

Mikhail
03.10.2018
16:17:24
Привет. Подскажите, пожалуйста: какие есть более менее готовые решения для мониторинга производительности запросов и/или ноды в целом? Хотелось бы временные ряды по processlist, например, и не хотелось бы писать внешним сервисом обвязку для регулярного опроса

Vsevolod
03.10.2018
17:05:33
блин, все равно с ssl какая-то фигня - теперь с distributed

@proller наверное, ты знаешь

2018.10.03 18:05:02.871399 [ 27 ] <Error> ServerErrorHandler: Code: 210, e.displayText() = DB::NetException: SSL Exception: error:14037418:SSL routines:ACCEPT_SR_KEY_EXCH:tlsv1 alert unknown ca: while reading from socket (10.7.93.133:38974), e.what() = DB::NetException, Stack trace: 0. clickhouse-server(StackTrace::StackTrace()+0x16) [0x51b6816] 1. clickhouse-server(DB::Exception::Exception(std::string const&, std::string const&, int)+0x1f) [0x4d872bf] 2. clickhouse-server(DB::ReadBufferFromPocoSocket::nextImpl()+0x1f7) [0x51cf0b7]

<openSSL> <server> <certificateFile>/etc/clickhouse-server/clickhouse.pem</certificateFile> <caConfig>/etc/clickhouse-server/clickhouse.pem</caConfig> <privateKeyFile>/etc/clickhouse-server/clickhouse.key</privateKeyFile> <dhParamsFile>/etc/clickhouse-server/dhparam.pem</dhParamsFile> <verificationMode>none</verificationMode> <loadDefaultCAFile>true</loadDefaultCAFile> <cacheSessions>true</cacheSessions> <disableProtocols>sslv2,sslv3</disableProtocols> <preferServerCiphers>true</preferServerCiphers> </server> </openSSL>

в crt сертификат КХ + сертификат CA

prll
03.10.2018
17:34:21
distributed же использует и <client> когда сам подсоединяется

и тебе скорее всего нужна половина настроек из <server> скопированых в <client>

https://github.com/yandex/ClickHouse/blob/master/dbms/tests/server-test.xml#L20

Vsevolod
03.10.2018
17:43:12
@proller спасибо!

Google
Oleg
04.10.2018
06:57:31
Допустимо ли хранить разные партиции одной таблицы на разных дисках, интересует возможность держать актуальные данные на ссд, а старые на диске. Вариант отключить и засунуть в другую таблицу/сервер не подходит. Разные таблицы так прекрасно живут, но не поплохеет ли базе, если это сделать в рамках одной таблицы?

Wolf
04.10.2018
06:58:15
А зачем?

Там очень много последовательного чтения и оно прекрасно и на хдд работает

К тому же партиции мержатся и все такое

Мне кажется изначальная идея у вас оторвана от реальных потребностей

А никто не разобрался с этой старой issue https://github.com/yandex/ClickHouse/issues/2156 ?

Roman
04.10.2018
08:10:35
Коллеги, добрый день! Видел в доках, что использование Nullable влияет на производительность. Кто-нибудь сталикивался с тем, что начинало тормозит?

Kirill
04.10.2018
08:20:19
Коллеги, добрый день! Видел в доках, что использование Nullable влияет на производительность. Кто-нибудь сталикивался с тем, что начинало тормозит?
С Nullable действительно больше накладных расходов, но не так уж чтоб оно совсем из-за этого тормозило. Что у вас не так?

Roman
04.10.2018
08:22:29
С Nullable действительно больше накладных расходов, но не так уж чтоб оно совсем из-за этого тормозило. Что у вас не так?
проектируем. решаем использовать их или заполнять null дефолтыми значениями сразу

Kirill
04.10.2018
08:24:21
проектируем. решаем использовать их или заполнять null дефолтыми значениями сразу
Смотря как вы их использовать собираетесь, если без null жить никак то используйте

Michal
04.10.2018
08:31:20
А если серьезно - фраза про то что поле с NULL менее эффективно чем поле без NULL верна для любой базы. Если можно обойтись без NULL - лучше обойтись без него.

terry
04.10.2018
08:33:15
ClickHouse не тормозит © :D
да, бытует такое мнение

https://t.me/milovidov_perls

чет забросили

Artem
04.10.2018
08:35:31
Допустимо ли хранить разные партиции одной таблицы на разных дисках, интересует возможность держать актуальные данные на ссд, а старые на диске. Вариант отключить и засунуть в другую таблицу/сервер не подходит. Разные таблицы так прекрасно живут, но не поплохеет ли базе, если это сделать в рамках одной таблицы?
автоматики в этом месте сейчас нет. Как Вы собираетесь это реализовать? сделать линки на одни партиции на hdd, а на другие на ssd? это потребует тоже ручного детача-аттача при перекладывании "новых" в "старые". Чем лучше двух табличек тогда?

Kirill
04.10.2018
08:36:13
чет забросили
В ноябре HL++, может что-нибудь появится

Evgeny
04.10.2018
08:36:27
А никто не сталкивал на 18.12.17 с падением КХ при case when <LowCardinality(String)> then <String> ?

Google
Evgeny
04.10.2018
08:39:54
case выглядит примерно так : case when <LowCardinality(String)> like '%someword%' and <LowCardinality(String)> like '%anotherword%' then 'some word find'....

Nikolai
04.10.2018
08:56:59
Oleg
04.10.2018
08:57:58
Спасибо за ответы. Проблема в том, что 'актуальных' данных довольно много, в кеш они не лезут, а две таблицы не хочется делать, чтобы не лезть в код приложения, а симлинки регулярно делать несложно робота заставить. Но нет желания на живой базе такие опыты проводить :) Раз чёткого ответа нет, придётся, видимо, по таблицам раскидывать...

Sergey
04.10.2018
08:59:17
Господа, пытаюсь задать полю в словаре тип "Enum8" через xml конфиг вот так: <attribute> <name>some_field</name> <type>Enum8('admin'=1,'shop'=2)</type> <null_value/> </attribute> но получаю обидный ответ: { Error: Unknown type Enum8('admin' = 1, 'shop' = 2) Подскажите, пожалуйста.

Evgeny
04.10.2018
09:02:13
пока не получилось. а какая структура и движок у таблицы?
CREATE TABLE .... ( hostname LowCardinality(String), ts DateTime, ts_mcsec UInt32, ip_dst1 LowCardinality(String), ip_dst2 LowCardinality(String), user_agent LowCardinality(String)) ENGINE = MergeTree PARTITION BY toYYYYMM(ts) ORDER BY (ip_dst1, ts, ts_mcsec) SETTINGS index_granularity = 8192

Vsevolod
04.10.2018
09:02:19
@proller не помогло <client> <caConfig>/etc/clickhouse-server/clickhouse.pem</caConfig> <loadDefaultCAFile>true</loadDefaultCAFile> <cacheSessions>true</cacheSessions> <disableProtocols>sslv2,sslv3</disableProtocols> <preferServerCiphers>true</preferServerCiphers> <verificationMode>none</verificationMode> <invalidCertificateHandler> <name>AcceptCertificateHandler</name> </invalidCertificateHandler> </client>

ошибка та же

Artem
04.10.2018
09:24:32
Господа, пытаюсь задать полю в словаре тип "Enum8" через xml конфиг вот так: <attribute> <name>some_field</name> <type>Enum8('admin'=1,'shop'=2)</type> <null_value/> </attribute> но получаю обидный ответ: { Error: Unknown type Enum8('admin' = 1, 'shop' = 2) Подскажите, пожалуйста.
судя по коду - не поддерживается. Попробуйте использовать в этом месте String. Вообще, внутри Enum8 лежит Int8, но не уверен, что все конверсии правильно заведутся, если использовать его как промежуточный

Oleg
04.10.2018
09:32:49
На данный момент вы в диск уперлись или нет?
Нет, но разница в производительности имеется, если одни и те же данные на диске или ссд держать. Ну и масштабировать всегда можно, конечно. Но хочется иметь возможности оптимизации и не колхозить. Потому и интересуюсь тут - возможно ли и нужно ли вообще :)

Oleg
04.10.2018
09:46:34
а какая примерно разница и на чем ?
боюсь, у меня сейчас данных нет. замерял давно. Но как только кеш непрогрет или что-то в него не лезет, разница в скорости обработки вылезает, что логично. Впрочем, разница некритична и, вероятно, мне это действительно не нужно :)

Sergey
04.10.2018
10:04:00
Может быть кто-то сталкивался с ошибкой: Error: Attempt to read after eof: error parsing null_value Когда объявляю поле словаря: <attribute> <name>source_type</name> <type>UInt8</type> <null_value/> </attribute>

Sergey
04.10.2018
10:16:09
Может быть <null_value>0<null_value/> для инта?
Поправил с <null_value>null</null_value>, но он кладёт в таблицу 0. Можно ли сделать так, чтобы он клал null ?

Mike
04.10.2018
10:21:56
Поправил с <null_value>null</null_value>, но он кладёт в таблицу 0. Можно ли сделать так, чтобы он клал null ?
Я не совсем уверен, но вроде изначально колонку нужно объявлять как Nullable(UInt8) , у вас так?

Sergey
04.10.2018
10:22:54
Я не совсем уверен, но вроде изначально колонку нужно объявлять как Nullable(UInt8) , у вас так?
Тут использую xml конфиг, в данном случае подходит схема, что я указал выше.

Mike
04.10.2018
10:25:34
Тут использую xml конфиг, в данном случае подходит схема, что я указал выше.
а, пардон, понял. Это наверно уже к разрабам, как null в словарях интерпретируется

Google
Mike
04.10.2018
10:41:14
Всем привет наверняка многие сталкивались с подобной проблемой, есть кафка из нее идет json вида {"d2":"ok", "d1":1, "b": {"v": 1}} можно ли встроенными средствами кликхауса положить его в таблицу? или нужно уровнем выше перепаковывать в формат без вложенных объектов?

Evgeny
04.10.2018
10:52:31
Можно где-нибудь найти более новую сборку в rpm, чем https://packagecloud.io/altinity/clickhouse? Интересует тестовая сборка 18.14.1

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