@clickhouse_ru

Страница 604 из 723
Yuri
30.07.2018
19:28:19
Это вопрос к джетбрейну вроде. Вроде и сейчас норм, не?

Alexey
30.07.2018
19:29:43
Алексей, раз вы тут, подскажите, а нативной поддержки с полным функционалом в продуктах jetbrains не предвидится?
Я не уверен, так как не работаю в JetBrains. Они хотят это сделать. Недавно они у нас спрашивали про формальное описание языка ClickHouse и документацию, мы им передали описание диалекта ClickHouse на ANTLR (у коллег нашлось такое). Наверное что-то готовят.

Google
Ivan
30.07.2018
20:58:24
Господа, а как вот такое побеждается?



jdbc брал отсюда: https://mvnrepository.com/artifact/ru.yandex.clickhouse/clickhouse-jdbc/0.1.40

Sergey
30.07.2018
21:03:57
Добавить slf4j в classpath.

Хоть и немного странно, что это требуется сделать.

Denis
30.07.2018
21:14:15
не знаю что такое DG, но если тупо скачали jar, то это только ch код, там еще куча зависимостей, соберите mvn, получится jar на 6мб. https://github.com/yandex/clickhouse-jdbc To build a jar with dependencies use....

Artem
30.07.2018
21:30:51
Джентльмены, какая самая стабильная сборка на данный момент?

Можно ли обновляться между мажорными версиями на горячую?

Denis
30.07.2018
21:36:35
у всех самая стабильная -- разная. я использую 1.1.54394, дальше просто не тестил. что значит на горячую? КХ ставится apt-get install потом ребут КХ нод, вместе или по очереди, естественно надо перед этим тестить, потому что если прод не заведется из-за несовместимостей, будет неприятно.

Artem
31.07.2018
01:26:42
Ясно, спасибо.

Denis
31.07.2018
05:24:31
https://en.wikipedia.org/wiki/Time_series_database здесь в списке нет кликхауса, предлагаю добавить

Stanislav
31.07.2018
05:26:12
Он же вроде не настолько Time Series, чтобы нельзя было создать таблицы вообще без Date/Datetime

Google
Denis
31.07.2018
05:28:22
но функционал-то соответствующий есть?

Stanislav
31.07.2018
05:30:28
Кой-чего нехватает - автоудаления старого и, местами, автоагрегации.

А скриптами такое и в мускле можно...

Вячеслав
31.07.2018
05:32:03
Привет. Есть две реплицируемые таблицы с одинаковой структурой (A и B). Делаю DETACH на одной из реплик для таблицы A. После этого переношу все данные из папки detached таблицы A в папку detached таблицы B. Делаю ATTACH этих данных на одной из реплик для таблицы B. В результате на той реплике, где запущен ATTACH партиции подключаются, на второй реплике данные в папке detached игнорируются и происходит репликация с другой машины. Это нормальное поведение?

Vladimir
31.07.2018
07:19:10
Доброе утро. Как я понял если есть MV над таблицей и по каким то причинам в MV вставка не удается то при вставке батчами эти батчи будут дуплицироваться в основной таблице (тк туда вставка проходит) Получается что использование MV лишает вставку атомарности. Это планируется пофиксить или считается что это нормальное поведение? ЗЫ: Сейчас встал вопрос в добавлении в таблицу искуственного уникального поля для возможности использования ReplacingMergeTree для устранения дубликатов и это порождает много других проблем, начиная с того что данные на диске вырастут на 50% а это терабайты лишние. Как-то нехорошо выходит

Danil
31.07.2018
07:22:41
+1 про атомарность и MV

Vladimir
31.07.2018
07:24:33
+1 про атомарность и MV
Я тут уже всех заколебал дубликатами своими, но что-то надо делать ))

Danil
31.07.2018
07:26:18
Но у меня, кстати, наоборот. Не дубли, а пропуски в MV. То есть, инсерт в первую таблицу проходит, а во вьюшку нет, и это молча игнорируется.

Vladimir
31.07.2018
07:35:50
Прям бальзам на душу Я знаю что это наглость но спрошу тк стоит вопрос с какой схемой через неделю выходить в прод Меняться будет в этом году или может в ближайшее время или никто не знает и может и через год? Ну ваши ощущения. На гитхабе завести тикет или это где-то уже есть ии только ждять?

