В моем случае Tuple(Array(UInt16), Array(UInt32)).
                  
                  
                  
                  
                  
                  При создании Materialized View в секции AS SELECT указываю sumMap(array(status), array(bytes)) as test_field. 
                  
                  
                  В результате при попадании во вьюшку строки одного INSERT-а суммируются и в поле test_field, например, следующие значения ([200, 400, 500], [2784, 7375, 26748]). А вот строки разных INSERT-ов не суммируются корректно. 
                  
                  
                  Судя по документации - он считает их нечисловыми, не суммирует и выбирает случайное из значений.
                  
                  
                  
                  
                  
                  Есть ли какой-то способ подружить SummingMergeTree с суммированием результатов sumMap?
                  
                  
                  Или, судя по документации, лучше делать это через Nested структуры? Но тут появляется еще одна проблема - невозможность указания вложенных select запросов. 
                  
                  
                  Хотелось бы, например выполнять такой select при создании таблицы: AS SELECT sumMapResult.1 as statusMap.status, sumMapResult.2 as statusMap.traffic FROM (SELECT sumMap(array(status), array(bytes)) as sumMapResult), а не высчитывать sumMapResult несколько раз, если избавляться от вложенного SELECT и не тащить это отдельным полем в materialized view
                  
                  
                
Да, он так Nested структуры "суммирует", создаете структуру CREATE TABLE T ( ... StatusesMap Nested ( Status Int64 , Bytes Int64 ) Engine SummingMergeTree
Обсуждают сегодня