2013-02-12 1 views
8

카산드라를 사용하여 데이터를 저장하고 하이브를 사용하여 데이터를 처리합니다. 저는 cassandra와 analytics node (하이브가 실행되는 곳)로 사용하는 2 대의 기계를 가지고있는 5 대의 기계를 가지고 있습니다. 그래서 하이브는 단지 두 대의 기계 (분석 노드)에서 맵을 축소하고 데이터를 가져 오거나 프로세스/계산을 5 개의 카산드라 노드로 옮기고 그 머신의 데이터를 처리/계산합니다. (내가 알고있는 것은, 프로세스가 데이터가 아닌 데이터로 이동한다는 것입니다.)카산드라 데이터베이스의 Hadoop

답변

16

하둡 (Hadoop)과 카산드라 (Cassandra)와 결혼하고 싶다면 첫 번째 링크가이 개념을 바탕으로 구축 된 DataStax 회사 여야합니다. http://www.datastax.com/ 그들은 hadoop을 HDFS로 캐스 산드라로 대체하여 빌드하고 지원합니다. tradeof이 -

당신이 당신의 질문에 대해서는 카산드라 Cassandra and MapReduce - minimal setup requirements

에 대해 맵리 듀스를 실행하면 하둡 & 카산드라 데이터 지역에 대한 좋은 답변이 있습니다이 http://blog.octo.com/en/introduction-to-datastax-brisk-an-hadoop-and-cassandra-distribution/ : - 내 이해의 가장 그들은 데이터 지역성을해야합니까 : a) 별도의 노드에서 Hadoop/Hive를 실행하면 데이터 지역이 느슨해 지므로 데이터 처리량이 네트워크 대역폭에 의해 제한됩니다.
b) cassandra가 실행되는 것과 동일한 노드에서 hadoop/Hive를 실행하는 경우 데이터 지역성을 얻을 수 있지만 하이브 쿼리의 처리 후 MapReduce 처리가 네트워크 (및 기타 리소스)를 막을 수 있으므로 cassandra의 서비스 품질에 영향을 미칠 수 있습니다.

카산드라 클러스터의 성능이 중요한 경우 별도의 하이브 노드를 사용하는 것이 좋습니다.
cassandra가 대부분 데이터 저장소로 사용되고 실시간 요청을 처리하지 않는 경우 각 노드에서 하이브를 실행하면 성능과 하드웨어 사용률이 향상됩니다.

+0

감사합니다. 매우 도움이되었습니다. –