
M
07.10.2018
10:09:40
Приветствую, коллеги
Периодически встает репликация на какой-нибудь одной ноде в кластере, на 3-5 часов бывает, потом сама восстанавливается.
В кластере З ноды, версия кх - 1.1.54310, zk - 3.4.9.
В логах ничего вразумительного. Подскажите плиз, если кто-нибудь сталкивался с подобным, в каком направлении копать?

Daniel
07.10.2018
11:05:08

Wolf
07.10.2018
11:13:49

Ivan
07.10.2018
11:22:20
Добрый день!
А здесь есть специалисты которые могут оценить на сколько правильно спроектированны таблице в БД и подсказать почему тормозит у меня некоторые запросы в CH ? Пишите в личку.

Google

Wolf
07.10.2018
11:50:38

Dima
07.10.2018
11:52:15
Неплохо...

Roman
07.10.2018
12:05:17
@milovidov_an

M
07.10.2018
18:59:21
ну а что значит ничего вразумительного
Нет в логах сообщений, каким-то либо образом намекающим на то что, с репликацией что-то не так. И еще момент - встает репликация не всех таблиц, а только одной-двух.

Wolf
07.10.2018
19:00:39
Смотрите что в зукипере

M
07.10.2018
19:03:23

Denis
07.10.2018
19:29:29

Mах
07.10.2018
20:11:03
Ребят, всем привет.
Есть вопрос по настройке кластера: есть 4 компьютера (2 Ubuntu, 2 elementary OS), локальная сеть. Компьютеры друг друга 'видят'. Установлены Clickhouse и ZooCeeper. Есть учебный пример ontime. Задача сделать распределенную базу на эти самые 4 компьютера.
Помогите пожалуйста документацией или примерами.
* Официальная документация Яндекса непонятная (нет примеров по распределенной базе), и такой пример (ниже), но тоже не сильно помог.
https://ruhighload.com/%d0%a0%d0%b0%d1%81%d0%bf%d1%80%d0%b5%d0%b4%d0%b5%d0%bb%d0%b5%d0%bd%d0%bd%d0%be%d0%b5+%d1%85%d1%80%d0%b0%d0%bd%d0%b5%d0%bd%d0%b8%d0%b5+%d0%b4%d0%b0%d0%bd%d0%bd%d1%8b%d1%85+%d0%b2+clickhouse


Daniel
07.10.2018
20:17:27
Ребят, всем привет.
Есть вопрос по настройке кластера: есть 4 компьютера (2 Ubuntu, 2 elementary OS), локальная сеть. Компьютеры друг друга 'видят'. Установлены Clickhouse и ZooCeeper. Есть учебный пример ontime. Задача сделать распределенную базу на эти самые 4 компьютера.
Помогите пожалуйста документацией или примерами.
* Официальная документация Яндекса непонятная (нет примеров по распределенной базе), и такой пример (ниже), но тоже не сильно помог.
https://ruhighload.com/%d0%a0%d0%b0%d1%81%d0%bf%d1%80%d0%b5%d0%b4%d0%b5%d0%bb%d0%b5%d0%bd%d0%bd%d0%be%d0%b5+%d1%85%d1%80%d0%b0%d0%bd%d0%b5%d0%bd%d0%b8%d0%b5+%d0%b4%d0%b0%d0%bd%d0%bd%d1%8b%d1%85+%d0%b2+clickhouse
Если я правильно понял, вам нужно шардирование. В таком случае нужны таблицы типа MergeTree на каждом шарде и Distributed, с помощью которой вы будете распределять и читать распределённые данные из шард.
Вот такая есть статья, почитайте, будет полезно для понимания.
https://habr.com/company/smi2/blog/317682/
Непонятно, что для вас есть "распределённая". Вариантов несколько 1) только 4 уникальные шарды 2) 2 шарды, по 2 реплики
В первом случае ZK вообще не нужен, например


Mах
07.10.2018
20:22:04

M
08.10.2018
06:57:00
а что system.replication_queue ?
на одной из нод есть в last_exception вот такие:
zkutil::KeeperException: invalid zhandle state, path: /clickhouse/tables/../replicas
спасибо за наводку, буду zk смотреть

Шурик Корсуков
08.10.2018
08:50:49
Добрый день. Мне кажется я где-то видел в ClickHouse функцию которая позволяесть считать скользящие суммы, сейчас с хода не могу это найти, или мне показалось?
может где-то в сорцах можно поискать?

Google

Daniel
08.10.2018
08:51:49
А кто-нибудь грузит в RowBinary? Хорошо работает, загрузка не ломается из-за левых символов в строках?

Artem
08.10.2018
08:53:55

Шурик Корсуков
08.10.2018
08:54:48

Alex
08.10.2018
08:57:50

Anton
08.10.2018
09:23:51
Добрый день!
При подключении к chproxy через odbc с библиотекой pyodbc получаю ошибку utf8 codec can't decode byte 0x80 in position 2: invalid start byte. Для JDBC драйверов выставлял настройки ssl=true, sslmode=none. Для ODBC не помогает. Сталкивался кто-нибудь? Те же самые драйвера и та же самая библиотека напрямую к ноде подключается без проблем.

Александр
08.10.2018
10:39:15
А alter table delete / update не поддерживает секцию SETTINGS?
В where есть условие на column in table, где table - таблица типа Set. При чтении с таким условием передается SETTINGS use_index_for_in_with_subqueries = 0 и все ок, но мутация не запускается.
Есть какой-то способ заставить это дело работать корректно без изменения глобальных настроек?


Anton
08.10.2018
11:50:13
День добрый. На тестовом окружении попробовали обновить КХ с достаточно старой версии на крайнюю, и у нас сломались внешние словари по ODBC.
18.5.1 и 18.10.3 работают. 18.12.13 и 18.12.17 выдают странное
2018.10.08 11:38:45.046289 [ 1 ] <Error> Application: DB::Exception: Cannot create table from metadata file /var/lib/clickhouse/metadata/db/browsers.sql, error: DB::Exception: Received error from remote server /?connection_string=DSN%3Dtest-postgres-system&columns=columns%20format%20version%3A%201%0A2%20columns%3A%0A%60id%60%20UInt64%0A%60name%60%20String%0A&max_block_size=8192. HTTP status code: 500 Internal Server Error, body: � Poco::Exception. Code: 1000, e.code() = 0, e.displayText() = Connection attempt failed: Connection:Not applicable
Server:test-postgres-system
===========================
ODBC Diagnostic record #1:
===========================
SQLSTATE = 08001
Native Error Code = 202
connction string lacks some options


Slach
08.10.2018
11:52:07
connection stirng lacks some options ;) хм, может url encode лишний где то?
как они в конфиге задаются?

Anton
08.10.2018
11:52:29
дык 10.3 работает, секунду
<dictionaries>
<dictionary>
<name>system_browsers</name>
<source>
<odbc>
<table>browsers</table>
<connection_string>DSN=test-postgres-system</connection_string>
</odbc>
</source>
<layout>
<flat/>
</layout>
<structure>
<id>
<name>id</name>
</id>
<attribute>
<name>name</name>
<type>String</type>
<null_value></null_value>
</attribute>
</structure>
<lifetime>
<min>300</min>
<max>360</max>
</lifetime>
</dictionary>
...
конфиг в odbc стандартный как в доке
разве что добавили для постгреса опцию, чтобы не было prepared transactions
UseServerSidePrepare = No

Timur
08.10.2018
12:49:40
https://clickhouse.yandex/docs/ru/getting_started/example_datasets/ontime/
есть у кого тестовый набор данных отсюда?
ато сейчас нельзя скачать

Aleksandr
08.10.2018
12:59:56
Приветствую. Подскажите пожалуйста, как правильно перейти с синг нод на кластер КХ? Когда то натыкался на статью в документации , не могу сейчас найти ее.

Владимир
08.10.2018
13:19:47
Не нашёл в документации возможности UPDATE с JOIN - это невозможно, или неописано?

Tima
08.10.2018
13:38:46

Mах
08.10.2018
14:07:50

Timur
08.10.2018
14:10:16

Google

Mike
08.10.2018
14:13:34

Alexey
08.10.2018
14:34:35
Привет! А подскажите пожалуйста, как получить разницу между датами в годах?

Alexey
08.10.2018
14:40:02

Alexey
08.10.2018
14:42:08

?
08.10.2018
14:56:42

