@clickhouse_ru

Страница 371 из 723
Rudenko
20.12.2017
11:20:27
Ребят а в докере у вас какая версия латест ?

Трабла КХ сожрал 31ГБ ОЗУ и после перегрузки докер контейнера он все отдал. И сейчас жрет копейки.

Michal
20.12.2017
11:47:17
Libkv на го, поэтому нам её будет сложно использовать :) Ну и когда используешь абстрактную обёртку над стораджами, к багам в стораджах добавляются баги в обёртке и становится в 2 раза веселее. К ZK у меня лично чуть больше доверия, достаточно сравнить https://aphyr.com/posts/291-call-me-maybe-zookeeper и https://aphyr.com/posts/316-call-me-maybe-etcd-and-consul, хотя сейчас наверняка большинство багов у них уже поправлено. В общем, какой сервис распределённой координации использовать это старый флейм и мы про него помним и помним, что не всем ZK удобен.
Забавно слышать от программиста C++ что код на go сложно использовать :P На всякий случай: кроме прочих вариантов с прослойками Go с версии 1.5 умеет писать обычные либки с заголовочными файлами, которые можно использовать хоть из C хоть из C++ "без посредников". Как обычно некоторые ограничения есть - типа указателями обменяться скорее всего не получится, но в остальном - все вроде как не плохо. Это просто мысли вслух. В настроящее время для кликхауса ИМХО есть более насущные проблемы чем переезд с зоокипера в супер-пупер-замечательную технологию (...подставь свою...). :)

Google
Сергей
20.12.2017
12:39:48
Коллеги, привет! Есть колонка watchIDs которая имеет тип String, данные там лежат в виде массива ([1,2,3,4]), но тем не менее это строка. Если ли возможность строку преобразовать в массив для дальнейшего использования, например в arrayJoin или все же надо перезаписать колонку с типом Array(Int32)?

Rudenko
20.12.2017
13:03:16
Ребят обновите в докере версию до более стабильной , утечка памяти

Kirill
20.12.2017
13:11:08
Ребят обновите в докере версию до более стабильной , утечка памяти
Вы его сами можете достаточно быстро собрать не дожидаясь его на докерхабе https://github.com/yandex/ClickHouse/blob/master/docker/server/Dockerfile

pavel
20.12.2017
13:13:19
вопрос не в технологии под капотом, а в том что etcd пилят постоянно и качество его растет
А качество ZooKeeper видимо уже доросло до совершенства, зачем нам что-то, что только до него "растёт" )

Alex
20.12.2017
13:14:03
эм...насчет совершенства зукипера я не уверен )))

https://coreos.com/blog/performance-of-etcd.html

вот кстати небольшой бенч

Kirill
20.12.2017
13:16:13
Вот реально нафиг сейчас Консул не нужен, других проблем навалом, не до этой хипстоты )

Атата
20.12.2017
13:19:19
о, олдфаг в чате ?

Alex
20.12.2017
13:22:18
я думаю в плане хипстерства кликхаус переплюнет консул и etcd =)))

Google
Michal
20.12.2017
13:27:42
Вот-вот, за сегодня уже второй раз разные люди ругают разные технологие за "хипстерво" :) Что они делают на телеграм канале про кликхаус? :) Неужели BBS comp.lang.fortran закрылся? :)

Атата
20.12.2017
13:28:07
это синдром олдфага

Vahram
20.12.2017
13:40:55
Подскажите пожалуйста как скопировать данные из одной таблицы в другую? INSERT INTO table2 select * FROM table1 выдает ошибку про максимум 500 строк.

Vahram
20.12.2017
13:44:51
убрать ограничение в табиксе? на кол-во строк
Спасибо! как всегда все проще, чем кажется

Alex
20.12.2017
14:07:48
Code: 241, e.displayText() = DB::Exception: Memory limit (for query) exceeded: would use 9.43 GiB (attempt to allocate chunk of 134217728 bytes), maximum: 9.31 GiB, e.what() = DB::Exception подскажите как лечить такие ошибки?

Cargeh
20.12.2017
14:09:37
https://www.youtube.com/watch?v=F-o-a00R4fc
мне кажется ссылку на доклад надо либо закрепить, либо прям в эксепшн добавить!))

Alex
20.12.2017
14:09:45
спасибо

Kirill
20.12.2017
14:11:33
мне кажется ссылку на доклад надо либо закрепить, либо прям в эксепшн добавить!))
Надо настройки по дефолту поправить, но могут начаться вопросы "почему медленно?"

Anton
20.12.2017
14:39:25
вот кстати небольшой бенч
Я такой же бенчмарк от разрабов консула видел ? Каждый кулик своё болото хвалит, но по опыту работы с ZK - это очёнь надёжное хранилище

kamish
20.12.2017
15:36:38
бенчмарки не о надёжности =)

Andrey
20.12.2017
16:34:37
Вопрос новичка: есть CH в локальной сети. Есть CH удалённо. С локальной сети есть доступ к удалённому ZK и CH, а с удалённых в локальный доступа нет. Реплику с локального в удалённый реально сделать? :) Или нужно взаимодействие в обе стороны?

