@clickhouse_ru

Страница 517 из 723
Gubaydullin
03.05.2018
15:50:53
спасибо)

буду дальше смотреть

nikoinlove
03.05.2018
16:18:50
а есть какой-то список популярных ошибок в логе, который вы сами у себя парсите и рисуете по ним мониторинги? а то в логи огромная каша, а хочется чего-то полезное видеть, например тормозящие мержи или там таблицы поломанные

Gubaydullin
03.05.2018
17:03:02
sudo docker run -d -p 127.0.0.1:8123:8123 -p 127.0.0.1:9000:9000 —name test-clickhouse-server —ulimit nofile=262144:262144 yandex/clickhouse-server далее мы уже не выполняем команду service clickhouse-server start

Google
Gubaydullin
03.05.2018
17:03:13
сервер стартует автоматически в контейнере

а каким образом можно добавить строку <timezone>UTC</timezone> в конфиг кликхауса?

clickhouse-server —config-file=/etc/clickhouse-server/config.xml но мы ведь не вызываем старт clickhouse-server

кто-нибудь сталкивался с такой проблемой?

Wolf
03.05.2018
17:06:45
так вроде у него по дефолту UTC

Gubaydullin
03.05.2018
17:07:59
по дефолту не указана в конфиге timezone

<!— <timezone>Europe/Moscow</timezone> —>

вот что по дефолту в конфиге

If not specified, system time zone at server startup is used.

start server instance with custom configuration docker run -d —name some-clickhouse-server —ulimit nofile=262144:262144 -v /path/to/your/config.xml:/etc/clickhouse-server/config.xml yandex/clickhouse-server нашел

sudo docker run -d -v clickhouse.xml:/etc/clickhouse-server/config.xml -p 127.0.0.1:8123:8123 -p 127.0.0.1:9000:9000 —name test-clickhouse-server —ulimit nofile=262144:262144 yandex/clickhouse-server

docker: Error response from daemon: readdirent: not a directory.

никто не сталкивался с таким?

Google
Gubaydullin
03.05.2018
19:09:33
sudo docker run -d -v /home/vagrant/aff/clickhouse.xml:/etc/clickhouse-server/config.xml -p 127.0.0.1:8123:8123 -p 127.0.0.1:9000:9000 —name test-clickhouse-server —ulimit nofile=262144:262144 yandex/clickhouse-server

оказывается нужен полный путь

Alexey
03.05.2018
19:19:00
nikoinlove
03.05.2018
19:19:27
А какой логлевел?

И как сменить логлевел на ходу?)

Alexey
03.05.2018
19:21:08
Warning

Запись данных 50-100к строк/сек, чтения тоже много.

В конфиге)))

nikoinlove
03.05.2018
19:27:42
Да где в конфиге я знаю, а перечитывает ли он его не знвю

Alexey
03.05.2018
19:29:38
В changelog было, видел

https://github.com/yandex/ClickHouse/blob/master/CHANGELOG_RU.md

Возможность изменения уровня логгирования без перезагрузки сервера.

378

nikoinlove
03.05.2018
19:36:48
Ага значит чтобы сменить логлевел без перезагрузки надо обновить сервер с перезагрузкой)