Kirill
31.07.2018
07:36:59
Прям бальзам на душу Я знаю что это наглость но спрошу тк стоит вопрос с какой схемой через неделю выходить в прод Меняться будет в этом году или может в ближайшее время или никто не знает и может и через год? Ну ваши ощущения. На гитхабе завести тикет или это где-то уже есть ии только ждять?
Да, на Гитхаб нужно завести тикет - это достаточно больная проблема и в какое-то время она будет кем-то решена, когда и кем пока не понятно ) В продакшен лучше выходить с тем что работает и понятно как

Vladimir
31.07.2018
07:41:18
Ок, заведу. Ужасно не хочется выходить с костылями, если б знали что до НГ поправиться то выбрали бы рисковый путь

Этот UUID несжимаемый всю малину сьел, а без него Replaced не взлетит

Kirill
31.07.2018
07:45:33
Этот UUID несжимаемый всю малину сьел, а без него Replaced не взлетит
Храните UUID в FixedString(16) чтоб меньше был, что вам UUID попортил?

Vladimir
31.07.2018
07:47:31
для того чтобы хоть как-то исключить коллизии UUID должен тыть миннимум 24 бита Тоесть 3 байта, а у нас всего каждая строка 7 байт. Получается +30% а сжиматься колонка с ним почти не будет

Denis
31.07.2018
07:47:32
а почему uuid не жмётся? это же 2 лонга по сути.

Vladimir
31.07.2018
07:48:58
ну сжатие по сути это нахождение общего в большом объеме и замена этого общего на что-то коротенькое

А какое общее в UUID

Denis
31.07.2018
07:49:40
24 бита звучит совсем не как uuid. там же 128 должно быть

Google
Vladimir
31.07.2018
07:49:47
таймстемпы хорошо сжамаються, рандом не должен сжиматься совсем

Pavel
31.07.2018
07:50:00
А какое общее в UUID
а это смотря как генерировать

Vladimir
31.07.2018
07:50:06
слгласен

Pavel
31.07.2018
07:50:18
в v1 общего дохрена

Vladimir
31.07.2018
07:50:24
но у нас нет единой точки

Vladimir
31.07.2018
07:50:59
откусить же можно

хеш использовать итд

Pavel
31.07.2018
07:51:26
откусить же можно
и чем это будет лучше рандомного инта в таком случае?

Vladimir
31.07.2018
07:51:33
суть ре в этом суть в том что 3 байта надо и они будут плохосжимаемыми

Вячеслав
31.07.2018
07:53:31
Это документированное поведение
В документации для ATTACH указано: "Запрос реплицируется. Каждая реплика проверяет, если ли данные в директории detached. Если данные есть - проверяет их целостность, проверяет их соответствие данным на сервере-инициаторе запроса, и если всё хорошо, то добавляет их. Если нет, то скачивает данные с реплики-инициатора запроса, или с другой реплики, на которой уже добавлены эти данные." Получается по какой то причине реплика решила, что данные не соответствуют с сервером-инициатором запроса?

Aleksandr
31.07.2018
07:56:23
Приветствутю. Подскажите пожалуйста, можно ли хоть как то сделать group concat в КХ?

Aleksandr
31.07.2018
07:57:56
суть в том что бы объединить записи: 1 5 1 10 1 22 в 1 5,10,22

Kirill
31.07.2018
08:00:17
Приветствутю. Подскажите пожалуйста, можно ли хоть как то сделать group concat в КХ?
SELECT groupArray(number) FROM ( SELECT number FROM system.numbers LIMIT 5 ) ┌─groupArray(number)─┐ │ [0,1,2,3,4] │ └────────────────────┘

Aleksandr
31.07.2018
08:00:37
спасибо

Vladimir
31.07.2018
08:02:09
и чем это будет лучше рандомного инта в таком случае?
ничем суть не в названии а в что как не назови нужна уникальность а это дает плохосжимаемость (иначе сжимаемую часть нужно отбросить)

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

