NewSQL

I. RDBMS와 NoSQL 장점 제공, NewSQL의 개념 및 특징

가. NewSQL의 개념

나. NewSQL의 특징

특징특징 설명
신규 아키텍처– 비공유 노드 클러스터를 사용, 각 노드는 데이터의 하위 집합 관리
– 분산 동시성 제어, 흐름 제어 및 분산 쿼리 처리
SQL 최적화 및 확장성– SQL에 최적화 된 스토리지 엔진
– SQL과 동일 인터페이스 및 확장성 제공
투명한 샤딩– Raft 또는 Paxos 합의 알고리즘을 사용
– 데이터베이스를 여러 노드로 자동 분할

 

II. NewSQL의 주요 기능 및 핵심 기술

가. NewSQL의 주요 기능

구분주요 기능기능 설명
SQL 관리
측면
SQL 기반 상호작용– APP와 DBMS의 입력/조회/갱신/삭제 시 SQL 사용
트랜잭션 ACID 지원– 트랜잭션 커밋 시 원자성/일관성/독립성/영속성
비잠금 동시성 제어– 데이터 무결성 처리 위해 Non-locking 구조 지원
아키텍처
측면
노드 단위 고성능– 각 단일 DBMS 서버 노드 단위로 확장, 고성능 보장
병렬, 비공유 아키텍처– 병렬 수행, 고성능, 데이터가 각 서버에 독립적 존재

나. NewSQL의 핵심 기술

구분핵심 기술세부 설명
RDBMS
측면
인덱싱– 데이터베이스 검색 속도 향상, 테이블 연관, 독립적인 저장공간
MVCC– 트랜잭션의 다중 버전 동시성 제어로 트랜잭션 직렬화
샤딩– 동일 테이블 스키마의 데이터를 다수 데이터베이스에 분산 저장
NoSQL
측면
스키마리스– 테이블과 컬럼 스키마 없이 Key-Value 기반 단순 검색, 추가 용이
인메모리– 고성능, 저지연 서비스, 버퍼 관리 불필요
DB 스케일링– Scale-Out 방식의 유연한 데이터 구조

 

III. NewSQL과 유사 DBMS 비교

비교 항목NewSQLRDBMSNoSQL
스키마스키마 제약 없음연관 스키마, 테이블스키마 없음
확장성읽기/쓰기 확장성읽기 확장성 제공읽기/쓰기 확장성 제공
고가용성고가용성 내장별도 구성 필요고가용성 내장
ACID 특성ACID 특성 제공ACID 특성 제공ACID 특성 미제공
BASE 특성BASE 특성 제공BASE 특성 미제공BASE 특성 제공
성능오버헤드낮음중간높음
보안성높음높음낮음
적용 제품Google Spanner,
VoltDB
Oracle, MSSQL,
MySQL, IBM DB2
MongoDB, HBASE
Redis, Cassandra
활용 분야게임, E-커머스, Telco.금융, CRM, HR, APP빅데이터, IoT, SNS

 

[참고]

  • 위키백과, “NewSQL”, 2020. 4
  • Google Spanner, “A NewSQL Journey or Beginning of the End of the NoSQL Era”, 2018. 10

콘텐츠 사용 시 출처 표기 부탁 드리고, 댓글은 큰 힘이 됩니다^^