Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion Database.md
Original file line number Diff line number Diff line change
Expand Up @@ -768,7 +768,8 @@ DB 레플리케이션은 __DB 서버와 DB 스토리지를 다중화하는 방
-----------------------

+ __큰 Table이나 인덱스를 관리하기 쉬운 단위로 분리하는 방식__
+ 예를 들어, 사람이라는 테이블이 너무 커지게 되면서 사람을 북유럽인, 아시아인, 서유럽인 이렇게 테이블로 분리하는 것이라고 볼 수 있다.
+ 테이블을 컬럼 단위로 나눈다.
+ 예를 들어, 유저 정보라는 테이블이 너무 커지게 되면서 기본 정보, 추가 정보 등으로 분리하는 것이라고 볼 수 있다.
+ 장점
- Insert 시 분리된 파티션으로 분산시켜 경합을 줄임
- 읽기/쓰기 향상
Expand Down Expand Up @@ -796,6 +797,7 @@ DB 레플리케이션은 __DB 서버와 DB 스토리지를 다중화하는 방


+ __같은 테이블 스키마를 가진 데이터를 다수의 데이터베이스에 분산하여 저장하는 방식__
+ 예를 들어, 사람이라는 테이블이 너무 커지게 되면서 사람을 북유럽인, 아시아인, 서유럽인 이렇게 테이블로 분리하는 것이라고 볼 수 있다.
+ 데이터를 잘 분산시키기 위해 고려해야할 것이 Shard Key이고 이를 정하는 방식으로 Hash Sharding, Dynamic Sharding, Entity Group 방식이 있다.
+ 샤딩은 복잡도가 매우 높아지므로 다른 방식을 우선적으로 고려해야 한다.

Expand Down