ClustrixDB

Flexible transactional scale for the connected world

Scalable Scale-Out 확장성

ClustrixDB는 비공유 아키텍처를 사용합니다. RDB로서 ACID를 보장하며 노드를 선형적으로 확장할 수 있는 것으로는 유일한 아키텍처입니다. 비공유 아키텍처에서는 각 노드가 데이터를 분할하여 관리하며 읽기 및 쓰기는 여러 노드에 분산되어져서 경합이 줄어들게 됩니다. 모든 노드에서 쓰기가 가능하므로 기존의 전통적인 RDB 가 지니던 한계인 쓰기 확장성이 가능합니다. 또한 ClustrixDB는 자동으로 데이터 및 쿼리 실행을 모든 노드에서 균등하게 배분하여 처리합니다.

또한 ClustrixDB를 사용하면 데이터베이스의 용량을 쉽게 추가 (Flex Up) 및 축소 (Flex Down) 할 수 있으며, 두 작업 모두 데이터베이스가 온라인 상태로 남아있을 때 백그라운드에서 클러스터 내의 데이터를 자동으로 재배포합니다. (CLOUD 및 ON-PREMISE 모두에 최적화 되어 실행)

논리적으로 여전히 하나의 DB이면서 동시에 매우 손쉬운 노드 연결 및 확장

별도의 복제(Replication)나 인위적 샤딩(Sharding) 없이 확장

  • 쓰기 확장성
  • 읽기 확장성
  • 저장 확장성
  • App 변경 없음
  • 자동 HA
  • 쉬운 설치(Easy to deploy)
TPS 및 커넥션 수용능력 확장을 보여주는 그래프

서버 추가만으로 TPS 및 커넥션 수용능력 확장

  • 90% 읽기 + 10% 쓰기
  • - 전형적인 형태의 DB 부하 발생
  • 1 TPS = 10 SQL/초
  • - 9 SELECT + 1 UPDATE
  • 32개 노드 제공
  • - 3,500,000+SQR/초

High-Volume, High Concurrency OLTP

대단위 동시 접속자 및 볼륨 트랜잭션 처리

ClustrixDB는 대규모 온라인 트랜잭션 처리 (OLTP)를 위해 특별히 제작되었습니다. 분산 환경에서도 트랜잭션이 항상 ACID 준수를 유지합니다.
ClustrixDB는 처리량이 많은 작업 부하용으로 작성된 완전 관계형 데이터베이스이며 단순히 노드를 추가하여 읽기 및 쓰기를 확장 할 수 있습니다.
ClustrixDB는 클러스터의 다른 노드와 코어에 데이터와 작업을 분산시킴으로써 단일 인스턴스 데이터베이스에서 가능한 수준을 훨씬 초과하는 수준의 병렬 처리를 구현할 수 있습니다.

Fault-Tolerant 자동 페일오버 (HA)

ClustrixDB는 내결함성을 위해 설계되었으며 기본적으로 데이터 손실 없이 노드 장애를 견딜 수 있습니다. 노드를 사용할 수 없게 되면 클러스터에서 제거되고 클러스터는 다른 노드의 데이터 복제본을 사용하여 완전한 클러스터 구성을 유지합니다. ClustrixDB Rebalancer는 자동으로 해당 데이터의 추가 복제본을 생성합니다. 이 복제본은 사용자 개입 없이 백그라운드에서 투명하게 발생하며 ClustrixDB 자동복구를 수행합니다. (DBA 관여 작업 없이 자동으로 이루어짐)

ClustrixDB는 노드 손실을 자동으로 감지

  • 시스템 자동 재 보호(손실 슬라이스 복구)
  • 잔여 노드들에 데이터 자동으로 균등 재분배
  • 손실된 노드의 데이터 신속 재 보호
  • 데이터 재 보호 중에도 테이블의 읽고 쓰기는 여전히 가능
  • 자동으로 자가 복원
  • 클러스터가 자동 자가 복원 후에 완벽하게 보호되어 작동함

MySQL Compatible MariaDB/MySQL 호환 및 마이그레이션 용이(Drop-in replacement)

ClustrixDB는 SQL, DML, DDL, 트리거 및 저장 프로시저에 대한 MySQL 구문 및 구문을 사용합니다. 현재 MySQL 사용자의 경우 현재 환경이 이미 ClustrixDB와 호환될 가능성이 높습니다. 또한 ClustrixDB는 SBR 및 RBR을 포함한 MySQL 복제 프로토콜을 지원합니다.

사용자에게는 ClustrixDB 내의 데이터에 액세스 하기 위한 간단한 SQL 인터페이스가 제공됩니다. 응용 프로그램은 클러스터에 있는 노드 수 또는 데이터가 있는 위치에 관계없이 ClustrixDB를 단일 인스턴스로 보게 됩니다. ClustrixDB 에 액세스하기 위해 응용 프로그램을 수정하지 않아도 됩니다. ClustrixDB 내의 각 노드는 모두다 읽기 또는 쓰기를 처리 할 수 있습니다.

Automatic Data Distribution 자동 데이터 분산

데이터 Skewness 해소

ClustrixDB의 핵심 구성 요소는 백그라운드에서 지속적으로 실행되는 Rebalancer로 클러스터의 데이터 배포를 자동으로 관리합니다. 이를 통해 여러 복제본이 클러스터 전체에서 유지 관리됩니다. 클러스터에서 예기치 않은 노드 오류가 발생하고 충분한 복제본이 없는 경우 Rebalancer는 자동으로 더 많은 복제본을 만듭니다. 데이터가 추가되거나 제거되는 경우에도 데이터와 로드가 모두 클러스터에 고르게 분산됩니다.

Rebalancer (Advanced Features by Default)

클러스터 환경에서 데이터가 잘 분산하는 일을 리밸랜서(Rebalancer)가 담당

  • 초기데이터분배 : 모든 노드들에 균등하게 슬라이스(조각데이터)를 분배
  • 데이터폭증부하분산 : 특정 슬라이스 커질 시 작은 슬라이스로 분할 분배
  • Flex-Up/Flex-Down : 노드 추가 삭제에 따라 슬라이스 재 분배 및 복구
  • 노드 다운 장애 복원 : 다운된 노드의 슬라이스 복제를 통한자가 복원
  • 데이터 쏠림 현상(Skewed Data) 해소 : 데이터 노드에 균등하게 재 분할 분배
  • 핫 슬라이스 분할 분산(Hot Slice Balancing) : 부하 노드 슬라이스 재 분할 분배