자세한 데이터 내보내기의 구조

이 페이지에서는 BigQuery의 각 테이블로 내보내는 Cloud Billing 세부 사용량 비용 데이터의 스키마에 대한 참조 정보를 제공합니다.

상세 사용량 비용 데이터표준 사용량 비용 데이터에 포함된 모든 정보와 가상 머신 또는 사용량을 생성하는 SSD와 같은 세분화된 리소스 수준 비용 데이터를 제공하는 추가 필드를 제공합니다. 상세 사용량 내보내기에는 다음 서비스에 대한 세분화된 비용 정보가 포함됩니다.

  • Compute Engine
  • Cloud Storage
  • Google Kubernetes Engine(GKE)

    또한 상세 데이터 내보내기에서 GKE 클러스터 비용 분석을 보려면 GKE에 대한 비용 할당을 사용 설정해야 합니다.

  • Cloud Functions

  • Cloud Run

  • Cloud SQL

  • Spanner

  • App Engine

  • Firestore 및 Datastore

  • Redis용 Memorystore

  • Bigtable

서비스별 상세 비용 데이터 식별

세부정보 내보내기에서 세부적인 비용 정보를 분석하려면 다음 표를 사용하여 특정 리소스에 대한 정보가 포함된 열을 확인합니다.

서비스 설명 리소스 식별 방법
Compute Engine service.descriptionresource.name 또는 resource.global_name

service.description 열에는 서비스 이름이 포함됩니다. resource.name 열에는 사용자가 제공한 이름이 포함됩니다. resource.global_name 열에는 리소스의 고유 식별자가 포함됩니다.

Cloud Storage service.descriptionresource.global_name

service.description 열에는 서비스 이름이 포함됩니다. resource.global_name 열에는 리소스의 고유 식별자가 포함됩니다.

Google Kubernetes Engine(GKE) labels.key

다음 라벨 키를 사용하여 리소스를 필터링합니다.

  • goog-fleet-project: 클러스터가 Fleet에 등록된 경우 Fleet 호스트 프로젝트를 기준으로 클러스터 리소스를 필터링합니다.
  • goog-k8s-cluster-location: 위치별로 GKE 리소스를 필터링합니다.
  • goog-k8s-cluster-name: 클러스터별로 GKE 리소스를 필터링합니다.
  • goog-k8s-node-pool-name: 노드 풀별로 클러스터 리소스를 필터링합니다.
  • k8s-namespace: 네임스페이스별로 GKE 리소스를 필터링합니다.
  • k8s-namespace-labels: Fleet 네임스페이스 라벨(GKE Enterprise 고객만 해당)을 기준으로 GKE 리소스를 필터링합니다.
  • k8s-label: 모든 GKE 리소스를 봅니다.

또한 상세 비용 데이터 내보내기에서 GKE 클러스터 비용을 자세하게 보려면 GKE에 대한 비용 할당을 사용 설정해야 합니다.

BigQuery 내보내기에서 GKE 데이터를 필터링하는 쿼리 예시를 참조하세요.

Cloud Functions service.descriptionresource.name 또는 resource.global_name

service.description 열에는 서비스 이름이 포함됩니다. resource.name 열에는 사용자가 제공한 이름이 포함됩니다. resource.global_name 열에는 리소스의 고유 식별자가 포함됩니다.

Cloud Run service.descriptionresource.name 또는 resource.global_name

service.description 열에는 서비스 이름이 포함됩니다. resource.name 열에는 사용자가 제공한 이름이 포함됩니다. resource.global_name 열에는 리소스의 고유 식별자가 포함됩니다.

Cloud SQL service.descriptionresource.global_name

service.description 열에는 서비스 이름이 포함되며 resource.global_name 열에는 리소스의 고유 식별자가 포함됩니다.

Spanner service.descriptionresource.global_name

service.description 열에는 서비스 이름이 포함되며 resource.global_name 열에는 리소스의 고유 식별자가 포함됩니다.

App Engine service.descriptionresource.name 또는 resource.global_name

service.description 열에는 서비스 이름이 포함됩니다. resource.name 열에는 사용자가 제공한 이름이 포함됩니다. resource.global_name 열에는 리소스의 고유 식별자가 포함됩니다.

Firestore 및 Datastore service.descriptionresource.name 또는 resource.global_name

service.description 열은 App Engine이 됩니다. resource.name 열에는 사용자가 제공한 이름이 포함됩니다. resource.global_name 열에는 리소스의 고유 식별자가 포함됩니다.

BigQuery service.descriptionresource.name 또는 resource.global_name

service.description 열에는 서비스 이름이 포함됩니다. resource.name 열에는 사용자가 제공한 이름이 포함됩니다. resource.global_name 열에는 리소스의 고유 식별자가 포함됩니다.

Dataflow service.descriptionresource.name 또는 resource.global_name

service.description 열에는 서비스 이름이 포함됩니다. resource.name 열에는 사용자가 제공한 이름이 포함됩니다. resource.global_name 열에는 리소스의 고유 식별자가 포함됩니다.

Redis용 Memorystore service.descriptionresource.global_name

service.description 열에는 서비스 이름이 포함됩니다. resource.global_name 열에는 리소스의 고유 식별자가 포함됩니다.

Bigtable service.descriptionresource.global_name

service.description 열에는 서비스 이름이 포함됩니다. resource.global_name 열에는 리소스의 고유 식별자가 포함됩니다.

리소스에 대한 세부 데이터 쿼리 예시를 참조하세요.

상세 사용량 비용 데이터 스키마

