예약을 사용하여 워크로드 관리

이 페이지에서는 BigQuery 예약을 사용하여 BigQuery 워크로드 관리에 도움이 되는 방법을 설명합니다.

결제 모델 선택

언제든지 주문형 결제 모델과 정액제 모델 간에 전환할 수 있으며 두 모델을 조합할 수도 있습니다. 두 가격 책정 모델은 상호 보완적입니다. 주문형 결제는 효율적이고 정액제는 요금을 예측할 수 있다는 장점이 있습니다.

예약의 장단점

정액제를 선택하는 경우 고려해야 하는 사항은 다음과 같습니다.

  • 비용: 월간 분석 비용 지출은 최소 BigQuery 정액제 약정(현재 기준 월간 100슬롯) 수준으로 설정하시는 것이 좋습니다.
  • 효율성. 쿼리당 비용을 지불하기 때문에 효율성이 중요한 경우 주문형을 권장합니다.
  • 예측 가능성. 정액제를 선택하면 월간 정액 요금을 지불하기 때문에 월간 비용을 예측할 수 있다는 장점이 있습니다.
  • 리소스. 정액제와 주문형 결제 모델은 용량 제공 방식이 다릅니다. 자세한 내용은 구매 슬롯 규모 예상을 참조하세요.

예약 결정.

신규 고객의 경우 정액제를 먼저 사용해 보셔도 좋습니다. 주문형 결제를 선택했을 경우의 비용을 언제든지 확인할 수 있으며 본인에게 적합한 모델을 언제든지 선택할 수 있습니다.

안정적인 상태의 워크로드 구성을 정하기 전에 탄력 슬롯으로 실험하여 조직의 정액제 결제 가격과 성능을 테스트할 수도 있습니다. 탄력 슬롯은 특수 약정 유형입니다.

  • 약정 기간은 단 60초입니다.
  • 이후에는 언제든지 가변 슬롯을 취소할 수 있습니다.
  • 약정이 배포된 시간(초) 동안만 요금이 청구됩니다.

가변 슬롯 약정을 다른 유형의 약정과 결합할 수 있습니다. 탄력 슬롯은 다음과 같이 기간이 몇 분에서 며칠인 단기 사용 사례에 적합합니다.

  • 세금 신고 기간, 블랙 프라이데이, 인기 미디어 이벤트, 비디오 게임 출시와 같은 주요 캘린더 일정 계획
  • 월요일 아침과 같이 분석 수요가 많은 주기적인 기간 처리
  • 데이터 웨어하우스 평가를 완료하고 사용할 최적의 슬롯 수로 전화 걸기

주문형 결제 모델과 정액제 모델을 혼합하여 사용할 수도 있습니다. 예를 들면 다음과 같습니다.

  • 주기적 데이터 처리와 ELT 등 예측 가능한 워크로드의 경우 주문형 결제를 사용합니다.
  • 임시 분석 및 데이터 과학 워크로드의 경우 정액제를 사용합니다.

한 리전에서는 정액제를 사용하고 다른 리전에서는 주문형을 사용할 수 있습니다. 기본적으로 모든 프로젝트에서 주문형 결제를 사용합니다. 리전 내에서 프로젝트, 폴더 또는 조직을 예약으로 할당하여 정액제를 선택할 수 있습니다. 예를 들어 US 멀티 리전에서 슬롯 약정을 구매하고 조직을 기본 예약에 할당한 경우, 조직은 US 멀티 리전에서 정액제를 사용하지만 기타 리전에서는 주문형 결제가 유지됩니다.

리전 내에서 프로젝트를 예약에 명시적으로 할당하여 정액제와 주문형 결제를 결합할 수 있습니다. 예약에 할당되지 않은 모든 프로젝트는 주문형 결제로 유지됩니다. 예약 ID none을 할당하여 주문형 결제를 사용하도록 프로젝트를 명시적으로 할당할 수도 있습니다. 이는 폴더나 조직을 예약에 할당했지만 해당 폴더 또는 조직 내의 일부 프로젝트에서 주문형 결제를 사용하는 경우에 유용합니다. 자세한 내용은 프로젝트를 None에 할당을 참조하세요.

주문형 결제가 적용되는 프로젝트는 약정 용량과 별개인 용량을 사용합니다. 이러한 프로젝트는 약정 용량의 가용성에 영향을 미치지 않습니다.

관리 프로젝트 만들기

약정 및 예약을 만들면 Google Cloud 프로젝트와 연결됩니다. 이 프로젝트는 BigQuery 예약 리소스를 관리하며 이러한 리소스에 대한 청구의 기본 소스입니다. 이 프로젝트는 BigQuery 작업이 저장된 프로젝트와 동일할 필요는 없습니다.

Google에서는 예약 리소스 전용 프로젝트를 만드는 것을 권장합니다. 이 프로젝트는 약정의 결제 및 관리를 중앙화하므로 관리 프로젝트라고 합니다. 이 프로젝트에 bq-COMPANY_NAME-admin과 같은 설명이 포함된 이름을 지정합니다. 그런 다음 BigQuery 작업을 저장할 별도의 프로젝트를 하나 이상 만듭니다.

