Skip to content

NoSQL DB 의 종류 #

Find similar titles

21회 업데이트 됨.

Edit
  • 최초 작성자
    sjkim
  • 최근 업데이트
    jmkang

Structured data

Category
Database

NoSQL DB의 종류 #

NoSQL DB의 종류에는 크게 4가지 유형이 존재한다. DOCUMENT STORE 또는 DOCUMENT DATABASE, WIDE COLUMN STORE 또는 WIDE COLUMN DATABASE, KEY-VALUE STORE 또는 KEY-VALUE DATABASE, 그리고 GRAPH DATABASE가 있다. 본 글에서는 이런 NoSQL DB의 종류들과 그 개념들을 간략하게 알아보도록 한다.

WIDE COLUMN DATABASE #

Image

그림1 COLUMN FAMILIES를 포함하는 KEY SPACE

Image

그림2 3행을 포함하는 COLUMN FAMILIES. 행마다 각각의 칼럼을 가진다.

출처: https://database.guide/what-is-a-column-store-database/

행마다 키와 해당 값을 저장할 때마다 각각 다른값의 다른 수의 스키마를 가질 수 있다. '그림2'를 참고하면 사용자의 이름(key)에 해당하는 값에 스키마들이 각각 다름을 볼 수 있다. 이러한 구조를 갖는 WIDE COLUMN DATABASE 는 대량의 데이터의 압축, 분산처리, 집계 쿼리 (SUM, COUNT, AVG 등)및 쿼리 동작 속도 그리고 확장성이 뛰어난 것이 그 대표적 특징이라 할 수 있다.

대표적인 DATABASE #

DOCUMENT DATABASE #

Image

그림3 테이블과 DOCUMENT 예시

출처: https://inyl.github.io/programming/2017/05/09/database.html

테이블의 스키마가 유동적, 즉 레코드마다 각각 다른 스키마를 가질 수 있다. 보통 XML, JSON과 같은 DOCUMENT를 이용해 레코드를 저장한다. 트리형 구조로 레코드를 저장하거나 검색하는 데 효과적이다.

대표적인 DATABASE #

GRAPH DATABASE #

Image

그림4 Neo4j 예시

출처: https://database.guide/what-is-a-graph-database/#more-896

데이터를 노드로(그림4에서 파란, 녹색 원) 표현하며 노드 사이의 관계를 엣지(그림4에서 화살표)로 표현, RDBMS 보다 Performance가 좋고 유연하며 유지보수에 용이한 것이 특징. Social networks, Network diagrams 등에 사용할 수 있다.

대표적인 DATABASE #

KEY-VALUE DATABASE #

Image

그림4 KEY-VALUE DATABASE 예시

출처: https://en.wikipedia.org/wiki/Key-value_database

기본적인 패턴으로 KEY-VALUE 하나의 묶음(Unique)으로 저장되는 구조로 단순한 구조이기에 속도가 빠르며 분산 저장시 용이하다.Key 안에 (COLUMN, VALUE) 형태로 된 여러 개의 필드, 즉 COLUMN FAMILIES 갖는다. 주로 SERVER CONFIG, SESSION CLUSTERING등에 사용되고 엑세스 속도는 빠르지만, SCAN에는 용이하지 않다.

대표적인 DATABASE #

참고출처 #

관련 키워드 #

NoSQL, nosql, NO Sql, Nosql, CAP

0.0.1_20230725_7_v68