Denis
31.07.2018
08:04:50
какой-то очень корнер-кейс с записями по 7 байтов всего

Google
Vladimir
31.07.2018
08:06:02
все строки перегнали в инты через словарь внешнии и все сжалось до таких размеров если поделить размер на диске на кол во строи то 7 байт

Denis
31.07.2018
08:06:11
и мне кажется, что с "локально уникальными" айдишками по 3 байта можно выстрелиь себе в ногу, если кх решит смерджить очень старые партиции в более крупную.

но я не уверен, что так бывает

Vladimir
31.07.2018
08:06:48
ПК не только из этих айдишек

ПК и так достаточно уникальный

эти 3-4 байта это дополнение к ПК чтобы исключить то что вы описали выше

Но для "хорошего" исклбчения математика говорит что надо 4 байта а это дофига для нас

Вот и получается что вроде небольшая проблема с вьюхами в геморр вырастает Уже подумываем выпилить их и писать в 3 таблицы самим, но там свои минусы

Артем
31.07.2018
08:10:27
Подскажите как использовать clickhouse-local ? Не пойму где искать эту утилиту ?

Vladimir
31.07.2018
08:12:52
дубликатов не будет а если писать синхронно последовательно во все три по на какой застопоримся на той и перезапустимся

хз понятно ли написал

Alexander
31.07.2018
08:31:44
Подскажите как использовать clickhouse-local ? Не пойму где искать эту утилиту ?
https://clickhouse.yandex/docs/ru/operations/utils/clickhouse-local/ Установить на ubunut: apt-get install clickhouse-client

Vladimir
31.07.2018
08:33:35
https://github.com/yandex/ClickHouse/issues/2765

Голосуем ^ !

Пжлст

Вячеслав
31.07.2018
09:41:47
Есть реплицируемая таблица. В данный момент происходит репликация данных с одного сервера на другой. При выполнении селекта каждый раз возвращаются разные данные (то с одной реплики, то с другой). Возможно кто нибудь знает, почему Distributed таблица обращается за данными на реплику, где нет 100% данных? Можно ли какой нибудь настройкой запретить читать данные с таблицы, которая еще реплицируется?

Vladimir
31.07.2018
09:46:13
есть delay настройка по умолчанию 300сек вроде бы

Может поможет │ │ max_replica_delay_for_distributed_queries │ 300 │ 0 │ If set, distributed queries of Replicated tables will choose servers with replication delay in seconds less than the specified value (not inclusive). Zero means do not take delay into account.

Вячеслав
31.07.2018
10:02:58
есть delay настройка по умолчанию 300сек вроде бы
а это настройка профиля (users.xml) или сервера (config.xml)?

Google
Vladimir
31.07.2018
10:35:18
не подскажу

fikfok
31.07.2018
10:59:43
Коллеги, добрый день! Создал MV на основе таблицы с ReplacingMergeTree: CREATE MATERIALIZED VIEW matv ENGINE = AggregatingMergeTree(created_date, (campaign_id), 8192) POPULATE as select created_date, campaign_id, countState() as total, uniqState(user_id) as unique from requests where arrayExists(x -> x = 'start', triggered_events) group by created_date, campaign_id В основную таблицу данные по-тихоньку записываются. Но в результате в MV данные сегодняшнего дня (2018-07-31) почему-то хранятся за вчерашний (2018-07-30). У кого-то было такое?

Vladimir
31.07.2018
11:47:58
Есть способ при неудочном апдейте откатиться на нужную версию ?

Wolf
31.07.2018
11:48:27
сохрани тупым копированием бинарник кликхауса

и если неудачный апдейт тупо заменить его

Stanislav
31.07.2018
11:48:40
Мне хватило просто поставить пакет

Wolf
31.07.2018
11:49:02
Stanislav
31.07.2018
11:49:14
apt-get install clickhouse-server=$version

что тут сложного-то?

Wolf
31.07.2018
11:49:28
ну может версии не быть например в репо

Stanislav
31.07.2018
11:50:04
Тогда да, тогда - dpkg -i /var/cache/apt/archives/clickhouse-server_$version.....deb

Wolf
31.07.2018
11:50:18
тоже может не быть )

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