본문 바로가기
IT/Knowledge

샤딩(Sharding) 이란?

by 성준하이 2024. 2. 4.
반응형

이전 포스팅에서 파티셔닝 에 대해서 다룬 글이 있다.

자세한 내용은 아래 참고 포스팅을 참고 바란다.

 

파티셔닝이란 비슷하지만 다른 샤딩이란.

동일한 스키마를 가지고 있는 데이터를 다수의 데이터베이스에 분산 저장하는 기법이다.

AWS 에서 설명하는 아래를 참고하면 도움이 된다.

https://aws.amazon.com/ko/what-is/database-sharding/

 

데이터베이스 샤딩이란 무엇인가요? - DB 샤딩 설명 - AWS

다른 샤드는 로드가 낮은데 특정 물리적 샤드에서만 데이터 오버로드가 발생하면, 해당 샤드는 데이터베이스 핫스팟이 됩니다. 핫스팟이 발생하면 데이터베이스의 검색 프로세스 속도가 저하

aws.amazon.com

 

파티셔닝은 동일 서버에 저장하지만 샤딩은 다른 서버에 분산 저장하는것으로 차이가 있다.

 

장점은 아래와 같다.

  • 응답시간 개선
    대용량 데이터에서 파티션이 되어있다면 응답시간이 오래걸리지만 각 서버별로 필요한 데이터만 가져올 경우 속도가 개선된다.
  • 전체 서비스 중단 방지
    MSA와도 비슷한 개념으로 호스팅하는 컴퓨터에서 장애가 발생하면 데이터베이스 사용하는 앱도 오류가 난다.
    샤딩은 데이터베이스 일부를 다른 컴퓨터에 배포 함으로써 이와 같은 문제를 방지할수 있다.
  • 효율적인 크기 조정
    필요에 따라 scale-up, scale-out 을 하면서 효과적으로 사용할수 있다.
    그리고 확장에 유연하게 대응할수 있다.

참고 포스팅

https://thenicesj.tistory.com/821

 

파티셔닝 이란?

파티셔닝이란? 데이터 사이즈가 큰 테이블을 두 개 이상의 작은 테이블로 나누는 것을 파티셔닝이라고 한다. 보통 쿼리가 스캔할 데이터의 범위를 좁혀서 응답시간을 빠르게 하기 위한 목적으

thenicesj.tistory.com

https://thenicesj.tistory.com/189

 

대용량 트래픽에 대한 대처법

서버든 데이터베이스든 다수의 사용자가 동시에 몰리면 트래픽이 집중이 되어 서버가 렉이 걸릴수도 있고 만약 메모리가 오버가 된다면 out of memory등의 에러를 내뱉으면서 서버가 뻗게 된다. 이

thenicesj.tistory.com

 

반응형

'IT > Knowledge' 카테고리의 다른 글

Trigger 란? (트리거)  (27) 2024.02.16
[kafka] 컨슈머 그룹이란?  (20) 2024.02.11
파티셔닝 이란?  (22) 2024.01.24
Dispatcher Servlet 이란? (feat. FrontController 패턴)  (25) 2024.01.18
SPA / MPA 에 대해서  (23) 2024.01.16

댓글