리전 엔드포인트

Dataflow 리전 엔드포인트는 Dataflow 작업에 대한 메타데이터를 저장하고 처리하며, Dataflow 작업자를 배포하고 제어합니다.

리전 엔드포인트 이름은 Compute Engine 리전 이름을 기반으로 표준 규칙을 따릅니다. 예를 들어 중부 US 리전의 이름은 us-central1입니다. 현재 Dataflow는 다음 리전의 리전 엔드포인트를 제공합니다.

  • us-west1
  • us-central1
  • us-east1
  • us-east4
  • europe-west2
  • europe-west1
  • europe-west4
  • europe-west3
  • asia-east1
  • asia-northeast1

리전 엔드포인트를 지정해야 하는 이유

상황에 따라 Dataflow 작업의 리전 엔드포인트를 지정하는 것이 유용한 경우가 있습니다.

보안 및 규정 준수

프로젝트의 보안 및 규정 준수 요구사항을 지원하기 위해 Dataflow 작업 처리를 특정 리전으로 제한해야 할 수도 있습니다.

데이터 지역

소스, 싱크, 스테이징/임시 파일 위치와 같은 동일한 리전에서 Dataflow 작업을 실행하면 네트워크 지연 시간과 네트워크 전송 비용을 최소화할 수 있습니다. 소스, 싱크 또는 스테이징/임시 파일이 작업 리전 외부에 위치하면 데이터가 리전 간에서 전송될 수 있습니다.

일반적인 Dataflow 작업 소스에 대한 참고:

  • Cloud Storage 버킷은 리전 또는 멀티 리전 리소스일 수 있습니다. Cloud Storage 리전 버킷을 소스로 사용하는 경우에는 같은 리전에서 읽기 작업을 수행하는 것이 좋습니다. Cloud Storage 멀티 리전 버킷을 소스로 사용할 때는 같은 리전에서 읽기 작업을 수행하는 것이 좋습니다.
  • Pub/Sub 주제는 전역 리소스이며 리전을 고려하지 않습니다.

복원력 및 지리적 분리

일반 Dataflow 작업을 다른 리전에서 발생할 수 있는 서비스 중단으로부터 격리하려 할 수 있습니다. 또는 리전 전체 재해 시 비즈니스 연속성을 위한 대체 사이트를 계획해야 할 수도 있습니다.

자동 영역 배치

기본적으로, 리전 엔드포인트는 작업 생성 요청 시 사용 가능한 영역 용량에 따라 리전 내에서 최상의 영역을 자동으로 선택합니다. 자동 영역 선택은 작업 작업자가 작업에 가장 적합한 영역에서 실행되도록 합니다.

리전 엔드포인트 사용

참고: 리전 엔드포인트 구성에는 Apache Beam SDK 버전 2.0.0 이상이 필요합니다. Dataflow SDK 1.x를 사용하는 경우 us-central1 리전 엔드포인트를 사용합니다.

작업의 리전 엔드포인트를 지정하려면 --region 옵션을 지원되는 리전 엔드포인트 중 하나로 설정합니다. 리전 엔드포인트를 지정하지 않으면 Dataflow가 us-central1을 기본 리전으로 사용하고 작업자는 us-central1 내의 영역에서 시작합니다. 리전 엔드포인트가 기본 리전과 다른 경우 오류를 방지하려면 이 작업에 대한 모든 Cloud Dataflow 명령어에서 리전을 지정해야 합니다.

Cloud Dataflow 명령줄 인터페이스에서는 리전 엔드포인트를 지정하는 --region 옵션도 지원합니다.

영역 재정의

기본적으로 작업을 --region 매개변수와 함께 제출하면 리전 엔드포인트는 리전 내 최상의 영역에 작업자를 자동으로 할당합니다. 하지만 다음과 같은 경우에는 리전 영역(--zone 사용)을 모두 지정할 수 있습니다.

  • 작업자가 리전 엔드포인트가 없는 영역에 있으며, 해당 영역에 좀 더 가까운 리전 엔드포인트를 사용하려고 하는 경우

  • Dataflow 작업의 데이터 처리가 특정 영역 내에서만 발생하는지 확인하려는 경우

다른 모든 경우에는 영역을 재정의하지 않는 것이 좋습니다. 일반 시나리오 표에는 이러한 상황에 대한 사용 권장사항이 포함되어 있습니다.

gcloud compute regions list 명령어를 실행하여 작업자 배포에 사용 가능한 영역이 있는 리전 목록을 볼 수 있습니다.

일반적인 시나리오

다음 표에는 일반적인 시나리오에 대한 사용 권장사항이 포함되어 있습니다.

시나리오 권장사항
지원되는 지역 엔드포인트를 사용하고 싶은데 지역 내에 환경 설정된 영역이 없습니다. 이 경우에는 리전 엔드포인트가 가용 용량에 따라 가장 적합한 영역을 자동으로 선택합니다. --region을 사용하여 리전 엔드포인트를 지정합니다. 그러면 Dataflow가 작업을 관리하고 지정된 리전 내에서 데이터를 처리합니다.
리전 엔드포인트가 있는 리전 내 특정 영역에서 작업자 처리가 이루어져야 합니다. --region--zone을 지정합니다.

--region을 사용하여 리전 엔드포인트를 지정합니다. --zone을 사용하여 리전 내 특정 영역을 지정합니다.

리전 엔드포인트가 없는 특정 리전에서 작업자 처리가 이루어져야 합니다. --region--zone을 지정합니다.

--region을 사용하여 작업자 처리가 진행되어야 하는 영역과 가장 가까운 지원되는 리전 엔드포인트를 지정합니다. --zone을 사용하여 작업자 처리가 진행되어야 하는 원하는 리전 내 영역을 지정합니다.

Dataflow Shuffle을 사용해야 합니다. --region을 사용하여 Dataflow Shuffle을 지원하는 리전 엔드포인트를 지정합니다. 일부 리전 엔드포인트에서는 이 기능이 지원되지 않습니다. 지원 리전 목록은 기능 문서를 참조하세요.