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개 이동됨”).
- 두 번째 테이블은 이름, 영향을 받은 분할된 데이터베이스 수, 영향을 받은 데이터 크기, 리밸런싱 상태 등 데이터베이스 테이블당 진행 상황을 보여 줍니다.
새로 고침을 선택하여 페이지를 업데이트합니다. 리밸런싱이 완료된 경우 현재 리밸런싱이 권장되지 않음이라는 메시지가 표시됩니다.
다음 단계
- 클러스터 성능 옵션에 대해 자세히 알아봅니다.
- 클러스터 스케일링 업 또는 아웃
- Rebalance_table_shards 참조