BigQuery 데이터 세트에서 세부 Google Cloud 사용량 비용 데이터가 gcp_billing_export_resource_v1_<BILLING_ACCOUNT_ID>라는 데이터 테이블에 로드됩니다.

BigQuery에서 상세 사용량 비용 데이터를 사용하는 경우 다음에 유의하세요.

  • 상세 사용량 비용 데이터BigQuery 데이터 세트를 만들거나 선택할 때 Cloud Billing 데이터에서 사용할 수 있도록 지원되는 데이터 세트 위치를 선택할 수 있습니다.
  • Cloud Billing에서 상세 사용량 비용 데이터 내보내기를 처음 사용 설정할 때 멀티 리전 위치(EU 또는 미국)를 사용하도록 구성된 데이터 세트를 선택하면 Cloud Billing 데이터가 이전 달 초부터 소급되어 제공됩니다. 시간순으로 데이터를 내보냅니다. 내보낸 데이터의 초기 백필의 경우 최신 사용량 데이터가 표시되기 전에 소급 Cloud Billing 데이터 내보내기가 완료되는 데 최대 5일이 걸릴 수 있습니다.
  • 상세 사용량 비용 데이터 내보내기를 사용 설정하고 지원되는 리전 위치를 사용하도록 구성된 데이터 세트를 선택하면 Cloud Billing 데이터가 내보내기를 사용 설정한 날짜부터 소급되어 제공됩니다.
  • 상세 사용량 비용 데이터 내보내기를 사용 설정한 후 다시 사용 설정하면 Cloud Billing 데이터 내보내기가 명시적으로 사용 중지된 기간 동안 제공되지 않을 수 있습니다.
  • BigQuery 테이블에 로드되는 데이터의 빈도에 대해 자세히 알아보세요.
  • 고객 관리 암호화 키(CMEK)가 사용 설정된 데이터 세트와 같이 BigQuery로 결제 데이터를 내보내는 데 영향을 줄 수 있는 다른 제한사항을 참조하세요.
  • BigQuery 테이블에 필요할 수 있는 추가 데이터 볼륨과 표준 사용량 비용 데이터 내보내기 대신 자세한 사용 비용 데이터를 사용 설정할 때의 추가 비용을 고려하세요. 리소스 수준 정보의 늘어난 세분성으로 인해 표준 사용량 비용 형식으로 집계되는 행 수가 늘어날 수 있습니다. BigQuery 비용 관리를 위한 추가 권장사항은 BigQuery에서 비용 제어를 참조하세요.
필드 유형 설명
billing_account_id 문자열

사용량에 연결된 Cloud Billing 계정 ID입니다.

리셀러: Cloud Billing 하위 계정을 통해 사용량 비용이 생성된 경우 상위 리셀러 Cloud Billing 계정 ID가 아닌 하위 계정 ID입니다.

invoice.month 문자열

비용 항목이 포함된 인보이스의 연도 및 월(YYYYMM)입니다. 예를 들어 '201901'은 2019년 1월입니다.

이 필드를 사용하여 인보이스에 대한 총 청구 금액을 확인할 수 있습니다. BigQuery 쿼리로 Cloud Billing 내보내기 예시를 참조하세요.

cost_type 문자열

정기 비용, 세금, 조정 또는 반올림 오류 등 이 항목이 나타내는 비용 유형입니다.

service.id 문자열 사용량에 연결된 서비스의 ID입니다.
service.description 문자열 Cloud Billing 데이터를 보고한 Google Cloud 서비스입니다.
sku.id 문자열 서비스에서 사용한 리소스의 ID입니다. SKU의 전체 목록은 Google Cloud SKU를 참조하세요.
sku.description 문자열 서비스에서 사용한 리소스 유형에 대한 설명입니다. 예를 들어 Cloud Storage의 리소스 유형은 Standard Storage US입니다.
usage_start_time 타임스탬프 주어진 비용이 계산된 시간별 사용 기간의 시작 시간입니다. 모든 서비스의 사용량/비용은 시간 단위로 상세하게 표시됩니다. 즉 장기간 실행되는 서비스 사용량은 여러 개의 시간별 기간에 걸쳐 표시됩니다.

자세한 내용은 타임스탬프 데이터 유형에 대한 BigQuery 문서를 참조하세요. 또한 아래의 내보낸 데이터와 인보이스의 차이점을 참조하세요.

usage_end_time 타임스탬프 주어진 비용이 계산된 시간별 사용 기간의 종료 시간입니다. 모든 서비스의 사용량/비용은 시간 단위로 상세하게 표시됩니다. 즉 장기간 실행되는 서비스 사용량은 여러 개의 시간별 기간에 걸쳐 표시됩니다.

자세한 내용은 타임스탬프 데이터 유형에 대한 BigQuery 문서를 참조하세요. 또한 아래의 내보낸 데이터와 인보이스의 차이점을 참조하세요.

project 구조체 project에는 ID, 숫자, 이름, 상위 항목 번호, 라벨 등 Cloud Billing 프로젝트를 설명하는 필드가 포함됩니다.
project.id 문자열 Cloud Billing 데이터를 생성한 Google Cloud 프로젝트의 ID입니다.
project.number 문자열 Cloud Billing 데이터를 생성한 Google Cloud 프로젝트의 내부적으로 생성되고 익명처리된 고유 식별자입니다. 지원 기록과 기타 고객 커뮤니케이션에서 Google은 이 프로젝트 번호로 프로젝트를 참조합니다.
project.name 문자열 Cloud Billing 데이터를 생성한 Google Cloud 프로젝트의 이름입니다.
project.ancestry_numbers 문자열 명시된 project.id로 식별된 프로젝트에 대한 리소스 계층 구조의 상위 항목입니다(예: my-project-123).

