이 페이지에서는 Spanner 파티션을 만들고 관리하는 방법을 설명합니다.
시작하기 전에
파티션을 사용하려면 빈 데이터베이스에서 opt_in_dataplacement_preview
데이터베이스 옵션을 설정해야 합니다.
콘솔
Google Cloud 콘솔에서 인스턴스 페이지로 이동합니다.
파티션을 추가할 인스턴스를 선택합니다.
데이터를 파티션을 나눌 빈 데이터베이스를 선택합니다.
탐색 메뉴에서 Spanner 스튜디오를 클릭합니다.
Spanner 스튜디오 페이지에서
새 탭을 클릭하거나 비어 있는 편집기 탭을 사용합니다.다음
ALTER DATABASE
DDL 문을 입력합니다.GoogleSQL
ALTER DATABASE DATABASE_ID SET OPTIONS (opt_in_dataplacement_preview = true);
DATABASE_ID를 데이터베이스의 고유 식별자로 바꿉니다.
PostgreSQL
ALTER DATABASE DATABASE_ID SET "spanner.opt_in_dataplacement_preview" = TRUE;
DATABASE_ID를 데이터베이스의 고유 식별자로 바꿉니다.
실행을 클릭합니다.
gcloud
opt_in_dataplacement_preview
데이터베이스 옵션을 설정하려면 gcloud spanner databases ddl update
를 사용합니다.
GoogleSQL
gcloud spanner databases ddl update DATABASE_ID \
--instance=INSTANCE_ID \
--ddl="ALTER DATABASE DATABASE_ID SET OPTIONS (opt_in_dataplacement_preview = true);"
다음을 바꿉니다.
DATABASE_ID
: Spanner 데이터베이스의 영구 식별자INSTANCE_ID
: Spanner 인스턴스의 영구 식별자
PostgreSQL
gcloud spanner databases ddl update DATABASE_ID \
--instance=INSTANCE_ID \
--ddl="ALTER DATABASE DATABASE_ID SET "spanner.opt_in_dataplacement_preview" = TRUE"
다음을 바꿉니다.
DATABASE_ID
: Spanner 데이터베이스의 영구 식별자INSTANCE_ID
: Spanner 인스턴스의 영구 식별자
파티션 만들기
콘솔
Google Cloud 콘솔에서 Spanner 페이지를 엽니다.
파티션을 추가할 인스턴스를 선택합니다.
탐색 메뉴에서 파티션을 선택합니다.
파티션 만들기를 클릭합니다.
파티션을 영구적으로 식별할 파티션 ID를 입력합니다. 파티션 ID도 Google Cloud 프로젝트 내에서 고유해야 합니다. 나중에 파티션 ID를 변경할 수 없습니다.
구성 선택 섹션에서 리전 또는 멀티 리전을 선택합니다. 또는 리전 간 사양을 비교하려면 리전 구성 비교를 클릭합니다.
드롭다운 메뉴에서 구성을 선택합니다.
컴퓨팅 용량 할당 섹션의 단위에서 다음 중 하나를 클릭합니다.
- 작은 인스턴스 파티션의 처리 단위
- 큰 인스턴스의 경우 노드. 노드 하나는 처리 단위 1,000개입니다.
선택한 단위의 값을 입력합니다.
파티션에 노드 1개 또는 처리 단위 1,000개 이상이 있어야 합니다.
만들기를 클릭하여 파티션을 만듭니다.
gcloud
파티션을 만들려면 gcloud beta spanner instance-partitions create
를 사용합니다.
gcloud beta spanner instance-partitions create PARTITION_ID \ --config=PARTITION_CONFIG \ --description="PARTITION_DESCRIPTION" \ --instance=INSTANCE_ID \ [--nodes=NODE_COUNT | --processing-units=PROCESSING_UNIT_COUNT]
다음을 바꿉니다.
- PARTITION_ID: Google Cloud 프로젝트 내에서 고유한 영구 파티션 식별자입니다. 나중에 파티션 ID를 변경할 수 없습니다.
- PARTITION_CONFIG: 파티션 구성의 영구 식별자입니다. 파티션의 지리적 위치를 정의하고 데이터가 저장되는 위치에 영향을 줍니다.
- PARTITION_DESCRIPTION: Google Cloud 콘솔에 표시되는 파티션 이름입니다. 파티션 이름은 Google Cloud 프로젝트 내에서 고유해야 합니다.
- INSTANCE_ID: 이 파티션이 있는 Spanner 인스턴스의 영구 식별자입니다.
- NODE_COUNT: 파티션의 컴퓨팅 용량으로서 노드 수로 표현됩니다. 노드 1개는 처리 단위 1,000개와 같습니다.
- PROCESSING_UNIT_COUNT: 인스턴스의 컴퓨팅 용량으로서 처리 단위 수로 표현됩니다. 파티션에 처리 단위가 1,000개 이상 있어야 합니다. 수량은 1,000의 배수(1,000, 2,000, 3,000 등)로 입력합니다.
예를 들어 eur3
에 노드 5개가 있는 파티션 europe-partition
을 만들려면 다음을 실행합니다.
gcloud beta spanner instance-partitions create europe-partition --config=eur3 \
--description="europe-partition" --instance=test-instance --nodes=5
클라이언트 라이브러리
C++
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
C#
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
Go
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
자바
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
Node.js
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
PHP
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
Python
Spanner용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Spanner 클라이언트 라이브러리를 참조하세요.
파티션 설명
gcloud
파티션을 설명하려면 gcloud beta spanner instance-partitions describe
를 사용합니다.
gcloud beta spanner instance-partitions describe PARTITION_ID \ --instance=INSTANCE_ID
다음을 바꿉니다.
- PARTITION_ID: 파티션의 영구 식별자
- INSTANCE_ID: 인스턴스의 영구 식별자
예를 들어 파티션 europe-partition
을 설명하려면 다음을 실행합니다.
gcloud beta spanner instance-partitions describe europe-partition
--instance=test-instance
파티션 나열
콘솔
Google Cloud 콘솔에서 Spanner 페이지를 엽니다.
목록에서 인스턴스를 선택합니다.
탐색 메뉴에서 파티션을 선택합니다.
해당 인스턴스와 연결된 파티션 목록이 표시됩니다.
gcloud
파티션을 나열하려면 gcloud beta spanner instance-partitions list
를 사용합니다.
gcloud beta spanner instance-partitions list --instance=INSTANCE_ID
그러면 gcloud CLI에서 Spanner 파티션 목록과 함께 각 파티션의 ID, 표시 이름, 구성, 컴퓨팅 용량을 출력합니다.
파티션 수정
다음 섹션에서는 파티션의 컴퓨팅 용량을 변경하는 방법을 설명합니다. 파티션 ID, 이름 또는 구성은 변경할 수 없습니다.
컴퓨팅 용량 변경
CPU 사용률 및 스토리지 사용률을 권장 최댓값 아래로 유지할 수 있도록 컴퓨팅 용량을 충분하게 프로비저닝해야 합니다. 자세한 내용은 Spanner의 할당량 및 한도를 참조하세요.
파티션의 컴퓨팅 용량을 늘리려면 Google Cloud 프로젝트에 컴퓨팅 용량을 추가할 수 있을 만큼 충분한 할당량이 있어야 합니다. 증가 요청을 완료하는 데 걸리는 시간은 요청 크기에 따라 달라집니다. 대부분의 경우 몇 분 내에 요청이 완료됩니다. 드문 경우지만 수직 확장을 완료하는 데 최대 1시간까지 걸릴 수 있습니다.
콘솔
Google Cloud 콘솔에서 Spanner 페이지를 엽니다.
목록에서 인스턴스를 선택합니다.
탐색 메뉴에서 파티션을 선택합니다.
파티션 목록의 작업 열에서 작업 더보기를 클릭하고 수정을 선택합니다.
측정 단위(처리 단위 또는 노드)를 선택한 후 수량을 입력하여 컴퓨팅 용량을 변경합니다. 처리 단위를 사용하는 경우 수량을 1,000의 배수(1,000, 2,000, 3,000 등)로 입력합니다. 노드 1개는 처리 단위 1,000개와 같습니다.
파티션에 노드(처리 단위 1,000개)가 1개 이상 있어야 합니다.
저장을 클릭합니다.
할당량이 부족하여 컴퓨팅 용량을 추가할 수 없다는 대화상자가 표시되면 안내에 따라 할당량 상향을 요청하세요.
gcloud
파티션의 컴퓨팅 용량을 변경하려면 gcloud beta spanner instance-partitions update
를 사용합니다.
이 명령어를 사용할 때 컴퓨팅 용량을 숫자, 노드 또는 처리 단위로 지정합니다.
gcloud beta spanner instance-partitions update PARTITION_ID / --instance=INSTANCE_ID / [--nodes=NODE_COUNT | --processing-units=PROCESSING_UNIT_COUNT] [--async]
다음을 바꿉니다.
- PARTITION_ID: 파티션의 영구 식별자
- INSTANCE_ID: 인스턴스의 영구 식별자
- NODE_COUNT: 파티션의 새로운 컴퓨팅 용량으로, 노드 수로 표현됩니다. 노드 1개는 처리 단위 1,000개와 같습니다.
- PROCESSING_UNIT_COUNT: 파티션의 새로운 컴퓨팅 용량으로, 처리 단위 수로 표현됩니다. 파티션에 처리 단위가 1,000개 이상 있어야 합니다. 수량은 1,000의 배수(1,000, 2,000, 3,000 등)로 입력합니다.
선택적 플래그:
--async
: 진행 중인 작업이 완료될 때까지 기다리지 않고 요청이 즉시 반환되도록 하려면 이 플래그를 사용합니다.
gcloud spanner operations describe
를 실행하여 요청 상태를 확인할 수 있습니다.
파티션 삭제
배치 또는 데이터와 연결된 동안에는 파티션을 삭제할 수 없습니다. 파티션을 삭제하려면 먼저 파티션에 있는 데이터를 이동하거나 파티션을 사용하는 배치 테이블을 삭제해야 합니다.
콘솔
Google Cloud 콘솔에서 Spanner 페이지를 엽니다.
목록에서 인스턴스를 선택합니다.
탐색 메뉴에서 파티션을 선택합니다.
파티션 목록의 작업 열에서 작업 더보기를 클릭하고 삭제를 선택합니다.
안내에 따라 파티션을 삭제할 것인지 확인합니다.
삭제를 클릭합니다.
gcloud
gcloud beta spanner instance-partitions delete
명령어를 사용합니다.
gcloud beta spanner instance-partitions delete PARTITION_ID --instance=INSTANCE_ID
다음 단계
- 배치 테이블 및 키를 만들고 관리하는 방법 알아보기