Skip to content

Latest commit

 

History

History
44 lines (29 loc) · 2.35 KB

Cassandra.md

File metadata and controls

44 lines (29 loc) · 2.35 KB

Cassandra

  • Apache Cassandra 는 대규모로 확장 가능한 고성능 분산형 NoSQL DB

  • 장점

    • Masterless

      전통적인 데이터베이스의 대부분은 Master-Slave 인데, 해당 아키텍처가 가지는 단점이 없음.

      • 데이터 복제를 담당하는 단일 노드가 없고 모든 노드가 동일
      • 모든 노드가 읽기 및 쓰기 작업을 수행
      • 데이터는 모든 노드에서 투명하게 분할되므로 개발자나 관리자가 클러스터 전체에 데이터를 배포하기 위해 프로그래밍 하지 않아도 됨 (gossip protocol 구현).
      • 성능이 향상되고 데이터베이스에 복원력이 추가
    • 확장성

    • 고 가용성 및 내 결함성 : 모든 Cassandra 노드는 읽기 및 쓰기 작업을 수행 할 수 있으므로 노드에 장애가 발생하면 사용자는 가장 가까운 정상 노드로 자동 라우팅

    • 고성능

  • 단점

    • Join이나 Transaction을 지원하지 않음
    • Index 등의 검색을 위한 기능도 매우 단출
    • RDBMS와 같은 Paging을 구현하는 것이 힘들고 Keyspace나 Table 등을 과도하게 생성할 경우 Memory Overflow 가 발생할 수 있음

Apache Cassandra vs 기존 관계형 데이터베이스

관계형 데이터베이스 카산드라
적당한 수신 데이터 속도 처리 높은 수신 데이터 속도 처리
복잡하고 중첩 된 거래 지원 간단한 거래 지원
장애 조치를 통한 단일 장애 지점 단일 실패 지점이 없고 지속적인 가동 시간
중간 규모의 데이터 볼륨 지원 매우 높은 데이터 볼륨 지원
중앙 집중식 배포 분산 배치
주로 한 위치에 기록 된 데이터 여러 위치에서 작성된 데이터
읽기 확장 성 지원 (일관성 희생) 읽기 및 쓰기 확장 성 지원
수직 확장 방식으로 배포 수평 확장 방식으로 배포

출처