Anton
20.12.2017
17:18:48
Evgeny
20.12.2017
17:33:07
Можно же не меняя протокол zookeeper на etcd переехать с помощью zetcd - там правда пара ошибок не исправленных из за которых clickhouse не хочет с etcd работать...

Artem
20.12.2017
17:35:24
привет. подскажите пожалуйста как можно создать агрегирующую вьюху с nested-полем для примера такая таблица: CREATE TABLE my_table ( date Date MATERIALIZED timestamp, timestamp DateTime, key UInt64, value1 UInt64, value2 UInt64, myMap Nested ( id UInt64, a UInt64, b UInt64 ) ) ENGINE = ReplicatedMergeTree('/clickhouse/tables/my_table/{shard}', '{host}', date, (date, key), 8192); и пытаюсь сделать вьюху так (не работает): CREATE MATERIALIZED VIEW my_view ( date Date, timestamp DateTime, value1 UInt64, value2 UInt64, myMap Nested ( id UInt64, a UInt64, b UInt64 ) ) ENGINE = ReplicatedSummingMergeTree('/clickhouse/tables/my_view/{shard}', '{host}', date, (timestamp), 8192) AS SELECT toStartOfMonth(timestamp) AS date, toDateTime(toStartOfMonth(timestamp)) AS timestamp, toUInt64(sum(value1)) AS value1, toUInt64(sum(value2)) AS value2, myMap.id, myMap.a, myMap.b FROM my_table GROUP BY date, timestamp; т.е. хочу просуммировать мапу. такое можно сделать?

Evgeny
20.12.2017
17:39:17
Можно подробнее?
https://github.com/coreos/zetcd

Атата
20.12.2017
17:39:43
https://github.com/coreos/zetcd
Подробнее о проблемах)

Andrey
20.12.2017
17:40:20
Это вопрос не кх, а сетевого администрирования. Если вы хотите видеть локальный с удалённого, то ему нужен статичный ip и открытые порты для работы
Нет. Я просто хочу реплику на удалённый кх. Локальный кх видит удалённый, но удалённый не увидит локальный. Вот и вопрос, реально ли реплику такую поднять. Не совсем понимаю принципов работы репликации и в документации мало информации

Google
Anton
20.12.2017
17:43:26
Реально, но репликация тут не причём. Просто один сервер не видит другой по конкретному адресу и порту

Evgeny
20.12.2017
17:45:26
Подробнее о проблемах)
Да все тоже, все устанавливается настраивается но при вставке данных - минут через 5 вставка данных встаёт, clickhouse не видит zookeeper, проверял с месяц назад

Alex
20.12.2017
17:48:47
Нет. Я просто хочу реплику на удалённый кх. Локальный кх видит удалённый, но удалённый не увидит локальный. Вот и вопрос, реально ли реплику такую поднять. Не совсем понимаю принципов работы репликации и в документации мало информации
В процессе репликации сервер, у которого нет куска, инициирует соединение по порту 9009 (interserver_http_port) с сервером, на котором он есть, чтобы скачать недостающий кусок. То есть в вашем случае без того, чтобы "удалённый" КХ реплицировал с "локального", у него должна быть возможность инициировать соединение до него.

Andrey
20.12.2017
18:03:23
Ребята, а кто нибудь делал ReplicatedSummingMergeTree с репликацией по дням? Не нашёл как настроить поля для суммирования

Max
20.12.2017
18:32:11
Тикет про другое, но смысл понятен должен быть

Andrey
20.12.2017
19:02:39
https://github.com/yandex/ClickHouse/issues/1009 Тут есть пример
Там создание со стандартным партицированием по месяцам. Что бы делать партиции по дням, нужно делать как-то так: https://github.com/yandex/ClickHouse/blob/master/docs/ru/table_engines/custom_partitioning_key.md

Но как задать поля для суммирования не ясно

Max
20.12.2017
19:04:50
Поля для суммирования это аргументы движка

Параметры партицирования это отдельное выражение

ENGINE = Replicated*MergeTree(настройка движка) настройка партиций

@komex стало понятнее?

Andrey
20.12.2017
19:10:15
ENGINE = Replicated*MergeTree(настройка движка) настройка партиций
Сейчас перед глазами нет документации, но в таком формате вроде нельзя задать партиции по дням - только по месяцам. Позже гляну ещё раз

Max
20.12.2017
19:19:23
Сейчас перед глазами нет документации, но в таком формате вроде нельзя задать партиции по дням - только по месяцам. Позже гляну ещё раз
кмк, так а CREATE TABLE shard_3.replicated_summing_merge_tree_with_list_of_columns_to_sum( d Date, a String, b UInt8, x String,y Int8,z UInt32) ENGINE = ReplicatedSummingMergeTree('/clickhouse/tables/3/replicated_summing_merge_tree_with_list_of_columns_to_sum/','clickhouse003',d,(a, b),111,(y,z)) PARTITION BY (toMonday(d)); не работает?

