@clickhouse_ru

Страница 487 из 723
Wolf
06.04.2018
07:14:06
и можно много в схема sql положить

Daniel
06.04.2018
07:14:28
Кто-то раньше писал, что в пакете с CH идут скрипты, которые рестартят сервис, если он умирает.

Wolf
06.04.2018
07:15:04
это наверно в системд надо смотреть

Stanislav
06.04.2018
07:15:14
Да, но они чаще рестартят при умирании.

Google
Vasiliy
06.04.2018
07:43:03
CREATE TABLE requests ( request_date Date MATERIALIZED toDate(request_time), request_time DateTime, request_uri String ) ENGINE=MergeTree(request_date, (request_time, request_uri), 8192); SELECT * FROM requests ORDER BY request_date DESC LIMIT 10;

Запрос видимо поднимает всю таблицу? Как такое оптимизировать? ...

Stanislav
06.04.2018
08:11:41
WHERE

Kirill
06.04.2018
08:23:49
Коллеги, добрый день! Подскажите, есть ли официальная поддрежка решения clickhous или только комюнити ?
Есть Altinity, официальный партнер Яндекса. Подробнее можете у @alexanderzaitsev узнать

это наверно в системд надо смотреть
Это в cron.d нужно смотреть

Aloneibreak
06.04.2018
08:31:36
Подскажите пожалуйста хотя бы куда копать Есть два шарда по две реплики КХ на все репликах созданы MergeTree таблицы mytable_real поверх них на всех репликах созданы Distributed таблицы mytable какое-то время все работает хорошо но потом одна из реплик начинает сходить с ума например: - при запросе select count() from mytable выдает ошибку об отсутствии таблицы mytable_real на втором шарде - при insert'e в mytable выдает ошибку об отсутствии колонки в таблице mytable_real. при это колонка присутствует и вставка непосредственно в mytable_real происходит без проблем

Nikolai
06.04.2018
08:53:35
а что говорит sudo netstat -tulpn | grep :9000 на каждой реплике? нет ли там нескольких слушающих процессов?

Google
Aloneibreak
06.04.2018
09:03:23
да. остальные ноды прекрасно видят ту одну, у которой проблемы

Артемий
06.04.2018
09:04:14
Иногда появялется такая ошибка: >DB::Exception: ZooKeeper session has been expired - какая-то нужная натсройка не устанволена?

Vladimir
06.04.2018
09:07:16
да. остальные ноды прекрасно видят ту одну, у которой проблемы
Пробовали указывать хосты ip-адресами, чтобы отсечь возможные проблемы с резолвером?

Артем
06.04.2018
09:07:30
Vsevolod
06.04.2018
10:06:19
гм, а сабж можно собрать clang 5?

Nikolai
06.04.2018
10:11:53
можно

Vsevolod
06.04.2018
10:13:52
а кто-то это использует у себя?

Pika
06.04.2018
10:14:21
Подскажите, конкеренткая в ставка к ClickHouse, например, по числу ядер на целевой системе быстрее, чем "однопоточная" вставка? А для replicated-таблиц?

И как реализована поддержка идемпотентности для replicated-таблиц? Не очень понятно, ведь для обычного mergetree такого нет.

Nikolai
06.04.2018
10:17:18
Подскажите, конкеренткая в ставка к ClickHouse, например, по числу ядер на целевой системе быстрее, чем "однопоточная" вставка? А для replicated-таблиц?
быстрее. главное, не вставлять суммарно чаще где-то одного блока в секунду. Если в серднем блок вставляется N секунд, то можно вставлять в N потоков.

а кто-то это использует у себя?
сборку с clang5 тестируем стандартными функциональными тестами. пакеты, если не ошибаюсь, собираем в gcc

Pika
06.04.2018
10:23:38
быстрее. главное, не вставлять суммарно чаще где-то одного блока в секунду. Если в серднем блок вставляется N секунд, то можно вставлять в N потоков.
Блок = max_insert_block_size число строк? На стороне сервера нет тротлинга? А если вставлять в реплицируемую таблицу? Если есть две реплики, то вставлять в 2 N потоков?

Jen
06.04.2018
10:24:29
джентельмены, кх умеет решардить данные при добавлении нового шарда? если не умеет, то планируется ли появление этого функционала?

Wolf
06.04.2018
10:24:44
есть отдельная тулза, есть описание в доке

Google
Jen
06.04.2018
10:25:45
это копипаста, немного не то мой вопрос связан с появлением DELETE

т.е. есть два шарда, заполненных на 50%, добавляю 3 и ожидаю, что после перешардирования каждый окажется заполнен на 30%

Nikolai
06.04.2018
10:27:22
Блок = max_insert_block_size число строк? На стороне сервера нет тротлинга? А если вставлять в реплицируемую таблицу? Если есть две реплики, то вставлять в 2 N потоков?
> Блок = max_insert_block_size число строк? да > На стороне сервера нет тротлинга? не должно быть (могу ошибаться) > Если есть две реплики, то вставлять в 2 N потоков? Если через Distributed, то в N. Можно непосредственно в каждую реплику вставлять разные данные (по N в каждую)

Pika
06.04.2018
10:27:53
@kochetovnicolai Спасибо!

Jen
06.04.2018
10:46:38
вы абсолютно правы, я лишь хотел донести мысль

насколько актуальна оценка про UPDATE/DELETE в Q1-Q2 2018?

Nikita
06.04.2018
10:54:06
Хотел спросить тоже по UPDATE/DELETE

Nikolai
06.04.2018
10:56:38
То, что в roadmap, пока актуально. https://clickhouse.yandex/docs/ru/roadmap/

