Soma agregação para cada coluna em cassandra
Eu tenho um modelo de dados como abaixo,
CREATE TABLE appstat.nodedata (
nodeip text,
timestamp timestamp,
flashmode text,
physicalusage int,
readbw int,
readiops int,
totalcapacity int,
writebw int,
writeiops int,
writelatency int,
PRIMARY KEY (nodeip, timestamp)
) WITH CLUSTERING ORDER BY (timestamp DESC)
em que nodeip - chave primária e carimbo de data / hora - chave de agrupamento (classificados por ordem decrescente para obter as últimas),
Dados de amostra nesta tabela,
SELECT * from nodedata WHERE nodeip = '172.30.56.60' LIMIT 2;
nodeip | timestamp | flashmode | physicalusage | readbw | readiops | totalcapacity | writebw | writeiops | writelatency
--------------+---------------------------------+-----------+---------------+--------+----------+---------------+---------+-----------+--------------
172.30.56.60 | 2017-12-08 06:13:07.161000+0000 | yes | 34 | 57 | 19 | 27 | 8 | 89 | 57
172.30.56.60 | 2017-12-08 06:12:07.161000+0000 | yes | 70 | 6 | 43 | 88 | 79 | 83 | 89
Isso está disponível corretamente e sempre que preciso obter as estatísticas, consigo obter os dados usando a chave de partição, como abaixo,
(A lógica acima parece semelhante à minha pergunta anterior:Agregação em Cassandra entre partições) mas a expectativa é diferente,
Eu tenho valor para cada coluna (como readbw, latência etc.) preenchida a cada minuto em todos os 4 nós.
Agora, se eu precisar obter o valor máximo para uma coluna (exemplo: readbw), é possível usar a seguinte consulta,
SELECT max(readbw) FROM nodedata WHERE nodeip IN ('172.30.56.60','172.30.56.61','172.30.56.60','172.30.56.63') AND timestamp < 1512652272989 AND timestamp > 1512537899000;
1)Primeira pergunta : Existe uma maneira de executarmax agregação em todos os nós de uma coluna (readbw) sem usar a consulta IN?
2)Segunda questão : Existe uma maneira no Cassandra, sempre que insiro os dados no Nó 1, Nó 2, Nó 3 e Nó 4. Ele precisa ser agregado e armazenado em outra tabela. Para que eu colete o valor agregado de cada coluna da tabela agregada.
Se algum dos meus argumentos não estiver claro, entre em contato.
Obrigado,
atormentar