@clickhouse_ru

Страница 369 из 723
Michal
19.12.2017
12:16:26
Вкратце - просто сам себе содаёшь случайный альфанумеричный номер сессии и высылаешь его как параметр url session_id. По умолчанию таймаут - минута. Можно увеличить. Можно проверить жива ли ещё сессия. Примеры тут: https://github.com/yandex/ClickHouse/blob/master/dbms/tests/queries/0_stateless/00463_sessions_in_http_interface.sh

Dmitry
19.12.2017
12:37:56
Всем привет - такой вопрос, используем кликхаус для сбора статистики. Обратили внимание, что ест около 3 ГБ памяти в день. Хотелось бы понять почему - подозреваю, что непраивльно использую движок MergeTree

CREATE TABLE IF NOT EXISTS my_cool_table ( UUID String, Updated DateTime, UpdatedDate Date MATERIALIZED Updated, CPUSecs Float64, AvailableMem Int64, BytesSent Int64, BytesRecv Int64, ) Engine = MergeTree(UpdatedDate,(UUID,UpdatedDate),8192);

сама табличка

Google
Dmitry
19.12.2017
12:40:31
вариантов UUID немного - сейчас около 70. Каждый вариант делает INSERT по одной строчке раз в n секунд

Dmitry
19.12.2017
12:45:50
Постребление памяти растет каждый день - это значит, что 3 дня назад было 20 ГБ. Сейчас около 38. Графана показывает практически линейный рост потребления памяти во времени. Количество сбрасывающих статистику не увеличивалось.

Ждать пока он сожрет все 128 ГБ - ну такое..

Alex
19.12.2017
12:46:33
Версия какая?

Dmitry
19.12.2017
12:51:00
1.1

Alex
19.12.2017
12:51:56
А дальше какое число? Там самое интересное :)

В версии 54310 есть утечка памяти при вставке в обычные (не Replicated) MergeTree

Dmitry
19.12.2017
12:53:24
а как посмотреть?

ва документации проморгал флаг\запрос на версию

Egor
19.12.2017
12:54:01
Когда посединяетесь с консольного клиента, он пишет версию сервера и клиента.

Alex
19.12.2017
12:54:08
SELECT version()

Google
Alex
19.12.2017
12:54:21
В 54318 это поправили

Michal
19.12.2017
12:54:28
SELECT version();

Dmitry
19.12.2017
12:54:28
1.1.54310

ХАХ =)

Andrew
19.12.2017
12:54:33
В 54318 это поправили
лучше переехать с 54310 на 54318?

Dmitry
19.12.2017
12:54:59
спасибо

Alex
19.12.2017
12:56:16
Лучше переехать, но в 54318 обнаружены довольно серьёзные ошибки с репликацией (впрочем, кажется, они присутствуют и в 54310). Сейчас готовим фиксы.

Andrew
19.12.2017
12:56:41
интересно спасибо

Dmitry
19.12.2017
12:58:53
в докер образах 54318 будет?

Aloneibreak
19.12.2017
14:01:40
коллеги подскажите пожалуйста по ошибке <Error> event.Distributed.DirectoryMonitor: Code: 210, e.displayText() = DB::NetException: I/O error: Broken pipe: while reading from socket от чего может возникать? мы из-за нее какое-то время не получали данные с ноды, на которой происходила ошибка

Pavel
19.12.2017
14:11:28
Хм, странно, в новой версии прилетела проверка на SSSE 4/2

НО

sudo service clickhouse-server start Illegal instruction Warning! SSE 4.2 instruction set is not supported Start clickhouse-server service: Path to data directory in /etc/clickhouse-server/config.xml: /var/lib/clickhouse/ DONE

и демон все равно запускается :(

prll
19.12.2017
14:27:24
проверка в инит скрипте только для пугания пользователей

Vsevolod
19.12.2017
14:28:04
@proller 2 бинаря сделали?

prll
19.12.2017
14:28:35
нет.

Vsevolod
19.12.2017
14:28:58
фи

prll
19.12.2017
14:29:48
и так размеры в сеть не пролазят и время сборки огого

Vsevolod
19.12.2017
14:30:19
писали бы на нормальном языке, не было бы таких проблем

Google
Vsevolod
19.12.2017
14:31:10
я тут тоже от c++ с ума схожу - по 10 минут ждать сборки любой мелкой фигни

prll
19.12.2017
14:31:12
это ты про lua сейчас ?

Vsevolod
19.12.2017
14:31:19
про си, конечно

lua оно для расширений, а у вас все равно sql есть

prll
19.12.2017
14:31:40
ccache + distcc и не надо ждать ничо

у нас пакет 4 минуты собирается

Vsevolod
19.12.2017
14:31:55
все упирается в линковку

prll
19.12.2017
14:31:59
если не много изменений

Vsevolod
19.12.2017
14:32:16
потому что результативный бинарь выходит 2.3Gb

и это все рак c++ и шаблонов

prll
19.12.2017
14:32:37
ну так это не мелкая фигня

Vsevolod
19.12.2017
14:32:46
изменения мелкие

prll
19.12.2017
14:33:14
для разработки побить все на кучу мелких .so

Vsevolod
19.12.2017
14:34:04
это понятно, но вот так склалось, что никто этого не сделал из-за кучи legacy зависимостей...

ладно, это все оффтоп

Alex
19.12.2017
14:36:16
Как раз "рак шаблонов" это одна из вещей, которая делает ClickHouse быстрым :) Потому что в бинарник вкомпилирован оптимизированный код для большого числа комбинаций типов параметров.

