
Алексей
30.05.2017
17:15:21
не исключено, что localhost у вас разолвится в ::1

Fike
30.05.2017
17:15:24
> (localhost:9000, ::1)
похоже на ipv6

Alex
30.05.2017
17:15:42
ping localhost
PING localhost (127.0.0.1) 56(84) bytes of data.
64 bytes from localhost (127.0.0.1): icmp_seq=1 ttl=64 time=0.013 ms
в конфигах сервера убрана строчка ipv6

Google

prll
30.05.2017
17:16:14
ping почти вcсегда - ipv4 only

Vladimir
30.05.2017
17:16:15
потому что в линуксе он ipv4
а для ipv6 есть ping6

Alex
30.05.2017
17:16:51
мне нужен сетап без ipv6

Fike
30.05.2017
17:16:55

Алексей
30.05.2017
17:17:11

prll
30.05.2017
17:17:17
а зачем убирать ipv6 ? лучше убрать ipv4 и v4 продолжит работать через v6

Alex
30.05.2017
17:17:39
getent hosts localhost
::1 localhost ip6-localhost ip6-loopback
все понятно
хосты нужно прописать
спс!!

Алексей
30.05.2017
17:18:30
не лучшее решение. ну ладно

Google

Alex
30.05.2017
17:18:47
хосты были прописаны
127.0.0.1 localhost
127.0.1.1 ubuntu
убрал из хостов ipv6 заработало
подскажите initdb() можно делать несколько раз? это безопасно?

Alexander
30.05.2017
17:20:55

prll
30.05.2017
17:24:00
и он при каждом запуске выполнятся


Alex
30.05.2017
17:26:06
как разложить данные по дневным партициям? данных за день пару лямов полей 4-5 все числа
сейчас он разложил так
│ 201705 │ 20170501_20170525_2_12578_11 │ 2017-05-01 │ 2017-05-25 │
│ 201705 │ 20170501_20170525_12582_24358_11 │ 2017-05-01 │ 2017-05-25 │
│ 201705 │ 20170501_20170525_24362_35070_11 │ 2017-05-01 │ 2017-05-25 │
│ 201705 │ 20170501_20170527_35074_40468_11 │ 2017-05-01 │ 2017-05-27 │
│ 201705 │ 20170524_20170527_40470_43970_10 │ 2017-05-24 │ 2017-05-27 │
│ 201705 │ 20170524_20170525_43972_62224_2410 │ 2017-05-24 │ 2017-05-25 │
│ 201705 │ 20170525_20170525_62226_62232_1 │ 2017-05-25 │ 2017-05-25 │
CREATE TABLE IF NOT EXISTS dashboard_widget
(
EventDate Date default toDate(ts),
ts DateTime,
_name String,
_value String,
_count Int16,
_sweight Int16
) ENGINE = MergeTree(EventDate, (_name, EventDate), 8192)

Alex
30.05.2017
17:33:55
Сейчас поддерживаются только партиции по месяцу. Можно эмулировать дневные партиции, создавая новую таблицу на каждый день.

Alex
30.05.2017
17:37:13
тогда будем использовать по месяцу
при данном скрипте создания и запросе
select count() as rows,
sum(_count) as _count,
sum(_sweight) as _sweight
from dashboard_widget
where _name = 'test103'
поле _name будет эффективно использоваться для поиска?

Alex
30.05.2017
17:40:25
Да
Оно же индексе на первом месте

Alex
30.05.2017
17:43:15
есть какойто вариант чтобы данные хранились только сутки?

Alex
30.05.2017
17:47:42
Пока только через отдельную таблицу на каждый день.
Обязательно сделаем произвольное партиционирование, но задача довольно обширная...

Andrey
30.05.2017
18:35:12
А правильно ли я понимаю что distributed таблицы берут данные с других серверов кластера используя юзера default?

Alex
30.05.2017
18:50:57
По умолчанию пользователь default, но можно указать в настройках кластера

Andrey
30.05.2017
18:51:28
А можно примерчик?

Google

Dmitry
30.05.2017
18:53:50

Andrey
30.05.2017
19:00:47
спасибо!

Alexander
30.05.2017
19:47:32

Dmitrii
30.05.2017
20:04:19
реплицируется ли запрос DROP TABLE? В старой документации явно сказано, что нет, однако, в новой я такого не нашел.
движок replicated merge tree

Alex
30.05.2017
20:10:17
Не реплицируется - DROP TABLE удаляет одну реплику.

Dmitrii
30.05.2017
20:11:16
спасибо

Alexander
30.05.2017
20:15:16

Maksim
31.05.2017
07:37:30
Добрый день, скажите пожалуйста сделал бэкапирование данных из КХ. Но заметил что размер бэкапов отличается существенно. Такое чувство что во время процесса не все гладко пошло и в архив вошли не все данные. Копирую в режиме рабочего сервера data данные , перед этим выполнив запрос ALTER TABLE $TABLE FREEZE PARTITION '2'. Может кто что подскажет ?
Как с полной увереностью делать полный бэкап при работающем сервере, к которому идут запросы?

