@clickhouse_ru

Страница 547 из 723
Wolf
01.06.2018
10:52:54
да ей без разницы

Рулон
01.06.2018
10:57:09
т.е это программа+ плагин, который читает таблчику select * from system.query_log ?

Alexey
01.06.2018
11:15:27
Рулон
01.06.2018
12:40:10
т.е это программа+ плагин, который читает таблчику select * from system.query_log ?
Настроил ) а кто нибудь подскажет какие метрики мониторить?

Google
Nik
01.06.2018
12:56:02
День добрый, есть тут кто нибудь кто настраивал КХ на Kubernetes? Были ли какие нибудь проблемы в работе?

Kirill
01.06.2018
13:21:55
Настроил ) а кто нибудь подскажет какие метрики мониторить?
Количество кусков в партиции мониторьте, если оно растет то что-то пошло не так и стоит смотреть в system.merges и system.replication_queue

yuyu
01.06.2018
13:53:00
Хочется уточнения по тому как работает опция —input_format_allow_errors_num=N в clickhouse-local и clickhouse-client. Правильно я понимаю, что если во входном TSV файле встречается до N ошибок, то такие строки игнорируются, а если больше - весь остаток входных данных дропается и дальше никуда не идёт? Или "битые" строки в любом случае пролезают дальше. У меня из-за мусора на входе вылезли проблемы стаким пайплайн: cat csvfiles |\ clickhouse-local —input-format=CSVWithNames ..... —query="SELECT ..... FROM table FORMAT Native" -input_format_allow_errors_num=${MAX_INPUTFORMAT_ERRORS} |\ clickhouse-client -query="INSERT INTO $DB.$DATATABLE FORMAT Native" -input_format_allow_errors_num ${MAX_INPUTFORMAT_ERRORS} Выглядит так, будто до первой битой строки в csv доходит и оставшиеся в базу не грузятся.

Arsen
01.06.2018
14:08:49
Делаю селект из Merge-таблицы, получаю такую ошибку: Different expressions with the same alias _table Подскажите, как побороть)

Arsen
01.06.2018
14:10:14
Merge-таблица матчит две другие Merge-таблицы, каждая из которых матчит по одной ReplicatedMergeTree таблице

Arsen
01.06.2018
14:12:10
Может быть заменить на одну Merge таблицу?
Это есть в планах. А есть способ побороть ошибку быстрее?

Alexey
01.06.2018
14:15:35
Это есть в планах. А есть способ побороть ошибку быстрее?
Думаю, нет простого способа. Хотя по задумке должно всё работать корректно - добавляться разные столбцы _table, _table1 и т. п. То есть, это - баг. Если сделайте минимальный тест - будет хорошо.

Arsen
01.06.2018
14:17:29
Думаю, нет простого способа. Хотя по задумке должно всё работать корректно - добавляться разные столбцы _table, _table1 и т. п. То есть, это - баг. Если сделайте минимальный тест - будет хорошо.
Если это имеет значение, сначала была создана главная Merge-таблица с новым столбцом, а потом добавлено по недостающему столбцу во вложенные Merge таблицы и, соответственно, во вложенные ReplicatedMergeTree

yuyu
01.06.2018
14:18:50
А если больше - то кидается исключение и весь блок данных не будет вставлен (блоки по 1 048 576 по-умолчанию).
"Весь блок" - имеется в виду, что и ранее (до исчерпания лимита ошибок) прочитанные нормальные строки тоже не попадают? У меня 1 ошибка на 20K-200K строк. Если выставить макс.число ошибок заведомо большое (>1000 ), то хоть что-то в итоге в базу попадёт? В доках поведение при обработке таких ошибок не особо подробно разжёвана к сожалению.

Рулон
01.06.2018
14:20:10
Количество кусков в партиции мониторьте, если оно растет то что-то пошло не так и стоит смотреть в system.merges и system.replication_queue
а есть какие нибудь системные таблицы, типа сколько памяти осталось, сколько пользователи отожрали? не процесс лист

Google
GithubReleases
01.06.2018
16:42:54
yandex/ClickHouse was tagged: v1.1.54385-stable Link: https://github.com/yandex/ClickHouse/releases/tag/v1.1.54385-stable Release notes: v1.1.54385-stable

Danil
01.06.2018
16:45:46
Пзрижиз в р

Slava
01.06.2018
16:46:27
delete, выкатился?)

Alex
01.06.2018
17:13:43
delete, выкатился?)
К сожалению нет. Это фикс-релиз, в котором исправлена неприятная ошибка в клиентской библиотеке ZooKeeper.

Denis
01.06.2018
17:13:43
>ClickHouse release 1.1.54385 >* Исправлена ошибка, которая в некоторых случаях приводила к блокировке операций с ZooKeeper. А какие симптомы были у этой проблемы? Бывает после добавления колонки в реплицируемую таблицу, зависание запросов к parts , columns, до ребута (kill-9) -- это оно?

Yegor
02.06.2018
11:14:10
Кирилл, ты бы это в вики перенес что ли? :)

