Size: a a a

ClickHouse не тормозит

2020 August 07

DC

Denny Crane (I don't... in ClickHouse не тормозит
Igor
# CLICKHOUSE_DO_NOT_CHOWN=1 clickhouse-server  --config-file=/etc/clickhouse-server/config.xml
Include not found: clickhouse_compression

И висит после этого
strace clickhouse-server  --config-file=/etc/clickhouse-server/config.xml
источник

ГВ

Гурам Вашакидзе... in ClickHouse не тормозит
Denny Crane (I don't work at Yandex (never did))
ну  т.е. вообще не работает словарь
Ну наверное да
источник

ГВ

Гурам Вашакидзе... in ClickHouse не тормозит
Но ошибок никаких нет
источник

I

Igor in ClickHouse не тормозит
stat("/var/lib/clickhouse/preprocessed_configs", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
openat(AT_FDCWD, "/var/lib/clickhouse//preprocessed_configs/config.xml", O_WRONLY|O_CREAT|O_TRUNC, 0666
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
Igor
stat("/var/lib/clickhouse/preprocessed_configs", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
openat(AT_FDCWD, "/var/lib/clickhouse//preprocessed_configs/config.xml", O_WRONLY|O_CREAT|O_TRUNC, 0666
ну
ls -l /var/lib/clickhouse/preprocessed_configs
источник

I

Igor in ClickHouse не тормозит
Права 777
источник

I

Igor in ClickHouse не тормозит
но cat этого файла не проходит
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
Igor
но cat этого файла не проходит
тоже висит в смысле?
источник

I

Igor in ClickHouse не тормозит
да
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
Igor
да
ну значит оно, т.е. дело не в КХ, разбирайтесь с мапингом дисков в кубах или где вы там запускаете
источник

I

Igor in ClickHouse не тормозит
окей. спасибо
источник

AV

Alex Vorobiev in ClickHouse не тормозит
Denny Crane (I don't work at Yandex (never did))
фильтруем массивы, из arrayFilter вылезают A если B >20
select arrayFilter( (x,y)-> y>20 ,A,B ) from  (select [1,2,3,3,3] A ,[66,55,-1,13,24] B )
[1,2,3]

select uniqArray(arrayFilter( (x,y)-> y>20 ,A,B )) from  (select [1,2,3,3,3] A ,[66,55,-1,13,24] B )
--
3
с учётом того, что строк много и ещё агрегация есть, у меня вот так получилось:

arrayUniq(arrayFilter((a, b) -> b = 'smth', arrayFlatten(groupArray(arr.A)), arrayFlatten(groupArray(arr.B))))

это нельзя как-то лаконичнее записать?
источник

AV

Alex Vorobiev in ClickHouse не тормозит
точнее интуитивно хочется сделать фильтрацию ДО агрегации, а потом уже агрегацию и уник)
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
Alex Vorobiev
с учётом того, что строк много и ещё агрегация есть, у меня вот так получилось:

arrayUniq(arrayFilter((a, b) -> b = 'smth', arrayFlatten(groupArray(arr.A)), arrayFlatten(groupArray(arr.B))))

это нельзя как-то лаконичнее записать?
все можно, просто рассказываете с конца, залезли в . и пытаетесь выбраться, а тупо не надо было залезать туда
источник

AV

Alex Vorobiev in ClickHouse не тормозит
Denny Crane (I don't work at Yandex (never did))
все можно, просто рассказываете с конца, залезли в . и пытаетесь выбраться, а тупо не надо было залезать туда
ну если вы про то, как изначально данные лежат, то тут действительно мало что можно сделать) то, что я описал это в принципе приведённые исходные данные задачи. есть строки, в них два массива одинаковой длины. надо сделать то-то, то-то. куда тут можно было не залезть? :)
источник

AV

Alex Vorobiev in ClickHouse не тормозит
а, ну собственно можно тупо вот так сделать arrayUniq(arrayFlatten(groupArray(arrayFilter((a, b) -> b = 'smth', arr.A, arr.B)))) может можно конечно ещё проще, но так хотя бы не дублируется агрегация. в общем спасибо)
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
Alex Vorobiev
ну если вы про то, как изначально данные лежат, то тут действительно мало что можно сделать) то, что я описал это в принципе приведённые исходные данные задачи. есть строки, в них два массива одинаковой длины. надо сделать то-то, то-то. куда тут можно было не залезть? :)
что делает array join понимаете?

select x, uniqExact(A)
from  (select 1 x, [1,2,3,3,3] Arr ,[66,55,-1,13,24] Brr )
    array join Arr as A, Brr as B
where B > 20
group by x

┌─x─┬─uniqExact(A)─┐
│ 1 │            3 │
└───┴──────────────┘
источник

AV

Alex Vorobiev in ClickHouse не тормозит
ну да, это типа unnest и потом зафильтровали
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
Alex Vorobiev
а, ну собственно можно тупо вот так сделать arrayUniq(arrayFlatten(groupArray(arrayFilter((a, b) -> b = 'smth', arr.A, arr.B)))) может можно конечно ещё проще, но так хотя бы не дублируется агрегация. в общем спасибо)
arrayFlatten(groupArray === groupArrayArray
источник

DC

Denny Crane (I don't... in ClickHouse не тормозит
Alex Vorobiev
ну да, это типа unnest и потом зафильтровали
в смысле это быстрее работает чем ваш вариант, потому что нет массивов и groupArray
источник