2010-06-16 5 views
9

저는 일반적으로 Apache Cassandra와 nosql을 처음 접했습니다. 그것은 오히려 할 클라이언트 계층에 '사람'테이블의 모든 행을 이동할 필요하지 않고, DB 내에서 계산되기 때문에Apache Cassandra는 어떻게 집계 연산을 수행합니까?

SELECT 
    country, sum(age)/count(*) AS averageAge 
FROM people 
GROUP BY country; 

이 좋은 : 같은

SQL에서 내가 할 수있는 총 작업 계산.

Apache Cassandra에서 가능합니까? 방법?

답변

9

카산드라는 주로 빠른 쓰기 및 룩업을 지원하는 메커니즘입니다. SQL 용으로 설계된 것이 아니기 때문에 SQL에 집계와 같은 계산을 지원하지 않습니다. 더 나은 통찰력을 얻기 위해 인기있는 카산드라 유즈 케이스를 읽을 것을 제안합니다. :) 맛있는 페이지에 몇 가지 기사를 북마크했습니다. 카산드라의

http://delicious.com/vibhutesagar/cassandra

+0

[Cassandra and Hadoop] (http://wiki.apache.org/cassandra/HadoopSupport#MapReduce)을 통합 한 다음 MapReduce를 사용할 수 있습니다. – user359996

+1

2014 년 현재 카산드라는 독자들에게 참고서 인 https://issues.apache.org/jira/browse/CASSANDRA-4914를 지원합니다. –

2

SliceRange를 사용하는 것은 Cassandra의 LIMIT 및 ORDER BY 버전으로 생각할 수 있습니다.

GROUP BY, COUNT 및 SUM은 기본적으로 지원되지 않습니다.

위키에서 API page을 살펴 보는 것이 좋습니다.

0

현재 버전 SUM()을 지원하지 않습니다 : 여기에 링크입니다. count(*) 만 지원됩니다.