Konstantin
08.10.2018
14:56:56
Здравствуйте! Скажите, пожалуйста, дорого ли сделать ALTER COLUMN: нужно сделать одно из полей внутри Nested структуры Nullable, а данных (партиций) много. Раньше сталкивался с ситуацией, что подобный ALTER попрождал очнь много частей и это блокировало вставки (too many parts)

molo4ko
08.10.2018
15:06:57
my_dict /etc/clickhouse-server/my_dict.xml ComplexKeyHashed (String, String, String) ['isDeleted'] ['UInt8'] 16642994448 66813174 1 113576709 0.42310621216893196 2018-10-08 09:22:02 MySQL: my_db.my_dict Code: 240, e.displayText() = DB::Exception: Allocator: Cannot mremap memory chunk from 4.00 GiB to 8.00 GiB., errno: 12, strerror: Cannot allocate memory, e.what() = DB::Exception
это фиксабельно?

?
08.10.2018
15:07:43
похоже потому что сортирует по TimeStamp. ммм, а можно ли чтобы runningDifference выводил по нужной мне сортировке?

Wolf
08.10.2018
15:23:10

Alexey
08.10.2018
15:29:31

Wolf
08.10.2018
15:30:56
А почему меньше?

Alexey
08.10.2018
15:33:24
А почему меньше?
виноват, плохой пример привел
SELECT toYear(toDate('2018-01-01')) - toYear(toDate('2017-01-04')) AS x

Aleksandr
08.10.2018
15:49:49
Привет, сегодня внезапно пропала таблица, на диске нет, есть что-то почитать по этому поводу?

Anton
08.10.2018
15:59:32

Aleksandr
08.10.2018
16:00:19
в логах не могу найти ничего похожего
есть вероятность что это произошло в конце месяца

M
08.10.2018
16:02:56
если есть реплика, посмотрите есть ли метаданные в зукипере. если нет - значит запросом убили
квери лог пошуршать
если включен

Google

Aleksandr
08.10.2018
16:03:39

M
08.10.2018
16:06:03
есть зукипер да, куда посмотреть?
можно любым клиентом зукипера. Или непосредственно через клик
select * from system.zookeeper where path = '/clickhouse/tables' limit 1
там двигаться по пути... и можно увидеть на реплике таблицу
там по этому пути будут реплики, дальше таблицы (кажись так)
Можно ещё глянуть папку с данными в папке / data. Если папка осталась значит убили метаданные таблицы если папки с данными нет - значит таки запросом. Просто так таблицы не пропадут

Aleksandr
08.10.2018
16:12:49
вероятность запроса на удаление крайне мала
а где на диске хранятся метаданные таблицы?

Timur
08.10.2018
16:19:21

Mах
08.10.2018
16:21:04
+
Как я понимаю, не актуально?

Timur
08.10.2018
16:22:14
Как я понимаю, не актуально?
я завтра посмотрю уже, ну ты если не сложно зашарь, всеравно я думаю ктонибудь еще спросит, в чате можно будет найти

Wolf
08.10.2018
16:24:48

Mike
08.10.2018
16:26:05

Aleksandr
08.10.2018
16:26:27
Дата метадата
$ sudo ls -la /var/lib/clickhouse/clickhouse/data
total 16
drwxr-xr-x 4 systemd-resolve systemd-journal 4096 Sep 6 18:29 .
drwxr-xr-x 4 root root 4096 Sep 6 18:29 ..
drwxr-xr-x 3 systemd-resolve systemd-journal 4096 Sep 6 20:30 default
drwxr-xr-x 2 systemd-resolve systemd-journal 4096 Sep 6 18:29 system
это та дата?

Wolf
08.10.2018
16:28:41
ну только два раза почему то кликхаус а так да первичный путь правильны

Aleksandr
08.10.2018
16:29:04
легаси
но metadata_path: /var/lib/clickhouse/metadata/system/zookeeper.sql
спасибо, буду копать дальше

Google

Aleksandr
08.10.2018
16:55:25
а если удалить метаданные и перезапустить кликхаус, сами данные (clickhouse/data/hits например) удалятся?

Wolf
08.10.2018
16:55:54
по идее нет

Aleksandr
08.10.2018
16:58:34
я нашел ошибку что в докер маунтится внешним диском только директория data, то есть метаданные пропадают после деплоя нового контейнера