반응형

/*
-- Title : SQL(관계형DB) vs. NoSQL(비관계형DB)
-- Tag : sql nosql relational database rdb document db graph db key-value column store 그래프 DB 키-벨류 
*/


■ Database Stack 참조

dbrang.tistory.com/1624

 

데이터 엔지니어링 스택 - ver.dBRang

/* -- Title : 데이터 엔지니어링 스택  - ver.dBRang -- Tag : 데이터 스택 데이터스택 데이터 스텍 데이터스텍, data engineering stack */ Category Section Stack  Data Processing  Batch  • Apache..

dbrang.tistory.com


■ SQL(관계형 DB, Relational Database)

ㅁ 정의

  • RDB는 고정된 행(Row)과 열(Column)으로 구성된 테이블(Table)로 구성
  • 각 열은 하나의 속성에 대한 정보를 저장하고 속성에 따른 데이터 타입을 가짐
  • 스키마(Schema)라는 타입/길이/구조에 대해 사전 정의된 후 구축
  • 데이터간의 연결(Relation)은 외래키에 의해 정의됨
  • 여러 데이터 유형을 스키마 변경 없이 추가할 수 없음
  • 수직적 확장(Scale Up) 가능(NewSQL에서는 Scale Out도 지원)
  • OLTP 환경 및 데이터 무결성 보장시 적절

ㅁ 종류

  • PostgreSQL
  • MariaDB
  • MySQL
  • Oracle
  • SQL Server
  • Amazon Aurora


■ NoSQL(비관계형 DB, Not only SQL)

ㅁ 정의

  • 정해진 스키마가 없으며 언제든 다른 구조의 데이터를 같은 컬렉션(ex. Table)에 추가 가능
  • 문서(Document)를 Json 형식으로 저장
  • 조인(Join)이라는 개념이 존재하지 않음
  • 데이터 읽기/쓰기에 최적화 됨(빅데이터 환경에 유리하고 Update에 불리)
  • 수직적 확장(Scale Up) 및 수평적 확장(Scale Out) 지원

ㅁ 종류

  • Document DB
    - 데이터를 Document 기반으로 XML, JSON과 유사한 형식으로 저장
    - 스키마가 유동적으로 레코드마다 각각 다른 스키마를 저장
    - 문서 형식을 저장하거나 검색에 유리
    - ex. MongoDB, Elastic Search, Apache Cosmos, CouchDB

  • Column Stroe(Wide Column) DB
    - 단일 열(Column) 내부에 중첩 Key-Value 세트로 저장
    - 각 열에 Key-Value 형식으로 저장되고 컬럼 패밀리(column Families)라는 열 집합체 단위로 데이터 처리
    - 압축 및 집계처리(Sum, Avg, Count 등)에 유리하고 쿼리 조회/적재 성능 이 좋음
    - ex. Apachee Cassandra, Hbase, Google Bigtable, Azure Table Storage

  • Graph DB
    - 데이터를 노드(Node)와 엣지(Edge), 속성(Attribure)로 저장
    - 노드간의 링크(Link)를 통해 상관관계를 표시하여 탐색
    - 조인(Join) 없이 빠른 관계 탐색 가능
    - Neo4j, AgensGraph, Amazon Neptune

  • Key-Value Store
    - 속성을 Key(속성) : Value(값)의 쌍으로 정의하여 데이터를 배열 형태로 저장
    - Key안에 (Column, Value) 형태의 여러 필드(Column Familes) 가능
    - 단순한 구조로 속도가 빠르며 분산 저장에 유리
    - ex. Redis, Memcached, Amazon Dynamo


■ CAP 정리

 


※ Resources
gyoogle.dev
code-lab1.tistory.com/53
ko.wikipedia.org/wiki/NoSQL
• docs.microsoft.com

 

 

반응형

+ Recent posts