
strange
16.10.2018
18:30:37
> echo "show create table SomeDb.SomeTable FORMAT [какой же тут формат использовать?];" | clickhouse-client
чтобы можно было результат show create table запихнуть в кх?
с - - query тожсамое

Wolf
16.10.2018
18:33:28

strange
16.10.2018
18:34:07

Wolf
16.10.2018
18:38:07

Google

strange
16.10.2018
18:38:28

Wolf
16.10.2018
18:39:55

strange
16.10.2018
18:42:42

Alex
16.10.2018
21:32:10
Дорогие коллеги по чату!
Внимательный читатель diff'ов заметил, что в CH появился намёк на внешние интеграции через JDBC (sick!). Функционал аналогичен текущей odbc-интеграции, только черезе JAVA (sick!).
Как инициатор и автор сего продукта, я предлагаю branstorm, как мы могли мы сделать этот функционал доступным к использованию всем заинтересованным.
Current state: в CH есть функция, аналогичная odbc, которая умеет ходить вовне в "мост", который передаёт обратно данные.
P.s. если есть явасеки со стажем, бомбаните пожалуйста лучами критики https://github.com/alex-krash/clickhouse-jdbc-bridge
P.p.s. @Alesapin , простите если я своим PR принёс unexpected behavior в работоспосбоность системы

Александр
16.10.2018
21:42:11
На почту активно приходят письма о закрытии ишью в гитхабе! Это значит что можно ожидать чейнджлог в ближайшее время? :)


Alexey
16.10.2018
21:57:34
2018.10.16 21:24:44.077483 [ 52 ] {} <Trace> HTTPHandler-factory: HTTP Request for HTTPHandler-factory. Method: POST, Address: 10.128.0.67:57942, User-Agent: Manticore 0.6.1, Length: 446
2018.10.16 21:24:44.077553 [ 52 ] {} <Trace> HTTPHandler: Request URI: /?query=INSERT%20INTO%20tablename%20FORMAT%20JSONEachRow
2018.10.16 21:24:44.077738 [ 52 ] {903d3151-7025-4123-8e93-eef7017b1a0a} <Debug> executeQuery: (from 10.128.0.67:57942, user: etl) INSERT INTO tablename FORMAT JSONEachRow
2018.10.16 21:24:44.079901 [ 52 ] {903d3151-7025-4123-8e93-eef7017b1a0a} <Trace> tablename (Data): Renaming temporary part tmp_insert_20181016_20181016_109_109_0 to 20181016_20181016_117076_117076_0.
2018.10.16 21:24:44.080085 [ 52 ] {903d3151-7025-4123-8e93-eef7017b1a0a} <Debug> MemoryTracker: Peak memory usage (total): 27.14 MiB.
2018.10.16 21:24:44.080151 [ 52 ] {903d3151-7025-4123-8e93-eef7017b1a0a} <Debug> MemoryTracker: Peak memory usage (for query): 29.64 MiB.
2018.10.16 21:24:44.080176 [ 52 ] {} <Information> HTTPHandler: Done processing query
2018.10.16 21:24:44.573770 [ 5 ] {} <Trace> another_table_name (Data): Found 2 old parts to remove.
2018.10.16 21:24:44.573856 [ 5 ] {} <Debug> another_table_name (Data): Removing part from filesystem 20181015_20181016_211625_213836_650
2018.10.16 21:24:44.576177 [ 5 ] {} <Debug> another_table_name (Data): Removing part from filesystem 20181016_20181016_213837_213837_0
2018.10.16 21:24:49.082544 [ 83 ] {} <Trace> HTTPHandler-factory: HTTP Request for HTTPHandler-factory. Method: POST, Address: 10.128.0.67:57944, User-Agent: Manticore 0.6.1, Length: 248
2018.10.16 21:24:49.082693 [ 83 ] {} <Trace> HTTPHandler: Request URI: /?query=INSERT%20INTO%20tablename%20FORMAT%20JSONEachRow
2018.10.16 21:24:49.082805 [ 83 ] {} <Debug> MemoryTracker: Peak memory usage (for query): 0.00 B.
2018.10.16 21:24:49.082879 [ 83 ] {} <Error> HTTPHandler: Code: 192, e.displayText() = DB::Exception: Unknown user default, e.what() = DB::Exception, Stack trace:
А что такое Manticore? Эта вещь может отправлять запросы без указания user-а?


