
Viktor
22.08.2018
09:33:49
Я не могу написать where path like '%stage%' ?

Alex
22.08.2018
09:38:40
Я не могу написать where path like '%stage%' ?
Нет, так как для выполнения такого запроса в общем случае потребуется обойти всё дерево нод зукипера. Если у вас нужные ноды в одной директории находятся, то можно написать WHERE path = '<dirname>' AND name LIKE '%stage%'

Viktor
22.08.2018
09:41:23
thx

Mike
22.08.2018
09:50:19

Google

Anton
22.08.2018
10:13:26
Доброго дня коллеги, прошу помочь разобраться в warning.
<Warning> *** (Merger): Unexpected number of parts removed when adding *: 2 instead of 6 в чем может быть причина подобных ошибок?

Kirill
22.08.2018
10:35:48
Подскажите, как select email from ... вывести со сворим форматированием, т.е. результат выборки должно быть не какой-то емейл, а например some_test + email
ну и всё это мне нужно для подготвки csv дампа в PG и некий email надо к jsonb формату для встаки подготовить

Oleg
22.08.2018
10:39:59

Kirill
22.08.2018
10:41:08
спаисбо

Полина
22.08.2018
10:45:27
Коллеги и админы, а можно в этом канале разместить вакансию?) в тщетной надежде найти прекрасного и волшебного аналитика, работающего с кликхаузом?

Victor
22.08.2018
10:46:06
разместите, будет интересно, что просят нынче

Alexey
22.08.2018
10:46:14
верно

Полина
22.08.2018
10:48:58
Я ищу (senior) аналитика на интереснейший проект - компания пилит платформу цифровой дистрибуции видеоигр с экономикой, построенной на использовании криптовалют и технологии блокчейн. Находимся на м.Дмитровкая, вопросы можно писать мне.
Чем предстоит заниматься:
* Построение системы аналитики в компании:
* Разработка регулярных отчетов и их автоматизация;
* Создание dashboard с ключевыми метриками;
* Автоматизация сбора данных из различных источников (внутренние базы компании, системы веб аналитики;
* Решение задач бизнеса в части клиентской, маркетинговой, товарной аналитики;
* Написание требований к аналитике для реализуемого нового функционала.
Полное описание вакансии https://hh.ru/vacancy/27361356


Kirill
22.08.2018
10:50:50
Есть группы, которые за два дня в одиночку заполнят весь диск, отсюда желание работать с суточными патрициями.
Вот пример обычной (по месяцам партиции) и посуточной. В дневных хранится последние дней 10, в обычной примерно 2 месяца, по структуре они один в один, только партиционирование разное
SELECT *
FROM cas.table_size
WHERE (table LIKE '%v2%') AND (table LIKE 'publishers_subid%')
┌─database─┬─table──────────────────────────┬─parts─┬─size──────┬─marks_size─┬─pk_memory──┬─pk_memory_allocated─┬───────rows─┐
│ reports │ publishers_subid_live_v2_local │ 88 │ 23.34 GiB │ 564.74 MiB │ 87.63 MiB │ 129.17 MiB │ 378963071 │
│ reports │ publishers_subid_v2_local │ 17 │ 50.51 GiB │ 3.46 GiB │ 577.79 MiB │ 787.72 MiB │ 2376137870 │
└──────────┴────────────────────────────────┴───────┴───────────┴────────────┴────────────┴─────────────────────┴────────────┘

Konstantin
22.08.2018
10:54:12
А как это связано с моим вопросом?

Roman
22.08.2018
10:55:39
всем привет
обновил кх до 18.10.3 и теперь получаю в лог <Error> BaseDaemon: (from thread 37) Received signal Segmentation fault (11). при выполнении запроса над таблицей Engine = Dictionary()

Kirill
22.08.2018
10:56:15

Google

Maria
22.08.2018
11:03:10
Можно ли указывать несколько партиций в OPTIMIZE, и если да, то как?

Konstantin
22.08.2018
11:30:25

Алексей
22.08.2018
11:35:24
Привет! Нужна помощь, так как я затупил ( не как кликхаус ). Нужно написать cumSumArray который аккумулирует 0 вместо ухода в минус. Сломал голову как это сделать?
Обычный аккумулятор работает так:
SELECT arrayCumSum(values)
FROM
(
SELECT [3, -1, -1, -1, -1, -1, 3, -10, 1] AS values
)
┌─arrayCumSum(values)─────┐
│ [3,2,1,0,-1,-2,1,-9,-8] │
└─────────────────────────┘
А нужно так:
┌─arrayCumSum(values)─────┐
│ [3,2,1,0,0,0,3,0,1] │
└─────────────────────────┘


Саша
22.08.2018
12:27:38
столькнулся со странностью
переливал данные из одно стаблицы в другую и данным запросом сверял
в результате получил в июле расхождение на 4 записи
SELECT id
FROM stat
WHERE (toYear(date) = 2018) AND (toMonth(date) = 7) AND (id NOT IN
(
SELECT id
FROM stat_v2
WHERE (toYear(date) = 2018) AND (toMonth(date) = 7)
))
а такой запрос выдал пустой результат: 0 rows in set. Elapsed: 145.999 sec. Processed 66.44 million rows, 3.99 GB (455.05 thousand rows/s., 27.30 MB/s.)
где в запросах я мог ошибиться?

antuan
22.08.2018
12:31:17
в том запросе, где сверка, сделайте countUniqExact везде
или как-то так функция называется
мб просто дубли
привет, Саш :)

