Sharding (샤딩)

2022. 4. 29. 22:36AI/Big data

    목차
반응형

샤딩?

shard는 "조각내다"라는 뜻으로 sharding은 큰 데이터를 조각내어 저장한다는 의미를 지닙니다. 

DB traffic의 분산 기술이며, RDB의 table을 "수평 분할 방식으로" 분산 저장/조회하는 방법입니다. 

 

샤딩 방식

  • modular sharding
  • range sharding

 

Modular(key based) sharding

  • PK를 DB 수로 modular 연산하여 어디로 분산할지를 결정
    • client에서 routing 알고리즘(modular 연산)을 수행하여 어느 DB server에 저장할지를 결정
  • 장점
    • 데이터가 균등하게 분산됨
  • 단점
    • DB 추가 시 이미 적재된 데이터의 재정렬이 필요함
  • 사용경우
    • 데이터량에 큰 변화가 없는 경우

 

Range(dynamic) Sharding

  • PK의 범위(range)를 가지고 어디로 분산할지를 결정
  • 장점
    • 증설 시 재정렬 비용이 없음
  • 단점
    • 일부 DB에 데이터가 몰릴 수 있음
    • DB를 쪼개고 합치는 작업이 필요함

 

반응형

'AI > Big data' 카테고리의 다른 글

YARN (Yet Another Resource Negotiator)  (0) 2022.04.30
Hadoop ecosystem  (0) 2022.04.30
열 지향 스토리지  (0) 2022.04.29
data lake  (0) 2022.04.29
ETL, ELT  (0) 2022.04.29