예: /ParentOrgNumber/ParentFolderNumber/. 리소스 계층 구조에 대해 자세히 알아보세요.

project.ancestors 구조체

이 필드에서는 프로젝트, 폴더, 조직을 포함하여 비용 항목의 리소스 계층 구조의 구조체 및 값에 대해 설명합니다. 상위 노드는 노드에서 루트로 정렬됩니다(프로젝트, 폴더, 조직).

project.ancestors.resource_name 문자열 각 상위 항목에 대한 'resourceType/resourceNumber' 형식의 상대적 리소스 이름입니다. project.ancestors.resource_name을 사용하면 project.ancestry_numbers에 대해 보다 완전한 보기가 제공됩니다.
project.ancestors.display_name 문자열 Console에서 리소스에 대해 만든 이름입니다.
project.labels.key 문자열 라벨이 있는 경우 사용량이 발생한 Google Cloud 프로젝트의 라벨을 구성하는 키:값 쌍의 부분입니다. 라벨 사용에 대한 자세한 내용은 라벨 사용을 참조하세요.
project.labels.value 문자열 라벨이 있는 경우 사용량이 발생한 Google Cloud 프로젝트의 라벨을 구성하는 키:값 쌍의 부분입니다. 라벨 사용에 대한 자세한 내용은 라벨 사용을 참조하세요.
labels.key 문자열 라벨이 있는 경우 사용량이 발생한 Google Cloud 리소스의 라벨을 구성하는 키:값 쌍의 부분입니다. 라벨 사용에 대한 자세한 내용은 라벨 사용을 참조하세요.
labels.value 문자열 라벨이 있는 경우 사용량이 발생한 Google Cloud 리소스의 라벨을 구성하는 키:값 쌍의 부분입니다. 라벨 사용에 대한 자세한 내용은 라벨 사용을 참조하세요.
system_labels.key 문자열 라벨이 있는 경우, 사용량이 발생한 리소스의 시스템 생성 라벨을 구성하는 키:값 쌍에서 부분입니다. 사용 가능한 시스템 라벨도 참조하세요.
system_labels.value 문자열 라벨이 있는 경우, 사용량이 발생한 리소스의 시스템 생성 라벨을 구성하는 키:값 쌍에서 부분입니다. 사용 가능한 시스템 라벨도 참조하세요.
location.location 문자열 멀티 리전, 국가, 리전 또는 영역 수준의 사용량이 발생한 위치이거나 특정 위치가 없는 리소스의 경우 global입니다. 자세한 내용은 위치 및 리전Google Cloud 위치를 참조하세요.
location.country 문자열 location.location이 국가, 리전 또는 영역인 경우 이 필드는 사용량이 발생한 국가입니다(예: US). 자세한 내용은 위치 및 리전Google Cloud 위치를 참조하세요.
location.region 문자열 location.location이 리전 또는 영역인 경우 이 필드는 사용량이 발생한 리전입니다(예: us-central1). 자세한 내용은 위치 및 리전Google Cloud 위치를 참조하세요.
location.zone 문자열 location.location이 영역인 경우 이 필드는 사용량이 발생한 영역입니다(예: us-central1-a). 자세한 내용은 위치 및 리전Google Cloud 위치를 참조하세요.
cost 부동 소수점 수 크레딧 적용 전 사용 비용으로, 정밀도는 소수점 최대 6자리까지입니다. 크레딧을 포함한 총 비용을 계산하려면 credits.amount를 비용에 추가해야 합니다. 자세한 내용은 이 예시 쿼리를 참조하세요.
currency 문자열 청구된 비용의 통화입니다. 자세한 내용은 현지 통화로 청구 및 결제를 참조하세요.
currency_conversion_rate 부동 소수점 수 미국 달러와 현지 통화의 환율입니다. 즉, cost/currency_conversion_rate는 미국 달러로 계산한 비용입니다.
usage.amount 부동 소수점 수 사용한 usage.unit의 양입니다.
usage.unit 문자열 리소스 사용량을 측정하는 기본 단위입니다. 예를 들어 표준 스토리지의 기본 단위는 byte-seconds입니다.
usage.amount_in_pricing_units 부동 소수점 수 사용한 usage.pricing_unit의 양입니다.
usage.pricing_unit 문자열 Cloud Billing Catalog API에 따른 리소스 사용량 측정 단위입니다.
credits 구조체 credits에는 Google Cloud 및 Google Maps Platform SKU와 관련된 크레딧의 구조와 값을 설명하는 필드가 포함됩니다.
credits.id 문자열 이 ID가 있는 경우 크레딧이 제품 SKU와 연결되어 있음을 나타냅니다. credits.id 값은 영숫자로 된 고유 식별자(예: 12-b34-c56-d78) 또는 크레딧 유형의 설명(예: 약정 사용 할인: CPU)입니다.

credits.id 필드가 비어 있으면 제품 SKU가 크레딧과 연결되지 않은 것입니다.

credits.full_name 문자열 제품 SKU와 연결된 크레딧의 이름입니다. 인간이 읽을 수 있는 영숫자 credits.id에 대한 설명입니다. 예를 들어 무료 체험 크레딧 또는 지출 기반 약정 사용 할인이 있습니다.

