리소스에 라벨 추가

이 페이지에서는 BigQuery 리소스에 라벨을 지정하는 방법을 설명합니다.

데이터세트 라벨 추가

명령줄 도구의 bq mk 명령어를 사용하거나 datasets.insert API 메서드를 호출하여 BigQuery 데이터세트를 만들 때 여기에 라벨을 추가할 수 있습니다. 현재는 GCP Console 또는 기본 BigQuery 웹 UI를 통해 데이터세트를 만들 때 여기에 라벨을 추가할 수 없습니다.

이 페이지에서는 데이터세트가 만들어진 후 라벨을 추가하는 방법에 대해 설명합니다. 데이터세트를 만들 때 라벨을 추가하는 방법에 대한 자세한 내용은 데이터세트 만들기를 참조하세요.

다음 방법으로 데이터세트를 만든 후 여기에 라벨을 추가할 수 있습니다.

  • GCP Console 또는 기본 BigQuery 웹 UI 사용
  • 명령줄 도구의 bq update 명령어 사용
  • datasets.patch API 메서드 호출
  • 클라이언트 라이브러리 사용

데이터세트에 라벨을 추가할 때, 라벨이 데이터세트 내의 리소스로 전파되지는 않습니다. 데이터세트 라벨은 테이블 또는 보기에 상속되지 않습니다. 데이터세트에 라벨을 추가하면 스토리지 결제 데이터에 포함되지만 작업 관련 결제 데이터에 데이터세트 라벨이 표시되지 않습니다.

필수 권한

기존 데이터세트에 라벨을 추가하려면 최소한 bigquery.datasets.update 권한이 부여되어 있어야 합니다. 사전 정의된 다음 Cloud IAM 역할에는 bigquery.datasets.update 권한이 포함되어 있습니다.

  • bigquery.dataOwner
  • bigquery.admin

또한 사용자에게 bigquery.datasets.create 권한이 있으면 해당 사용자가 데이터세트를 만들 때 이에 대한 bigquery.dataOwner 액세스 권한이 부여됩니다. bigquery.dataOwner 액세스 권한이 있으면 사용자가 자신의 데이터세트에 라벨을 추가할 수 있습니다.

BigQuery의 Cloud IAM 역할 및 권한에 대한 자세한 내용은 액세스 제어를 참조하세요.

데이터세트에 라벨 추가

데이터세트가 만들어진 후 데이터세트에 라벨을 추가하려면 다음 안내를 따르세요.

Console

  1. GCP Console에서 데이터세트를 선택합니다.

  2. 데이터세트 세부정보 페이지에서 라벨 오른쪽에 있는 연필 아이콘을 클릭합니다.

    라벨 연필

  3. 라벨 수정 대화상자에서 다음을 수행합니다.

    • 라벨 추가를 클릭합니다.
    • 키와 값을 입력하여 라벨을 추가합니다. 추가 라벨을 적용하려면 라벨 추가를 클릭합니다. 각 키는 데이터세트당 한 번만 사용할 수 있지만 동일한 프로젝트의 여러 데이터세트에 동일한 키를 사용할 수 있습니다.
    • 기존 키 또는 값을 수정하여 라벨을 업데이트합니다.
    • 업데이트를 클릭하여 변경사항을 저장합니다.

기본 UI

  1. BigQuery 웹 UI에서 데이터세트를 선택합니다.

  2. 데이터세트 세부정보 페이지에서 라벨 오른쪽의 수정을 클릭합니다.

    라벨 수정

  3. 라벨 수정 대화상자에서 다음을 수행합니다.

    • 키와 값을 입력하여 라벨을 추가합니다. 추가 라벨을 적용하려면 라벨 추가를 클릭합니다. 각 키는 데이터세트당 한 번만 사용할 수 있지만 동일한 프로젝트의 여러 데이터세트에 동일한 키를 사용할 수 있습니다.
    • 기존 키 또는 값을 수정하여 라벨을 업데이트합니다.
    • 확인을 클릭합니다.

      새 라벨

CLI

기존 데이터세트에 라벨을 추가하려면 bq update 명령어를 set_label 플래그와 함께 실행합니다. 여러 개의 라벨을 추가하려면 플래그를 반복합니다.

