Azure Arc 지원 PostgreSQL Hyperscale(미리 보기) 이해

완료됨

PostgreSQL은 성숙한 오픈 소스 RDBMS(관계형 데이터베이스 관리 시스템)입니다. Azure Arc 지원 배포와 결합하면 여러 머신에 걸쳐 쿼리를 확장할 수 있습니다. Hyperscale 모델을 사용하면 PostgreSQL 쿼리 엔진이 모든 서버에서 수신 SQL 쿼리를 병렬 처리하므로 대량 데이터 세트에서 응답 속도가 빨라집니다. Azure Arc 지원 데이터 서비스 PostgreSQL Hyperscale은 오픈 소스 Citus 확장을 기반으로 합니다. Citus 확장은 PostgreSQL 배포에서 하이퍼스케일 작업을 가능하게 합니다. 여러 노드로 구성되는 "비공유" 아키텍처를 사용하면 데이터가 여러 시스템에 분할됩니다. PostgreSQL Hyperscale은 특히 다중 테넌트 및 실시간 애플리케이션에 적합합니다. 단일 분산 열에 적합한 대규모 데이터가 있는 애플리케이션에도 적합합니다. PostgreSQL Hyperscale 배포에는 3개 이상의 인스턴스가 필요합니다. 인스턴스에는 코디네이터 노드 하나와 2개 이상의 작업자 노드가 포함됩니다. 테스트 및 개발에 단일 노드를 사용할 수 있습니다. 데이터 명령은 코디네이터 노드에 전송되고, 코디네이터 노드는 전송된 데이터 명령을 작업자 노드에 전달합니다. 노드는 다음 세 가지 모드 중 하나로 데이터를 테이블에 저장합니다.

  • 분산 테이블: 단일 테이블로 표시되는 데이터는 "분할된 데이터베이스"라는 조각 테이블의 여러 노드에 걸쳐 수평적으로 분할됩니다. 분산 열이라는 단일 열은 이 레이아웃을 결정하며 애플리케이션의 중요한 디자인 고려 사항입니다.
  • 참조 테이블: 애플리케이션에서 참조에 사용하는 특정 목적과 관련된 데이터를 저장하는 작은 테이블입니다. 참조 테이블은 모든 작업자 노드에 저장되며 분할되지 않습니다. 참조 테이블은 조회 또는 기타 정적 데이터의 속도가 빠릅니다.
  • 로컬 테이블: 분할되지 않으며 코디네이터 노드의 데이터베이스에 저장되는 데이터입니다. 이 데이터는 종종 보안 또는 기타 정적 용도로 사용되며 조인 쿼리에는 거의 사용되지 않습니다.

PostgreSQL Hyperscale을 사용하는 솔루션을 디자인할 때 고려해야 하는 두 가지 중요한 사항은 Kubernetes의 스토리지 클래스와 애플리케이션 유형입니다.

스토리지 클래스 고려 사항

스토리지 클래스는 서버 그룹을 배포할 때 정의되며 배포 후에는 변경할 수 없습니다. 데이터 및 로그는 별도의 스토리지 클래스 형식으로 저장됩니다. 백업 파일은 스토리지 클래스 또는 볼륨 클레임에 저장할 수 있습니다. 전체 복원 또는 특정 시점 복원 작업 중 무엇이 필요한지에 따라 저장 위치가 달라집니다.

애플리케이션 형식 고려 사항

다음과 같은 유형의 애플리케이션은 스케일 아웃 PostgreSQL Hyperscale 배포를 사용하는 것이 좋습니다.

  • 단일 클라이언트 또는 위치 전용으로 자주 사용되는 여러 애플리케이션을 호스트하는 조직에는 스케일 아웃 PostgreSQL Hyperscale이 적합합니다.
  • OLTP(온라인 트랜잭션 처리) 또는 OLAP(온라인 분석 처리) 워크로드를 처리하는 많은 테이블과 스키마가 있는 애플리케이션에는 스케일 아웃 아키텍처가 적합합니다.
  • 분석 쿼리를 집계하는 소수의 테이블을 사용하는 실시간 애플리케이션
  • 대부분 변경할 수 없는 데이터를 대량으로 수집하는 애플리케이션

기능 비교

Azure Arc 지원 데이터 서비스 PostgreSQL Hyperscale은 다음과 같은 점에서 PostgreSQL 표준 설치와 다릅니다.

  • 데이터베이스: 배포는 서버 그룹당 데이터베이스 하나로 제한됩니다.
  • 백업: 특정 시점 복원 작업은 보조 서버 그룹에 적용해야 합니다. 동일한 서버 그룹에 전체 복원 작업은 PostgreSQL 버전 12 이상에서 사용할 수 있습니다.
  • 보안: 사용자 및 역할은 postgres 표준 사용자로 제한됩니다.

Azure Arc 지원 데이터 서비스를 사용하면 적절한 크기 및 기타 요구 사항을 고려하여 Kubernetes를 실행하는 모든 위치에 PostgreSQL Hyperscale을 배포할 수 있습니다. PostgreSQL은 Microsoft Azure를 서비스로 사용하여 Hyperscale 형식으로 배포할 수도 있습니다. Azure Arc 지원 데이터 서비스에서는 고객이 Kubernetes 플랫폼과 PostgreSQL 배포를 모두 책임져야 합니다. Microsoft Azure 배포에서는 고객이 PostgreSQL 배포만 책임지면 됩니다.

관리 기능 비교

Azure Arc 지원 데이터 서비스 PostgreSQL Hyperscale 배포를 모니터링하고 관리하는 데 사용되는 두 가지 기본 인터페이스는 CLI(명령줄 인터페이스)와 GUI(그래픽 사용자 인터페이스)입니다.

도구 및 유틸리티

일반적으로 검색 및 탐색에는 그래픽 도구를 사용하고 표준화 및 자동화에는 명령줄 도구를 사용할 수 있습니다. 다음과 같은 도구가 포함됩니다.

배포 모델

Azure Arc 지원 PostgreSQL 환경의 배포는 필요한 관리 기능에 따라 결정됩니다. 보안, 하드웨어 및 백업을 보다 철저하게 제어하려면 자체 인프라를 사용하면 됩니다. Azure 인프라를 사용하면 보다 자동화된 패치, 더 높은 가용성 및 재해 복구, 완전한 SLA가 제공됩니다.

지식 점검

1.

다음 중 Azure PostgreSQL Hyperscale Service 대신 Azure Arc 지원 데이터 서비스 PostgreSQL Hyperscale을 선택하는 이유는 무엇인가요?

2.

동일한 PostgreSQL Hyperscale 서버 그룹에 전체 데이터베이스 복원을 수행하려고 합니다. 이것이 가능하게 하려면 무엇을 확인해야 하나요?

3.

다음 중 코디네이터 노드에 저장할 수 있는 테이블 유형은 무엇인가요?

4.

다음 중 Azure Arc 지원 데이터 서비스 PostgreSQL Hyperscale을 사용하는 애플리케이션에 적합한 것은 무엇입니까?