credits.full_name 값은 영숫자 credits.id인 SKU에만 있습니다. credits.id 값이 크레딧 유형에 대한 설명(예: 약정 사용 할인: CPU)인 경우 credits.full_name 필드는 비어 있습니다.

credits.type 문자열 이 필드는 credits.id의 목적 또는 원본을 설명합니다. 크레딧 유형은 다음과 같습니다.
  • COMMITTED_USAGE_DISCOUNT: Compute Engine용 리소스 기반 약정 사용 계약을 구매하면 VM 사용 요금이 대폭 할인됩니다.
  • COMMITTED_USAGE_DISCOUNT_DOLLAR_BASE: 최소 금액을 지출하겠다는 약속 하에 서비스를 위해 구매한 지출 기반 약정 사용 계약입니다.
  • DISCOUNT: 할인 크레딧 유형은 계약상의 지출 기준액에 도달한 후 받은 크레딧에 사용됩니다. Google Cloud console에서 사용할 수 있는 Cloud Billing 보고서에는 할인 크레딧 유형이 지출 기반 할인(약정)으로 나열됩니다.
  • FREE_TIER: 일부 서비스는 지정된 한도까지 무료 리소스 사용량을 제공합니다. 이러한 서비스에서 크레딧은 무료 등급 사용을 구현하는 데 적용됩니다.
  • PROMOTION: 프로모션 크레딧 유형에는 Google Cloud 무료 체험판 및 마케팅 캠페인 크레딧 또는 Google Cloud 사용을 위한 기타 지원금이 포함됩니다. 가능한 경우, 프로모션 크레딧은 결제 수단으로 간주되어 자동으로 적용되며 총 청구액이 줄어듭니다.
  • RESELLER_MARGIN: 리셀러인 경우 리셀러 마진 크레딧 유형은 적합한 모든 항목에서 얻은 리셀러 프로그램 할인을 나타냅니다.
  • SUBSCRIPTION_BENEFIT: 할인을 받기 위해 서비스 장기 구독을 구매하여 얻은 크레딧입니다.
  • SUSTAINED_USAGE_DISCOUNT: 지속 사용 할인 크레딧 유형은 결제 월의 상당 부분에서 특정 Compute Engine 리소스를 실행할 때 자동으로 받는 할인입니다.
credits.name 문자열 Cloud Billing 계정에 적용된 크레딧에 대한 설명입니다.
credits.amount 부동 소수점 수 사용량에 적용된 크레딧 금액입니다.
adjustment_info 구조체 adjustment_info에는 Cloud Billing 계정과 연결된 비용 항목에 대한 조정 값과 구조를 설명하는 필드가 포함되어 있습니다.

adjustment_info 값은 Cloud Billing 수정을 위해 비용 광고 항목이 생성된 경우에만 존재합니다. 수정은 오류 정정 또는 오류 정정이 아닌 사유로 발생할 수 있습니다. adjustment_info 유형에는 오류 정정 또는 다른 이유 때문에 발급되었는지에 대한 세부정보가 포함됩니다.

adjustment_info.id 문자열 존재하는 경우 비용 항목과 연결된 조정임을 나타냅니다. adjustment_info.id는 문제로 인해 연결된 모든 조정의 고유 ID입니다.
adjustment_info.description 문자열 조정 및 조정의 이유에 대한 설명입니다.
adjustment_info.type 문자열

조정 유형입니다.

유형은 다음과 같습니다.

  • USAGE_CORRECTION: 잘못 보고된 사용량으로 인한 정정입니다.
  • PRICE_CORRECTION: 잘못된 가격 책정 규칙으로 인한 정정입니다.
  • METADATA_CORRECTION: 비용을 변경하지 않고 메타데이터를 변경하는 정정입니다.
  • GOODWILL: 고객에게 호의로 발급하는 크레딧입니다.
  • SALES_BASED_GOODWILL: 계약에 따라 고객에게 호의로 발급하는 크레딧입니다.
  • SLA_VIOLATION: 서비스 수준 목표(SLO) 위반으로 인해 고객에게 발급된 크레딧입니다.
  • BALANCE_TRANSFER: 결제 계정 간의 이체에 대한 조정입니다.
  • ACCOUNT_CLOSURE: 폐쇄된 계정의 잔액을 0으로 전환하기 위한 조정입니다.
  • GENERAL_ADJUSTMENT: 일반적인 결제 계정 수정입니다.
adjustment_info.mode 문자열

조정이 수행된 방법입니다.

모드에는 다음이 포함됩니다.

  • PARTIAL_CORRECTION: 이 정정 사항은 원래의 사용량과 비용을 일부 무효화합니다.
  • COMPLETE_NEGATION_WITH_REMONETIZATION: 이 정정 사항은 원래의 사용량과 비용을 완전히 무효화하고 업데이트된 사용량과 비용을 포함하여 정정된 항목을 발행합니다.
  • COMPLETE_NEGATION: 이 정정 사항은 원래의 사용량과 비용을 완전히 무효화하며 추가 사용량에 대해서는 다시 과금하지 않습니다.
  • MANUAL_ADJUSTMENT: 조정이 비용 및 사용량에 수동으로 할당됩니다.
export_time 타임스탬프 Cloud Billing 데이터 추가와 연결된 처리 시간입니다. 새로 내보낼 때마다 항상 늘어나게 됩니다.
또한 아래의 내보낸 데이터와 인보이스의 차이점을 참조하세요.
tags 구조체

키, 값, 네임스페이스 등 태그를 설명하는 필드

tags.key 문자열

이 특정 태그와 연결된 키의 짧은 이름 또는 표시 이름입니다.

