1. 수직적 확장(Scale Up)
- 서버 자체를 증강시켜 처리 능력을 향상시킨다.
- 구축, 설계가 쉽다.
- 인프라 비용이 별도로 발생하지 않는다.
- 하지만 확장성의 한계가 있다.
- 트래픽 부하로 인한 장애 영향이 커진다.
- 데이터 갱신이 빈번하게 일어나는 데이터 베이스 서버 등
2. 수평적 분할(Scale Out)
- 서버 대수를 증가시켜서 처리 능력을 향상시킨다.
- 지속적인 확장이 가능하다.
- 분산처리로 장애 가능성이 낮아진다.
- scale up 보다는 저렴하다.
- 설계, 구현이 복잡해서 관리 비용이 증가한다.(서버 모두 같은 데이터를 유지해야 한다)
- 로드 밸런서가 필요하기 때문에 기본적인 직렬화가 존재한다.
- 높은 병렬성 실현이 쉽고 정합성 유지가 쉬운 경우에 사용한다.
- 메일 게시판 서버, 데이터 읽기 전용 어플리케이션, 웹 서버 등
- 참고로, 로드 밸런서가 SPOF(단일 고장점)가 될 수 있다.
- 이는 복잡도 낮추기, 복제, 다양성, 투명성 의 노력으로 위험을 줄일 수 있다.
'CS > 데이터베이스' 카테고리의 다른 글
트랜잭션의 격리수준 (0) | 2021.09.28 |
---|---|
Injection (0) | 2021.09.28 |
인덱스란? (0) | 2021.07.20 |
트랜잭션의 정의와 특징 (0) | 2021.06.30 |
Key (0) | 2021.06.23 |