Vsevolod
19.12.2017
14:39:20
ну, все это делается руками на plain c, только с большим геморроем

вон, в openssl сделали на перле кодогенератор ассемблера, так что и шаблоны c++ делаются средствами препроцессинга довольно элементарно

другое дело, что по читаемости это даже хуже c++ :)

prll
19.12.2017
14:40:50
а по удобству изменений и еще хуже

Google
Vladimir
19.12.2017
14:46:18
Ребята подскажите какую ОС лучше сетапить для кликхауса, и какую весрию кликхауса лучше ставить чтобы настроить шардирование

Pavel
19.12.2017
14:46:24
ненене, никакого С пожалуйста

скорее бы хотелось отключения требования SSE4/2 :( я, конечно, понимаю, что прошу дичи, но просто получается что другие системы работают на том же железе, а КХ - отказываеься :/

prll
19.12.2017
14:47:42
а в чем проблема пересобрать ?

Ребята подскажите какую ОС лучше сетапить для кликхауса, и какую весрию кликхауса лучше ставить чтобы настроить шардирование
обычно желательно все ставить самое свежее, а название ОС - которое наиболее приемлемо для вашей компании

кроме windows конечно

Pavel
19.12.2017
14:49:40
а планов отдельную сборку сделать для таких вот мамонтов нету?

prll
19.12.2017
14:50:20
есть вариант сборки в одну строку через pbuilder

Pavel
19.12.2017
14:52:38
а можно ссылочку, пожалуйста?

в идеале мне бы просто пакет что для убунты идет перебрать без SSE и все

pavel
19.12.2017
15:22:28
Есть таблица t1 ENGINE = ReplicatedMergeTree и есть t1_mv MATERIALIZED VIEW ... ENGINE = MergeTree ... as select from t1 для неё. 1) Так бывает? Или данный MV должен использовать тоже какой-то replicated-движок? 2) На другом сервере лежит реплика t1. На том другом сервере лежит t2_mv для t1. t2_mv на том другом сервере будет штатно наполняться данными при инсерте в любую реплику t1? 3) t1_mv, t2_mv вообще должны знать что-то про репликацию? Или они могут независимо жить на разных серверах и спокойно апдейтиться из "родительских" таблиц, ничего не зная про их реплика-природу? 4) Существует вообще какой-то в природе смысл реплицировать MV, делать их с Replicated-движком?

Pavel
19.12.2017
15:36:48
@proller а как мне пересборка поможет? :( В билд гайде снова требование SSE 4.2: https://clickhouse.yandex/docs/en/development/build.html

prll
19.12.2017
15:44:46
ну сборка не проверяет этот гайд на корректность ;)

примерно так можно пересобрать без sse: sudo DIST=artful pbuilder create --configfile debian/.pbuilderrc && env DH_VERBOSE=1 CMAKE_FLAGS="-DHAVE_SSE41=0 -DHAVE_SSE42=0 -DHAVE_POPCNT=0 -DHAVE_SSE2_INTRIN=0 -DSSE2FLAG=' ' -DHAVE_SSE42_INTRIN=0 -DSSE4FLAG=' ' -DHAVE_PCLMULQDQ_INTRIN=0 -DPCLMULFLAG=' '" DIST=artful pdebuild --configfile debian/.pbuilderrc --debbuildopts "--source-option=--format=\"3.0 (native)\""

но! сейчасс в master сломано

Pavel
19.12.2017
15:56:08
попробую) Спасибо!

prll
19.12.2017
16:13:48
тег v1.1.54318-stable таким способом собирается нормально

Pavel
19.12.2017
16:14:39
супер!) сейчас буду пробовать!