tags.value 문자열

tags.key에 연결된 리소스입니다. 특정 시점에 주어진 키의 리소스에는 정확히 하나의 값만 연결할 수 있습니다.

tags.inherited 불리언

태그 바인딩이 상속되었는지(태그 상속됨 = True) 또는 직접/상속되지 않았는지(태그 상속됨 = False) 여부를 나타냅니다. 리소스 계층 구조에서 상위 리소스에 대한 태그 바인딩을 생성할 수 있습니다.

tags.namespace 문자열

태그 키 및 값을 정의하는 리소스 계층 구조를 나타냅니다. 네임스페이스를 태그 키 및 태그 값 짧은 이름과 결합하여 태그 키 또는 태그 값에 대해 전역적으로 고유한 정규화된 이름을 만들 수 있습니다.

cost_at_list 부동 소수점 수

Cloud Billing 계정에 청구되는 모든 항목과 연결된 정가입니다.

transaction_type 문자열

판매자의 거래 유형입니다. 거래 유형은 다음 중 하나일 수 있습니다.

  • GOOGLE = 1: Google Cloud에서 판매하는 서비스입니다.
  • THIRD_PARTY_RESELLER = 2: Google Cloud에서 재판매하는 서드 파티 서비스입니다.
  • THIRD_PARTY_AGENCY = 3: 파트너가 판매하는 서드 파티 서비스로, Google Cloud가 에이전트 역할을 합니다.
seller_name 문자열

판매자의 법적 이름입니다.

상세 사용량 비용 데이터 내보내기에 사용할 수 있는 추가 필드
resource 구조체

사용량을 생성하는 서비스 리소스(예: 가상 머신 또는 SSD)와 관련된 정보의 구조와 값을 설명하는 필드입니다.

resource.global_name 문자열

관련 사용량을 생성한 리소스의 전역적으로 고유한 서비스 식별자입니다.

resource.name 문자열

관련 사용량을 생성한 리소스의 서비스별 식별자입니다. 사용자가 직접 입력할 수 있습니다.

price 구조체

사용 요금과 관련된 구조와 값을 설명하는 필드입니다.

price.effective_price 숫자

Google Cloud 또는 Google Maps Platform SKU 및 SKU 가격 책정 등급 사용량에 대한 요금입니다. Cloud Billing 계정에 커스텀 계약 가격이 있는 경우, 이 가격은 결제 계정별 가격이고, 그렇지 않은 경우 SKU 또는 SKU 등급의 정가입니다.

price.tier_start_amount 숫자

SKU 가격 등급의 하한 단위 수입니다. 예를 들어 0~100 단위, 101~1000 단위, 1001+ 단위의 세 가지 가격 등급을 사용하는 SKU의 경우 SKU의 가격 책정 등급에 대한 시작 단위 수량을 나타내는 price.tier_start_amount 필드에서 SKU에 대한 3개의 가격 행이 0, 101 및 1001로 표시됩니다.

가격 책정 등급 자세히 알아보기.
price.unit 문자열

가격이 지정되고 리소스 사용량이 측정되는 사용량 단위입니다(예: 기비바이트, 테비바이트, 월, 연도, 기비바이트 시간, 기비바이트 월, 수). price.unit 필드의 값이 usage.pricing_unit 필드의 값과 일치합니다.

price.pricing_unit_quantity 숫자

SKU의 가격 등급 단위 수량입니다. 예를 들어 등급 가격이 1,000,000바이트당 $1이면 이 열에 1,000,000이 표시됩니다.

subscription 구조체

지출 기반 또는 리소스 기반 약정을 설명하는 필드입니다. 이러한 필드를 사용하여 특정 약정의 요금을 분석할 수 있습니다.

subscription.instance_id 문자열

약정에 연결된 구독 ID입니다.

표준 및 세부 사용량 비용 데이터 이해하기

다음 섹션에서는 BigQuery로 내보낸 표준상세 사용량 비용 데이터를 설명합니다.

라벨 정보

특정 라벨의 비용 데이터에는 해당 라벨이 리소스에 적용된 이후의 데이터 사용량만 표시됩니다. 예를 들어 2024년 1월 15일 Compute Engine VM에 environment:dev 라벨을 추가하는 경우 environment:dev 분석에는 1월 15일 이후 해당 VM에 대한 사용량만 포함됩니다.

또한 각 서비스에서 제공되는 시간에 따라 여러 다른 서비스에 대해 여러 다른 시간에 라벨 데이터가 표시될 수도 있습니다.

사용 가능한 시스템 라벨

시스템 라벨은 사용량을 생성한 리소스에 대한 중요 메타데이터의 키-값 쌍입니다. 다음 시스템 라벨은 적용 가능한 사용량에 자동으로 포함됩니다.

system_labels.key 예시 system_labels.value 설명
compute.googleapis.com/machine_spec n1-standard-1, custom-2-2048 가상 머신의 구성입니다. 자세한 내용은 머신 유형을 참조하세요.
compute.googleapis.com/cores n1-standard-4의 경우는 4, custom-2-2048의 경우는 2 가상 머신에 사용할 수 있는 vCPU 수입니다.
compute.googleapis.com/memory n1-standard-4의 경우는 15360(즉, 15GB * 1024MB/GB), custom-2-2048의 경우는 2048 가상 머신에 사용할 수 있는 메모리 양(MB)입니다.
compute.googleapis.com/is_unused_reservation true; false 영역별 예약을 통해 예약되었지만 사용되지 않은 사용량을 나타냅니다.