Просто имхо вопрос такой же как и 'как настроить грануляцию для движка х'. Она единообразно настраивается. Хорошо бы пример что именно не выходит сделать.

Max
20.12.2017
19:25:25
Потому что?

Alex
20.12.2017
19:31:10
Просто убираете из определения движка параметры столбца с датой (переезжает в PARTITION BY), первичного ключа (переезжает в ORDER BY), ключа семплирования (переезжает в SAMPLE BY) и гранулярности (переезжает в SETTINGS, или можно не указывать).

То есть получается ENGINE ReplicatedSummingMergeTree('/zk_path', 'replica_id', (y,z)) PARTITION BY toMonday(d) ORDER BY (a, b)

Google
Max
20.12.2017
19:58:08
@ztlpn и правда ?

Alex
20.12.2017
20:55:37
ю, вопрос, можно с типом FixedString(N) использовать операции > < = ?

нужен тип UInt256 операции только логические

Andrey
20.12.2017
21:25:56
Вот интересно. toDate('2010-01-01') возвращает 2010-01-01, а toDate('2410-01-01') возвращает 0000-00-00

Anton
20.12.2017
21:29:54
Вот интересно. toDate('2010-01-01') возвращает 2010-01-01, а toDate('2410-01-01') возвращает 0000-00-00
Дата. Хранится в двух байтах в виде (беззнакового) числа дней, прошедших от 1970-01-01. Позволяет хранить значения от чуть больше, чем начала unix-эпохи до верхнего порога, определяющегося константой на этапе компиляции (сейчас - до 2038 года, но может быть расширено до 2106 года). Минимальное значение выводится как 0000-00-00.

Andrey
20.12.2017
21:31:54
Жаль )) а то массоны календарь заказали. ID в дату пытаюсь засунуть )

Anton
20.12.2017
21:32:23
))))

Andrey
20.12.2017
21:35:16
Четыре поля в таблице являются идентификатором записи ( 750 │ 31488 │ 65535 │ 2147483647 ) для ускорения поиска хочу запихнуть в дату по которой сделать ключ для ускорения поиска. Есть может быть идеи?

kamish
20.12.2017
21:48:23
зачем запихивать в дату? это не ускорит поиск, а даже наоборот, сделает ваши селекты немного хуже

вы можете перечислить эти поля в первичном ключе и не заморачиваться, но делать из даты что-то невразумительное не стоит

поскольку дата по умолчанию в mergetree используется как ключ партиционирования и, соответственно, для слияний

После создания такой таблицы слияние кусков будет работать только для кусков с одинаковым значением выражения партиционирования. Замечание: это означает, что нежелательно делать слишком гранулированное партиционирование (более порядка тысячи партиций), иначе производительность SELECT будет неудовлетворительной.

Timur
20.12.2017
22:10:19
Всем привет, только начал смотреть на clickhouse, никак не могу найти в доках как из строки формата Column 3, name: type: String, parsed text: "<DOUBLE QUOTE>2016-10-03T08:23:13 UTC<DOUBLE QUOTE> конавертнуть в native datetime

Timur
20.12.2017
22:54:35
Так там же формат строки опеределен

Как %Yyyy-mm-dd hh:mm:as

У меня же строка с таймзонлй и разделителем

Anton
20.12.2017
22:55:55
Так там же формат строки опеределен
Единственное чем он отличается, так это отсутвием литеры Т. Как следствие достаточно сделать toDateTime(Replace("T", " ", StringColumn))

UTC тож зареплейсить

Google
Timur
20.12.2017
22:56:32
А если тз всегда разная?

Anton
20.12.2017
22:57:10
Приводить к нужной ТЗ перед конвертацией :) Это же очевидно :)

Timur
20.12.2017
22:57:34
Ок, мне это и нужно узнать, все делать на этапе etl

Thx

Anton
20.12.2017
22:57:50
Сейчас уже появилась поддержка интервалов, если я правильно помню последний митап. С таймзоной вроде еще есть траблы

Ок, мне это и нужно узнать, все делать на этапе etl
С КХ почти все можно делать в рантайме, он к этому не чувствителен, в отличие от реляционок

Timur
20.12.2017
23:11:56
про интервалы читал, это отделная тема которая мне тоже инетерсна

Alexey
21.12.2017
05:23:36
Если в день 170-180 млн строк, колонок 40-50, есть жирные строковые, посоветуете по дням сделать партиции? Перезаливать было бы оч удобно, но не просядет ли производительность в селектах и в слияниях?

Alexey
21.12.2017
08:26:37
после optimize смерженные куски не удаляются, лежат второй день, хотя обычно через несколько минут удалялись 39G ./20171001_20171026_7496709_8188150_1840 39G ./20171001_20171031_7496709_8204298_1841 245M ./20171026_20171031_8188151_8204297_722 60K ./20171031_20171031_8204298_8204298_0 в чем может быть проблема? как бороться?

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