Cassandra 특징
#
Find similar titles
- 최초 작성자
- 최근 업데이트
Structured data
- Category
- Programming
Table of Contents
Cassandra 특징 #
Cassandra는 facebook에서 개발하여 현재는 Apache 프로젝트로 진행되고 있는 오픈소스 소프트웨어이다. NoSQL 데이터베이스에서는 key-value형으로 분류된다. Google의 BigTable을 바탕으로 개발되고 컬럼 단위로 관리되어 컬럼형으로 분류하기도 한다.
Decentralization #
Cassandra는 여러 장소에 분산된 다수의 서버를 이용하여 많은 양의 데이터를 처리하기 위해 만들어진 Data Store로 이러한 데이터를 다루기에 최적화되어 있다. 많은 양의 데이터를 여러 서버에 분산시키고 분산된 데이터를 여러 서버에 복제하는 방식을 사용하여 읽기와 쓰기가 모두 뛰어나다. 또한, 여러 기계에서 동작하지만, 사용자에게는 통합되어 하나로 보인다. 물리적으로 거리가 먼 데이터 센터 간에도 하나의 Cassandra Cluster를 운영할 수 있다. 서비스 중단이 일어나는 것을 예방해주며, 마스터 / 슬레이브 구조보다 사용하기 간단하다.
Scalability #
Cassandra는 선형으로 확장할 수 있다. 각 노드는 처리 능력 및 데이터 용량을 추가하기 때문에 간단하게 클러스터에 새 노드를 추가하여 매우 큰 데이터 볼륨과 높은 처리량을 탄력적으로 확장할 수 있다.
High Availability #
Cassandra는 모든 노드가 같은 분산 데이터베이스이다. 즉, 클라이언트가 사용 가능한 노드에 연결하는 역할을 하는 마스터 노드가 없다. 따라서 구성 가능한 노드 수에서 데이터가 복제되므로 복제 요소에 따라 일부 노드의 오류로 인해 데이터가 손실되지 않는다. 일관성, 가용성, 파티션 허용 오차를 나타내는 CAP이론에서 Cassandra의 설계는 읽기/쓰기 요청 수준에서 조정이 가능한 일관성을 제공하므로 가용성을 높일 수 있다.
Self-healing #
Cassandra는 일관된 데이터 모델 및 노드 복구 기능을 통해서 시간이 지나도 Cluster의 일관성을 자동으로 유지할 수 있다. 또한, 실패한 노드를 복구하고 필요에 따라 Cluster의 크기를 늘리거나 줄일 수 있고 심지어 버전 업그레이드도 수행할 수 있다.
Large community #
Cassandra는 Netflix와 같은 영향력 있는 회사를 포함하여 매우 크고 활발한 커뮤니티가 있는 Apache의 프로젝트이다. 또한, DataStax는 Cassandra 코어 및 운영 구성 요소의 지속적인 개발 및 개선을 추진한다.
Multi-datacenter replication #
Cassandra의 노드 복제 및 일관성 기능은 이 분산 시스템의 핵심 기능이다. 이 기능은 처음부터 설계되었으며 계속된 테스트를 통해 개선되었고 현재는 높은 신뢰성을 띠고 있다. 따라서 이러한 기능은 서로 다른 위치에 있는 클러스터의 노드로 쉽게 확장이 되었으며 최종적으로 Active-Active 클러스터를 지원한다. Cassandra는 업계에서 가장 강력하고 안정적인 Data Center replication을 가지고 있다고 인정받는다.
관련 키워드 #
Database, CQL, BigData, NoSQL, Oracle, RDBMS, Apache, MongoDB, Data mining, Haddop