NoSQL이란? NoSQL의 종류와 tool

hwwwa·2023년 1월 3일
0

NoSQL

  • NoSQL이란 Not only SQL의 약자로, SQL만을 사용하지 않는 DBMS를 뜻한다.
  • Key-Value, Document, Column-Family, Graph 등의 모델이 있다.

Key-Value

  • Key-Value 형태는 가장 단순한 형태의 NoSQL로 수평적 확장이 용이함
  • value의 내용을 사용한 쿼리가 불가능하기때문에 사용자는 key를 사용해 value를 읽어들인 뒤 application level에서 적절히 처리하여야 함
  • Redis, SimpleDB, AWS Dynamo DB, Voldemort

Document

  • Document 형태는 data가 key와 document의 형태로 저장됨
  • document는 유연한 schema를 가지며 document 안에는 value들이 계층적인 형태로 저장됨
  • 객체가 하나의 document가 되는 것이라고 볼 수 있어 RDB처럼 하나의 객체를 여러 테이블에 나눠 저장할 필요가 없어짐
  • document에 JSON과 같은 형태가 저장될 수 있음
  • MongoDB, CouchDB

Column-Family

  • Column-Family 형태는 key에서 field를 결정함
  • key는 Row와 Column-family, Column-name을 가짐
  • 연관 데이터들은 같은 Column-family 안에 속하며 각자의 Column-name을 가짐
  • attribute가 계층적 구조를 가지고있는 셈
  • 데이터들을 하나의 커다란 table로 표현 가능
  • HBase, Cassnadra

Graph

  • Graph 형태는 개체와 관계를 그래프 형태로 표현한 것
  • 데이터가 그래프 형태로 저장된다. 노드, 관계, 특성을 가짐
  • 데이터 간의 관계가 탐색의 key일 경우에 적합
  • Neo4j, InfiniteGraph

0개의 댓글