내보낸 데이터와 인보이스의 차이점

Google Cloud 제품은 다양한 간격으로 Cloud Billing 프로세스에 사용량 및 비용 데이터를 보고합니다. 따라서 Google Cloud 서비스 사용과 Cloud Billing에서 사용량 및 비용 간의 지연을 확인할 수 있습니다. 일반적으로 비용은 하루 이내에 제공되지만 경우에 따라 24시간이 걸릴 수도 있습니다.

캘린더 월이 끝나는 막바지 시점에 보고된 사용량은 해당 월의 인보이스에 포함되지 않고 다음 달 인보이스로 이월될 수 있습니다.

타임스탬프 필드를 사용하여 비용을 쿼리할 경우 원래 같은 사용 월에 생성된 인보이스에 포함되지 않았던 최근 보고된 사용량이 반환된 데이터에 나타날 수 있습니다. 따라서 반환된 Cloud Billing 데이터가 인보이스에 직접 매핑되지 않을 수 있습니다.

타임스탬프 필드는 다음과 같습니다.

  • usage_start_time
  • usage_end_time
  • export_time

인보이스에 직접 매핑되는 Cloud Billing 데이터를 반환하려면 타임스탬프 필드 대신 invoice.month를 쿼리합니다.

세금

2020년 9월 1일부터 사용량 비용 데이터에 세금 책임이 단일 항목이 아니라 프로젝트별로 표시됩니다. 세금 데이터를 사용하는 쿼리 또는 시각화가 있는 경우 이러한 변경사항이 반영되도록 쿼리를 업데이트해야 할 수 있습니다.

예를 들어 9월 1일 이전에 기록된 비용의 경우 사용량 비용 데이터가 다음 예시와 유사하게 표시되며 여기서 총 세금 책임은 10달러입니다.

billing_account_id project.id cost_type cost
123456-ABCDEF-123456 example-project regular $60
123456-ABCDEF-123456 test-project regular $40
123456-ABCDEF-123456 [empty] tax $10

9월 1일 이후에 기록된 비용의 경우 $10가 example-project에는 $6, test-project에는 $4로 세분화됩니다.

billing_account_id project.id cost_type cost
123456-ABCDEF-123456 example-project regular $60
123456-ABCDEF-123456 test-project regular $40
123456-ABCDEF-123456 example-project tax $6
123456-ABCDEF-123456 test-project tax $4

오류 및 조정

드물지만 Cloud Billing 데이터에 오류가 있거나 조정이 필요한 경우 Cloud Billing 데이터에 오류를 상쇄하는 데이터가 추가됩니다. 다음 열을 제외한 모든 열은 그대로 유지됩니다.

  • cost
  • credit
  • usage.amount
  • export_time

새 데이터를 확인해야 하는 경우 export_time을 쿼리하여 확인할 수 있습니다.

내보낸 데이터에서 Cloud Billing 조정 및 관련 세금의 인보이스 월에는 조정이 수행된 달이 반영됩니다. 하지만 조정은 조정이 수행된 달이 아닌 다른 달의 인보이스에 적용될 수 있습니다. 조정이 적용되는지 여부와 위치를 알아보려면 Google Cloud Console의 문서 페이지에서 사용할 수 있는 인보이스 또는 대변/차변 메모 문서를 검토해야 합니다. 조정을 분석하고 적용하는 방법에 대한 자세한 내용은 메모 및 조정 이해를 참조하세요.

커스텀 가격 책정 계약의 프로모션 크레딧 정보

커스텀 가격 책정 계약이 있는 경우 계약의 일부로 Google Cloud에서 사용할 수 있는 프로모션 크레딧을 받을 수 있습니다. 예를 들어 Compute Engine 리소스에서 사용할 수 있는 $1,000 크레딧을 받을 수 있습니다. 프로모션 크레딧은 일반적으로 결제 방법으로 간주됩니다. 프로모션 크레딧이 있으면 이 크레딧이 자동으로 적용되어 총 청구액이 줄어듭니다.

계약 약관에 따라 SKU의 정가 또는 순가격(할인 후)으로 계산된 비용에 프로모션 크레딧 적용 여부가 지정됩니다.

프로모션 크레딧이 정가로 계산된 비용에 적용되는 경우 비용 테이블 보고서에 Contract billing adjustment라는 SKU가 있는 Invoice라는 서비스가 있습니다. 이 SKU는 크레딧이 정가 비용에 적용되도록 크레딧을 조정합니다. 조정되는 사용량을 확인하려면 system.labels 열을 쿼리합니다. system.labels.key의 키는 cloud-invoice.googleapis.com/sku_id이고 system.labels.value의 값에는 크레딧 및 조정이 적용된 SKU ID가 포함됩니다.

태그 정보

<atrack-type="tasks"track-name="internallink"track-metadata-position="body" l10n-attrs-original-order="href,track-type,track-name,track-metadata-position" l10n-encrypted-href="iUWjxJRweELRfbeZQy/YQwc9zZofjBXGTjbrIegRjdnVz6nUhi3jRGB4DwvsPvv3">태그는 직접 또는 상속을 통해 리소스에 연결할 수 있는 키-값 쌍 형식의 리소스입니다. 태그를 사용하여 지불 거절, 감사, 기타 비용 할당 분석을 수행할 수 있습니다. 태그 및 조건부 정책 적용을 사용하여 리소스 계층 구조 전반을 세밀하게 제어할 수도 있습니다.</atrack-type="tasks"track-name="internallink"track-metadata-position="body">