데이터세트가 기본 프로젝트 이외의 프로젝트에 있으면 project_id:dataset 형식으로 데이터세트에 프로젝트 ID를 추가합니다.

bq update --set_label key:value project_id:dataset

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

  • key:value는 추가하려는 라벨의 키:값 쌍에 해당합니다. 키는 고유해야 합니다.
  • project_id는 프로젝트 ID입니다.
  • dataset는 라벨을 지정하는 대상 데이터세트입니다.

예를 들면 다음과 같습니다.

부서를 추적하기 위한 라벨을 추가하려면 bq update 명령어를 입력하고 department를 라벨 키로 지정합니다. 예를 들어 기본 프로젝트의 mydatasetdepartment:shipping 라벨을 추가하려면 다음을 입력합니다.

    bq update --set_label department:shipping mydataset

데이터세트에 여러 라벨을 추가하려면 set_label 플래그를 반복하고 각 라벨에 고유한 키를 지정합니다.예를 들어 기본 프로젝트의 mydatasetdepartment:shipping 라벨과 cost_center:logistics 라벨을 추가하려면 다음을 입력합니다.

    bq update \
    --set_label department:shipping \
    --set_label cost_center:logistics \
    mydataset

API

기존 데이터세트에 라벨을 추가하려면 datasets.patch 메서드를 호출하고 데이터세트 리소스labels 속성을 입력합니다.

datasets.update 메서드는 전체 데이터세트 리소스를 바꾸므로 datasets.patch 메서드를 사용하는 것이 좋습니다.

Go

이 샘플을 시도하기 전에 BigQuery 빠른 시작: 클라이언트 라이브러리 사용의 Go 설정 안내를 따르세요. 자세한 내용은 BigQuery Go API 참조 문서를 확인하세요.

// To run this sample, you will need to create (or reuse) a context and
// an instance of the bigquery client.  For example:
// import "cloud.google.com/go/bigquery"
// ctx := context.Background()
// client, err := bigquery.NewClient(ctx, "your-project-id")
ds := client.Dataset(datasetID)
meta, err := ds.Metadata(ctx)
if err != nil {
	return err
}

update := bigquery.DatasetMetadataToUpdate{}
update.SetLabel("color", "green")
if _, err := ds.Update(ctx, update, meta.ETag); err != nil {
	return err
}

자바

이 샘플은 자바용 Google HTTP 클라이언트 라이브러리를 사용하여 BigQuery API에 요청을 전송합니다.

이 샘플을 시도하기 전에 BigQuery 빠른 시작: 클라이언트 라이브러리 사용의 자바 설정 안내를 따르세요. 자세한 내용은 BigQuery 자바 API 참조 문서를 확인하세요.

static final HttpTransport HTTP_TRANSPORT = new NetHttpTransport();
static final JsonFactory JSON_FACTORY = new JacksonFactory();

public static class Dataset {
  @Key private Map<String, String> labels;

  public Map<String, String> getLabels() {
    return this.labels;
  }

  public Dataset addLabel(String key, String value) {
    if (this.labels == null) {
      this.labels = new HashMap<>();
    }
    this.labels.put(key, value);
    return this;
  }
}

/**
 * Add or modify a label on a dataset.
 *
 * <p>See <a href="https://cloud.google.com/bigquery/docs/labeling-datasets">the BigQuery
 * documentation</a>.
 */
