@clickhouse_ru

Страница 200 из 723
Alexey
12.07.2017
16:43:20
ясно. а по ZNODEEXISTS случаем не возникло идей что делать? у нас эта ошибка продолжает сыпатся :(
Надо смотреть внимательнее. Эта ошибка возникает каждый раз при одном и том же INSERT-е или для разных. Исчезает, если поставить свежую версию?

ясно. а по ZNODEEXISTS случаем не возникло идей что делать? у нас эта ошибка продолжает сыпатся :(
Речь идёт про случай, где мигрировали с одного ZK на другой, но как-то некорректно перенесли данные?

Igor
12.07.2017
17:50:02
Подскажите а с какой версии сервера появилось " В новой версии сервера эта колонка system.columns теперь называется default_kind (было default_type) " Tabix дает ошибку на отсутствие default_type -> хочу в нем сделать если версия сервера Y то ... иначе Z

Alexey
12.07.2017
18:05:55
1.1.54237

Google
Alexey
12.07.2017
18:06:17
Посмотреть можно тут: https://github.com/yandex/ClickHouse/commit/8d570e2768b9bbdc0e26571943df65b94ee45f6f Сверху полный список тегов, куда входит этот коммит.

Igor
12.07.2017
18:10:46
Спасибо!

Alexander
12.07.2017
18:11:21
Я так и не понял как все хранят время какого-то события (желательно точнее секунды)

Alexey
12.07.2017
18:12:15
Обычно UInt64, содержащий unix timestamp домноженный на нужное разрешение (например, 1000) + миллисекунды.

Alexander
12.07.2017
18:13:27
Но ведь мс прекрасно лежит и в uint32

В любом случае, может я не понимаю как правильно, но не очень удобно пользоваться вместо '12:00:00.000'

Alexey
12.07.2017
18:15:34
Да, неудобно.

Alexander
12.07.2017
18:17:57
А так - понятно что это просто сахар надо числами, но и для datetime по идее он не обязательный :)

Ilya
12.07.2017
18:53:55
Вопрос про parimary key и parts у MergeTree - я правильно понимаю, что поле, которое передаётся при создании MergeTree как первый параметр, оно используется при оптимизации SELECT (для отсекания ненужных parts) когда мы в WHERE его указываем?

(даже если оно в primary key не указано)

Alexey
12.07.2017
18:57:06
Да. При чём, крайне желательно указывать условие на него в WHERE, даже если условие на первичный ключ тоже есть.

Ilya
12.07.2017
18:59:06
Угу, спасибо. Сразу второй вопрос в догонку - очевидно из этого вытекает, что если мне например нужен индекс по DateTime, то я указываю DateTime поле в индексе, но для поиска делаю WHERE по обоим полям - и по Date и по DateTime, правильно?

Alexey
12.07.2017
18:59:15
Да.

Google
Ilya
12.07.2017
18:59:24
Супер, спасибо!

Alexey
12.07.2017
18:59:35
(имеем ввиду - условие на Date не выводится само из наличия условия на DateTime)

Ilya
12.07.2017
18:59:48
угу, именно это я и имел ввиду

все логично, спсибо!

Maksim
12.07.2017
20:00:28
https://clickhouse.yandex/docs/en/formats/rowbinary.html?highlight=binary вот здесь не вижу упаковку для Float32

как правильно упаковать?

Alexey
12.07.2017
20:01:31
Native, 4 байта.

Maksim
12.07.2017
20:02:43
ок

надеюсь, что это то, что в эрланге называется «F:32/little-float»

да, судя по всему оно

спасибо

Ilya
12.07.2017
20:17:22
Еще вопрос про primary key - я правильно понимаю, что pk по Array полезен только если искать по полному составу данных в Array? При поиске по вхождению типа has(arr, value) primary key будет бесполезен?

Alexey
12.07.2017
20:17:52
Да.

Ilya
12.07.2017
20:23:01
А если нужно именно вхождение искать и быстро то как лучше делать? Отдельную таблицу со ссылками как в реляционных? Или просто дублировать записи "раскрывая" массив? При том что кол-во элементов в массивах может быть произвольно большим.

Alexey
12.07.2017
20:24:21
Лучше второе - раскрывать массив. Дело в том, что для хранения действительно длинных массивов в одной строке ClickHouse плохо подходит, тогда как для хранения большого количества мелких строк, наоборот, хорошо.

Ilya
12.07.2017
20:25:18
Понял. Примерно так и думали. :) Еще раз спасибо.

Alexey
12.07.2017
20:27:08
надеюсь, что это то, что в эрланге называется «F:32/little-float»
Максим, ты пишешь erlang клиент, работающий по native протоколу?

Maksim
12.07.2017
20:27:23
не, я заливаю с raw binary

http post и поехали

Alexey
12.07.2017
20:28:34
понял

Google
Alexey
12.07.2017
20:29:10
но ты планируешь делать полную обвязку (чтоб множество ендпойнтов и т.п.)?

Maksim
12.07.2017
20:29:18
пока нет

Alexey
12.07.2017
20:29:20
т.е. полноценный драйвер/клиент

