DATABASE

[DB] CLUSTERING(클러스터링)

집한구석 2021. 11. 13. 09:29
728x90

Clustering

  • 여러 개의 DB를 수평적인 구조로 구축하여 DB들 간 데이터를 동기화처리 하는방식

Clustering 처리 방식

 

https://fromdual.com/mariadb-galera-cluster-with-corosync-pacemaker-vip

  1. 1개 DB에 쓰기 트랜잭션이 수행되고, COMMIT을 실행됨
  2. 실제 디스크에 내용을 쓰기 전에 다른 DB로 데이터의 복제를 요청
  3. 다른 DB에서 복제 요청을 수락했다는 신호(OK)를 보내고, 디스크에 쓰기를 시작
  4. 다른 DB로부터 신호(OK)를 받으면 실제 디스크에 데이터를 저장

Clustering 구현 방법

클러스터링 구현은 상황에 따라서 알맞은 구조를 선택하면됨

  • Active-Active : 클러스터를 항상 가동하여 가용 가능한 상태로 유지하는 방식
  • Active-Standby : 일부 클러스만 가동하고, 나머지 클러스터는 대기상태로 구성하는 방식

Clustering 특징

클러스터링은 DB들간의 데이터가 일치하는지 확인하는 작업으로 데이터를 동기화 처리함

  • 데이터들을 동기화 처리로 인해 특정 DB가 죽어도 시스템 장애없이 운영이 가능함
  • 동기화 처리로 인하여 Replication보다 성능이 떨어짐 

'DATABASE' 카테고리의 다른 글

[DB] MYSQL EXPLAIN(실행계획) 보는법  (0) 2022.04.18
[DB] 쿼리문 함수 정리  (0) 2021.12.15
[DB] REPLICATION(리플리케이션)  (0) 2021.11.13
[DB] 쿼리 처리 과정  (0) 2021.06.26
[DB] 인덱스 (INDEX)  (0) 2021.06.24