Document DB
- 설명:
- 문서 지향 데이터베이스는 데이터를 JSON, BSON, XML 같은 문서 형식으로 저장합니다. 각 문서는 독립적인 데이터 구조를 가지며, 다른 문서와는 구조가 달라도 됩니다.
- 데이터 구조가 유연하여 비정형 데이터 또는 반정형 데이터를 처리하는 데 적합합니다.
- 스키마리스(Schema-less) 구조를 지원하여 데이터 모델링의 유연성을 제공합니다.
- 대표적인 제품:
- MongoDB: 가장 많이 사용되는 문서 지향 DB로, JSON 형태로 데이터를 저장하며 확장성이 뛰어납니다.
- Couchbase: 고성능 NoSQL 문서 데이터베이스로, 빠른 읽기/쓰기 성능을 제공합니다.
전문 색인 DB
- 설명:
- 텍스트 기반 데이터를 검색하는 데 최적화된 데이터베이스입니다. 데이터를 색인하여 고속 검색이 가능하도록 만들어져 있습니다.
- 자연어 처리와 관련된 기능을 제공하며, 유사도 검색과 정렬, 자동완성 기능도 지원합니다.
- 주로 로그 분석, 텍스트 검색, 데이터 마이닝에 사용됩니다.
- 대표적인 제품:
- Elasticsearch: 분산형 검색 엔진으로, 대용량 데이터 색인과 실시간 검색을 지원합니다. 로그 분석 툴인 Kibana와 함께 많이 사용됩니다.
- Apache Solr: 확장 가능하고 고도로 확장된 검색 엔진으로, 주로 웹 애플리케이션의 텍스트 검색 엔진으로 사용됩니다.
관계형 DB
- 설명:
- 데이터를 행(Row)과 열(Column)로 구성된 테이블에 저장하며, 스키마 기반의 엄격한 데이터 구조를 따릅니다.
- SQL(Structured Query Language)을 사용해 데이터를 저장, 검색, 업데이트할 수 있습니다.
- 정규화를 통해 데이터 중복을 줄이고, ACID 특성(원자성, 일관성, 고립성, 지속성)을 유지합니다.
- 대표적인 제품:
- MySQL: 오픈소스 관계형 데이터베이스로, 웹 애플리케이션에서 많이 사용됩니다.
- PostgreSQL: 고급 기능을 제공하는 오픈소스 관계형 데이터베이스로, JSON 형식 등 다양한 데이터를 처리할 수 있습니다.
- Oracle DB: 대형 엔터프라이즈 시스템에서 많이 사용되는 상용 관계형 데이터베이스입니다.
Graph DB
- 설명:
- 데이터를 노드(Node)와 관계(Edge)로 저장하며, 각 노드와 관계는 속성을 가질 수 있습니다.
- 복잡한 관계를 시각적으로 표현하고 탐색하는 데 최적화되어 있습니다.
- 소셜 네트워크, 추천 시스템, 경로 탐색 등 관계 기반 데이터를 처리하는 데 적합합니다.
- 대표적인 제품:
- Neo4j: 가장 널리 사용되는 그래프 데이터베이스로, 복잡한 관계 데이터를 매우 빠르게 처리할 수 있습니다.
- Amazon Neptune: AWS에서 제공하는 관리형 그래프 데이터베이스로, RDF 및 Property Graph 모델을 지원합니다.
Wide column DB
- 설명:
- Column-Family 형태로 데이터를 저장하며, 열 단위로 데이터를 관리합니다. 각 열에 여러 속성을 저장할 수 있고, 같은 테이블에서도 행마다 다른 속성을 가질 수 있습니다.
- 스키마가 유연하며, 수평적 확장성이 뛰어나 대규모 분산 환경에서 사용하기 좋습니다.
- 주로 빅데이터를 처리하는 데 많이 사용됩니다.
- 대표적인 제품:
- Apache Cassandra: 대규모 데이터를 분산형으로 저장하며, 높은 가용성과 확장성을 제공합니다.
- Google Bigtable: 구글의 대용량 데이터 처리용 데이터베이스로, 고속 데이터 처리가 가능한 와이드 컬럼 스토어입니다.
Key-valueDB
- 설명:
- 데이터를 Key-Value 쌍으로 저장하는 가장 단순한 형태의 데이터베이스입니다.
- 주로 빠른 읽기/쓰기 성능이 필요한 상황에서 사용됩니다. 키를 이용해 데이터를 빠르게 검색할 수 있습니다.
- 스키마가 없고, 데이터의 구조가 매우 단순합니다.
- 대표적인 제품:
- Redis: 메모리 기반의 키-값 저장소로, 빠른 응답 속도를 자랑하며 캐시로 자주 사용됩니다.
- Amazon DynamoDB: AWS에서 제공하는 완전 관리형 NoSQL 서비스로, 높은 확장성과 가용성을 제공합니다.