public static void labelDataset(
    String projectId, String datasetId, String labelKey, String labelValue) throws IOException {

  // Authenticate requests using Google Application Default credentials.
  GoogleCredential credential = GoogleCredential.getApplicationDefault();
  credential = credential.createScoped(Arrays.asList("https://www.googleapis.com/auth/bigquery"));

  // Get a new access token.
  // Note that access tokens have an expiration. You can reuse a token rather than requesting a
  // new one if it is not yet expired.
  credential.refreshToken();
  String accessToken = credential.getAccessToken();

  // Set the content of the request.
  Dataset dataset = new Dataset();
  dataset.addLabel(labelKey, labelValue);
  HttpContent content = new JsonHttpContent(JSON_FACTORY, dataset);

  // Send the request to the BigQuery API.
  String urlFormat =
      "https://www.googleapis.com/bigquery/v2/projects/%s/datasets/%s"
          + "?fields=labels&access_token=%s";
  GenericUrl url = new GenericUrl(String.format(urlFormat, projectId, datasetId, accessToken));
  HttpRequestFactory requestFactory = HTTP_TRANSPORT.createRequestFactory();
  HttpRequest request = requestFactory.buildPostRequest(url, content);
  request.setParser(JSON_FACTORY.createJsonObjectParser());

  // Workaround for transports which do not support PATCH requests.
  // See: http://stackoverflow.com/a/32503192/101923
  request.setHeaders(new HttpHeaders().set("X-HTTP-Method-Override", "PATCH"));
  HttpResponse response = request.execute();

  // Check for errors.
  if (response.getStatusCode() != 200) {
    throw new RuntimeException(response.getStatusMessage());
  }

  Dataset responseDataset = response.parseAs(Dataset.class);
  System.out.printf(
      "Updated label \"%s\" with value \"%s\"\n",
      labelKey, responseDataset.getLabels().get(labelKey));
}

Python

이 샘플을 시도하기 전에 BigQuery 빠른 시작: 클라이언트 라이브러리 사용의 Python 설정 안내를 따르세요. 자세한 내용은 BigQuery Python API 참조 문서를 확인하세요.

# from google.cloud import bigquery
# client = bigquery.Client()
# dataset_ref = client.dataset('my_dataset')
# dataset = client.get_dataset(dataset_ref)  # API request

assert dataset.labels == {}
labels = {"color": "green"}
dataset.labels = labels

dataset = client.update_dataset(dataset, ["labels"])  # API request

assert dataset.labels == labels

테이블 및 보기 라벨 추가

다음 방식으로 테이블 또는 보기를 만들 때 여기에 라벨을 추가할 수 있습니다.

  • 명령줄 도구의 bq mk 명령어 사용
  • tables.insert API 메서드 호출

이 페이지에서는 기존 테이블 또는 보기에 라벨을 추가하는 방법에 대해 설명합니다. 테이블 또는 보기를 만들 때 라벨을 추가하는 방법에 관한 자세한 내용은 테이블 만들기 또는 보기 만들기를 참조하세요.

다음 방식으로 테이블 또는 보기를 만든 후 라벨을 추가할 수 있습니다.

  • GCP Console 또는 기본 BigQuery 웹 UI 사용
  • 명령줄 도구의 bq update 명령어 사용
  • tables.patch API 메서드 호출
  • 클라이언트 라이브러리 사용

보기는 테이블 리소스와 같이 취급되므로 tables.patch 메서드를 사용하여 보기와 테이블을 모두 수정합니다.

필수 권한

기존 테이블 또는 보기에 라벨을 추가하려면 최소한 bigquery.tables.updatebigquery.tables.get 권한이 부여되어 있어야 합니다. 사전 정의된 다음 Cloud IAM 역할에는 bigquery.tables.updatebigquery.tables.get 권한이 포함됩니다.

  • bigquery.dataEditor
  • bigquery.dataOwner
  • bigquery.admin

또한 사용자에게 bigquery.datasets.create 권한이 있으면 해당 사용자가 데이터세트를 만들 때 이에 대한 bigquery.dataOwner 액세스 권한이 부여됩니다. bigquery.dataOwner 액세스 권한이 있으면 사용자가 자신의 데이터세트에 라벨을 추가할 수 있습니다.

BigQuery의 Cloud IAM 역할 및 권한에 대한 자세한 내용은 액세스 제어를 참조하세요.

테이블 또는 보기에 라벨 추가

기존 테이블 또는 보기에 라벨을 추가하려면 다음 안내를 따르세요.

