개발 공부/Database
[Database] NoSQL
짹뚜
2022. 2. 15. 16:18
NoSQL
NoSQL 또는 비관계형 데이터베이스라고 부른다. NoSQL 데이터베이스는 기존의 관계형 데이터베이스와는 다른 새로운 형태의 데이터베이스로 데이터를 저장할 때 테이블을 사용하지 않는다. 관계형 데이터베이스보다는 더 융통성 있는 데이터 모델을 사용하여 데이터의 저장과 검색에 특화되어있다.
NoSQL 종류
- Key-Value: 데이터가 key와 value 묶음으로 저장되는 구조이다.
- 문서형 (Document): 데이터를 테이블이 아닌 문서처럼 저장하는 구조이다. JSON과 유사한 형식으로 데이터를 문서화한다.
- Wide-Column: 데이터베이스의 Column에 대한 데이터를 집중적으로 관리한다. 각 Column에는 key-value 형식의 데이터가 저장되고 Column Families라는 단위로 데이터를 처리한다. 하나의 행에 많은 Column을 포함할 수 있어서 유연성이 높다. 주로 규모가 큰 데이터 분석에 사용된다.
- 그래프 (Graph): 자료구조의 그래프와 비슷한 형식으로 데이터 간의 관계를 구성한다. Node와 속성 (entity)로 데이터를 저장하고 각 Node의 관계는 Edge로 표현한다.
NoSQL을 사용하는 케이스
- 비구조적인 대용량의 데이터를 저장하는 경우
- 데이터베이스의 확장성이 중요한 경우 (NoSQL은 수평적 확장이 가능)
- 빠르게 서비스를 구축하고 데이터 구조가 자주 변경하는 경우