탄소 발자국 내보내기

데이터 분석을 수행하거나 커스텀 대시보드 및 보고서를 만들기 위해 탄소 발자국 데이터를 BigQuery로 내보낼 수 있습니다.

탄소 발자국 내보내기를 수행하면 선택한 청구 계정에 대한 포함된 Google Cloud 서비스 사용과 관련된 추정 온실가스 배출량이 캡처됩니다.

내보내기를 구성한 후에는 내보낸 데이터를 저장하고 쿼리하는 데 사용된 BigQuery 리소스에 대한 비용이 부과됩니다.

시작하기 전에

탄소 발자국 내보내기를 만들려면 다음 IAM 역할이 권장됩니다.

더 자세히 말하자면 Google Cloud 프로젝트에 대해 다음 IAM 권한이 있어야 합니다.

  • resourcemanager.projects.update
  • serviceusage.services.enable
  • bigquery.transfers.update

그리고 청구 계정에 대해 다음 IAM 권한이 있어야 합니다.

  • billing.accounts.getCarbonInformation

VPC 서비스 제어를 사용하는 경우

조직에서 VPC 서비스 제어를 사용하는 경우 BigQuery API 및 BigQuery Data Transfer Service API에 대해 인그레스 규칙을 정의해야 합니다.

인그레스 정책 규칙의 경우:

  • '시작' 섹션에서 소스를 '모든 소스 허용'으로 설정합니다.
  • els-da-carbon@gcp-carbon-footprint-exports.iam.gserviceaccount.com ID에 권한을 부여합니다.

BigQuery에 탄소 발자국 내보내기 구성

탄소 발자국 데이터는 BigQuery Data Transfer Service를 통해 내보냅니다. 데이터 전송을 수행하면 선택한 BigQuery 데이터 세트에 carbon_footprint라는 월별 파티션을 나눈 테이블이 생성됩니다.

탄소 발자국은 매월 데이터를 다음 달 15일에 내보냅니다. 예를 들어 2022년 9월의 탄소 데이터는 2022년 10월 15일에 내보내집니다.

탄소 발자국 전송 구성이 생성된 다음에는 매월 15일 탄소 보고서 내보내기가 자동으로 수행됩니다. 또한 백필을 실행하여 2021년 1월까지 이전 데이터를 요청할 수 있습니다.

콘솔

내보내기를 시작하려면 다음 단계를 수행합니다.

  1. 탄소 발자국으로 이동
  2. 청구 계정 메뉴에서 내보내려는 Cloud Billing 계정을 선택합니다.
  3. 내보내기를 클릭하여 BigQuery Data Transfer Service를 사용 설정하고 BigQuery Data Transfer Service 페이지를 엽니다.
  4. BigQuery Data Transfer Service 페이지에서 다음을 수행합니다.
    1. 소스가 'Google Cloud 탄소 발자국 내보내기'로 설정되었는지 확인합니다.
    2. 전송 구성 이름에 표시 이름을 입력합니다.
    3. 대상 설정에서 데이터 세트 ID 필드를 클릭한 후 내보낸 테이블을 호스팅하려는 BigQuery 데이터 세트를 새로 만들려면 새 데이터 세트 만들기를 선택하고, 그렇지 않으면 기존 BigQuery 데이터 세트를 선택합니다.
    4. 데이터 소스 세부정보에서 내보낼 Cloud Billing 계정 ID를 확인합니다. 선택적으로 추가 계정 ID를 쉼표로 구분된 목록으로 추가합니다. 모든 청구 계정 ID는 XXXXXX-XXXXXX-XXXXXX 형식이어야 합니다.
  5. 저장을 클릭합니다.
  6. 액세스 요청 창에서 허용을 클릭합니다.

bq

bq mk --transfer_config 명령어를 사용하여 내보내기를 시작합니다.

bq mk \
--transfer_config \
--target_dataset=DATASET \
--display_name=NAME \
--params='{"billing_accounts":"BILLING_ACCOUNT_IDS"}' \
--data_source='61cede5a-0000-2440-ad42-883d24f8f7b8'

각 항목의 의미는 다음과 같습니다.

  • DATASET는 전송 구성 대상 데이터 세트입니다.
  • NAME은 전송 구성의 표시 이름입니다. 예를 들면 '회사 탄소 보고서'입니다.
  • BILLING_ACCOUNT_IDS는 청구 계정 ID 또는 쉼표로 구분된 청구 계정 ID 목록입니다. 예를 들면 XXXXXX-XXXXXX-XXXXXX,XXXXXX-XXXXXX-XXXXXX입니다.

Terraform

bigquery_data_transfer_config Terraform 리소스를 사용하여 내보내를 만듭니다.

resource "google_bigquery_data_transfer_config" "RESOURCE_NAME" {
  display_name           = "NAME"
  data_source_id         = "61cede5a-0000-2440-ad42-883d24f8f7b8"
  destination_dataset_id = google_bigquery_dataset.DATASET.dataset_id
  params = {
    billing_accounts     = "BILLING_ACCOUNT_IDS"
  }
}