ок

Maksim
12.07.2017
20:29:42
для нас пока хватает просто post и get

Alexey
12.07.2017
20:31:26
мы начали помаленьку ковырять в этом направлени. Надюесь выложим что-то рабочее.

Igor
12.07.2017
20:48:17
Обновлил Tabix build=17.07.1 - поддержка нового CH - мелкие правки

Беслан
12.07.2017
20:48:45
Спасибо!

Maksim
12.07.2017
20:51:52
мы начали помаленьку ковырять в этом направлени. Надюесь выложим что-то рабочее.
мы пока и прогресс читаем с http (и в браузере показываем), и заливаем

Igor
12.07.2017
21:00:01
мы пока и прогресс читаем с http (и в браузере показываем), и заливаем
Подскажите, а процесс-бар вы получаете через CORS или CH у вас за прокси и/или на том же домене, я просто не смог прикрутить прогресс - т/к как я понял, rfc по cors нужно править сам CH - чтобы сервер отдавал ` Access-Control-Expose-Headers : X-ClickHouse-Progress `

Alexey
12.07.2017
21:00:51
> нужно править сам CH - чтобы сервер отдавал Почему бы и нет...

Maksim
12.07.2017
21:01:05
CH у меня конечно за прокси: давать пользователям к нему доступ исключено. Прокси транслирует псевдоязык в SQL, добавляет account_id и шлет запрос к КХ. В самом прокси регистрируется идентификатор запроса и веб-морда попингивает этот идентификатор спрашивая сколько ещё осталось

Igor
12.07.2017
21:02:20
> нужно править сам CH - чтобы сервер отдавал Почему бы и нет...
Скоро, пришлю PR - когда проверю что оно так будет работать ;)

Alexey
12.07.2017
21:02:53
Хорошо, заранее спасибо!

Maksim
12.07.2017
21:09:01
А самое главное: как ты хочешь в яваскрипте получить потоком хедеры?

это же кажется нельзя сделать

Igor
12.07.2017
21:17:25
А самое главное: как ты хочешь в яваскрипте получить потоком хедеры?
МозгК - подсказывает мне что это не возможно, но в теории вот этот код должен что-то получать - progress & onprogress https://github.com/smi2/tabix.ui/blob/master/src/app/services/api.js#L211 Из нескольких часов "гугления" я понял что не хватает заголовка т/к cors - далеко не факт что JS это вообще может... Есть запасной и утопичный вариант поднять Socket клиент ( facepalm ) Поэтому я бросил эту затею в свое время, но самому сильно не хватает прогресс бара ((

Соберу CH с заголовками проверю - может сработает

Александр
12.07.2017
21:30:11
Ребят, есть кластер из 8 машин, две отвалились, делаю drop table on cluster, две машины естественно не отвечают. На оставшихся 6 таблица удалилась. Что будет когда две отвалившиеся поднимутся?

Google
Alexey
12.07.2017
21:31:32
Они удалят таблицу сразу после поднятия clickhouse-server.

Александр
12.07.2017
21:37:39
Супер! Спасибо за ответ!

Admin
ERROR: S client not available

Alexander
12.07.2017
22:34:32
А superset кто-то подключал к CH ?

f1yegor
12.07.2017
22:37:10
https://hub.docker.com/r/crobox/superset/

Alexander
13.07.2017
01:00:49
Maxim
13.07.2017
05:33:33
/stat@combot

Combot
13.07.2017
05:33:34
combot.org/chat/-1001080295593

combot.org/chat/-1001080295593

Valeriy
13.07.2017
06:34:23
А есть отдельное право создавать temporary-таблицы? Я могу readonly-пользователю позволить это делать?

А внешние словари могут лежать в MySQL с SSL? В примерах нет настроек указания ssl-опций.

Vladimir
13.07.2017
08:37:50
Всем привет, резко началась ошибка - DB::Exception: Resource temporarily unavailable. Что это значит? Кто-нить сталкивался с таким? Одна нода исчерпала все доступные ресурсы, это какие? Может что-то нужно подкручивать?

Vladimir
13.07.2017
08:40:11
core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 491441 max locked memory (kbytes, -l) 64 max memory size (kbytes, -m) unlimited open files (-n) 1024 pipe size (512 bytes, -p) 8 POSIX message queues (bytes, -q) 819200 real-time priority (-r) 0 stack size (kbytes, -s) 8192 cpu time (seconds, -t) unlimited max user processes (-u) 491441 virtual memory (kbytes, -v) unlimited file locks (-x) unlimited

Andrei
13.07.2017
08:50:00
Всем привет! У меня вопрос по поводу поддержки массивов в jdbc драйвере. На текущий момент он поддерживает в ответе только целочисленные примитивы и строки. Поддержка других типов, например, Float присутствовала, но была выпилена в pull request #112 . Есть для этого какая-то причина?

Sergey
13.07.2017
09:05:13
112 откатил 108, в котором были добавлены типы, практически сразу после мёржа. Обнаружили неполноту тестов и проблему с датами. Есть pr 115, который предназначен всё таки добавить всё сделанное в 108, после исправления по датам.