Console

  1. GCP Console에서 테이블 또는 보기를 선택합니다.

  2. 세부정보 탭을 클릭합니다.

    테이블 세부정보

  3. 라벨 오른쪽에 있는 연필 아이콘을 클릭합니다.

    라벨 연필

  4. 라벨 수정 대화상자에서 다음을 수행합니다.

    • 라벨 추가를 클릭합니다.
    • 키와 값을 입력하여 라벨을 추가합니다. 추가 라벨을 적용하려면 라벨 추가를 클릭합니다. 각 키는 데이터세트당 한 번만 사용할 수 있지만 동일한 프로젝트의 여러 데이터세트에 동일한 키를 사용할 수 있습니다.
    • 기존 키 또는 값을 수정하여 라벨을 업데이트합니다.
    • 업데이트를 클릭하여 변경사항을 저장합니다.

DDL

데이터 정의 언어(DDL) 문을 사용하면 표준 SQL 쿼리 구문으로 테이블과 보기를 만들고 수정할 수 있습니다.

자세한 내용은 데이터 정의 언어 문 사용을 참조하세요.

GCP Console에서 DDL 문을 사용하여 라벨을 추가하려면 다음 안내를 따르세요.

  1. 새 쿼리 작성을 클릭합니다.

  2. 쿼리 편집기 텍스트 영역에 DDL 문을 입력합니다.

     ALTER TABLE mydataset.mytable
     SET OPTIONS (
       labels=[("department", "shipping"), ("cost_center", "logistics")]
     )
     

  3. 쿼리 실행을 클릭합니다.

기본 UI

  1. BigQuery 웹 UI에서 테이블 또는 보기를 선택합니다.

  2. 세부정보 페이지에서 라벨 오른쪽의 수정을 클릭합니다. 이 예시에서는 테이블의 세부정보를 보여줍니다.

    라벨 수정

  3. 라벨 수정 대화상자에서 다음을 수행합니다.

    • 키와 값을 입력하여 라벨을 추가합니다. 추가 라벨을 적용하려면 라벨 추가를 클릭합니다. 각 키는 테이블 또는 보기당 한 번만 사용할 수 있지만 여러 데이터세트의 테이블 또는 보기에 동일한 키를 사용할 수 있습니다.
    • 확인을 클릭합니다.

      새 라벨

CLI

기존 테이블 또는 보기에 라벨을 추가하려면 bq update 명령어를 set_label 플래그와 함께 실행합니다. 여러 개의 라벨을 추가하려면 플래그를 반복합니다.

테이블 또는 보기가 기본 프로젝트가 아닌 다른 프로젝트에 있는 경우 프로젝트 ID를 project_id:dataset 형식으로 데이터세트에 추가합니다.

bq update \
--set_label key:value \
project_id:dataset.table_or_view

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

  • key:value는 추가하려는 라벨의 키:값 쌍에 해당합니다. 키는 고유해야 합니다.
  • project_id는 프로젝트 ID입니다.
  • dataset는 라벨을 지정하는 테이블 또는 보기가 포함된 데이터세트입니다.
  • table_or_view는 라벨을 지정하는 테이블 또는 보기의 이름입니다.

예를 들면 다음과 같습니다.

부서를 추적하는 테이블 라벨을 추가하려면 bq update 명령어를 입력하고 department를 라벨 키로 지정합니다. 예를 들어 기본 프로젝트의 mytabledepartment:shipping 라벨을 추가하려면 다음을 입력합니다.

    bq update --set_label department:shipping mydataset.mytable

부서를 추적하는 보기 라벨을 추가하려면 bq update 명령어를 입력하고 department를 라벨 키로 지정합니다. 예를 들어 기본 프로젝트의 myviewdepartment:shipping 라벨을 추가하려면 다음을 입력합니다.

    bq update --set_label department:shipping mydataset.myview

테이블 또는 보기에 여러 라벨을 추가하려면 set_label 플래그를 반복하고 각 라벨에 고유한 키를 지정합니다. 예를 들어 기본 프로젝트의 mytabledepartment:shipping 라벨과 cost_center:logistics 라벨을 추가하려면 다음을 입력합니다.

    bq update \
    --set_label department:shipping \
    --set_label cost_center:logistics \
    mydataset.mytable

API

기존 테이블 또는 보기에 라벨을 추가하려면 tables.patch 메서드를 호출하고 테이블 리소스labels 속성을 추가하거나 입력합니다.