Kirill
02.06.2018
17:32:52
Кирилл, ты бы это в вики перенес что ли? :)
В нашу или паблик? Просто там не совсем как "делайте так", а набор "рецептов", который, кстати, действительно можно в каком-то виде начать делать в "вики"; например, подобная штука, есть у Zookeeper. Я думаю у Лёши (@milovidov_an) тоже есть определенное количество решений которые можно перенести с https://gist.github.com/alexey-milovidov и "зафиксировать".

Yegor
02.06.2018
18:18:35
Кирилл, да, я про нашу доку. Думаю, что любые ссылки будут полезны для вновьприбывших.

Kirill
02.06.2018
19:34:58
Кирилл, да, я про нашу доку. Думаю, что любые ссылки будут полезны для вновьприбывших.
У нас в доке все есть (читай step_by_step), но, у меня проф-деформация, мне некоторые вещи кажутся сильно очевидными, а так - да, нужно "очеловечиваться" и начать рассказывать как мы можем держать самый востребованый трафик на 10(app)+ серверах и все такое )

Denis
02.06.2018
23:13:07
А как КХ определяет какие партиции надо читать при сложном партиционировании? Что если я партиционирую по функции? toYYYYMM или какой-то другой хеш-функции, как писать where чтобы КХ читал только нужные партиции?

Google
Alexey
02.06.2018
23:17:39
А как КХ определяет какие партиции надо читать при сложном партиционировании? Что если я партиционирую по функции? toYYYYMM или какой-то другой хеш-функции, как писать where чтобы КХ читал только нужные партиции?
ClickHouse пишет минимумы и максимумы всех столбцов, которые участвуют в аргументах функции - выражения партиционирования. Партиции будут отфильтровываться по условиям на эти столбцы.

Denis
02.06.2018
23:20:48
ClickHouse пишет минимумы и максимумы всех столбцов, которые участвуют в аргументах функции - выражения партиционирования. Партиции будут отфильтровываться по условиям на эти столбцы.
ОК, с составными что ( partition by (a,b) )? Баги или так и задумано, надо прочитать партицию с 1-й строкой, читает 20млн. CREATE TABLE test.testy(d Date, n Int64) ENGINE = MergeTree Partition by (n, toYYYYMM(d)) Order by (d); insert into test.testy(d,n) select '2018-05-01', -1 from numbers(1); insert into test.testy(d,n) select '2018-05-01', 1 from numbers(1); insert into test.testy(d,n) select '2018-05-02', 1 from numbers(20000000); SELECT count() FROM test.testy PREWHERE n = -1; 1 rows in set. Elapsed: 0.009 sec. Processed 19.92 million rows, 159.38 MB (2.18 billion rows/s., 17.42 GB/s.)

Egor
02.06.2018
23:28:35
Задумано, чтобы читало только конкретную партицию по условию на n. Недоработка.
А что насчёт kafka engine и materialized view ?данные долго флушатся, хотя они естт внутри Кафка енжайн

Alexey
02.06.2018
23:33:30
А что насчёт kafka engine и materialized view ?данные долго флушатся, хотя они естт внутри Кафка енжайн
Я не помню внутреннее устройство Kafka engine. Там нет возможности настроить сброс данных не только по количеству строк, но и по секундам?

Alexey
02.06.2018
23:42:02
На старой версии все хорошо работало
Есть возможность написать Marek Vavrusa, он есть в Telegram.

Alexey
02.06.2018
23:43:35
Только на английском.

Egor
03.06.2018
01:46:22
Kirill
03.06.2018
05:59:46
А где ваша wiki? Можно перенести общеполезные вещи в официальную документацию.
У нас есть внутренняя "вики", но, как и положено, в неё мало что поподает и есть (бывает) описание к сервисам, вот там, обычно, что-то более ценное найти можно, @lukashes, надо отдать ему должное, заставляет нас всё описывать что мы делаем, надо будет все структурировать и часть можно выложить как общеполезные рекомендации

Есть возможность написать Marek Vavrusa, он есть в Telegram.
Можно не только Марека, но и меня пинать, т.к. мы используем Kafka Engine и в ближайшем будущем будем обновляться, соответственно эта штука нас местами заафектит и придется её править, но лучше это сделать заранее. А так из Cloudflare, кто имеет отношение к ClickHouse, есть русскоговорящие https://github.com/bocharov и https://github.com/bobrik

Артемий
04.06.2018
04:50:52
Привет!

Прошу прощение, что не совсем по теме. Нужно хранить файлы на нескольких серверах (файловая БД или распределенное хранилище). При обращении к "облаку файлов", всегда должна отдаваться самая свежая версия файла. Что может помочь такое реалиовать?

Stanislav
04.06.2018
04:59:27
Можно на ceph глянуть. riak не советую - после какого-то объёма страдает падучей

Kirill
04.06.2018
06:52:27
Насколько я помню Riak в прошлом году подзабросили

Рулон
04.06.2018
07:56:40
Друзья, может кто сталкивался с подобной задачей. нужно провести нагрузочное тестирование кх . Посоветуете инструменты или самому что то велосипедить?

