DB

[DB] NoSql의 종류 및 차이

폭풍저그김탁구 2021. 12. 22. 14:37

지금까지 쭉 MySql을 쓰다가 좀 더 제약이 없는 DB가 필요해졌다. 

그래서 RDBMS와 NoSql을 섞어 쓰기로 했다. 

기존 쓰던 유저 데이터들은 RDBMS로, 로그 관리는 NoSql로 쓰는 걸로.

종류마다 정의나 차이점은 구글링 하면 자료가 많으니 내 식대로 풀어서 이해해보겠다.

 

*NoSql의 종류

나는 NoSql이라면 MongoDB정도만 알고 있었는데 이런 브랜드 말고 데이터 저장 방식에도 종류 차이가 있다는 걸 알았다. 

 

 

2. Wide Column Store, Wide Column Database

4. Graph Database

 

1. Key - Value Database

- 사진처럼 key와 value 쌍으로 저장한다.

- value에 모든 데이터 타입을 허용한다. boolean, integet부터 list, JSON도 가능.

- 간단한 데이터를 자주 읽고 쓸 때 유용.

 

 

2. Document Database

- 위의 key-value 방식에서 value를 문서로 저장하는 방식.

- JSON 형식을 생각하면 이해가 빠를 듯 하다.

- 여러 테이블을 하나의 Document로 모아볼 수 있다. MySql의 Join 기능처럼.

- 칼럼, 스키마 없음. Document를 추가하면 그게 곧 스키마가 됨.

- 정해진 형식이 없고 중첩 구조의 데이터 사용에 유용.

 

3. Wide Column Database

- RDBMS 처럼 Cloumn, Row 용어 사용

- 여러 칼럼을 묶은 걸 Cloumn Family라고 부름.

- Document DB 처럼 스키마가 없으므로 원할 때 칼럼 추가 가능.

 

4. Graph Database

- 그림처럼 직관적인 DB

- 데이터를 노드로 표현하여, 노드 간 관계가 엣지로 연결됨.

 

 


 

1번과 2번이 범용적이고 서로 많이 헷갈리는 DB인듯 하다.

구글링 하다보면 가장 많이 나오고 차이점을 설명하는 글이 많았다. 

나도 둘 중 하나를 쓰게 될 것만 같다.

 

 

참고

https://blog.voidmainvoid.net/238

 

NoSQL강의) Document Database 개요 및 설명

Document Database란 Document를 저장하는 데이터베이스 ▪  XML, JSON, BSON - 계층적 트리 데이터 ▪  _id : PK, RowID - 사용자가 설정 가능 ▪  Embedded Document - 여러개의 테이블을 하나의 Document..

blog.voidmainvoid.net

https://jaemunbro.medium.com/nosql-%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4-%ED%8A%B9%EC%84%B1-%EB%B9%84%EA%B5%90-c9abe1b2838c

 

[NoSQL 데이터베이스별 특징]

Key-Value, Document 등 NoSQL 데이터베이스별 특성에 따라 우리 애플리케이션에 맞는 데이터베이스는 무엇일지 고민해보자.

jaemunbro.medium.com

http://www.incodom.kr/NoSQL_DB_%EC%9D%98_%EC%A2%85%EB%A5%98

 

NoSQL DB 의 종류 - 인코덤, 생물정보 전문위키

# NoSQL DB의 종류

www.incodom.kr