Aloneibreak
31.05.2017
08:05:02
подскажите, нет ли возможности задать кастомный формат даты? например YYYY-MM
вариант с toYear(date), toMonth(date) немного не нравится, потому что возвращает месяц без ведущего нуля

Andrey
31.05.2017
08:08:04
Подскажите пожалуйста, как принудительно перезагрузить один (выборочно) внешний словарь?

Stepan
31.05.2017
08:12:59

Aloneibreak
31.05.2017
08:19:41

Maksim
31.05.2017
08:31:09
@milovidov_an Может вы ответите что нибудь на счет бэкапов ?

Maxim
31.05.2017
08:35:21
День добрый, подскажите как правильно в Clickhouse сделать аналог такого запроса:
SELECT RecordId, Note, Version FROM (
SELECT RecordId, Note, Version, ROW_NUMBER() OVER (PARTITION BY RecordId ORDER BY Version DESC) AS Rank FROM Objects
) WHERE Rank = 1
Типа получить все последние версии объектов

Roman
31.05.2017
08:41:20
select recordid, argMax(note, Version), max(Version) from Objects group by recordid;

Maxim
31.05.2017
08:43:52
О! Спасибо большое!

Oleg
31.05.2017
09:02:47
Добрый день! Есть ли возможность выключить проверку дедупликации в replicated таблицах? Т.е. идут строки данных иногда идентичные в ReplicatedSummingMergeTree. Получается часть информации теряется..

Google

Oleg
31.05.2017
09:09:47
а, дедуплицируются блоки, а не единичные строки, сори, вопрос отпал :)

Yury
31.05.2017
11:55:51
добрый день при запуске запроса OPTIMIZE TABLE table выдает ошибку
DB::Exception: File access error: directory not empty: /opt/clickhouse//data/db/table/tmp_20380101_20380101_962147_1027891_1.
чтобы это могло означать ?

Andrey
31.05.2017
11:56:39
что с правами на файл?

Yury
31.05.2017
12:20:38
файла такого там даже нет
директория доступна на запись

Vladimir
31.05.2017
13:16:25
А в кликхаусе кажется нету аггрегатной функции для массивов?
Я делаю запрос select пачка_полей group by name
одно из полей - массив чисел
желаемый результат - смержить массивы с удалением дубликатов

Igor
31.05.2017
13:17:59

Vladimir
31.05.2017
13:19:34
кажется что без этого будет anyArray

papa
31.05.2017
13:22:35
SELECT groupUniqArrayArray(x)
FROM
(
SELECT [1, 2] AS x
UNION ALL
SELECT [1, 3]
UNION ALL
SELECT [2, 3]
)

Vladimir
31.05.2017
13:26:11
о, да, я о таком не подумал

Alexey
31.05.2017
14:00:22
Да, MATERIALIZED для Distributed таблиц плохо работает.
С учетом этого, встал вопрос, какой вариант выбрать:
Timestamp DateTime,
TruncatedTimestamp DateTime DEFAULT toStartOfFiveMinute(Timestamp)
или
Timestamp DateTime,
TruncatedTimestamp DateTime MATERIALIZED toStartOfFiveMinute(Timestamp)
при создании таблицы
Кто какие проблемы/преимущества видит?

Vladislav
31.05.2017
14:05:18

Alexey
31.05.2017
14:06:04
а в чем прелесть MATERIALIZED? в том, что не надо перечислять все нужные колонки при инсерте?
в общем нашел комент Алексея по этой теме в гуглгрупс
сейчас решим
еще такой вопрос

Google

Alexey
31.05.2017
14:35:51
вот у нас есть поля Timestamp и TruncatedTimestamp (начало каждой 5-ой минуты)
как я понимаю TruncatedTimestamp в индексе будет очень эффективным селектором?
если нас устраивает такой грубый шаг
верно?

papa
31.05.2017
14:38:00
эта колонка принимает меньше значений, лучше сжимается, быстрее читается.

Alexey
31.05.2017
14:49:49
колонка понятно
но как она ведет себя в PK
под индексом я подразумевал праймари кей
даст это ощутимое преимущество?

Alex
31.05.2017
15:04:08
Если условия всегда будут выровнены на начало пятой минуты, разницы не будет. Если нет - индекс на Timestamp будет лучше.

Alexey
31.05.2017
16:27:08
т.е. получается, что смысла в таком поле TruncatedTimestamp в таблице нет?

Alexey
31.05.2017
16:47:37
Смысл есть, если вы не читаете точный Timestamp в запросе, а используете только обрезанный. Так вы будете читать меньше данных.

Alexey
31.05.2017
17:22:03
Вроде как уловил

Vladislav
31.05.2017
17:51:16
А есть какой-то редактор запросов для Clickhouse для конечных пользователей?) Ну там с перетаскиваением плашечек и вообще user-friendly интерфейсом...

Виктор
31.05.2017
17:52:25
tabix.io ?

Gleb
31.05.2017
17:53:28
Ничеси