Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Nosql ApacheCassandra如何进行聚合操作?_Nosql_Cassandra - Fatal编程技术网

Nosql ApacheCassandra如何进行聚合操作?

Nosql ApacheCassandra如何进行聚合操作?,nosql,cassandra,Nosql,Cassandra,一般来说,我对ApacheCassandra和nosql相当陌生 在SQL中,我可以执行如下聚合操作: SELECT country, sum(age) / count(*) AS averageAge FROM people GROUP BY country; 这很好,因为它是在数据库中计算的,而不必将“people”表中的每一行移动到客户机层来进行计算 这在ApacheCassandra中可能吗?如何使用?使用SliceRange可以被认为是Cassandra版本的LIMIT a

一般来说,我对ApacheCassandra和nosql相当陌生

在SQL中,我可以执行如下聚合操作:

SELECT 
  country, sum(age) / count(*) AS averageAge 
FROM people 
GROUP BY country;
这很好,因为它是在数据库中计算的,而不必将“people”表中的每一行移动到客户机层来进行计算


这在ApacheCassandra中可能吗?如何使用?

使用SliceRange可以被认为是Cassandra版本的LIMIT and ORDER BY

开箱即用不支持分组依据、计数和总和


从wiki上查看是一个很好的开始。

Cassandra主要是一种支持快速写入和查找的机制。SQL中不支持聚合之类的计算,因为它不是为此而设计的。我建议阅读流行的Cassandra用例以获得更好的洞察力:)我在我的delicious页面上为一些文章添加了书签。以下是链接:


当前版本的Cassandra不支持
SUM()

只支持
count(*)

您仍然可以集成并使用MapReduce。请读者注意,从2014年起,Cassandra支持聚合: