@clickhouse_ru

Страница 287 из 723
kamish
16.10.2017
08:56:10
в этот момент /var/lib/clickhouse пуст

можно и после работы с кликхаусом, но тогда ты потеряешь все свои данные =)

можешь протестировать на докере, например

Ilya
16.10.2017
09:02:45
А в чём проблема смонтировать диск куда надо, переместить все данные на этот диск, поправить path в когфиге и перезапустить кликхаус?

Google
Alex
16.10.2017
09:06:50
я вот про это и справшивал, можно ли путь указать кх

где базы лежат

@qweran

Ilya
16.10.2017
09:08:34
я вот про это и справшивал, можно ли путь указать кх
https://clickhouse.yandex/docs/ru/operations/server_settings/settings.html#path

Alex
16.10.2017
09:09:36
спасибо

Алексей
16.10.2017
09:10:24
подскажите, пожалуйста, достаточно ли экранировать апостроф и бэк-слэш в запросах, чтобы избежать инъекций?

и есть ли какая-то разница (кроме эстетической) между форматами time BETWEEN 123456778 AND 234556677 и time >= 123456778 AND time <= 234556677 ?

Alex
16.10.2017
09:46:07
и есть ли какая-то разница (кроме эстетической) между форматами time BETWEEN 123456778 AND 234556677 и time >= 123456778 AND time <= 234556677 ?
Вы когда исполняете BETWEEN из нативного клиента, он показывает переписанный запрос, где запись становится как >= AND <=

Алексей
16.10.2017
09:47:11
спасибо!

Павел Максимов
16.10.2017
10:28:26


Oleh
16.10.2017
10:29:42
а в джоине тоже есть where id =?

Symstriker
16.10.2017
10:30:45
Похоже на то ))

Павел Максимов
16.10.2017
10:35:08
а в джоине тоже есть where id =?
а зачем в джоине, он по left join должен прицепить только, которые отфильтрованы

Google
Павел Максимов
16.10.2017
10:38:05


Anton
16.10.2017
10:39:36
clientID какой тип?

Павел Максимов
16.10.2017
10:45:13
Vladimir
16.10.2017
10:45:22
У меня точно такая же проблема была. при этом в консоле результат корректный. Я решил, что это косяк тебикса

Павел Максимов
16.10.2017
10:45:58
У меня точно такая же проблема была. при этом в консоле результат корректный. Я решил, что это косяк тебикса
я тоже почти уверен, что на самом деле он правильно фильтрует, но отображает другие значения

Vladimir
16.10.2017
10:52:22
Коллеги, а ни у кого не возникло случайно сегодня проблем с обновлением логов за вчера? У меня уже несколько часов запрос висит в статусе created, хотя обычно минут 5 на рассчёт уходит..

kamish
16.10.2017
10:53:02
у таббикса уже есть issue на эту тему?

сейчас гляну

походу нет

Vladimir
16.10.2017
10:54:34


kamish
16.10.2017
10:55:15
https://github.com/smi2/tabix.ui/issues?utf8=%E2%9C%93&q=is%3Aissue

Vladimir
16.10.2017
10:56:06
Я напишу тогда

Алексей
16.10.2017
11:35:54
подскажите, пожалуйста: toStartOfMonth есть, toStartOfHour есть; а toStartOfDay почему-то нету... почему?

правильно ли считать, что toStartOfDay эквивалентно toRelativeDayNum(time) * 60?

Oleksandr
16.10.2017
11:39:19
подскажите, есть ли jvm либа для tcp общения с CH ?

Google
Vladimir
16.10.2017
11:47:05
Коллеги, а ни у кого не возникло сегодня проблем с обновлением логов за вчера? У меня уже несколько часов запрос висит в статусе created, хотя обычно минут 5 на рассчёт уходит.. Просто хочется убедиться, что проблема там, а не тут

Алексей
16.10.2017
11:49:52
а group by toDate(x) не подходит?
а тайм-зона клиента/сервера при этом учитывается?

Konstantin
16.10.2017
11:52:39
V
16.10.2017
12:47:40
всем привет. linux pm6 4.4.0-97-generic #120-Ubuntu. ClickHouse server version 1.1.54292. стабильный из ppa яндекса. суть в том, во время нагрузочного тестирования грохнул одну из нод (при этом запись продолжилась), после этого все ноды продолжают что-то писать на диск уже 30 минут (причём весьма активно: по 90+ мб/сек, хотя в них точно уже никто не пишет). как такое может быть?

clickhouse-client --query='SHOW PROCESSLIST' выдаёт, что это пишет дистрибьютед нода, на самой ноде та же команда выдаёт, что процессов нет.

Судя по активности дисковой подсистемы - это фоновое сжатие. /dev/mapper/vg--pm1-cl 230283684 101426340 117316660 47% /mnt/click /dev/mapper/vg--pm1-cl 230283684 68251432 150491568 32% /mnt/click Подобная картина проявляется и на других нодах. Описание подобной фитчи в документации не нашел. И почему distributed-нода не прервала процесс записи в неё при выключении ноды без реплики?

Nikolai
16.10.2017
13:39:02
мержи происходят в фоне, это нормальное поведение. запись в distributed таблицу по-умолчанию асинхронная. данные сначала буферизуются в файлы, затем отсылаются на другие ноды. Если нода не доступна, то запись продолжается, просто данные для такой ноды остаются на диске (в clickhouse/data/database/distributed_table должны быть данные вида user:password@host:port)

V
16.10.2017
13:40:26
мержи чего? сжатие в смысле?

Nikolai
16.10.2017
13:41:36
можно включить синхронную вставку (для Replicated* таблиц): insert_distributed_sync поставить в true в users.xml. тогда ошибка будет непосредственно при вставке