Google
Kirill
04.06.2018
07:58:25
Друзья, может кто сталкивался с подобной задачей. нужно провести нагрузочное тестирование кх . Посоветуете инструменты или самому что то велосипедить?
А что именно вы собираетесь тестировать? Мы, в свое время, просто продакшен данные стали дублировать в КХ чтоб посмотреть как оно

Nik
04.06.2018
08:00:51
у нас КХ в nomad, но думаю проблемы схожие будут )
А можете описать ваши проблем? Телеграм в выходные не работал поэтому сразу не спросил

Руслан
04.06.2018
08:01:57
Alex
04.06.2018
08:04:00
А можете описать ваши проблем? Телеграм в выходные не работал поэтому сразу не спросил
ну самая большая проблема это отключение инстансов и реаллокация, мы не используем централизованные хранилища и если дохнет нода то считается что данные потерялись, изза этого возникают случае что некоторые куски не доезжают и кх начинает портить лог исключениями. еще неудобно что при частом изменении топологии забивается zookeeper, а чистка его пока не встроена в кх и надо делать side-car'ы, но в целом от кх в оркестраторе я в восторге

Nik
04.06.2018
08:10:03
ну самая большая проблема это отключение инстансов и реаллокация, мы не используем централизованные хранилища и если дохнет нода то считается что данные потерялись, изза этого возникают случае что некоторые куски не доезжают и кх начинает портить лог исключениями. еще неудобно что при частом изменении топологии забивается zookeeper, а чистка его пока не встроена в кх и надо делать side-car'ы, но в целом от кх в оркестраторе я в восторге
Репликация не спасает при смерти ноды? Думал процесс должен быть прозрачным и чуть ли не автоматическим. Т.е. в целом вы не используете персистентные хранилища заменяя их на физически привязанные к ноде. Проблема с zookeeper пока не понятна, что мешает ввести в строй новую ноду с тем же именем что и у вышедшей из строя?

Рулон
04.06.2018
08:10:06
Добрый день. Рекомендую apache jmeter
Щас попробуем, спасибо

Kirill
04.06.2018
08:14:30
Мы хотим проверить сколько записей в секунду выдержит кх без роста мержей
Много если писать одним блоком, а не кучей отдельных INSERT. А так просто пишите любым удобным для вас клиентом в цикле, поднимите их N штук и смотрите в system.events

Рулон
04.06.2018
08:16:47
Вот у нас как раз и проблема, что пока будет куча insert, но железо очень мощное

Stanislav
04.06.2018
08:19:21
Оцениваю подобное в примерно десяток инсертов в секунду итого. Плюс-минус в зависимости от железа.

Когда-то тестировал

Это на MergeTree

Если перед MergeTree стоит Buffer, то можно ожидать несколько сотен, в зависимости от того, насколько насколько удачно подобраны параметры буфера.

Kirill
04.06.2018
08:21:08
Вот у нас как раз и проблема, что пока будет куча insert, но железо очень мощное
Есть вот такая штука https://github.com/nikepan/clickhouse-bulk , сам не пользовался, но советую )

Stanislav
04.06.2018
08:21:52
Пробовал - либо я туплю, либо она действительно объединяет каждые два инсерта в один из потока одинаковых инсертов в одну таблицу...

Alex
04.06.2018
08:29:24
Репликация не спасает при смерти ноды? Думал процесс должен быть прозрачным и чуть ли не автоматическим. Т.е. в целом вы не используете персистентные хранилища заменяя их на физически привязанные к ноде. Проблема с zookeeper пока не понятна, что мешает ввести в строй новую ноду с тем же именем что и у вышедшей из строя?
при репликации может не успеть передать чанк, нода сдохла, чанк остался на старой, а старая недоступна. по поводу того же имени - когда создает новую реплику, то там накатывается миграция чтобы создать базу данных. при этом мы не можем создать реплику с тем же именем так как она ж уже есть в зукипере, поэтому имена идут по сути заново

Stanislav
04.06.2018
08:51:43
Господа, никто не в курсе, как узнать, сколько и какой памяти ест кликхаус? А то у меня один из узлов жрёт память и уже съел почти 70% от всей памяти узла. За последние две недели - линейный рост с 13% до 67%

Google
Stanislav
04.06.2018
08:53:09
Два другие узла - колеблются в районе 13-15% в течение этого времени.

Alex
04.06.2018
08:53:15
Спасибо. Похоже что проблемы примерно такие же как если бы запускалось безо всяких оркестровых примочек
в целом почти такие же, просто с оркестрацией вырастает их частота и они становятся более явными

Evgeny
04.06.2018
09:31:52
@milovidov_an В datagrip готовы запилить поддержку кликхаус, если дать им инфу из этого документа: https://www.jetbrains.com/datagrip/new_dbms/ (Таск про поддержку clickhouse https://youtrack.jetbrains.com/issue/DBE-3489)

Гаврилов
04.06.2018
09:33:47
оно же и так работает

не будут же они автозаполнение и диалект делать?

Гаврилов
04.06.2018
09:37:30
все слишком часто меняется

это не оракл - где за 10 лет почти ничего не изменилось

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