Mike
03.05.2018
19:45:32
Кто может помочь найти ошибку с cloudflare/sqlalchemy-clickhouse? engine = sa.create_engine('clickhouse://localhost:8123/some_stats', echo=True) metadata = MetaData() scs = Table(‘Subs’, metadata, Column('Date', Date), Column('Timestamp', DateTime), Column('ChannelId', Integer), Column('Count', Integer) ) ins = scs.insert().values(Date=datetime.now(timezone.utc).strftime('%Y-%m-%d'), Timestamp=datetime.now(timezone.utc).strftime('%Y-%m-%d %H:%M:%S'), ChannelId=chan.id, Count=chan.participants_count) engine.execute(ins)``` приводит к Exception: Code: 27, e.displayText() = DB::Exception: Cannot parse input: expected ( before: FORMAT TabSeparatedWithNamesAndTypes: (at row 2)

Gubaydullin
03.05.2018
20:12:35
docker run -d -v /home/travis/company/repo/clickhouse.xml:/etc/clickhouse-server/config.xml -p 127.0.0.1:8123:8123 -p 127.0.0.1:9000:9000 —name test-clickhouse-server —ulimit nofile=262144:262144 yandex/clickhouse-server

not a directory

на локальной машине удалось подключить конфигурационный файл, а на тревисе - нет

не могли бы вы помочь..

docker run -d -v ${PWD}/clickhouse.xml:/etc/clickhouse-server/config.xml -p 127.0.0.1:8123:8123 -p 127.0.0.1:9000:9000 —name test-clickhouse-server —ulimit nofile=262144:262144 yandex/clickhouse-server

Google
Gubaydullin
03.05.2018
20:35:24
решено

Igor
03.05.2018
21:57:35
пока выглядит как "до tabix ему еще топать и топать" =)
Самому очень интересно что получится из HouseOps)) Я удивился фразе "are very bad and full of bug (like Tabix)", при этом не получив не одного Issue, кроме одного мелгоко PR. "Dear Users tabix" -- если у вас есть баги/пожелание напишите issue на github )

nikoinlove
03.05.2018
22:47:58
А можно я

Если у кликхауса кривой сертификат(недоверенный) то при попытке в него зайти пишется ронг юзер или пароль. Зарепортите за меняя? Это про табикс Хотя дело в сертификате а не пароле

Alexey
04.05.2018
08:25:20
Добрый день. Имею желание удалять "старые" партиции до тех пор, пока таблица не будет занимать на диске +/- определённое количество гигабайт. Возможно ли такой интересный SQL-запрос написать по system.parts, или надо скрипт обязательно городить, который сначала получит список партиций и их размеров, сам всё посчитает и дропнет ненужное?

Stanislav
04.05.2018
08:28:35
Господа, а как принято считать скорость изменения счётчика с переполнением? runningDifference в моменты переполнения даёт отличный всплеск

Stanislav
04.05.2018
08:29:23
причём отрицательный всплеск...

Sergei
04.05.2018
08:36:42
Привет, а как влияет на производительность (при инсерте, мерже) наличие большого индекса (5-8 столбцов), насколько это критично для КХ ? И как тогда из стоит использовать при селекте ? Как будут работать индексы если в where указаны например 1,2,3 и 6 столбец ? Или допустим только 6 - ой ?

Stanislav
04.05.2018
08:40:39
argMax(runningDifference(cpu), 0) работает именно так, как надо. Спасибо всем за работу уточкой :-)

LeiDruid
04.05.2018
08:55:30
Товарищи, а это нормально, что на копеечной партиции (около 1 мб весом) очень долго выполняется detach ?

или drop

0 rows in set. Elapsed: 43.895 sec.

Разумеется, запись в таблицу идёт непрерывно

Остановил запись - ситуация не улучшилась

Ivan
04.05.2018
09:00:19
тоже заметил долгий дроп на небольших таблицах, причем не всегда, а изредка, тоже в пределах минуты

LeiDruid
04.05.2018
09:00:58
У меня не изредка - прям всегда

Грешить на ресурсы не приходится, запас большой, как по IO дисков, так и по остальным ресурсам

Google
Kirill
04.05.2018
09:06:23
Если партиция меленькая то и мержи будут работать быстро, нужно покапаться что лочит. Или, как вариант, если она реплицируемая то задержки могут быть связаны с работой зукипера

Ivan
04.05.2018
10:13:40
Скажите, есть такая метрика - ClickHouse.ProfileEvents.SelectQuery - но она как то не сильно правдивое инфо показывает. Сталкивался ли кто?

Sergei
04.05.2018
10:35:43
Тоже такой вопрос возник но ответа не нашли, используем около 20 полей в индексе, может быть это не правильно вовсе
спасибо, мы 20 не думаем использовать, до 6 - 8 где то. А вы какие то особенности по веремени селектов не заметили ?

Mike
04.05.2018
10:39:22
спасибо, мы 20 не думаем использовать, до 6 - 8 где то. А вы какие то особенности по веремени селектов не заметили ?
Да в целом ничего особенного, у нас идет постоянная вставка, партиционирование по 1 дню, храним около месяца, остальное дропаем, заметили, что вставки даже по 100-200тыс строк приводили к лимиту мерджей, начали копить очереди до 1млн строк, ситуация нормализовалась, селект запросы временами подвисают, но какой-то логики пока не нашли

Mike
04.05.2018
10:57:41
а сколько у вас строк в день нагрузка ? и есть ли шардирование ?
3 шарда по 2 реплики, в сутки загружается около 15млрд строк (объем ~ 1TB)

Ivan
04.05.2018
11:10:34
не пойму почему не выполняется следующий запрос по http интерфейсу: select toString(toYear(Date)*10000+toMonth(Date)*100+toDayOfMonth(Date)) as Date, UserID, count() as Cnt from log1c where Date = '2018-01-16' group by Date, UserID format JSON выдает ошибку (похоже на то, что знак + теряется в тексте запроса): Code: 62, e.displayText() = DB::Exception: Syntax error: failed at position 36: toMonth(Date)*100 toDayOfMonth(Date)) as Date, UserID, count() as Cnt from log1c where Date = '2018-01-16' group by Date, UserID format JSON . Expected one of: alias, AS, token, AND, OR, BETWEEN, IS, LIKE, NOT LIKE, IN, NOT IN, GLOBAL IN, GLOBAL NOT IN, Comma, QuestionMark, e.what() = DB::Exception

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

Kukuzapa
04.05.2018
11:23:43
Попробуйте строку в теле поста отправлять. У меня это решило некоторые вопросы с хттп интерфейсом.

Evgeny
04.05.2018
11:25:36
+ возможно, преобразуется в другой символ (пробел). попробуйте urlencoded string ?

Ivan
04.05.2018
11:29:07
спасибо, попробую вариант с POST запросом. Вариант заменить + на -(-) тоже сработал :)

+ возможно, преобразуется в другой символ (пробел). попробуйте urlencoded string ?
а что это? формат КХ или просто понятие из мира http?

Evgeny
04.05.2018
11:31:28
ради эксперимента поставьте вместо + %20

%20

Alex
04.05.2018
11:31:38
Evgeny
04.05.2018
11:31:58
сорри

Google
Evgeny
04.05.2018
11:31:59
%2B

Ivan
04.05.2018
11:33:13
%2B
ага, работает так, спасибо

Konstantin
04.05.2018
12:59:38
Ребята, подскажите такой момент. Так получилось, что у меня есть запрос, выглядящий примерно так: SELECT dimesion, sum(metric1), sum(metric2) FROM ( select dimesion, sum(metric1) metric1, 0 metric2 FROM one_source GROUP BY dimesion UNION ALL select dimesion, 0, sum(metric2) FROM another_source GROUP BY dimesion ) group by dimesion WITH TOTALS И вот возникла у меня потребность сосчитать еще одну метрику с уникальностью? т.е. получить что-то типа SELECT dimesion, sum(metric1), sum(metric2), uniqStateMerge(u) FROM ( select dimesion, sum(metric1) metric1, 0 metric2, uniqState(mertic3) FROM one_source GROUP BY dimesion UNION ALL select dimesion, 0, sum(metric2), someImplementationOfEmptySate() FROM another_source GROUP BY dimesion ) group by dimesion WITH TOTALS Вот вопрос насчет куска someImplementationOfEmptySate - как его добиться? Пытался делть просто null, (select uniqState(if(5=0, dummy, null)) from system.one), (select uniqState(dummy) from system.one where 5=0) - и всё не работает, выдавая разные ошибки относительно null-ов в аггрегатных функциях

Еще уточною, почему я не мержу стейт прям изначально: в этом случае получается проблема с totals - если mertic3 имеет одинаковые значения в разных dimension, я ожидаю получать по 1 в каждой строке с очередным dimesion и 1 в тоталах.

а, нашел, uniqIfState(1, false)

Алексей
04.05.2018
13:16:46
день добрый! может сталкивался кто: 1. CREATE TABLE Test ( date Date, flag UInt8 ) ENGINE = ReplacingMergeTree(date, tuple(), 8192) 2. insert into Test values(today(), 1) 3. select * from Test Received exception from server: Code: 1001. DB::Exception: Received from 127.0.0.1:9000. DB::Exception: vector::_M_range_check: __n (which is 0) >= this->size() (which is 0). я правильно понимаю, что оно утыкается в пустой tuple для PK

версия 1.1.54236?

блин, знак вопроса не туда залетел :О)

т.е., видимо, вопрос в том, можно ли указывать пустой PK?

Alex
04.05.2018
13:18:47
Начиная с 1.1.54362 можно

Алексей
04.05.2018
13:19:24
ясно. а без обновления версии какие-то пути обхода порекомендуете?

CREATE TABLE Test ( date Date, flag UInt8) ENGINE = ReplacingMergeTree(date, tuple(date), 8192) вот такой вот вариант прокатил

единственно, не будет ли оно дублировать индекс? (в моём случае не критично, но для общего развития было бы не плохо понять)

Kirill
04.05.2018
13:47:56
Вопрос. Есть табличка ReplicatedSummingMergeTree в ней через CLEAR COLUMN IN PARTITION почистили часть колонок, но мержиться она отказывается с таким вот сообщением: Part 201804_0_0_0 cannot be merged yet, a merge has already assigned for it or it is temporarily disabled как это можно побороть?

Завел issue https://github.com/yandex/ClickHouse/issues/2315

Sergei
04.05.2018
14:37:02
Привет. А можно как то отлогировать Insert в базу вместе с данными ?

Stanislav
04.05.2018
14:38:27
подозреваю, при помощи nginx как фронтенда и логирования данных POST

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