복제의 대상이 되는 원본 데이터베이스이며 마스터 데이터베이스는 읽기, 쓰기 등 모든 데이터베이스 연산이 허용된다.
마스터 데이터베이스와 동일한 내용의 복제된 데이터베이스(replica)이며, 마스터 데이터베이스의 변경이 자동적으로 반영되는 데이터베이스이다. 마스터 데이터베이스와 달리 슬레이브 데이터베이스는 읽기 연산만 사용될 수 있다.
'primary 서버'라고도 하며, 사용자에게 서비스를 제공하는 서버이다. active 서버는 마스터 데이터베이스를 사용한 읽기, 쓰기 등 모든 서비스를 제공한다.
'secondary', 'passive' 혹은 'failover 서버'라고 하며, active 서버가 장애로 인해 서비스를 할 수 없을 때, active 서버를 대신하여 서비스를 제공할 수 있다. standby 서버는 슬레이브 데이터베이스를 사용한 읽기 서비스를 제공한다.
active 서버 또는 active 서버가 존재하는 시스템에 장애가 발생하여 서비스를 제공할 수 없는 상태가 검출되면, 자동으로 standby 서버를 active 서버로 절체하여 서비스를 계속 제공하는 기능이다.
failover 이후 active 서버가 장애 이전의 상태로 복구되면, 복구된 active 서버를 통하여 서비스가 수행되도록 원래의 상태로 다시 절체되는 기능이다.
이전 active 서버에서 장애가 복구되어도 현재의 상태로 서비스를 계속 제공하는 기능이다.
HA 기능을 제공하기 위한 핵심 구성 요소이다. CUBRID Heartbeat 기능은 cub_master 프로세스 내에 포함되며, 다른 노드의 cub_master 프로세스와 heartbeat 메시지를 주고 받으며 노드 장애를 감지하고, 장애가 감지되면 standby 서버로 failover를 수행한다. 또한, HA 관련 프로세스(cub_server, copylogdb, applylogdb)의 가용 상태를 주기적으로 모니터링한다.
HA기능을 제공하기 위해 서버 HW를 중복으로 구성하여 시스템을 구축하는 것이다. 장애 발생시 standby 서버가 active 서버의 기능을 수행하는 방식(Active-Standby. 아래 그림)과 장애 발생 서버의 역할을 추가로 대행하면서 서비스 기능을 수행하도록 이중 체계를 구축하는 방식(Active-Active)이 있다.
하나의 데이터베이스에 장애가 발생하여도 서비스를 계속 제공할 수 있도록 여러 대의 데이터베이스 서버를 구성한 구조이다. 서비스를 제공 중이던 active 데이터베이스 서버에 장애가 발생하면, 동일한 데이터를 가지고 있는 standby 데이터베이스 서버가 서비스를 제공할 수 있다.
브로커를 다중화 하여 특정 브로커에 장애가 발생하여도 다른 브로커를 통한 서비스를 계속 제공할 수 있도록 구성한 구조이다. 또한 각각의 브로커는 아래에서 설명하는 것과 같이 다른 특성을 가질 수 있다.
active 서버에서 생성되는 트랜잭션 로그가 하나 이상의 standby 서버에 실시간으로 전송하여 모든 서버에 동일한 로그가 기록되도록 하는 기능이다.