Александр
16.10.2018
22:02:14


Alexey
16.10.2018
22:03:48
Дорогие коллеги по чату!
Внимательный читатель diff'ов заметил, что в CH появился намёк на внешние интеграции через JDBC (sick!). Функционал аналогичен текущей odbc-интеграции, только черезе JAVA (sick!).
Как инициатор и автор сего продукта, я предлагаю branstorm, как мы могли мы сделать этот функционал доступным к использованию всем заинтересованным.
Current state: в CH есть функция, аналогичная odbc, которая умеет ходить вовне в "мост", который передаёт обратно данные.
P.s. если есть явасеки со стажем, бомбаните пожалуйста лучами критики https://github.com/alex-krash/clickhouse-jdbc-bridge
P.p.s. @Alesapin , простите если я своим PR принёс unexpected behavior в работоспосбоность системы
В документацию помещаем пару команд - "что сделать, чтобы установить JDBC bridge", после этого SELECT ... FROM jdbc(...) работает "из коробки".
А лучше вообще так (но не уверен, возможно ли это - у меня нет опыта с Java): мы запихиваем JDBC bridge в обычный пакет ClickHouse, который все устанавливают. Для этого, ваш репозиторий подключается в виде submodule и используется во время сборки. JDBC bridge представляет собой self-contained бинарник без зависимостей, внутри которого jar и JDK. Если так невозможно, то делаем jar без зависимостей, а пользователь должен будет сам установить JDK в систему, чтобы он работал.


Konstantin
16.10.2018
22:05:21
записи вставляются, всё ок


Vladislav
16.10.2018
22:37:17
Всем привет.
Чуть покосячили с макросами replica во время переезда зукиперов.
В итоге потеряли немного данных. Одна нода кусок в ignored переименовоала, а вторая ругается, что ей ее не дают
2018.10.17 01:14:08.186996 [ 77 ] {31977c6b-e90e-49b4-a9c4-b80786d5dea7} <Trace> Log.AccessLog (Data): Renaming temporary part tmp_insert_20181017_20181017_128_128_0 to 20181017_20181017_201326_201326_0.
2018.10.17 01:27:14.327230 [ 44 ] <Error> Log.AccessLog (StorageReplicatedMergeTree): Renaming unexpected part 20181017_20181017_201326_201326_0 to ignored_20181017_20181017_201326_201326_0
2018.10.17 01:27:14.327239 [ 44 ] <Information> Log.AccessLog (Data): Renaming 20181017_20181017_201326_201326_0 to ignored_20181017_20181017_201326_201326_0 and forgiving it.
2018.10.17 01:27:14.327285 [ 44 ] <Warning> Log.AccessLog (Data): Will not recover parts covered by zero-level part 20181017_20181017_201326_201326_0
Вторая
2018.10.17 01:31:31.427812 [ 8 ] <Information> Log.AccessLog (StorageReplicatedMergeTree): DB::Exception: No active replica has part 20181017_20181017_201326_201326_0 or covering part
2018.10.17 01:31:31.427991 [ 20 ] <Warning> Log.AccessLog (ReplicatedMergeTreePartCheckThread): Checking part 20181017_20181017_201326_201326_0
2018.10.17 01:31:31.428388 [ 20 ] <Warning> Log.AccessLog (ReplicatedMergeTreePartCheckThread): Checking if anyone has a part covering 20181017_20181017_201326_201326_0.
2018.10.17 01:31:31.429153 [ 20 ] <Error> Log.AccessLog (ReplicatedMergeTreePartCheckThread): No replica has part covering 20181017_20181017_201326_201326_0 and a merge is impossible: we didn't find smaller parts with either the same min block or the same max block.
2018.10.17 01:31:31.430740 [ 20 ] <Error> Log.AccessLog (ReplicatedMergeTreePartCheckThread): Part 20181017_20181017_201326_201326_0 is lost forever.
Вопрос, можно ли их восстановить? и плохо ли будет если не восстанавливать?