Гаврилов
06.04.2018
11:00:22
а апдейт будет настоящим?

Jen
06.04.2018
11:09:13
про решардинг правда ничего не нашел, своими силами только если?

Nikolai
06.04.2018
11:12:24
а апдейт будет настоящим?
Настоящими. Но не мгновенными. Если очень примерно, что можно будет указать, какие данные и с какими условиями должны быть удалены, а далее в фоне это изменение будет постепенно применяться к кускам. Примерно как мержи. Опять же, возможно я где-то ошибаюсь :)

Гаврилов
06.04.2018
11:12:59
гарантированно или как в ReplacedMergeTable ?

Nikolai
06.04.2018
11:13:12
гарантированно

Гаврилов
06.04.2018
11:13:35
а это будет новый движок или в простой MergeTable добавите?

Nikita
06.04.2018
11:25:03
Спасибо kochetovnicolai !

Vsevolod
06.04.2018
11:30:30
/root/rpmbuild/BUILD/ClickHouse-07718746959cfc85fcb8ffd29d97c8e217b082a2/contrib/poco/Foundation/src/Thread_STD_POSIX.cpp:170:6: error: no matching function for call to 'pthread_setaffinity_np' if (pthread_setaffinity_np(_pData->thread->native_handle(), &cpuset) != 0) ^~~~~~~~~~~~~~~~~~~~~~ /usr/include/pthread.h:477:12: note: candidate function not viable: requires 3 arguments, but 2 were provided extern int pthread_setaffinity_np (pthread_t __th, size_t __cpusetsize,

Google
Vsevolod
06.04.2018
11:30:36
что-то не выходит каменный цветок

/usr/bin/ld: cannot find -lstdc++ clang-5.0: error: linker command failed with exit code 1 (use -v to see invocation) вот оно что, Семен Семеныч

а зачем ему stdc++, когда шланг использует libc++?

molo4ko
06.04.2018
12:05:00
просто в MergeTree
А обратно-совместимо или только для таблиц, созданных в новых версиях?

Alex
06.04.2018
12:06:53
На старых таблицах будет работать. Но после выполнения UPDATE откатиться не получится.

Oleg
06.04.2018
13:42:32
в clickhouse-copier параметр task-path должен иметь какое-то специальное значение? из примера не работает Can't get description node /task/path/description

Антон
06.04.2018
15:39:42
подскажите плиз, что такое VersionedCollapsingMergeTree?

Nikita
06.04.2018
15:49:15
ReplacingMergeTree сам по себе мерджится если данных для мерджа нет? Ну т.е. я создал новую таблицу, одним запросом туда данные перегнал, и вот уже пол часа жду пока оно поудаляет дубликаты

Alexandr
06.04.2018
15:50:37
Имеется задача прислывать старые данных с локальных серверов который могут быть недоступные долго время, при это получается что часть данных будут писаться в текущем времени и часть отправлятся как старые данные, насколько мне изветсно это плохо, стоит ли создавать ради такого таблицу на каждую метрику или для это задачи плохо подходит кх?

Alexey
06.04.2018
15:53:35
ReplacingMergeTree сам по себе мерджится если данных для мерджа нет? Ну т.е. я создал новую таблицу, одним запросом туда данные перегнал, и вот уже пол часа жду пока оно поудаляет дубликаты
насколько я понял, к ReplacingMergeTree нужно относиться как к MergeTree, то есть селектить с учетом того, что там могут быть дубли. ReplacingMergeTree просто экономит место на диске, схлопывая дубли. Но можно, например как я, схлопывать данные сразу после вставки c помощью optimize table partition final, и радоваться костылю :)))

Nikita
06.04.2018
15:54:23
ReplacingMergeTree не дает гарантий отсутствия дубликатов. Но вроде OPTIMIZE фиксит.
Мне не нужна гарантия отсутствия дубликатов. Пока мне интересно как часто оно запускает эту процедуру

Alexey
06.04.2018
15:55:22
это время не определено, разрабы говорят, как КХ посчитает нужным

Гаврилов
06.04.2018
15:55:37
у меня 4 дня не запускалось

Nikita
06.04.2018
15:55:42
Я так понимаю пока я чего-нибудь туда не инсертну чтобы инициировать merge процесс, данные так и будут

Гаврилов
06.04.2018
15:55:43
пока я снова не начал туда дубли фагачить

Nikita
06.04.2018
15:56:24
у меня 4 дня не запускалось
да это даже ответ на мой вопрос

Гаврилов
06.04.2018
15:56:57
и в итоге всеравно 5 дублей осталось)

которые даже через optimize table partition final не убирались

Alexey
06.04.2018
15:57:27
если данных не очень много, можно селектить с FINAL

Google
Alexey
06.04.2018
15:57:43
FINAL отбрасывает дубли

Гаврилов
06.04.2018
15:57:56
у меня 5 всеравно осталось

они потом пропали

Alexey
06.04.2018
15:58:14
значит они на разных шардах, поэтому и не схлопываются

Гаврилов
06.04.2018
15:58:19
после какойто очередной партии

у меня 1 сервер

Alexey
06.04.2018
15:58:34
ну раз пропали, значит все ок

Nikita
06.04.2018
15:58:55
Да поведение примерно такое как я и думал, заинсертил еще пачку дублей, появились чанки для мерджа — схлопнулось сразу

Гаврилов
06.04.2018
15:58:59
даже на optimize table partition final нельзя надеятся

и нифига не сразу

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

почти всегда нужно заново залить данные в кх

не буду же я дропать таблицу и ждать полной синхры)

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