Саша
22.08.2018
12:33:37
привет
ты имеешь ввиду uniqExact?

antuan
22.08.2018
12:34:00
ага

Ivan
22.08.2018
12:41:56
Добрый день! Скажите, как посмотреть запрос, и есть ли такая возможность, который был при выполнении CREATE VIEW ... AS (-запрос-)?

Саша
22.08.2018
12:44:04

Google

Kirill
22.08.2018
12:44:34

Ivan
22.08.2018
12:45:42

Daniel
22.08.2018
12:45:54
SHOW CREATE TABLE
иногда показывает фигню кстати, у меня так однажды пара стринговых полей почему-то дополнились DEFAULT \'\'

Kirill
22.08.2018
12:46:36

Daniel
22.08.2018
12:47:08
понятно что эскейпинг, но с тем запросом который оно выдавало таблица не создавалась - ругалось как раз не этот эскейпинг

Oleg
22.08.2018
12:47:57
table="distributed.tbl"; create=clickhouse-client --query="SHOW CREATE TABLE $table" | tr -d '\\'; clickhouse-client --query="DROP TABLE $table"; clickhouse-client --query="$create"
Я такой скрипт использую для пересоздания таблицы из консоли линукса

Daniel
22.08.2018
12:48:34

Michal
22.08.2018
12:55:22

Konstantin
22.08.2018
13:15:56
напомните плиз что нужно сделать, чтобы обратиться к словарю как к таблице? select * from dict.name

Oleg
22.08.2018
13:17:12
SELECT * FROM dictionaries.name

Konstantin
22.08.2018
13:20:23

Kirill
22.08.2018
13:20:26

Konstantin
22.08.2018
13:20:40
а можно ли обратиться к словарю по pointInPolygon?

Kirill
22.08.2018
13:44:23
почему INTO OUTFILE может не писать? файл создается, а не пишет

Vladimir
22.08.2018
15:07:27
подскажите, пожалуйста, статью или видео о том, как правильно выбирать и как работает индекс в КХ

Alexey
22.08.2018
15:08:23

Vladimir
22.08.2018
15:10:06
спасибо

Denis
22.08.2018
15:17:06
пара экспериментов про индексы (смотрите на Processed .... rows) https://gist.github.com/den-crane/cbc6f0777d03a00417d70018378d360d

Google

Vladimir
22.08.2018
15:57:52
ага, интересно

Mike
22.08.2018
16:33:24


Alexey
22.08.2018
17:33:52
Добрый вечер, пара вопросов по шардированию: 1. Можно ли начать с одной обычной таблицы и потом как-то без даунтайма ее конвертунть из Replicated в DistributedReplicated? 2. Для DistributedAggregatingMT лучше выбирать ключ шардирования чтоб все запросы шли на одну шарду или в конце случится конечная аггрегация на оркестраторе?

Александр
22.08.2018
17:37:28
Даунтайм ровно столько, сколько вам возможно потребуется переименовать таблицы
Но можно и без этого обойтись

Alexander
22.08.2018
17:38:11
Коллеги, подскажите есть ли рекомендации по максимальному размеру значения в колонке. Скажем строка в 512 символов это норм?

Ivan
22.08.2018
17:38:27

Александр
22.08.2018
17:39:51
Сы на самом деле тоже храним примерно такие
Все норм

Alexander
22.08.2018
17:41:17

Victor
22.08.2018
17:44:03
В том и вопрос стоит, начиная с какой длинны строки пихать куда то еще, а не в кх
собственно, судя по презентациям, что я видел.
Многие сырые строки не хранят, либо базовые словоформы получают, их в словарь, в КХ ID из словаря.
либо обратный индекс строят, если строки минимально меняются, как логи, например
+
В кх набор ID хранят массивом, 1 слово = 1 элемент

Alexander
22.08.2018
17:45:35
ОК. Благодарю

Victor
22.08.2018
17:45:47
https://habr.com/post/304602/
Вот тут обратный индекс, не знаю почему не словари

Yuran
22.08.2018
21:25:59

Victor
22.08.2018
21:29:17

Alexey
22.08.2018
22:13:18

Google

Alexey
22.08.2018
22:13:18

molo4ko
23.08.2018
02:06:57
У кого какой опыт по размеру словарей?
Порядка сотен миллионов k-v-пар строка-строка, одна запись <= 128 байт - это нормально?

Denis
23.08.2018
02:10:07

molo4ko
23.08.2018
02:12:58
Ох, жаль

Evgeny
23.08.2018
08:13:40
Есть стандартная функция обратная hex?

Alex
23.08.2018
08:15:23
unhex

Evgeny
23.08.2018
08:18:56
Спасибо

Edya
23.08.2018
08:32:14

Kirill
23.08.2018
08:34:07

Edya
23.08.2018
08:38:26
это не всегда удобно и быстро. Например, зачем писать парсер разнородных логов и разбивать абослютно все на колонки, когда можно спихнуть всё в кучу и уже там проводить какие-то разовые исследования, доставая по необходимости данные из "длинной" строки