Tatiana
17.10.2018
00:31:46

Google

Tatiana
17.10.2018
00:34:47
либо вы восстановите потерянные данные, либо добавите что-то второй раз ?

Денис
17.10.2018
04:43:15
всем здравия) подскажите, конструкция JOIN до сих пор работает лишь с одинаковыми именами столбцов?

Konstantin
17.10.2018
06:16:16

Денис
17.10.2018
06:23:14
https://clickhouse.yandex/docs/ru/operations/table_engines/join/
искал тут

Александр
17.10.2018
06:25:51
искал тут
Так же как и везде, только все это должно быть связанно только при помощи AND

Konstantin
17.10.2018
06:25:59
И только через знак "=" =(

Александр
17.10.2018
06:27:13

Денис
17.10.2018
06:28:47
ребят, можете привести наглядный пример? если не сложно конечно
буду очень признателен

Александр
17.10.2018
06:32:24
Select ... from table all left join another_table on table.col = another_table.another_col
Как-то так
Можно несколько колонок указать

Денис
17.10.2018
06:32:47
спасибо большое, пошел изучать

Alexey
17.10.2018
06:39:47
коллеги, а как посчитать число дней в месяце если есть дата?

Ilia
17.10.2018
06:40:44

Jen
17.10.2018
06:41:11
?

Andrey
17.10.2018
06:44:37
made my day

Google

Alexey
17.10.2018
06:45:12
плохая картинка, дает вариативность в феврале

Konstantin
17.10.2018
06:48:01
спасибо большое, пошел изучать
https://github.com/yandex/ClickHouse/blob/2953be89a450fd43b64b60f353a74cdaef0fa6e6/dbms/tests/queries/0_stateless/00674_join_on_syntax.sql

Денис
17.10.2018
06:49:08
ух ты! вот это ответ так ответ, спасибо!

Konstantin
17.10.2018
06:50:23

Alexey
17.10.2018
06:51:13

Aleksandr
17.10.2018
06:52:39
select
toDayOfMonth(toStartOfMonth(toStartOfMonth(yesterday())+31)-1)
как вариант

Konstantin
17.10.2018
06:55:04

Aleksandr
17.10.2018
06:56:56
на 29 февраля сломается
нет, там сначала перевод на начало месяца (1 февраля), потом прибавляется месяц (3 марта), потом перевод в начало месяца (1 марта) и отнимается 1 день (29 февраля)

Konstantin
17.10.2018
06:57:57

Aleksandr
17.10.2018
06:58:29
в 2018 году нет 29 дней в феврале. Это 1ое марта

Igor
17.10.2018
06:58:47

Konstantin
17.10.2018
06:58:49
а соглсаен) тут я затупил)))

Alexey
17.10.2018
07:25:18
Столкнулся с необычный проблемой.
create default.my_table_3 table error:%!(EXTRA *clickhouse.Exception=code: 117, message: Data directory for table already containing data parts - probably it was unclean DROP table or manual intervention. You must either clear directory by hand or use ATTACH TABLE instead of CREATE TABLE if you need to use that parts.)
@kshvakov не можете подсказать что это еще за проблема такая ?

Igor
17.10.2018
07:35:03
мне кажется неправельный синтаксис create table

Alexey
17.10.2018
07:48:37
@kshvakov на диске в папке data уничтожил папку с названием таблицы и все заработало