보기는 테이블 리소스와 같이 취급되므로 tables.patch 메서드를 사용하여 보기와 테이블을 모두 수정합니다.

tables.update 메서드는 전체 데이터세트 리소스를 대체하므로 tables.patch 메서드를 사용하는 것이 좋습니다.

Go

이 샘플을 시도하기 전에 BigQuery 빠른 시작: 클라이언트 라이브러리 사용의 Go 설정 안내를 따르세요. 자세한 내용은 BigQuery Go API 참조 문서를 확인하세요.

// To run this sample, you will need to create (or reuse) a context and
// an instance of the bigquery client.  For example:
// import "cloud.google.com/go/bigquery"
// ctx := context.Background()
// client, err := bigquery.NewClient(ctx, "your-project-id")
tbl := client.Dataset(datasetID).Table(tableID)
meta, err := tbl.Metadata(ctx)
if err != nil {
	return err
}

update := bigquery.TableMetadataToUpdate{}
update.SetLabel("color", "green")
if _, err := tbl.Update(ctx, update, meta.ETag); err != nil {
	return err
}

자바

이 샘플은 자바용 Google HTTP 클라이언트 라이브러리를 사용하여 BigQuery API에 요청을 전송합니다.

이 샘플을 시도하기 전에 BigQuery 빠른 시작: 클라이언트 라이브러리 사용의 자바 설정 안내를 따르세요. 자세한 내용은 BigQuery 자바 API 참조 문서를 확인하세요.

public static class Table {
  @Key private Map<String, String> labels;

  public Map<String, String> getLabels() {
    return this.labels;
  }

  public Table addLabel(String key, String value) {
    if (this.labels == null) {
      this.labels = new HashMap<>();
    }
    this.labels.put(key, value);
    return this;
  }
}

/**
 * Add or modify a label on a table.
 *
 * <p>See <a href="https://cloud.google.com/bigquery/docs/labeling-datasets">the BigQuery
 * documentation</a>.
 */
public static void labelTable(
    String projectId,
    String datasetId,
    String tableId,
    String labelKey,
    String labelValue)
    throws IOException {

  // Authenticate requests using Google Application Default credentials.
  GoogleCredential credential = GoogleCredential.getApplicationDefault();
  credential = credential.createScoped(Arrays.asList("https://www.googleapis.com/auth/bigquery"));

  // Get a new access token.
  // Note that access tokens have an expiration. You can reuse a token rather than requesting a
  // new one if it is not yet expired.
  credential.refreshToken();
  String accessToken = credential.getAccessToken();

  // Set the content of the request.
  Table table = new Table();
  table.addLabel(labelKey, labelValue);
  HttpContent content = new JsonHttpContent(JSON_FACTORY, table);

  // Send the request to the BigQuery API.
  String urlFormat =
      "https://www.googleapis.com/bigquery/v2/projects/%s/datasets/%s/tables/%s"
          + "?fields=labels&access_token=%s";
  GenericUrl url =
      new GenericUrl(String.format(urlFormat, projectId, datasetId, tableId, accessToken));
  HttpRequestFactory requestFactory = HTTP_TRANSPORT.createRequestFactory();
  HttpRequest request = requestFactory.buildPostRequest(url, content);
  request.setParser(JSON_FACTORY.createJsonObjectParser());

  // Workaround for transports which do not support PATCH requests.
  // See: http://stackoverflow.com/a/32503192/101923
  request.setHeaders(new HttpHeaders().set("X-HTTP-Method-Override", "PATCH"));
  HttpResponse response = request.execute();

  // Check for errors.
  if (response.getStatusCode() != 200) {
    throw new RuntimeException(response.getStatusMessage());
  }

  Table responseTable = response.parseAs(Table.class);
  System.out.printf(
      "Updated label \"%s\" with value \"%s\"\n",
      labelKey, responseTable.getLabels().get(labelKey));
}

Python

이 샘플을 시도하기 전에 BigQuery 빠른 시작: 클라이언트 라이브러리 사용의 Python 설정 안내를 따르세요. 자세한 내용은 BigQuery Python API 참조 문서를 확인하세요.

