Azure Cosmos DB for PostgreSQL의 클러스터에서 분할된 데이터베이스 리밸런스

적용 대상: Azure Cosmos DB for PostgreSQL(PostgreSQL에 대한 Citus 데이터베이스 확장 기반)

새로 추가된 노드를 활용하려면 분산 테이블 분할을 리밸런스합니다. 리밸런싱은 기존 노드에서 새 노드로 분할된 데이터베이스를 이동합니다. Azure Cosmos DB for PostgreSQL은 가동 중지 시간이 없는 리밸런싱을 제공하므로 분할된 데이터베이스 리밸런싱 중에 쿼리를 중단 없이 계속할 수 있습니다.

클러스터가 밸런싱되었는지 확인

Azure Portal은 데이터가 클러스터의 작업자 노드 간에 균등하게 배포되는지 여부를 보여 줍니다. 클러스터 관리 메뉴에서 분할된 데이터베이스 리밸런스를 선택합니다.

  • 작업자 간에 데이터가 기울어진 경우 각 노드의 크기 목록과 리밸런싱이 권장됨 메시지가 표시됩니다.

  • 데이터가 균형을 이루고 있는 경우 현재 리밸런싱이 권장되지 않음이라는 메시지가 표시됩니다.

분할된 데이터베이스 리밸런서 실행

분할된 데이터베이스 리밸런서를 시작하려면 클러스터의 코디네이터 노드에 연결하고 분산 테이블에서 rebalance_table_shards SQL 함수를 실행합니다.

함수는 인수에서 명명된 테이블의 공동 배치 그룹에 있는 모든 테이블을 리밸런싱합니다. 모든 분산 테이블에 대해 함수를 호출할 필요는 없습니다. 대신 각 공동 배치 그룹의 대표 테이블에서 호출합니다.

SELECT rebalance_table_shards('distributed_table_name');

리밸런스 진행 상황 모니터링

Azure Portal에서 리밸런스 진행률을 볼 수 있습니다. 클러스터 관리 메뉴에서 분할된 데이터베이스 리밸런스를 선택합니다. 메시지 리밸런싱이 진행 중인 경우 다음 두 개의 테이블이 표시됩니다.

  • 첫 번째 표는 노드 안팎으로 이동하는 분할된 데이터베이스의 수를 보여 줍니다 (예: “24개 중 6개 이동됨”).
  • 두 번째 테이블은 이름, 영향을 받은 분할된 데이터베이스 수, 영향을 받은 데이터 크기, 리밸런싱 상태 등 데이터베이스 테이블당 진행 상황을 보여 줍니다.

새로 고침을 선택하여 페이지를 업데이트합니다. 리밸런싱이 완료된 경우 현재 리밸런싱이 권장되지 않음이라는 메시지가 표시됩니다.

다음 단계