본문 바로가기
theory 📓/딥러닝

rdb, nosql, gdb

by 고돌한 데이터 사이언스 2024. 11. 11.
반응형

RDB (Relational Database), NoSQL, 그리고 GDB (Graph Database)는 각기 다른 데이터 모델과 용도에 맞춰 설계된 데이터베이스 시스템입니다. 각자의 장단점을 정리하면 다음과 같습니다.

RDB (Relational Database)

장점

  • 데이터 일관성: 엄격한 스키마 구조를 따르기 때문에 데이터 일관성을 유지하기 쉽습니다.
  • 관계형 모델: SQL로 관계를 쉽게 정의하고 복잡한 쿼리를 작성할 수 있습니다.
  • ACID 속성: 트랜잭션이 강력하게 보장되므로 금융 거래와 같이 높은 신뢰성을 요구하는 시스템에 적합합니다.
  • 성숙한 기술: 오랜 기간 사용되어 성숙한 툴, 문서, 지원이 풍부합니다.

단점

  • 수평 확장 어려움: 수직 확장은 가능하나 수평 확장이 어려워 대규모 데이터 처리에 부적합할 수 있습니다.
  • 유연성 부족: 고정된 스키마를 가져야 하므로 스키마가 자주 변경되는 환경에는 적합하지 않습니다.
  • 복잡한 조인 연산 성능 저하: 많은 조인 연산이 필요한 경우 성능 문제가 발생할 수 있습니다.

NoSQL (Not Only SQL)

장점

  • 수평 확장 용이: 분산 시스템을 기반으로 하여 대규모 데이터 저장 및 처리가 가능합니다.
  • 유연한 스키마: 스키마가 없거나 느슨한 구조를 가지므로 데이터 구조가 자주 변하거나 비정형 데이터를 저장할 때 적합합니다.
  • 고성능: 키-값 저장소, 문서형, 열 지향형 등 여러 유형이 있어 다양한 워크로드에 맞게 최적화할 수 있습니다.
  • 빠른 개발 속도: 스키마 제약이 적어 애플리케이션 개발과 변경이 빠르게 가능합니다.

단점

  • 데이터 일관성 약함: 보통 분산 시스템에서 가용성과 성능을 우선시하기 때문에 데이터 일관성(CAP 이론에서 Consistency)이 약한 경우가 있습니다.
  • 복잡한 쿼리 어려움: 관계형 데이터 쿼리가 어려울 수 있으며, 일부 NoSQL 시스템에서는 조인을 직접 지원하지 않습니다.
  • 성숙도와 표준화 부족: RDBMS에 비해 상대적으로 덜 성숙하며 시스템마다 문법과 구조가 달라 표준화가 부족할 수 있습니다.

GDB (Graph Database)

장점

  • 복잡한 관계 표현: 데이터 간의 복잡한 관계를 간단하게 표현할 수 있어 소셜 네트워크, 추천 시스템 등에 유리합니다.
  • 고속 탐색: 그래프 구조를 기반으로 하여 노드 간 경로 탐색, 최단 경로 계산 등이 빠르게 수행됩니다.
  • 유연한 스키마: 관계형 데이터베이스보다 유연한 스키마로 동적으로 데이터 모델을 변경할 수 있습니다.
  • 쉬운 관계 확장: 데이터를 추가하면서 새로운 관계를 쉽게 추가할 수 있어 연결이 많은 데이터 모델에 적합합니다.

단점

  • 수평 확장 어려움: 대규모 그래프 데이터에 대해 수평 확장이 어려울 수 있습니다.
  • 복잡한 쿼리 비용: 복잡한 그래프 쿼리 작성이 어렵고, 특히 대규모 데이터에서는 성능 이슈가 발생할 수 있습니다.
  • 제한된 도구 및 지원: RDB나 NoSQL에 비해 상대적으로 도구와 지원이 제한적입니다.
반응형

'theory 📓 > 딥러닝' 카테고리의 다른 글

추천시스템 / 커리큘럼 러닝  (1) 2024.11.08
Graph Node / GNN / GCN  (0) 2024.11.08
Self Attention / Transformer / Decoding  (2) 2024.11.08
CNN Applications  (0) 2024.11.06
CNN  (0) 2024.11.06

댓글