샤딩

1 개요[ | ]

sharding, database sharding, horizontal partitioning
샤딩, 데이터베이스 샤딩, 수평 파티셔닝
  • DB에서 데이터를 수평 분할하는 방식
  • 물리적으로 다른 데이터베이스에 데이터를 수평 분할 방식으로 분산 저장하고 조회하는 방법
  • 예: '주민' 테이블이 여러 DB에 있을 때, A동 주민에 대한 정보는 DB #1에, B동 주민에 대한 정보는 DB #2에 저장한다.
  • 장점: 부하(load)가 여러 노드로 분산되므로 성능상 이점이 있다.
  • 단점: 여러 데이터베이스를 대상으로 작업해야 한다.
경우에 따라서는 기능에 제약이 있을 수 있음(JOIN 연산 등)
일관성(consistency)과 복제(replication) 관리가 복잡할 수 있다.
유형 솔루션 예시 비고
애플리케이션 서버에서 동작 Hibernate Shards 예전에는 이러한 유형이 많았음
미들티어에서 동작 CUBRID, Spock Proxy, Gizzard
데이터베이스 자체 기능 MongoDB

2 같이 보기[ | ]

3 참고[ | ]

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}