태그는 강력한 권한 모델을 가지며 상속, 중앙 집중식 관리, 명명 표준, 정책 엔진 통합을 지원할 수 있는 반면 <atrack-type="tasks"track-name="internallink"track-metadata-position="body" l10n-attrs-original-order="href,track-type,track-name,track-metadata-position" l10n-encrypted-href="VL5eQBNGQ+VFZ8Ic4FEC0gc9zZofjBXGTjbrIegRjdloWDKjJtF205jHQgIOO0QT5mGjae8t5DMH2GXg6ydeww=="> 라벨은 리소스에 주석을 추가할 수 있는 별도의 도구입니다.</atrack-type="tasks"track-name="internallink"track-metadata-position="body">

태그 데이터는 리소스, 프로젝트, 폴더, 조직의 BigQuery 내보내기에 표시됩니다.

사용 가능한 태그

리소스, 프로젝트, 폴더, 조직의 표준 비용상세 비용 내보내기에는 태그 키, 태그 값, 상속된 태그, 태그 네임스페이스와 같은 태그 데이터의 필드에 포함됩니다.

Cloud Billing 데이터 내보내기의 리소스 수준 태그는 다음 리소스에 사용할 수 있습니다.

  • Compute Engine 인스턴스
  • Cloud Storage 버킷
  • Spanner 인스턴스
  • Cloud Run 서비스
  • Artifact Registry 저장소
  • Memorystore for Redis 인스턴스

태그 제한사항

  • 태그가 BigQuery 내보내기에 전파되는 데 최대 1시간이 걸릴 수 있습니다. 1시간 내에 태그가 추가 또는 삭제되었거나 1시간 미만 동안 리소스가 존재하면 내보내기에 표시되지 않을 수 있습니다.

상세 사용량 비용 쿼리 예시

이 섹션에서는 BigQuery로 내보낸 Cloud Billing 자세한 사용 비용 데이터를 쿼리하는 방법에 대한 예시를 제공합니다.

이는 상세 사용량 비용 스키마에는 표준 사용량 비용 스키마의 모든 필드가 포함되기 때문에, BigQuery로 내보낸 표준 데이터에 대해 제공된 쿼리 예시는 내보내는 세부정보 데이터와 함께 작동합니다. 표준 쿼리 예시는 상세 사용량 비용 내보내기 옵션과 함께 제공되는 리소스 수준 정보를 검색하기 위해 작성되지 않습니다. 세부정보 데이터에 대한 쿼리를 생성할 때, 템플릿으로 표준 쿼리 예시를 사용하고 테이블 이름을 업데이트하고 상세 사용량 비용 스키마에서 사용할 수 있는 필드를 추가할 수 있습니다.

상세 비용 쿼리 예시에서 사용된 공통 값

이 섹션의 쿼리 예시에서는 테이블 이름에 대해 project.dataset.gcp_billing_export_resource_v1_XXXXXX_XXXXXX_XXXXXX 값을 사용합니다.

인보이스의 리소스 수준 비용 반환

다음 쿼리는 내보낸 결제 데이터를 사용하여 인보이스에서 리소스 수준 비용 및 크레딧 값을 볼 수 있는 두 가지 방법을 보여줍니다.

  • total 필드는 부동 소수점 비용과 크레딧 값을 직접 합산하므로 부동 소수점 반올림 오차가 발생할 수 있습니다.
  • total_exact 필드는 비용과 크레딧 값을 합산하기 전 micro로 변환한 다음 합산 후에 다시 dollar로 변환하므로, 부동 소수점 반올림 오차가 방지됩니다.

인보이스당 각 리소스의 합계 비용

이 쿼리는 일반 비용 합계로 월별 각 resource.name의 인보이스 합계, 세금, 조정, 반올림 오류를 보여줍니다. 리소스 수준 항목과 연관되지 않은 모든 비용은 해당 월에 대해 null 이름으로 집계됩니다.

표준 SQL

SELECT
  invoice.month,
  resource.name,
  SUM(cost)
    + SUM(IFNULL((SELECT SUM(c.amount)
                  FROM UNNEST(credits) c), 0))
    AS total,
  (SUM(CAST(cost * 1000000 AS int64))
    + SUM(IFNULL((SELECT SUM(CAST(c.amount * 1000000 as int64))
                  FROM UNNEST(credits) c), 0))) / 1000000
    AS total_exact
FROM `project.dataset.gcp_billing_export_resource_v1_XXXXXX_XXXXXX_XXXXXX`
GROUP BY 1, 2
ORDER BY 1 ASC, 2 ASC
;

예를 들어 앞의 쿼리에 대한 결과는 다음과 같습니다.

Row month name total total_exact
1 201901 null $1005.004832999999984 $1005.00
2 201901 backend1 $781.8499760000028 $781.85
3 201902 null $953.0034923645475983 $953.03
4 201902 backend1 $992.3101739999999717 $992.31
5 201902 bitnami-launchpad-wordpress-1-wordpress $1.2817819999999998 $1.28

인보이스 월별 각 리소스의 비용 유형별 세부정보 반환

이 쿼리에서는 월별 각 resource.name의 각 cost_type에 대한 합계를 보여줍니다. 비용 유형에는 일반 비용, 세금, 조정 및 반올림 오류가 포함됩니다. 리소스 수준 항목과 연관되지 않은 모든 비용은 해당 월에 대해 null 이름으로 집계됩니다.

표준 SQL

