pgactive 스키마 이해 - Amazon Relational Database Service

pgactive 스키마 이해

pgactive 스키마는 RDS for PostgreSQL에서 액티브-액티브 복제를 관리합니다. 이 스키마에는 복제 구성 및 상태 정보를 저장하는 테이블이 포함되어 있습니다.

참고

pgactive 스키마는 발전 중이며 변경될 수 있습니다. 이러한 테이블의 데이터를 직접 수정하지 마세요.

pgactive 스키마의 키 테이블에는 다음이 포함됩니다.

  • pgactive_nodes - 액티브-액티브 복제 그룹의 노드에 대한 정보를 저장합니다.

  • pgactive_connections - 각 노드의 연결 세부 정보를 저장합니다.

pgactive_nodes

pgactive_nodes는 액티브-액티브 복제 그룹에 참여하는 노드에 대한 정보를 저장합니다.

유형

콜레이션

Nullable

Default

node_sysid 텍스트 Null이 아님
node_timeline oid Null이 아님
node_dboid oid Null이 아님
node_status char Null이 아님
node_name 텍스트 Null이 아님
node_dsn 텍스트 Null이 아님
node_init_from_dsn 텍스트 Null이 아님
node_read_only 부울 false
node_seq_id smallint Null이 아님
node_sysid

pgactive_create_group 또는 pgactive_join_group 중에 생성된 노드의 고유 ID

node_status

노드 준비 상태:

  • b - 설정 시작

  • i - 초기화 중

  • c - 캐치업

  • o - 아웃바운드 슬롯을 만드는 중

  • r - 준비됨

  • k - 종료됨

참고

이 열은 노드가 연결 또는 연결 해제되었는지 여부를 나타내지 않습니다.

node_name

사용자가 제공한 고유 노드 이름입니다.

node_dsn

연결 문자열 또는 사용자 매핑 이름입니다.

node_init_from_dsn

이 노드가 생성된 DSN입니다.

pgactive_connection

pgactive_connections는 각 노드에 대한 연결 세부 정보를 저장합니다.

유형 콜레이션 Nullable Default
conn_sysid 텍스트 없음 Null이 아님 없음
conn_timeline oid 없음 Null이 아님 없음
conn_dboid oid 없음 Null이 아님 없음
conn_dsn 텍스트 없음 Null이 아님 없음
conn_apply_delay 정수 없음 없음 없음
conn_replication_sets 텍스트 없음 없음 없음
conn_sysid

이 항목이 참조하는 노드의 노드 식별자입니다.

conn_dsn

pgactive.pgactive_nodes node_dsn과 동일합니다.

conn_apply_delay

설정된 경우 원격 노드에서 각 트랜잭션을 적용하기 전에 기다릴 시간(밀리초)입니다. 주로 디버깅용입니다. null인 경우 글로벌 기본값이 적용됩니다.

복제 세트 작업

복제 세트는 복제 작업에서 포함하거나 제외할 테이블을 결정합니다. 기본적으로 달리 지정하지 않는 한 다음 함수를 사용하여 모든 테이블이 복제됩니다.

  • pgactive_exclude_table_replication_set() - 복제에서 지정된 테이블을 제외합니다.

  • pgactive_include_table_replication_set() - 복제에 지정된 테이블을 포함합니다.

참고

복제 세트를 구성하기 전에 다음 사항을 고려하세요.

  • pgactive_create_group()을 실행한 후 그리고 pgactive_join_group() 전에만 테이블 포함 또는 제외를 구성할 수 있습니다.

  • pgactive_exclude_table_replication_set()를 사용한 후에는 pgactive_include_table_replication_set()를 사용할 수 없습니다.

  • pgactive_include_table_replication_set()를 사용한 후에는 pgactive_exclude_table_replication_set()를 사용할 수 없습니다.

시스템은 초기 구성에 따라 새로 만들어진 테이블을 다르게 처리합니다.

  • 테이블을 제외한 경우: pgactive_join_group() 이후에 생성된 모든 새 테이블은 복제에 자동으로 포함됩니다.

  • 테이블을 포함한 경우: pgactive_join_group() 이후에 생성된 모든 새 테이블은 복제에서 자동으로 제외됩니다.

특정 테이블에 대한 복제 세트 구성을 보려면 pgactive.pgactive_get_table_replication_sets() 함수를 사용합니다.