Kirill
17.10.2018
09:12:17


Григорий
17.10.2018
09:39:04
Привет, в доке тут написано, что при многократной записи одного и того же блока, содержащего одни и те же строки, блок будет записан только один раз.
Вот я создал ReplicatedMergeTree с одной репликой, залил тестовые данные (ontime из архива) через clickhouse-client. Потом снова запустил заливку тех же самым данных - таблица продолжила рост. Почему так?
xz -v -c -d < ontime.csv.xz | clickhouse-client -d airline -h 192.168.122.107 --max_insert_block_size=200000 --query="INSERT INTO ontime FORMAT CSV"


Serge
17.10.2018
10:13:57
Посоветуйте, пжл какие выставить настройки по памяти, что бы хватило запросу.
на сервере 4Gb ОЗУ, в конфиге спейчас так:
max_memory_usage = 3500000000
max_bytes_before_external_group_by = 3000000000
distributed_aggregation_memory_efficient = 1
max_execution_time = 2000
Запрос с group by падает через 2 минуты в:
DB::Exception: Memory limit (for query) exceeded: would use 3.31 GiB (attempt to allocate chunk of 134217728 bytes), maximum: 3.26 GiB

Google

Wolf
17.10.2018
10:28:13

V
17.10.2018
10:30:00
Помогу человеку https://sourceforge.net/p/telegram/wiki/markdown_syntax/

Serge
17.10.2018
10:43:13

Alexey
17.10.2018
10:53:57
Ребят, мне на работе, когда мы только планировали начать использовать ClickHouse все время говорили, что вот ClickHouse очень хорошо сжимает данные. Вот сегодня мы загрузили 200 млн записей, что на диске заняло 16 Гбайт. Мы планируем загрузить 3 млрд записей, и по расчетам это займет 260 Гбайт. Я ожидал лучшего сжатия если честно. Ну там в 40 Гигов уложится например...
Или сжатие нужно где то в настройках config.xml настраивать ?

Darafei
17.10.2018
10:56:07
80 байт на запись?
а что там в ней?

Yuran
17.10.2018
10:56:13
Сжатие очень сильно зависит от сортировки данных (т.е. от первичного ключа)
Плюс дождитесь окончания мержей (они идут в фоне)

Ivan
17.10.2018
10:56:36

Alexey
17.10.2018
10:56:37

Darafei
17.10.2018
10:57:04
ну то есть 10 чисел

Alexey
17.10.2018
10:57:08

antuan
17.10.2018
10:57:08

Alexey
17.10.2018
10:57:34

Pavel
17.10.2018
10:57:38
всем привет

Alexey
17.10.2018
10:57:45
размер таблицы посчитает ?

Ivan
17.10.2018
10:57:51

antuan
17.10.2018
10:58:00
это что такое ?
покажет оригинальный размер и пожатый каждой колонки, сможете найти узкие места

Pavel
17.10.2018
10:58:01
поймал странное поведение с https://github.com/valyala/chclient https://github.com/valyala/tsvreader

Google

Alexey
17.10.2018
10:58:13

Pavel
17.10.2018
10:58:22
прямой запрос через curl выполняется за 10 секунд и возвращает 8гб данных
а вот через TSV Reader: err = ch_client.Do(queryString, process_row) ....
почти 8 минут ?

Yuran
17.10.2018
11:00:21
И читаете через String()?
(я сейчас угадываю)

Michael
17.10.2018
11:00:40

Yuran
17.10.2018
11:01:38
Как я смог понять, zstd имеет смысл использовать для архивных данных, которые уже почти никогда не пишутся и очень редко читаются
и экономит он места не так уж значительно
(сами не использовали из-за возможной просадки по скорости)

Alexey
17.10.2018
11:03:43
select table, default.my_table_3, formatReadableSize(data_compressed_bytes), formatReadableSize(data_uncompressed_bytes) from system.columns
ошибку выдало