Scalability
는 어떤 규모로 DB를 크게 확장할 수 있는지에 관한 것이다.
DB를 운영하는데, DB 접속자가 점점 늘어나면, DB가 느려지게 된다.
그렇다면, 우리가 사용하는 DB 인스턴스의 크기를 수정해보자. (네모친 부분)
수정
버튼을 누르자.
그러면 클래스
라는 부분을 누르면 다른 타입의 DB로 변경할 수 있다.
그리고 컴퓨터의 성능만 달라지는 점이기 때문에 간편하지만,
언젠가는 한계
에 도달한다는 것이 가장 큰 문제이다.
여러대의 컴퓨터가 동일한 목적
을 위해서 협력하는 방식이다.
하지만, 문제는 DB안에는 데이터가 저장되어있다.
그러므로, 한 대의 DB
에 Master
라는 이름을 붙인다.
또, 별도의 컴퓨터를 장만한다. 그리고 각각의 컴퓨터들은 Slave
라는 이름이다.
그리고 Slave
가 마스터에 있는 데이터를 아주 빠르게 동기화를 시킨다.
쓰기 작업이 마스터 DB에 일어나면 아주 빠르게 slave가 아주 빠르게 동기화 시키게 되는 것이다.
그래서 어플리케이션에서 DB에 데이터를 가져갈 때 쓰기
와 관련된 작업은 Master DB만을 대상으로 처리되고, 읽기
와 관련된 작업은 각각의 Slave DB만을 대상으로 처리한다.
만약, 여기서 마스터 DB
의 스케일 업에도 제한이 걸린다면 샤딩
을 고려해야 한다.
먼저, 읽기 전용
, 즉 Slave DB를 만드는 것부터 해보자.
읽기 전용 복제본 생성
이라는 버튼을 누르면 된다.
Source
는 마스터 DB를 지정하는 것이고, 나머지는 설정안해도 된다.
여러 개의 Slave가 필요하다면 여러 대의 복제본을 생성하면 된다.