중요합니다
Azure Cosmos DB for PostgreSQL은 더 이상 새 프로젝트에 지원되지 않습니다. 새 프로젝트에는 이 서비스를 사용하지 마세요. 대신 다음 두 서비스 중 하나를 사용합니다.
99.999% SLA(가용성 서비스 수준 약정), 인스턴트 자동 크기 조정 및 여러 지역에서 자동 장애 조치(failover)를 사용하는 대규모 시나리오용으로 설계된 분산 데이터베이스 솔루션에는 NoSQL용 Azure Cosmos DB를 사용합니다.
오픈 소스 Citus 확장을 사용하여 분할된 PostgreSQL용 Azure Database for PostgreSQL의 탄력적 클러스터 기능을 사용합니다.
클러스터의 크기(노드 수와 하드웨어 용량 모두)는 변경하기 쉽습니다. 하지만 새 클러스터에 대한 초기 크기를 선택해야 합니다. 적절한 선택을 위한 몇 가지 팁이 여기에 있습니다.
사용 사례
Azure Cosmos DB for PostgreSQL은 다음과 같은 방법으로 자주 사용됩니다.
다중 사용자 SaaS
기존 단일 노드 PostgreSQL 데이터베이스 인스턴스에서 Azure Cosmos DB for PostgreSQL로 마이그레이션할 때 총 작업자 vCore 및 RAM 수가 원본 인스턴스의 수와 같은 클러스터를 선택합니다. 이러한 시나리오에서는 분할된 데이터베이스가 리소스 사용률을 개선하고 더 작은 인덱스 등을 허용하기 때문에 2~3배 성능이 향상되었습니다.
실제로 vCore 수만 결정하면 됩니다. 컴퓨팅 및 스토리지 페이지에 설명된 대로 RAM 할당은 현재 vCore 수를 기준으로 결정됩니다. 코디네이터 노드에는 작업자만큼 많은 RAM이 필요하지 않지만, RAM과 vCore를 독립적으로 선택할 수 있는 방법이 없습니다.
실시간 분석
총 vCore: 작업 데이터가 RAM에 적합한 경우 작업자 코어 수에 비례하여 Azure Cosmos DB for PostgreSQL의 선형 성능 향상을 기대할 수 있습니다. 사용자 요구에 적합한 vCore 수를 결정하려면 단일 노드 데이터베이스의 쿼리에 대한 현재 대기 시간 및 Azure Cosmos DB for PostgreSQL의 필요한 대기 시간을 고려합니다. 현재 대기 시간을 원하는 대기 시간으로 나누고 결과를 반올림합니다.
작업자 RAM: 최상의 사례는 대부분의 작업 집합이 메모리에 맞는 충분한 메모리를 제공하는 것입니다. 애플리케이션에서 사용하는 쿼리 유형은 메모리 요구 사항에 영향을 줍니다. 쿼리에서 EXPLAIN ANALYZE를 실행하여 얼마나 많은 메모리가 필요한지 확인할 수 있습니다. 컴퓨팅 및 스토리지 문서에 설명된 대로 vCore와 RAM은 함께 스케일링됩니다.
다음 단계
- 클러스터의 크기 조정
- 클러스터 성능 옵션에 대해 자세히 알아봅니다.