Size: a a a

ClickHouse не тормозит

2020 September 01

DC

Denny Crane [not a Y... in ClickHouse не тормозит
Alex Krash
SET max_block_size = 4
:)
ну так не честно 🙂
источник

AK

Alex Krash in ClickHouse не тормозит
не честно было такую настройку применять! я реально не рассчитывал на такую уловку, когда neighbor делал
источник

DC

Denny Crane [not a Y... in ClickHouse не тормозит
Alex Krash
не честно было такую настройку применять! я реально не рассчитывал на такую уловку, когда neighbor делал
но самое смешное что теперь из-за optimize_sort_in_order блоки могут любого размера, и уже нельзя их объединить с помощью order by в подзапросе
источник

❌ Constantine ❌ in ClickHouse не тормозит
Denny Crane [not a Yandex bot]
что в логах?
что в system.replication_queue?
что в system.merges ?
почему 5к?  по дефолту максимум 300
- логи чистые
- system.replication_queue
┌─table───┬─count()─┐
│ entry   │    1337 │
│ tracker │   16114 │
└─────────┴─────────┘

- system.merges
┌─
table─┬────────elapsed─┬────────────progress─┬─partition_id─┬──rows_read─┐
│ breq  │ 2537.076723308 │ 0.48642302713432006 │ 20200830     │ 1565522842 │
└───────┴────────────────┴─────────────────────┴──────────────┴────────────┘
-
5k - оно и было 300, временно повысили
источник

DC

Denny Crane [not a Y... in ClickHouse не тормозит
❌ Constantine ❌
- логи чистые
- system.replication_queue
┌─table───┬─count()─┐
│ entry   │    1337 │
│ tracker │   16114 │
└─────────┴─────────┘

- system.merges
┌─
table─┬────────elapsed─┬────────────progress─┬─partition_id─┬──rows_read─┐
│ breq  │ 2537.076723308 │ 0.48642302713432006 │ 20200830     │ 1565522842 │
└───────┴────────────────┴─────────────────────┴──────────────┴────────────┘
-
5k - оно и было 300, временно повысили
в - system.replication_queue куча полей,
вы показали одно, которое самое ненужное.
┌─table───┬─count()─┐
│ entry   │    1337 │
│ tracker │   16114 │
└─────────┴─────────┘


что там вообще ? merge ? get ? exception ?
источник

A

Artem in ClickHouse не тормозит
Denny Crane [not a Yandex bot]
SELECT
   number AS x,
   neighbor(x, 1) AS y
FROM numbers(10)
ORDER BY x ASC
FORMAT TSV

0 1
1 2
2 3
3 0
4 5
5 6
6 7
7 0
8 9
9 0


угадайте почему у меня Y=0
SELECT 
   number AS x,
   neighbor(x, 1, x + 1) AS y
FROM numbers(10)
ORDER BY x ASC
FORMAT TSV

0 1
1 2
2 3
3 4
4 5
5 6
6 7
7 8
8 9
9 10
источник

DC

Denny Crane [not a Y... in ClickHouse не тормозит
Artem
SELECT 
   number AS x,
   neighbor(x, 1, x + 1) AS y
FROM numbers(10)
ORDER BY x ASC
FORMAT TSV

0 1
1 2
2 3
3 4
4 5
5 6
6 7
7 8
8 9
9 10
там автор neigbour уже ответил выше
источник

A

Artem in ClickHouse не тормозит
Denny Crane [not a Yandex bot]
там автор neigbour уже ответил выше
SELECT
   number AS x,
   neighbor(x, 1, x + 1) AS y
FROM numbers(10)
ORDER BY x ASC

┌─x─┬─y─┐
│ 0 │ 1 │
│ 1 │ 2 │
│ 2 │ 3 │
│ 3 │ 4 │
└───┴───┘
┌─x─┬─y─┐
│ 4 │ 5 │
│ 5 │ 6 │
│ 6 │ 7 │
│ 7 │ 8 │
└───┴───┘
┌─x─┬──y─┐
│ 8 │  9 │
│ 9 │ 10 │
└───┴────┘
источник

❌ Constantine ❌ in ClickHouse не тормозит
Denny Crane [not a Yandex bot]
в - system.replication_queue куча полей,
вы показали одно, которое самое ненужное.
┌─table───┬─count()─┐
│ entry   │    1337 │
│ tracker │   16114 │
└─────────┴─────────┘


что там вообще ? merge ? get ? exception ?
ошибок там нет вообще, остальное ниже
┌─table───┬─type────────┬─count()─┐
│ entry   │ GET_PART    │    1143 │
│ tracker │ GET_PART    │   13961 │
│ entry   │ MERGE_PARTS │     220 │
│ tracker │ MERGE_PARTS │    2445 │
└─────────┴─────────────┴─────────┘
источник

❌ Constantine ❌ in ClickHouse не тормозит
просто не очень понятно. мерж идет только в одной таблице breq (не реплицируемая), а затор в двух других
источник

DC

Denny Crane [not a Y... in ClickHouse не тормозит
ОК, @artemhnilov @Krashuevina

set max_block_size=65536
create table A (A Int64) engine=MergeTree order by A;
insert into A select number from numbers(5);
insert into A select number from numbers(5,5);

select A, neighbor(A,-1) from (select A from A order by A)

┌─A─┬─neighbor(A, -1)─┐
│ 0 │               0 │
│ 1 │               0 │
│ 2 │               1 │
│ 3 │               2 │
│ 4 │               3 │
└───┴─────────────────┘
┌─A─┬─neighbor(A, -1)─┐
│ 5 │               0 │
│ 6 │               5 │
│ 7 │               6 │
│ 8 │               7 │
│ 9 │               8 │
└───┴─────────────────┘
источник

DC

Denny Crane [not a Y... in ClickHouse не тормозит
❌ Constantine ❌
ошибок там нет вообще, остальное ниже
┌─table───┬─type────────┬─count()─┐
│ entry   │ GET_PART    │    1143 │
│ tracker │ GET_PART    │   13961 │
│ entry   │ MERGE_PARTS │     220 │
│ tracker │ MERGE_PARTS │    2445 │
└─────────┴─────────────┴─────────┘
postpone reason ?
источник

❌ Constantine ❌ in ClickHouse не тормозит
реряюсь в дагадках что это значит( убить текущий мерж? breq
источник

A

Artem in ClickHouse не тормозит
Denny Crane [not a Yandex bot]
ОК, @artemhnilov @Krashuevina

set max_block_size=65536
create table A (A Int64) engine=MergeTree order by A;
insert into A select number from numbers(5);
insert into A select number from numbers(5,5);

select A, neighbor(A,-1) from (select A from A order by A)

┌─A─┬─neighbor(A, -1)─┐
│ 0 │               0 │
│ 1 │               0 │
│ 2 │               1 │
│ 3 │               2 │
│ 4 │               3 │
└───┴─────────────────┘
┌─A─┬─neighbor(A, -1)─┐
│ 5 │               0 │
│ 6 │               5 │
│ 7 │               6 │
│ 8 │               7 │
│ 9 │               8 │
└───┴─────────────────┘
SELECT 
   A,
   neighbor(A, -1, A - 1)
FROM
(
   SELECT A
   FROM A
   ORDER BY A ASC
)

┌─A─┬─neighbor(A, -1, minus(A, 1))─┐
│ 0 │                           -1 │
│ 1 │                            0 │
│ 2 │                            1 │
│ 3 │                            2 │
│ 4 │                            3 │
└───┴──────────────────────────────┘
┌─A─┬─neighbor(A, -1, minus(A, 1))─┐
│ 5 │                            4 │
│ 6 │                            5 │
│ 7 │                            6 │
│ 8 │                            7 │
│ 9 │                            8 │
└───┴──────────────────────────────┘
источник

DC

Denny Crane [not a Y... in ClickHouse не тормозит
❌ Constantine ❌
реряюсь в дагадках что это значит( убить текущий мерж? breq
postpone_reason это поле в system.replication_queue что в нем?
источник

❌ Constantine ❌ in ClickHouse не тормозит
Denny Crane [not a Yandex bot]
postpone_reason это поле в system.replication_queue что в нем?
черт, я же смотрел… оно пусто везде
источник

DC

Denny Crane [not a Y... in ClickHouse не тормозит
Artem
SELECT 
   A,
   neighbor(A, -1, A - 1)
FROM
(
   SELECT A
   FROM A
   ORDER BY A ASC
)

┌─A─┬─neighbor(A, -1, minus(A, 1))─┐
│ 0 │                           -1 │
│ 1 │                            0 │
│ 2 │                            1 │
│ 3 │                            2 │
│ 4 │                            3 │
└───┴──────────────────────────────┘
┌─A─┬─neighbor(A, -1, minus(A, 1))─┐
│ 5 │                            4 │
│ 6 │                            5 │
│ 7 │                            6 │
│ 8 │                            7 │
│ 9 │                            8 │
└───┴──────────────────────────────┘
вы все время про свой случай, у вас дифф всегда 1, а если я навсталяю рандмов?
источник

DC

Denny Crane [not a Y... in ClickHouse не тормозит
❌ Constantine ❌
черт, я же смотрел… оно пусто везде
postpone_reason пустое ? скриншот или не было
источник

❌ Constantine ❌ in ClickHouse не тормозит
Denny Crane [not a Yandex bot]
postpone_reason пустое ? скриншот или не было
SELECT postpone_reason
FROM replication_queue
WHERE postpone_reason != ''

Ok.

0 rows in set. Elapsed: 0.030 sec. Processed 18.14 thousand rows, 4.09 MB (613.95 thousand rows/s., 138.35 MB/s.)
источник

DC

Denny Crane [not a Y... in ClickHouse не тормозит
❌ Constantine ❌
SELECT postpone_reason
FROM replication_queue
WHERE postpone_reason != ''

Ok.

0 rows in set. Elapsed: 0.030 sec. Processed 18.14 thousand rows, 4.09 MB (613.95 thousand rows/s., 138.35 MB/s.)
ну покажите картинкой select * from replication_queue limit 100 ?
источник