관리 프로젝트에는 커밋된 슬롯에 대한 요금이 청구됩니다. 슬롯을 사용하는 프로젝트에는 스토리지 요금이 청구되지만 슬롯에 대한 요금은 청구되지 않습니다. 2개 이상의 요금제 유형(예: 월간 및 연간)을 구매하고 슬롯을 동일한 관리 프로젝트에 넣을 수 있습니다.

모든 예약에 하나의 관리 프로젝트를 만드는 것이 좋습니다. 단일 관리 프로젝트를 사용하면 결제 관리 및 슬롯 할당 방법이 간소화됩니다. 또한 이 프로젝트에서 모든 약정이 관리되도록 관리 프로젝트에서만 BigQuery Reservations API를 사용 설정하는 것이 좋습니다.

구매할 슬롯 수 예상

BigQuery는 리소스가 증가할수록 선형 확장되도록 설계되었습니다. 워크로드에 따라, 용량이 점점 늘어나면서 혜택도 점점 커질 수 있습니다. 따라서 구매할 슬롯의 최적 개수는 성능, 처리량, 유틸리티의 요구사항에 따라 달라집니다.

탄력 슬롯을 사용하여 최상의 슬롯 구성으로 실험할 수 있습니다. 예를 들어 슬롯 500개, 1,000개, 1,500개, 2,000개로 워크로드를 테스트하고 성능에 미치는 영향을 확인할 수 있습니다.

프로젝트의 현재 슬롯 사용량과 지불하려는 월별 요금을 확인할 수도 있습니다. 주문형 워크로드는 슬롯 개수를 2,000개 정도로 제한하고 있지만 작업의 INFORMATION_SCHEMA, Cloud Logging, Jobs API 또는 BigQuery 감사 로그를 사용하여 프로젝트에서 실제로 사용 중인 슬롯 수를 확인하는 것이 중요합니다. 자세한 내용은 사용 가능한 슬롯 및 할당된 슬롯 시각화를 참조하세요.

슬롯 사용 타임라인.

슬롯을 구매하고 워크로드를 7일 이상 실행한 후에는 슬롯 에스티메이터(미리보기)를 사용하여 성능을 분석하고 슬롯 확대 또는 축소 효과를 모델링할 수 있습니다. 자세한 내용은 슬롯 용량 요구사항 추정을 참조하세요.

예약을 사용하여 워크로드와 부서 관리

BigQuery 예약을 사용하여 추가 예약을 만들고 추가 예약에 프로젝트를 할당함으로써 워크로드, 팀 또는 부서 간에 약정된 용량을 분리할 수 있습니다. 예약은 전체 조직의 유휴 용량을 활용할 수 있도록 하는 추가적인 이점을 갖춘 분리된 리소스 풀입니다.

예를 들어 총 약정 용량은 슬롯 1,000개이고 데이터 과학, ELT, BI와 같은 세 가지 워크로드 유형이 있을 수 있습니다.

  • 슬롯 500개를 사용하는 ds 예약을 만들어 관련 Google Cloud 프로젝트 전부를 ds 예약에 할당할 수 있습니다.
  • 슬롯 300개를 사용하는. elt 예약을 만들고 ELT 워크로드에 사용하는 프로젝트를 elt 예약에 할당할 수 있습니다.
  • 슬롯 200개를 사용하는 bi 예약을 만들고 BI 도구에 연결된 프로젝트를 bi 예약에 할당할 수 있습니다.

약정 삭제

워크로드 간에 용량을 분할하는 대신 팀 또는 부서별로 예약을 만들 수도 있습니다.

여러 리전에서 예약 관리

예약은 리전별 리소스입니다. 한 리전에서 구매한 슬롯과 생성한 예약은 다른 리전에서 사용할 수 없습니다. 프로젝트, 폴더, 조직은 모두 한 리전의 예약에 할당할 수 있으며 다른 리전에서는 주문형으로 실행됩니다. 다른 리전의 예약을 관리하려면 BigQuery 용량 관리 페이지에서 리전을 변경해야 합니다.

  1. BigQuery 콘솔에서 예약을 클릭합니다.
  2. 위치 선택도구를 클릭하고 예약을 관리할 리전을 선택합니다. 다른 리전 선택하기.
  3. 리전을 선택한 후에는 슬롯을 구매하고, 예약을 만들고, 프로젝트를 예약에 할당할 수 있습니다.

복잡한 조직을 위한 BigQuery 예약

BigQuery 예약은 조직 범위 리소스입니다. 약정 용량을 중앙에서 구매하여 전체 조직에서 사용할 수 있습니다. 개별 부서나 지부에서 BigQuery 예약을 관리하고, 약정 용량을 구매하고, 부서 또는 지부에 용량을 배포하도록 요청할 수 있습니다. 관리 프로젝트는 용량 요금이 청구되는 Cloud Billing 계정과 연결됩니다.

각 부서 또는 지부에 서로 다른 Google Cloud 조직을 사용할 수 있습니다. 이 시나리오에서는 각 조직의 관리 프로젝트를 정의하고 관리 프로젝트에서 해당 조직의 BigQuery 예약을 관리합니다. 약정 용량이나 유휴 용량은 조직 간에 공유되지 않습니다.

유휴와 할당되지 않은 슬롯은 동일한 관리자 프로젝트에서 생성된 예약에서만 공유됩니다. 2개 이상의 관리 프로젝트를 사용하는 경우 서로 다른 관리 프로젝트의 예약 간에는 슬롯이 공유되지 않습니다.