Spanner Omni 주요 용어

이 문서에서는 Spanner Omni의 핵심 개념과 배포 토폴로지를 정의합니다. 이 섹션에서는 리전, 영역, 서버 간의 계층적 관계를 다루고 이러한 구성요소가 배포 내 데이터 복제 및 스토리지와 어떤 관련이 있는지 설명합니다.

Spanner Omni 개념

다음 섹션에서는 Spanner Omni 문서 전체에서 사용되는 용어에 대한 자세한 정의를 제공합니다. 이러한 개념을 숙지하면 시스템의 아키텍처와 운영 동작을 명확하게 이해할 수 있습니다.

배포

데이터 센터 또는 퍼블릭 클라우드 계정에서 데이터베이스를 사용할 수 있는 Spanner Omni 배포 배포 구성에 지정된 매개변수에 따라 배포를 만듭니다. Spanner Omni 배포는Google Cloud의 Spanner 인스턴스와 동일합니다.

배포 구성

Spanner Omni 배포의 리전, 영역, 서버의 배치 및 사양을 제공합니다. 단일 서버, 단일 리전 또는 멀티 리전 배포 구성을 선택할 수 있습니다. 자세한 내용은 배포 구성을 참고하세요.

위치

Google Cloud 용어로 표현한 리전과 동일합니다. 두 리전 간의 네트워크 지연 시간은 무시할 수 없습니다. 온프레미스 배포의 경우 자체 리전을 정의할 수 있습니다. 클라우드 배포의 경우 리전이 해당 클라우드 제공업체의 리전과 일치해야 합니다. 한 리전에 여러 영역이 있을 수 있습니다.

프로세스

Spanner 서버는 여러 프로세스를 포크하고 관리합니다. 예를 들어 TimeServer, spanserver는 모두 Spanner의 프로세스입니다. 개별 프로세스에는 CPU 및 메모리 사용량과 같은 모니터링 통계가 있을 수 있습니다. 프로세스는 배포의 다른 서버와 통신하기 위해 포트를 열 수 있습니다.

복제본

Spanner는 데이터를 복제하여 데이터 가용성과 지리적 위치를 제공합니다. 상위 수준에서 Spanner는 모든 데이터를 행으로 구성합니다. Spanner는 이러한 행의 복사본(또는 복제본)을 여러 개 만든 후 이러한 복제본을 서로 다른 지역에 저장합니다. Spanner는 동기식 Paxos 기반 복제 스키마를 사용합니다. 이 스키마에서 응답 복제본은 데이터베이스에 쓰기를 커밋하기 전에 각 쓰기 요청에 대해 응답합니다. Spanner와 마찬가지로 Spanner Omni에는 읽기-쓰기, 읽기 전용, 감시의 세 가지 복제본 유형이 있습니다. 자세한 내용은 Spanner 문서의 복제본 유형을 참고하세요.

서버

서버는 Spanner Omni 서버가 실행되는 VM 또는 컨테이너와 같은 컴퓨팅 리소스입니다. 각 서버에는 자체 시스템 리소스(CPU, 메모리, 스토리지)가 있습니다. 서버는 사용자 데이터를 저장하고 제공하여 Spanner Omni의 기능을 제공합니다.

루트 서버

루트 서버는 영역을 지원하기 위해 중요한 메타데이터를 저장합니다. 예를 들어 루트 서버는 서버 멤버십과 기타 영역 구성 정보를 저장합니다.

일관성을 위해 쿼럼을 보장하려면 영역당 루트 서버 수가 1~9 사이의 홀수여야 합니다. 서버 수가 짝수이면 배포가 실패할 수 있습니다. 영역을 구성할 때 서버를 루트 서버로 지정합니다. 개발 또는 테스트에는 하나를 사용하고 가용성이 높은 프로덕션 영역에는 세 개를 사용하는 것이 좋습니다.

배포를 계획할 때 루트 서버 수를 신중하게 고려하세요. 배포를 만든 후에는 배포의 루트 서버 수를 변경할 수 있지만 권장하지는 않습니다.

비루트 서버

비루트 서버는 사용자 데이터를 저장하고 제공하며 영역의 컴퓨팅 용량과 스토리지를 확장하는 방법을 제공합니다. 워크로드 요구사항에 따라 배포에 루트가 아닌 서버를 원하는 만큼 추가할 수 있습니다. 배포를 만든 후에는 비루트 서버 수를 변경할 수 있습니다.

분할

Spanner 분할은 연속된 데이터 행 범위를 포함하며, Spanner는 기본 키를 기준으로 행을 정렬합니다. Spanner는 각 영역에 저장되는 각 분할의 복제본을 만듭니다.

스토리지

서버에 연결된 영구 스토리지입니다.

영역

하나 이상의 서버 그룹입니다. 데이터 복제의 경우 복제본당 하나의 영역을 만들어야 합니다. 온프레미스 배포의 경우 영역 간 인프라 공유 (VM, 디스크)를 최소화하는 것이 좋습니다. 클라우드 배포의 경우 영역을 AWS의 가용성 영역 또는 Google Cloud의 영역에 맞춥니다.

작업자

대규모 테이블에서 벡터 색인을 빌드하는 등 백그라운드 및 리소스 집약적인 작업을 오프로드하도록 설계된 전용 스테이트리스 컴퓨팅 노드입니다. 작업자는 Spanner Omni 상업용 버전에서 사용할 수 있으며 배포의 서버와 동일한 컴퓨팅 요금으로 청구됩니다. 개발자 버전은 작업자를 지원하지 않습니다. 서버와 달리 작업자는 사용자 데이터를 호스팅하거나, 사용자 트래픽을 처리하거나, 리더 선거에 참여하거나, 특정 영역에 속하지 않습니다. 대신 위치에 등록합니다. 자세한 내용은 작업자 배포 및 관리를 참고하세요.