어떤 DB를 사용할 것인가
DB의 종류로는 크게 관계형 DB, 비 관계형 DB가 존재하는데
관계형 DB → 자료를 테이블과 열(칼럼)으로 표현
비 관계형 DB → key-value(redis), graph, column, document(mongodb) 등의 저장 방식 존재
관계형 DB - 조인 연산 지원
비 관계형 DB - 조인 연산 지원하지 않음
비 관계형 DB가 유용한 경우
- 아주 낮은 응답 지연시간(latency) 요구
- 다루는 데이터가 관계형이 아님
- 아주 많은 양의 데이터 저장 필요
- 데이터(JSON, YAML, XML)를 직렬화, 역직렬화만 하면 됨
수직적 규모 확장(Scale-Up), 수평적 규모 확장(Scale-Out)
Scale-Up
서버의 성능 자체를 올려버리는 것 단순하지만 아래와 같이 너무 명확한 단점들을 가지고 있다.
- 서버의 성능을 올리는 건 한계가 있음
- 장애에 대한 자동복구, 다중화 방안 존재 X
Scale-Out