
Michal
11.09.2018
08:28:05

Mike
11.09.2018
08:28:20
Дата ж вроде числом хранится, можно число вычитать

Michal
11.09.2018
08:28:23
?

Google

Ivan
11.09.2018
08:28:47

Igor
11.09.2018
08:29:12
Я же говорил, сам bigquery не воспринимает нормально...

Michal
11.09.2018
08:29:57
Вы тут про bigquery спрашиваете или про кликхаус? :)

Igor
11.09.2018
08:32:00
bigquery

Ivan
11.09.2018
08:34:51
bigquery
Тогда стоит найти для этого вопроса более релевантный чатик

Yaroslav
11.09.2018
08:36:56


Michal
11.09.2018
08:58:53
Добрый день. Подскажите с такой задачей: Есть столбцы уникальный id клиента, дата и время посещения, нужно присвоить каждому уникальному id свой номерной порядок от первого до последнего посещения.
Например так:
with
groupArray( tuple(timestamp, col1,col2) ) as per_user_rows,
arraySort( row -> row.1, per_user_rows) as per_user_rows_sorted_by_ts,
arrayEnumerate(per_user_rows_sorted_by_ts) as indexes,
arrayMap( (row, index) -> tuple( index, row.1, row.2, row.3 ), per_user_rows_sorted_by_ts, indexes) as per_user_rows_sorted_by_ts_with_indexes,
arrayJoin( per_user_rows_sorted_by_ts_with_indexes ) as final_row,
final_row.1 as row_index_final,
final_row.2 as timestamp_final,
final_row.3 as col1_final,
final_row.4 as col2_final
select userid, row_index_final, timestamp_final, col1_final, col2_final
from table_1123
group by userid
или так (простая "сквозная" нумерация)
select *, rowNumberInAllBlocks() from ( select * from table_1123 order by userid, timestamp);


I
11.09.2018
09:02:24

Kirill
11.09.2018
09:28:28

I
11.09.2018
09:30:24

Konstantin
11.09.2018
09:36:04

I
11.09.2018
09:37:33
Т.е. строки между собой разделяются \n?

Google

Konstantin
11.09.2018
09:40:24

I
11.09.2018
09:41:30
Понял, т.е. \n. Спасибо!

Dmitry
11.09.2018
09:46:16
Добрый день!
Коллеги, при отправке запроса через jdbc периодически вылетает ошибка "Read timed out". Подскажите, какой настройкой регулируется этот таймаут?

Evgeny
11.09.2018
09:50:54
connection_timeout, socket_timeout

Dmitry
11.09.2018
09:55:33
Спасибо
Есть http_connection_timeout со значением 1. Она устанавливается в минутах?
А настройки socket_timeout вообще нет в результате запроса к system.settings

Artur
11.09.2018
09:56:26
Какие кто использует способы для изменения формата даты при выгрузке, например, в тот же csv. Например, если надо вывести дату в файл в формате DD.MM.YYYY HH24:MI:SS
Так не годится:
select substring(toString(dt, 'UTC'), 9, 2)
|| '.' || substring(toString(dt, 'UTC'), 6, 2)
|| '.' || substring(toString(dt, 'UTC'), 1, 4)
|| substring(toString(dt, 'UTC'), 11, 9) as dt_str
from t
limit 10
;
?

Вольдемар
11.09.2018
09:58:46
Так не годится:
select substring(toString(dt, 'UTC'), 9, 2)
|| '.' || substring(toString(dt, 'UTC'), 6, 2)
|| '.' || substring(toString(dt, 'UTC'), 1, 4)
|| substring(toString(dt, 'UTC'), 11, 9) as dt_str
from t
limit 10
;
?
Ну, вполне. Думал, может есть какие-то более очевидные способы подобного форматирования?

Mike
11.09.2018
10:02:20
Коллеги, а не подскажите, нет ли возможности встроенными функциями КХ из unix timestamp в hex получить datetime ? танцы с unhex что-то не принесли успеха

Konstantin
11.09.2018
10:04:38

Alex
11.09.2018
10:05:23

Mike
11.09.2018
10:06:44

Вольдемар
11.09.2018
10:06:49

Alex
11.09.2018
10:09:05
reverse нужен из-за little endian

Mike
11.09.2018
10:09:32

Андрей
11.09.2018
10:13:46
А поделитесь опытом, имеется postgresql и кластер на CH, как лучше организовать процесс передачи изменений в CH?(речь только про данные) Вариант переносить все с помощью csv не очень радует...

Slava
11.09.2018
10:20:42
clickhouse удалит все строки, кроме последней по ключу
это такой конкретный кейс, под конкретную задачу, может быть у вас по-другому

Konstantin
11.09.2018
10:21:52

Google

Yuriy
11.09.2018
10:24:41
еще можно toHour перевести в строку, потом скормить его в appendTrailingCharIfAbsent(x, '0'), а потом сделать reverse

Андрей
11.09.2018
10:24:54

Yuriy
11.09.2018
10:24:56
будет 8 превращет в "08"!

Slava
11.09.2018
10:25:35

Вольдемар
11.09.2018
10:25:39

Konstantin
11.09.2018
10:26:11

Vladislav
11.09.2018
10:28:37
Подскажите пожалуйста, появляются ли какие-нибудь подводные камни при более частом использовании вертикального мерджа (при уменьшении значения vertical_merge_algorithm_min_rows_to_activate)? Директива помогла избавиться от падений от оом киллера при небольшом кол-ве памяти (32гб), хотелось бы знать чем это аукнется.

Вольдемар
11.09.2018
10:29:57