V
16.10.2017
13:43:08
не, у меня без репликации всё

при этом происходит процесс фонового сжатия

почему так?

Nikolai
16.10.2017
13:43:38
мержи чего? сжатие в смысле?
CH хранит данные в кусках. Если просто, каждый запрос вставки порождает кусок. Выгоднее иметь мало больших кусков, чем много маленьких. Поэтому в фоне содержимое объединяется в более крупные куски.

V
16.10.2017
13:44:21
ясно, а насколько это влияет на другие запросы?

т.е. просадки по производительности из-за этого не будет?

Nikolai
16.10.2017
13:46:27
может быть просадка, конечно, так как ресурсы на мерж тратятся :) но в целом не должно быть критично

V
16.10.2017
13:47:05
а можно отключить это? или квотировать?

также вопрос: возможно ли риалтаймово мониторить состояние кластера? т.е. что все ноды доступны и связаны, хотя бы?

Nikolai
16.10.2017
13:48:26
отключать мержи не стоит, так как если их не делать, то через какое-то время все перестанет работать

Google
V
16.10.2017
13:48:57
ясно

а по второму вопросу?

Nikolai
16.10.2017
13:51:56
если правильно помню, в самом CH нет такой возможности. можно, например, переодически проверять ноды снаружи

V
16.10.2017
14:03:43
@kochetovnicolai т.е. я правильно понимаю, что дистрибьютед-таблица выполняет функции защиты данных в случае отказа ноды или всех её реплик? а что будет на чтение? она прочитает из этой временной таблицы?

и после того, как нода включится, что дистрибьютед нода будет ли лить эти данные на нужную ноду и удалять с себя?

V
16.10.2017
14:05:42
и с себя удалит?

Nikolai
16.10.2017
14:06:59
да. также, пока данные не будут доотправлены на восстановленную ноду, запросы могут возвращать резные результаты в зависимости от того, на какую реплику пошли за данными

V
16.10.2017
14:07:24
лул

можно, плиз, написать ещё неочевидных для обычных БД вещей

особенно связанных с возможностью про*ба данных или неконсистентной записи/чтения

просто мы собираемся использовать данный продук в продакшене

я занимаюсь его тестированием

и честно говоря от кластеризации не в восторге

Nikolai
16.10.2017
14:12:16
совсем потерять данные, кажется, нельзя (кроме понятных ситуаций, типа смерти всех реплик). В целом, лучше использовать Replicated таблицы. А также можете вставлять данные с insert_distributed_sync, если нужно знать об ошибках вставки сразу.

V
16.10.2017
14:15:51
ок, вопрос: как более-менее нормально работать с большим кластером? доступим на 20 таблиц по 3 реплики? писать скрипты, которые, будут делать мерджед-таблицы и куски XML-файла?

и вообще: насколько я понимаю, при использовании в продакшене, если мы говорим о создании новых таблиц с репликацией (а у нас несколько шардов), то лучше сразу говорить скрипты даже при небольшом количестве шардов?

просто ReplicatedMergeTree крайне через зад создаются, плюс надо учитывать, схему распределеня по шардам и т.д.

(куски XML-файла конфига)

Google
Petr
16.10.2017
14:39:50
Привет всем, мне нужно прикрутить фронт к базе, запросы к бд отправляю в очередь задач, но вот в чем проблема хоть и кликхаус быстрый, если запрос будет долго выполняться как избежать разрыва соединения?

V
16.10.2017
14:42:23
@qweran @kochetovnicolai ещё вопрос: допустим у нас полностью уничтожилась одна реплика, как её восстановить? при попытке создать на новом сервер пишет со стороны зукипера, что такая реплика уже существует. решалось так: удалял всю ветку реплики в зукипере, потом создавал на новой ноде всё также, как на старой, уцелевшая магическим образом цеплялась к новой ноде и реплицировалась в неё

есть ли нормальное решение? данное выглядит как-то через жопу

Nikolai
16.10.2017
14:44:36
думаю, если делать attach таблицы, то не надо удалять ветку зукипера

или физически переложить table_name.sql в из metadata/database/ другой реплики в аналогичное место

Ilya
16.10.2017
14:50:21
есть ли нормальное решение? данное выглядит как-то через жопу
Насколько знаю, такого решения нет. Потерял таблицу полностью — создавай всё заново руками.

Evgeniy
16.10.2017
14:57:42
есть саксесс стори, в которой использовался этот мануал https://clickhouse.yandex/docs/en/single/index.html#recovery-after-complete-data-loss , зукипер не трогали, перетаскивали метадату с реплик и создавали файл force_restore_data

V
16.10.2017
15:02:30
не менее жопно

а с мониторингом кто-нибудь что-нибудь делал?

особенно состояния кластера

а не в плане того, какие запросы сейчас идут

@kochetovnicolai кстати, ты говорит о фоном мердже. а как так получилось, что у меня из 33гб стало после завершения меджа стало 22гб. не слишком ли большая разница?

учитывая, у меня гарантированно уникальные данные

Yuri
16.10.2017
15:10:48
добрый вечер, не нашли способа, и есть вопрос, есть-ли возможность абсолютно отказаться от CLANG в сборке и использовании clickhouse ?

V
16.10.2017
15:12:33
>добрый вечер, не нашли способа, и есть вопрос, есть-ли возможность абсолютно отказаться от CLANG в сборке и использовании clickhouse ? зачем?

Yuri
16.10.2017
15:14:07
>добрый вечер, не нашли способа, и есть вопрос, есть-ли возможность абсолютно отказаться от CLANG в сборке и использовании clickhouse ? зачем?
мне нельзя говорить о причинах, скажем так, это слишком дорого, из-за огромных размеров исходного кода этого самого CLANG

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