Apache Cassandra 3 스토리지 시스템
Apache Cassandra 3 스토리지 시스템은 오픈 소스 분산 키-값 스토리지 시스템입니다. 이는 원래 특히 많은 양의 데이터를 저장하기 위해 Facebook에서 개발되었습니다.
주요 기능
1. 분산
Cassandra의 주요 특징은 단일 데이터베이스가 아니라 데이터베이스 노드 그룹으로 구성된 분산 네트워크 서비스라는 것입니다. Cassandra에 대한 쓰기 작업은 다른 노드에 복제되는 반면, 읽기 작업은 읽기를 위해 특정 노드로 라우팅됩니다.
2. 열 기반 구조화
Cassandra는 Google의 BigTable과 유사한 열 기반 데이터 모델을 사용합니다. 이 모델을 사용하면 사용자는 전체 데이터 구조를 미리 정의할 필요 없이 필요에 따라 데이터를 저장하고 쿼리할 수 있습니다.
3. 높은 신축성
Cassandra는 확장성이 뛰어나며 노드를 쉽게 추가하여 프로세스를 다시 시작하거나 애플리케이션 쿼리를 변경하거나 데이터를 수동으로 마이그레이션하지 않고도 클러스터 용량을 확장할 수 있습니다.
다른 데이터베이스와 비교한 Cassandra 기능
Cassandra는 Google의 BigTable과 유사한 하이브리드 비관계형 데이터베이스입니다. Dynomite(분산 키-값 저장소 시스템)보다 풍부한 기능을 가지고 있지만, 문서 저장소인 MongoDB(관계형 데이터베이스와 비-관계형 데이터베이스 간)만큼 지원이 좋지는 않습니다. 관계형 데이터베이스) 관계형 데이터베이스 중 오픈소스 제품으로 비관계형 데이터베이스 중 가장 기능이 풍부하고 관계형 데이터베이스와 가장 유사합니다. 지원되는 데이터 구조는 매우 느슨하며 json과 유사한 bjson 형식입니다. 더 복잡한 데이터 유형을 저장할 수 있습니다.
Cassandra는 원래 Facebook에서 개발되었으며 나중에 오픈 소스 프로젝트가 되었습니다. 네트워크 소셜 클라우드 컴퓨팅의 데이터베이스 요구 사항에 매우 적합합니다. 이는 Amazon의 독자적인 완전 분산형 Dynamo를 기반으로 하며 Google BigTable의 열 계열 기반 데이터 모델을 결합합니다. P2P 분산 스토리지는 여러 측면에서 Dynamo 2.0이라고 부를 수 있습니다.
다른 데이터베이스와 비교하여 Cassandra는 다음과 같은 뛰어난 기능을 가지고 있습니다.
1. 스키마 유연성: Cassandra를 사용하면 문서 저장소와 마찬가지로 레코드의 필드를 미리 결정할 필요가 없습니다. 시스템이 실행되는 동안 원하는 대로 필드를 추가하거나 제거할 수 있습니다. 이는 대규모 배포에서 효율성이 크게 향상됩니다.
2. 진정한 확장성: Cassandra는 순수한 의미에서 수평 확장이 가능합니다. 클러스터에 더 많은 용량을 추가하려면 다른 시스템을 가리키기만 하면 됩니다. 프로세스를 다시 시작하거나 애플리케이션 쿼리를 변경하거나 데이터를 수동으로 마이그레이션할 필요가 없습니다.
3. 다중 데이터 센터 식별: 한 데이터 센터의 오류를 방지하기 위해 노드 레이아웃을 조정할 수 있습니다. 백업 데이터 센터에는 최소한 모든 기록의 완전한 사본이 포함되어 데이터 보안이 보장됩니다.
기타 기능
위에서 언급한 주요 기능 외에도 Cassandra는 다음과 같은 몇 가지 다른 기능도 제공합니다.
1. 범위 쿼리: 모든 키 값 쿼리를 수행하고 싶지 않은 경우 쿼리할 키 범위를 설정할 수 있습니다.
2. 목록 데이터 구조: 혼합 모드에서는 5차원 데이터 구조에 슈퍼 컬럼을 추가할 수 있습니다. 이는 사용자별 인덱싱에 매우 편리합니다.
3. 분산 쓰기 작업: Cassandra를 사용하면 단일 장애 지점 없이 언제 어디서나 중앙에서 데이터를 읽거나 쓸 수 있습니다.
요약
Apache Cassandra 3는 높은 확장성, 스키마 유연성 및 안정성을 제공하는 강력한 오픈 소스 분산 키-값 스토리지 시스템으로, 대량의 데이터를 저장하고 처리해야 하는 애플리케이션에 이상적입니다.