Tima
11.09.2018
10:45:24
Есть новости, когда ближайший релиз?

Wolf
11.09.2018
10:46:27
да релизы буквально один за другим идут , к чему вопрос то ?

antuan
11.09.2018
10:57:21
Кстати последний ченжлог - огонь

Tima
11.09.2018
11:02:02

Alex
11.09.2018
11:04:28
Вчера был

Tima
11.09.2018
11:36:26
Вчера был
Спасибо, пропустил. Ченжлог и вправду огонь!

Paul
11.09.2018
11:52:58

Mike
11.09.2018
11:53:53
А где ченжлог можно глянуть?

Tima
11.09.2018
11:54:11

Vladimir
11.09.2018
11:57:23

Google

Vladimir
11.09.2018
11:57:38
Я в генте бампаю пакеты только на -stable, например

Wolf
11.09.2018
11:57:47
ну разница к сожалению не велика

Vladimir
11.09.2018
11:58:24

Wolf
11.09.2018
11:58:48
ну давно пора автоматизировать

Vladimir
11.09.2018
12:00:29

Egor
11.09.2018
12:21:01
подскажите пожалуйста, а зачем в примере в документации про MergeTree (https://clickhouse.yandex/docs/ru/operations/table_engines/mergetree/#_4) при создании таблицы с партиционированием по месяцам в индекс добавляется поле с датой? только чтобы отсоритровать по дням? партиционирование же будет эффективно работать при запросах с условиями по дате и без включения полей с датой в индекс?

Андрэ
11.09.2018
12:23:02
Парни, помогите пожалуйста) Если в zookeeper для некой таблицы была удалена нода (если правильно выражаюсь) log - что можно сделать, чтобы кликхаус запустился создав эту ноду? О потерянных данных речь не идет тут

Alex
11.09.2018
12:24:21

Egor
11.09.2018
12:25:18

Alex
11.09.2018
12:26:28

Андрэ
11.09.2018
12:27:16
У меня сервер не запускается, говорит No node, path: /clickhouse/tables/1-1/balance/log

Wolf
11.09.2018
12:27:43
ну надо создать этот путь руками в зукипере

Андрэ
11.09.2018
12:27:48
но я сейчас еще раз изучу доку
просто create /path/? вроде бы у меня не получилось
я с зукипером прям на Вы(

Alex
11.09.2018
12:29:05

Slava
11.09.2018
12:30:07
добрый день, скажите, пожалуйста, когда появится в репе версия 18.12.13?

Alex
11.09.2018
12:30:11
В вашем случае надо будет сохранить куски с данными, пересоздать таблицу и добавить сохранённые куски с помощью ATTACH PARTITION.

Slava
11.09.2018
12:40:17

Google

Андрэ
11.09.2018
13:01:01
я про inactive

Alex
11.09.2018
13:05:58
Да, если кусок inactive - значит был ATTACH PARTITION, и этот кусок был покрыт другим куском, который тоже был в detached. В этом случае покрывающий кусок аттачится к таблице, а покрытый кусок переименовывается в inactive_, чтобы при повторных ATTACH не было дублирования данных.

Evgeny
11.09.2018
13:18:30
Поставил КХ 18.12.13. Отвалились odbc: [unixODBC][Driver Manager]Can't open lib '' file not found
либа точно есть
откатываю на 18.5.1

Igor
11.09.2018
13:38:31
Есть таблица формата:
ИД ДЕЙСТВИЕ
1 А
1 Б
1 А
2 А
... ...
Так вот, мне надо отобрать только те ИД, которые выполнили действие А, но ни разу не выполняли действие Б. Если можно на standart SQL. Заранее спасибо.

papa
11.09.2018
13:42:33
а как вы делали что у вас не получилось?

Igor
11.09.2018
13:43:52
Пробовал через GROUP BY, не знаю ка правильно оформить запрос.

Maxim
11.09.2018
13:46:03
Select id, sum(a), sum(b) from (Select id, if(action=A, 1, 0) as a, if(action=B, 1, 0) b) group by id having sum(a) > 0 and sum(b) < 1;
Типа такого
Не уверен, правда, что самый эффективный способ.

Kirill
11.09.2018
13:55:05

Artur
11.09.2018
14:05:46
Есть таблица формата:
ИД ДЕЙСТВИЕ
1 А
1 Б
1 А
2 А
... ...
Так вот, мне надо отобрать только те ИД, которые выполнили действие А, но ни разу не выполняли действие Б. Если можно на standart SQL. Заранее спасибо.
select id
from (
select distinct id
from (
select 1 as id, 'А' as action
union all select 1 as id, 'Б' as action
union all select 1 as id, 'А' as action
union all select 1 as id, 'А' as action
union all select 2 as id, 'А' as action
) as t
where action = 'А'
) any left join (
select distinct id, id as is_find
from (
select 1 as id, 'А' as action
union all select 1 as id, 'Б' as action
union all select 1 as id, 'А' as action
union all select 1 as id, 'А' as action
union all select 2 as id, 'А' as action
) as t
where action = 'Б'
) using (id)
where is_find = 0
;
— предложу такой вариант

Konstantin
11.09.2018
14:09:56

prll
11.09.2018
14:11:15
нет, в отдельный конфиг словаря
который должен ледать в директории которая прописана в config.xml как <dictionaries_config>

GithubReleases
11.09.2018
14:19:32
yandex/ClickHouse was tagged: v18.12.13-stable
Link: https://github.com/yandex/ClickHouse/releases/tag/v18.12.13-stable
Release notes:
v18.12.13-stable

Tima
11.09.2018
14:58:57
Запросы вроде работают