Size: a a a

ClickHouse не тормозит

2020 September 17

T

Tverd in ClickHouse не тормозит
вот схему бы хотелось такую
measurements: String,
tag_set: Dict,
field_set: Dict,
timestamp: UInt64
источник

T

Tverd in ClickHouse не тормозит
это был бы идеальный вариант, но блин судя по документации не особо возможен
источник

pk

papa karlo in ClickHouse не тормозит
дальше есть несколько вариантов, одна "широкая" таблица, разные таблицы, одна таблица в которой есть Keys Array(String) Values Array(?)
источник

D

Dj in ClickHouse не тормозит
Николай Чернов
ну да, до такого я додумался, но я думал, может есть что-то более оптимальное...
довольно часто это быстрее
источник

T

Tverd in ClickHouse не тормозит
papa karlo
дальше есть несколько вариантов, одна "широкая" таблица, разные таблицы, одна таблица в которой есть Keys Array(String) Values Array(?)
кстати, хороший вариант. На этим подумаю. Только вопрос, селект возможен по определенным полям? Т.е. получается нужно получить индекс ключа и по этому ключу взять значение
источник

D

Dj in ClickHouse не тормозит
Николай Чернов
а можно поподробнее п.2?
select min(v) minv, max(v) maxv, 
(arrayJoin(arrayFilter (x-> x.2=minv or x.2=maxv, groupArray( (k,v) ) as rowtuple) ) as filteredRowTuple).1 as kfiltered,
filteredRowTuple.2 as vfiltered
from (
select k, v from (
select ['a','b','c', 'd','e'] k, [1,2,-1,0,5] v
) array join k, v
)
;
источник

D

Dj in ClickHouse не тормозит
Николай Чернов
а можно поподробнее п.2?
если ИО не тормозной, лучше пробежатся и собрать минмакс сначала, а потом уже отфильтровать строки.

иначе вы прочтете кучу не нужных данных колонок

т.е. если у вас select <100 columns> - используйте WITH  + PREWHERE
источник

НЧ

Николай Чернов... in ClickHouse не тормозит
Dj
если ИО не тормозной, лучше пробежатся и собрать минмакс сначала, а потом уже отфильтровать строки.

иначе вы прочтете кучу не нужных данных колонок

т.е. если у вас select <100 columns> - используйте WITH  + PREWHERE
Спасибо! Сравню.
источник

DC

Denny Crane [not a Y... in ClickHouse не тормозит
Tverd
кстати, хороший вариант. На этим подумаю. Только вопрос, селект возможен по определенным полям? Т.е. получается нужно получить индекс ключа и по этому ключу взять значение
источник

T

Tverd in ClickHouse не тормозит
о, походу то что нужно, благодарствую!
источник

Э

Эмил in ClickHouse не тормозит
@den_crane @BloodJazMan  Сделал одну задачу с clickhouse. Спасибо за поддержку. Делаю 100K запись каждый 5 секунд
источник

CO

Chern Oleksander in ClickHouse не тормозит
а не подскажите, мне нужно создать небольшую табличку (справочник)
MergeTree() есть смысл использовать или лучше как-то по другому создать?
источник

CO

Chern Oleksander in ClickHouse не тормозит
create table promotions
(
   id                       Int32 ,
   name                     String,
   term                     String,
   description              String,
   code                     String,
   conditions               String,
   action                   String,
   deposit_order            Int8,
   created_date             DateTime,
   start_date               DateTime,
   end_date                 DateTime,
   is_active                Int8,
   is_deleted               Int8,
   admin_id                 Int32,
   adw_refcode              String,
   updated_date             DateTime,
   department               String,
   segment                  String,
   segmentation_id          Int32,
   promotion_type           String,
   is_confirmation_required Int8,
   run_time                 String,
   activation_count_type    String,
   activation_count         Int32,
   days_lifetime            Int8,
   max_wager_bet            Int32
) engine = MergeTree()
PARTITION BY toYYYYMM(created_date)
ORDER BY (id, created_date)
SAMPLE BY intHash32(id)
SETTINGS index_granularity = 8192
источник

DC

Denny Crane [not a Y... in ClickHouse не тормозит
M
Всем привет! Кто-нибудь может подсказать, как можно получить выделенную часть при работе с массивами? Но есть ограничение - нельзя использовать те функции, которые принимают на вход ф-ии высшего порядка (напрмер, arrayMap нельзя использовать, так как запрос падает по памяти)
Пересечение массивов?
Память max_block_size-ом регулируется.
но вообще конечно надо добавить функцию arrayIntersect
источник

M

M in ClickHouse не тормозит
Denny Crane [not a Yandex bot]
Пересечение массивов?
Память max_block_size-ом регулируется.
но вообще конечно надо добавить функцию arrayIntersect
О, сейчас попробую, спасибо! Но ф-я эта есть, нет как раз той, которая бы давала непересекающуюся часть двух массивов
источник

D

Dj in ClickHouse не тормозит
Chern Oleksander
а не подскажите, мне нужно создать небольшую табличку (справочник)
MergeTree() есть смысл использовать или лучше как-то по другому создать?
Есть и словарь поверх нее. Либо сразу поверх внешнего источника
источник

CO

Chern Oleksander in ClickHouse не тормозит
Dj
Есть и словарь поверх нее. Либо сразу поверх внешнего источника
эм, не понял ))
источник

D

Dj in ClickHouse не тормозит
Chern Oleksander
эм, не понял ))
Тогда просто - смысл есть.
источник

CO

Chern Oleksander in ClickHouse не тормозит
Dj
Тогда просто - смысл есть.
сейчас всё равно не понял,
табличку создать и в неё заимпортить из Google Sheet определенные данные
источник

DC

Denny Crane [not a Y... in ClickHouse не тормозит
Gleb
А что за Live View движок? Про него нет в доке
В блоге альтинити примеры автора
источник