SELECT
  invoice.month,
  cost_type,
  resource.name,
  SUM(cost)
    + SUM(IFNULL((SELECT SUM(c.amount)
                  FROM   UNNEST(credits) c), 0))
    AS total,
  (SUM(CAST(cost * 1000000 AS int64))
    + SUM(IFNULL((SELECT SUM(CAST(c.amount * 1000000 as int64))
                  FROM UNNEST(credits) c), 0))) / 1000000
    AS total_exact
FROM `project.dataset.gcp_billing_export_resource_v1_XXXXXX_XXXXXX_XXXXXX`
GROUP BY 1, 2, 3
ORDER BY 1 ASC, 2 ASC, 3 ASC
;

예를 들어 앞의 쿼리에 대한 결과는 다음과 같습니다.

Row month cost_type name total total_exact
1 201901 regular null $1000.501209987994782 $1000.50
2 201901 rounding_error null –$0.500489920049387 –$0.50
3 201901 tax null $10.000329958477891 $10.00
4 201901 adjustment null –$5.002572999387045 –$5.00
5 201901 regular backend1 $410.998795012082947 $411.00
2 201901 rounding_error backend1 –$0.2404900489920378 –$0.24
3 201901 tax backend1 $4.105840329977189 $4.11

Google Kubernetes Engine(GKE) 클러스터 비용 분석

이 섹션에서는 BigQuery Export 보고서에서 GKE 클러스터 비용을 필터링하는 예시를 제공합니다. GKE 클러스터 비용에 대한 자세한 내용은 클러스터 비용 분석 보기를 참조하세요.

GKE 비용 필터링

다음 쿼리 예시는 지원되는 리소스 유형에 대해 클러스터 이름, 네임스페이스, 라벨별로 GKE 비용을 필터링하고 그룹화하는 방법을 보여줍니다.

크레딧 이전 GKE 클러스터 비용

SELECT
  SUM(cost) AS cost_before_credits,
  labels.value AS cluster_name
FROM  `project.dataset.gcp_billing_export_resource_v1_XXXXXX_XXXXXX_XXXXXX`
LEFT JOIN UNNEST(labels) as labels
  ON labels.key = "goog-k8s-cluster-name"
GROUP BY labels.value
;

네임스페이스별 크레딧 이후 GKE 비용

SELECT
  labels.value as namespace,
  SUM(cost) + SUM(IFNULL((SELECT SUM(c.amount) FROM UNNEST(credits) c), 0)) AS cost_after_credits,
FROM `project.dataset.gcp_billing_export_resource_v1_XXXXXX_XXXXXX_XXXXXX`
LEFT JOIN UNNEST(labels) as labels
  ON labels.key = "k8s-namespace"
GROUP BY namespace
;

SKU별 GKE 비용

SELECT
  project.id AS project_id,
  labels.value AS cluster_name,
  sku.id AS sku_id,
  sku.description AS sku_description,
  SUM(cost) AS cost
FROM `project.dataset.gcp_billing_export_resource_v1_XXXXXX_XXXXXX_XXXXXX`
JOIN UNNEST(labels) AS labels
  ON labels.key = "goog-k8s-cluster-name"
GROUP BY
  cluster_name, project_id, sku_description, sku_id
;

태그가 있는 쿼리 예시

다음 예시는 태그를 사용하여 데이터를 쿼리하는 방법을 보여줍니다.

태그를 사용하여 인보이스 대상 월별 비용 계산

다음 쿼리는 cost_center 태그에 대해 인보이스 대상 월별로 반환 비용을 사용하는 방법을 보여줍니다.

SELECT
  invoice.month AS invoice_month,
  tag.value AS cost_center,
  ROUND((SUM(CAST(cost AS NUMERIC))
    + SUM(IFNULL((SELECT SUM (CAST(c.amount AS NUMERIC))
                  FROM UNNEST(credits) AS c), 0))), 2)
    AS net_cost
FROM `ivory-vim-309221.billing_export_dataset.gcp_billing_export_resource_v1_018ADD_3CEBBB_A4DF22`, UNNEST(tags) AS tag
WHERE tag.key = "cost_center" AND tag.namespace = "821092389413"
GROUP BY invoice.month, tag.value
ORDER BY invoice.month, tag.value;

예를 들어 앞의 쿼리에 대한 결과는 다음과 같습니다.

Row invoice_month cost_center net_cost
1 202208 android_mobile_apps 9.93
2 202208 ios_mobile_apps 9.93
3 202209 android_mobile_apps 25.42
4 202209 ios_mobile_apps 25.4
5 202209 personalization 16.08

태그가 지정되지 않은 리소스의 비용 보기

이 쿼리는 태그되지 않은 리소스의 인보이스 합계를 인보이스 대상 월별로 그룹화하여 표시합니다.

SELECT
 invoice.month AS invoice_month,
 ROUND((SUM(CAST(cost AS NUMERIC))
   + SUM(IFNULL((SELECT SUM(CAST(c.amount AS NUMERIC))
                 FROM UNNEST(credits) AS c), 0))), 2)
   AS net_cost
FROM
 `project.dataset.gcp_billing_export_v1_XXXXXX_XXXXXX_XXXXXX`
WHERE "color" NOT IN (SELECT key FROM UNNEST(tags))
GROUP BY invoice_month
ORDER BY invoice_month;

예를 들어 앞의 쿼리에 대한 결과는 다음과 같습니다.

Row invoice_month net_cost
1 202202 0
2 202203 16.81
3 202204 54.09
4 202205 55.82
5 202206 54.09
6 202207 55.83
7 202208 31.49

Google Cloud 콘솔에서 사용 가능한 비용 및 가격 책정 보고서