DB
📝 NoSQL이란?
늘이
2022. 11. 16. 22:18
- Not Only Structured Query Language의 약자
- 행과 테이블을 사용하는 전통적인 관계형(SQL) 데이터베이스보다 훨씬 다양한 방식으로 빠르게 바뀌는 대량의 비정형 데이터 처리
- 관계형 데이터베이스보다 덜 제한적인 일관성 모델을 이용해 데이터의 저장 및 검색을 위한 매커니즘 제공
- 특정 데이터 모델에 대해 특정 목적에 맞추어 구축되는 데이터베이스로서 개발의 용이성, 기능성 및 확장성을 널리 인정받고 있음
- 확장을 통해 더 많은 데이터를 처리하거나 고도로 분산된 서버 클러스터 내에 규모가 큰 단일한 데이터베이스 보관
- 보다 빠르고 반복적인 개발 가능
- 고가의 강력한 서버를 추가하는 대신 분산형 하드웨어 클러스터 이용
- 각 데이터 모델에 맞춰 특별히 구축된 뛰어난 기능의 API와 데이터 유형 제공
- 초고용량 데이터 처리 등 성능에 특화된 목적을 위해 비구조적인 데이터를 저장하기 위한 분산 저장 시스템 갖춤
- 단순 검색 및 추가 작업에 있어서 매우 최적화된 키 값 저장 기법을 사용해 응답속도나, 처리 효율 등에 있어서 매우 뛰어난 성능 발휘
- 대부분 여러 대의 데이터베이스 서버를 묶어 하나의 데이터베이스 구성
- 데이터베이스의 중단 없는 서비스와 자동 복구 기능 지원
- 계획에 없던 상황에 유연히 대응해 보다 빠르고 민첩한 앱 개발에 적합
- 저장되는 데이터 구조에 따라 Key Value DB, Wide Columnar Store, Document DB, Graph DB로 나뉨
- 전체 NoSQL제품들 중 현재 시장에서 가장 많이 인기가 있는 제품들은 MongoDB(Document), HBase(Wide Columnar Store), Cassandra(Wide Columnar Store)