각 항목의 의미는 다음과 같습니다.

  • RESOURCE_NAME은 Terraform 리소스의 이름입니다. 예를 들면 carbon_export입니다.
  • NAME은 전송 구성의 표시 이름입니다. 예를 들면 '회사 탄소 보고서'입니다.
  • DATASET는 내보내기 대상 데이터 세트로 사용할 google_bigquery_dataset Terraform 리소스의 이름입니다.

  • BILLING_ACCOUNT_IDS는 청구 계정 ID 또는 쉼표로 구분된 청구 계정 ID 목록입니다. 예를 들면 XXXXXX-XXXXXX-XXXXXX,XXXXXX-XXXXXX-XXXXXX입니다.

이제 전송 구성이 생성되었고 다음 달 15일마다 데이터를 내보냅니다.

전송 구성은 이전 데이터를 자동으로 내보내지 않습니다. 2021년 1월까지 이전 데이터를 다시 요청하려면 다음 단계에 따라 데이터 백필을 예약합니다.

콘솔

다음 단계에 따라 데이터 백필을 예약합니다.

  1. 바로 전에 만든 데이터 세부정보로 이동합니다.
  2. 백필 예약을 클릭합니다.
  3. 특정 기간에 실행을 선택합니다.
  4. 시작 날짜를 2021년 2월 15일로 선택하고 종료 날짜를 오늘 날짜로 선택합니다. 2021년 2월 15일 내보내기는 2021년 1월 데이터를 포함하므로, 요청할 수 있는 가장 이른 달입니다.
  5. 확인을 클릭하여 데이터 백필을 요청합니다.

선택한 범위에 대해 데이터 백필이 생성되고 대상 데이터 세트로 이전 월간 데이터를 내보냅니다.

bq

bq mk --transfer_run 명령어를 사용하여 백필을 만듭니다.

bq mk \
--transfer_run \
--start_time=START_TIME \
--end_time=END_TIME \
CONFIG

각 항목의 의미는 다음과 같습니다.

  • START_TIME은 백필 범위의 시작 시간을 지정하는 타임스탬프입니다. 예를 들면 2021-02-15T00:00:00Z입니다. 2021년 2월 15일은 2021년 1월 데이터를 포함하므로 여기에서 지정할 수 있는 가장 이른 날짜입니다.
  • END_TIME은 백필 범위의 종료 시간을 지정하는 타임스탬프입니다. 예를 들면 2022-09-15T00:00:00Z입니다. 현재 날짜를 사용할 수 있습니다.
  • TRANSFER_CONFIG는 이전 단계에서 만든 전송의 식별자입니다. 예를 들면 projects/0000000000000/locations/us/transferConfigs/00000000-0000-0000-0000-000000000000입니다.

데이터를 내보낸 후에는 BigQuery를 사용하여 데이터를 보고 쿼리할 수 있습니다. 데이터 스키마에 대해 자세히 알아보세요.

앞에서 선택한 프로젝트에 대해 BigQuery 사용자 IAM 역할을 부여하여 조직 내 다른 사용자에게 내보낸 데이터를 공유할 수 있습니다. 또는 BigQuery 데이터 뷰어 IAM 역할을 사용하여 데이터 세트 또는 테이블 수준에서 미세하게 조정된 액세스 권한을 부여할 수 있습니다.

탄소 발자국 내보내기 관리

BigQuery Data Transfer Service를 통해 탄소 발자국 내보내기를 관리할 수 있습니다. 전송 작업에 대해 자세히 알아보세요.

Google Sheets 또는 CSV로 내보내기

BigQuery로 탄소 발자국 내보내기를 구성하고 예약된 내보내기가 완료되었으면 BigQuery에서 Google Sheets 또는 CSV로 데이터를 내보낼 수 있습니다.

  1. BigQuery로 이동
  2. 탐색기 패널에서 프로젝트 및 데이터 세트를 확장한 후 내보낸 탄소 발자국 데이터가 포함된 테이블을 선택합니다.
  3. 쿼리를 클릭합니다.
  4. 내보내려는 데이터를 반환하는 쿼리를 입력합니다. 아래에서 예시를 참조하세요.
  5. 쿼리가 실행된 후 쿼리 결과에서 결과 저장을 클릭합니다.
  6. 원하는 형식을 선택하고 저장을 클릭합니다.

다음 쿼리를 사용하면 내보낸 테이블의 전체 콘텐츠를 저장할 수 있습니다.

SELECT
  usage_month,
  billing_account_id,
  project.number AS project_number,
  project.id AS project_id,
  service.id AS service_id,
  service.description AS service_description,
  location.location AS location,
  location.region AS region,
  carbon_model_version,
  carbon_footprint_kgCO2e.scope1 AS carbon_footprint_scope1,
  carbon_footprint_kgCO2e.scope2.location_based AS carbon_footprint_scope2_location_based,
  carbon_footprint_kgCO2e.scope3 AS carbon_footprint_scope3,
  carbon_footprint_total_kgCO2e.location_based AS carbon_footprint_total_location_based
FROM
  `PROJECT.DATASET.carbon_footprint`
ORDER BY
  usage_month DESC,
  carbon_footprint_total_location_based DESC

다음 단계