# from google.cloud import bigquery
# client = bigquery.Client()
# table_ref = client.dataset('my_dataset').table('my_table')
# table = client.get_table(table_ref)  # API request

assert table.labels == {}
labels = {"color": "green"}
table.labels = labels

table = client.update_table(table, ["labels"])  # API request

assert table.labels == labels

작업 라벨 추가

명령줄 도구의 --label 플래그를 사용하여 명령줄을 통해 쿼리 작업에 라벨을 추가할 수 있습니다. 명령줄 도구는 쿼리 작업에만 라벨 추가를 지원합니다.

또한 jobs.insert 메서드를 호출할 때 작업 구성에서 labels 속성을 지정하면 API를 통해 작업을 제출할 때 작업에 라벨을 추가할 수도 있습니다. API를 사용하면 모든 작업 유형에 라벨을 추가할 수 있습니다.

대기 중이거나 실행 중이거나 완료된 작업에는 라벨을 추가하거나 업데이트할 수 없습니다.

작업에 라벨을 추가하면 라벨이 결제 데이터에 포함됩니다.

필수 권한

작업에 라벨을 추가하기 위한 특별한 권한이 필요 없습니다. bigquery.jobs.create 권한이 있는 경우 작업을 제출할 때 라벨을 추가할 수 있습니다.

작업을 실행하려면 최소한 bigquery.jobs.create 권한이 있어야 합니다. BigQuery에서 자동으로 생성되는 작업에는 bigquery.jobs.create 권한이 필요하며, 이 권한은 사용자가 프로그래매틱 방식으로 실행하는 작업에도 필요합니다.

사전 정의된 다음 Cloud IAM 역할에는 bigquery.jobs.create 권한이 포함되어 있습니다.

  • bigquery.user
  • bigquery.jobUser
  • bigquery.admin

BigQuery의 Cloud IAM 역할 및 권한에 대한 자세한 내용은 액세스 제어를 참조하세요.

작업에 라벨 추가

작업에 라벨을 추가하려면 다음 안내를 따르세요.

Console

GCP Console에서는 작업에 라벨 추가가 지원되지 않습니다.

기본 UI

기본 BigQuery 웹 UI에서는 작업에 라벨 추가가 지원되지 않습니다.

CLI

쿼리 작업에 라벨을 추가하려면 bq query 명령어를 --label 플래그와 함께 실행합니다. 여러 개의 라벨을 추가하려면 플래그를 반복합니다. --nouse_legacy_sql 플래그는 쿼리가 표준 SQL 구문임을 나타냅니다.

bq query --label key:value --nouse_legacy_sql 'query'

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

  • key:value는 쿼리 작업에 추가할 라벨에 대한 키:값 쌍에 해당합니다. 키는 고유해야 합니다. 쿼리 작업에 여러 라벨을 추가하려면 --label 플래그를 반복하고 각 라벨에 고유한 키를 지정합니다.
  • query는 유효한 표준 SQL 쿼리입니다.

예를 들면 다음과 같습니다.

쿼리 작업에 라벨을 추가하려면 다음을 입력합니다.

    bq query \
    --label department:shipping \
    --nouse_legacy_sql \
    'SELECT
       column1, column2
     FROM
       `mydataset.mytable`'

쿼리 작업에 여러 라벨을 추가하려면 --label 플래그를 반복하고 각 라벨에 고유한 키를 지정합니다. 예를 들어 쿼리 작업에 department:shipping 라벨과 cost_center:logistics 라벨을 추가하려면 다음을 입력합니다.

    bq query \
    --label department:shipping \
    --label cost_center:logistics \
    --nouse_legacy_sql \
    'SELECT
       column1, column2
     FROM
       `mydataset.mytable`'

API

작업에 라벨을 추가하려면 jobs.insert 메서드를 호출하고 작업 구성의 labels 속성을 입력합니다. API를 사용하면 모든 작업 유형에 라벨을 추가할 수 있습니다.

태그 추가

값이 빈 키가 있는 라벨은 태그로 사용됩니다. 값이 없는 새 라벨을 만들거나 기존 라벨을 태그로 만들 수 있습니다.