Rudenko
19.12.2017
16:17:43
Добрый день , есть забавная задача. Вот сама таблица CREATE TABLE IF NOT EXISTS trade_history ( EventDate Date, Timestamp UInt64, Exchange String, Pair1 String, Pair2 String, Price Float64, Amount Float64, Time DateTime ) ENGINE = MergeTree(EventDate, (Exchange, Timestamp, Pair1, Pair2, Price, Amount, Time), 8192); К ней есть запрос типа SELECT MAX(Price), MIN(Price), SUM(Amount), Pair1, Pair2 FROM trade_history WHERE (EventDate >= '2017-11-23' AND EventDate <= '2017-11-30') AND (Timestamp >= 1511447283790628020 AND Timestamp <= 1512052083790628020) GROUP BY toStartOfHour(Time), Pair1, Pair2 Вопрос как получить первый Price и последний Price к каждой группе toStartOfHour(Time), Pair1, Pair2 Надо построить график OHLCV(Японские свечи). Для этого надо 5 параметров O - Open(Первый Price в временном промежутке) H - High(Самый высокий Price за весь промежуток) L - Low (Самый низкий Price за временной промежуток) C - Close (Последний Price за временной промежуток) V - Volume (Сума всех Amount) Хотелось бы сделать все в один запрос чтоб не гонять дата сет в 1.5 ккк записей. Что-то типа SELECT MAX(Price), MIN(Price), SUM(Amount), FIRST(Price), LAST(Price), Pair1, Pair2 FROM trade_history WHERE (EventDate >= '2017-11-23' AND EventDate <= '2017-11-30') AND (Timestamp >= 1511447283790628020 AND Timestamp <= 1512052083790628020) GROUP BY toStartOfHour(Time), Pair1, Pair2

Alex
19.12.2017
16:28:03
Коллеги, привет! Вашему вниманию статья про GROUPING SETS "на коленке" https://dzone.com/articles/implementing-subtotals-aggregations-in-clickhouse

Google
roma
19.12.2017
16:44:01
привет подскажите, пожалуйста, как починить 2017.12.19 10:03:34.141696 [ 21045184 ] <Error> ExternalDictionaries: Failed reloading 'foo_dict' dictionary: Poco::Exception. Code: 1000, e.code() = 0, e.displayText() = Host not found: 172.16.0.10, e.what() = Host not found словарь описан как: <dictionary> <name>foo_dict</name> <source> <http> <url>http://172.16.0.10/api/v1/dictionary/blahblah</url> <format>TabSeparated</format> </http> </source> [...skip...]

Александр
19.12.2017
16:45:09
Server returned error: Server returned error: /opt/home/milovidov/ClickHouse_clean/contrib/libtcmalloc/src/page_heap_allocator.h:74] FATAL ERROR: Out of memory

Интересные пути в ошибке )

С репозитория кх ставился

Vladislav
19.12.2017
16:50:24
в самом пути ничего плохого нет - это отладочная информация

Alexey
19.12.2017
18:21:02
Опубликованы презентации с московского митапа: https://clickhouse.yandex/presentations/meetup11/not_in_the_docs.pdf https://clickhouse.yandex/presentations/meetup11/clickhouse_in_the_world.pptx https://clickhouse.yandex/presentations/meetup11/target.pdf https://clickhouse.yandex/presentations/meetup11/mosru.pdf https://clickhouse.yandex/presentations/meetup11/tableau.pptx https://clickhouse.yandex/presentations/meetup11/news_and_plans + ещё один микро-доклад был без презентации - ждём видео.

Anatoly
19.12.2017
20:42:28
Спасибо !

pavel
20.12.2017
00:20:58
Будет ли Materialized View наполняться данными, если INSERT сделан на другом сервере в реплицируемую таблицу, а наша MV просто as select к этой таблице на своём сервере?

Alexey
20.12.2017
03:24:28
Будет ли Materialized View наполняться данными, если INSERT сделан на другом сервере в реплицируемую таблицу, а наша MV просто as select к этой таблице на своём сервере?
Нет. Для данных целей, Materialized View следует создать с Replicated движком на обеих серверах. Тогда вставленные данные на одном сервере, попадут в Materialized View, и будут реплицированы по всем репликам.

S
20.12.2017
05:14:41
Добрый день, коллеги! Поделитесь, пожалуйста, опытом работы с timeseries метриками в CH. Например: как получаете последнюю, по времени, метрику группированную по атрибуту; как схлапываете данные за периоды. Any help, pls )))

S
20.12.2017
05:44:03
@metrics_ru
Новый чатик! :)

.
20.12.2017
06:40:34
Привет. В схеме eventDate Date DEFAULT toDate(eventTime) Если пропускаю эту колонку в нодовских либах, то ставит дату 0000-00-00. Кто-нибудь сталкивался с таким?

Константин
20.12.2017
07:00:44
Доброе утро!

Скажите, если на одной ноде в кластере закончилось место

можно ли удалить standalone таблицу

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