Vsevolod
13.07.2017
09:05:43
а я правильно понимаю, что поддержки наносекундных таймстампов в сабже нет?

Vladimir
13.07.2017
09:07:58
Google
Vsevolod
13.07.2017
09:08:00
это печально. впрочем, если сравнение по скорости с kdb будет в пользу CH, то можно будет и попатчить

нет, у меня слегка другая проблема

мне нужно грузить много всякого говна из csv, и питоном это препроцессить не очень приятно

было бы круто иметь такое внутри самой БД

Vladimir
13.07.2017
09:26:03
на что-то интересное напоролся писало всю ночь без вопросов и пару часов назад отвалилось с 2017.07.13 09:22:25.558977 [ 225 ] <Error> executeQuery: Code: 252, e.displayText() = DB::Exception: Too much parts. Merges are processing significantly slower than inserts., e.what() = DB::Exception (from 10.159.116.118:35611) (in query: INSERT INTO Measures FORMAT TabSeparated ), вроде понтно, привысили лимит 300 ожидал что в мержах будет очередь а там :) SELECT * FROM system.merges SELECT * FROM system.merges Ok. 0 rows in set. Elapsed: 0.002 sec. писать по прежнему не дает. что делать? Ждать, перезапускать, начинать заново писать?

KIrill
13.07.2017
09:28:31
А /var/log/clickhouse-server/clickhouse-server.log что-то говорит наверное. У меня в такой ситуации он очень сильно ругался.

Там что-то про Backgroud Thread Pool много разного писалось ...

Vladimir
13.07.2017
09:32:41
А /var/log/clickhouse-server/clickhouse-server.log что-то говорит наверное. У меня в такой ситуации он очень сильно ругался.
Куча такого 2017.07.13 09:33:10.914379 [ 234 ] <Error> HTTPHandler: Code: 252, e.displayText() = DB::Exception: Too much parts. Merges are processing significantly slower than inserts., e.what() = DB::Exception, Stack trace: 0. clickhouse-server(StackTrace::StackTrace()+0x16) [0x28ae4d6] 1. clickhouse-server(DB::Exception::Exception(std::string const&, int)+0x1f) [0x102a3af] 2. clickhouse-server(DB::MergeTreeData::delayInsertIfNeeded(Poco::Event*)+0x34b) [0x29e487b] 3. clickhouse-server(DB::MergeTreeBlockOutputStream::write(DB::Block const&)+0x29) [0x29c1f79] 4. clickhouse-server(DB::PushingToViewsBlockOutputStream::write(DB::Block const&)+0x486) [0x2b38906] 5. clickhouse-server(DB::MaterializingBlockOutputStream::write(DB::Block const&)+0x28) [0x2b27698] 6. clickhouse-server(DB::AddingDefaultBlockOutputStream::write(DB::Block const&)+0x235) [0x2c6f295] 7. clickhouse-server(DB::ProhibitColumnsBlockOutputStream::write(DB::Block const&)+0x4f) [0x2c892af] 8. clickhouse-server(DB::SquashingBlockOutputStream::finalize()+0x455) [0x2c507f5] 9. clickhouse-server(DB::SquashingBlockOutputStream::writeSuffix()+0x11) [0x2c50981] 10. clickhouse-server(DB::copyData(DB::IBlockInputStream&, DB::IBlockOutputStream&, std::atomic<bool>*)+0x6d9) [0x2af60e9] 11. clickhouse-server(DB::executeQuery(DB::ReadBuffer&, DB::WriteBuffer&, bool, DB::Context&, std::function<void (std::string const&)>)+0x287) [0x282cc57] 12. clickhouse-server(DB::HTTPHandler::processQuery(Poco::Net::HTTPServerRequest&, HTMLForm&, Poco::Net::HTTPServerResponse&, DB::HTTPHandler::Output&)+0x1d31) [0x1033301] 13. clickhouse-server(DB::HTTPHandler::handleRequest(Poco::Net::HTTPServerRequest&, Poco::Net::HTTPServerResponse&)+0x1e5) [0x10353c5] 14. clickhouse-server(Poco::Net::HTTPServerConnection::run()+0x27b) [0x317899b] 15. clickhouse-server(Poco::Net::TCPServerConnection::start()+0xf) [0x315d0af] 16. clickhouse-server(Poco::Net::TCPServerDispatcher::run()+0x10b) [0x317ac3b] 17. clickhouse-server(Poco::PooledThread::run()+0x87) [0x337b807] 18. clickhouse-server(Poco::ThreadImpl::runnableEntry(void*)+0x96) [0x333d456] 19. /lib/x86_64-linux-gnu/libpthread.so.0(+0x8184) [0x7f5a03e86184] 20. /lib/x86_64-linux-gnu/libc.so.6(clone+0x6d) [0x7f5a034a0ffd]

KIrill
13.07.2017
09:39:48
Ясно. Схожие строчки вижу ... А движок у таблицы какой? Не CollapsedMergeTree случаем?

Vladimir
13.07.2017
09:40:09
не

MergeTree

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