태그는 리소스에 라벨을 지정하려 하지만 키-값 형식은 필요하지 않은 경우 유용할 수 있습니다. 예를 들어 여러 그룹(지원, 개발 등)이 사용하는 테스트 데이터가 포함된 테이블이 있는 경우 테이블에 test_data 태그를 추가하여 식별할 수 있습니다.

태그를 추가하려면 다음 안내를 따르세요.

Console

  1. GCP Console에서 적절한 리소스(데이터세트, 테이블, 보기)를 선택합니다.

  2. 데이터세트의 경우 데이터세트 세부정보 페이지가 자동으로 열립니다. 테이블 및 보기의 경우 세부정보를 클릭하여 세부정보 페이지를 엽니다.

    테이블 세부정보

  3. 세부정보 페이지에서 라벨 오른쪽에 있는 연필 아이콘을 클릭합니다.

    라벨 연필

  4. 라벨 수정 대화 상자에서 다음을 수행합니다.

    • 라벨 추가를 클릭합니다.
    • 새 키를 입력하고 값을 비워 둡니다. 추가 태그를 적용하려면 라벨 추가를 클릭하고 반복합니다.
    • 업데이트를 클릭하여 변경사항을 저장합니다.

DDL

데이터 정의 언어(DDL) 문을 사용하면 표준 SQL 쿼리 구문으로 테이블과 보기를 만들고 수정할 수 있습니다.

자세한 내용은 데이터 정의 언어 문 사용을 참조하세요.

GCP Console에서 DDL 문을 사용하여 태그를 추가하려면 다음 안내를 따르세요.

  1. 새 쿼리 작성을 클릭합니다.

  2. 쿼리 편집기 텍스트 영역에 DDL 문을 입력합니다.

     ALTER TABLE mydataset.mytable
     SET OPTIONS (
       labels=[("tag1", ""), ("tag2", "")]
     )
     

  3. 쿼리 실행을 클릭합니다.

기본 UI

  1. 웹 UI에서 적절한 리소스(데이터세트, 테이블, 보기)를 선택합니다.

  2. 데이터세트의 경우 데이터세트 세부정보 페이지가 자동으로 열립니다. 테이블 및 보기의 경우 세부정보를 클릭하여 세부정보 페이지를 엽니다.

  3. 세부정보 페이지에서 라벨 오른쪽의 수정을 클릭합니다.

  4. 라벨 수정 대화상자에서 다음을 수행합니다.

    • 새 키를 입력하고 값을 비워 둡니다. 추가 태그를 적용하려면 라벨 추가를 클릭합니다.
    • 확인을 클릭합니다.

      태그 추가

CLI

기존 리소스에 태그를 추가하려면 bq update 명령어를 set_label 플래그와 함께 실행합니다. 키를 지정하고 그 뒤에 콜론을 입력하고, 값을 지정하지 않고 비워 둡니다.

bq update --set_label key: resource_id

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

  • key:는 태그로 사용할 라벨 키입니다.
  • resource_id는 유효한 데이터세트, 테이블, 보기 이름입니다. 리소스가 기본 프로젝트 이외의 프로젝트에 있으면 project_id:dataset 형식으로 프로젝트 ID를 추가합니다.

예를 들면 다음과 같습니다.

다음 명령어를 입력하여 mydataset.mytabletest_data 태그를 만듭니다. mydataset는 기본 프로젝트에 있습니다.

bq update --set_label test_data: mydataset

API

datasets.patch 메서드 또는 tables.patch 메서드를 호출하고 데이터세트 리소스 또는 테이블 리소스에 빈 문자열("")로 설정된 값이 있는 라벨을 추가합니다. 기존 라벨의 값을 빈 문자열로 대체하여 라벨을 태그로 만들 수 있습니다.

보기는 테이블 리소스와 같이 취급되므로 tables.patch 메서드를 사용하여 보기와 테이블을 모두 수정합니다. 또한 tables.update 메서드는 전체 데이터세트 리소스를 대체하므로 tables.patch 메서드를 사용하는 것이 좋습니다.

다음 단계

이 페이지가 도움이 되었나요? 평가를 부탁드립니다.

다음에 대한 의견 보내기...

도움이 필요하시나요? 지원 페이지를 방문하세요.