라벨 업데이트
이 페이지에서는 BigQuery 리소스의 라벨을 업데이트하는 방법을 설명합니다.
시작하기 전에
사용자에게 이 문서의 각 작업을 수행하는 데 필요한 권한을 부여하는 Identity and Access Management(IAM) 역할을 부여합니다. 태스크를 수행하는 데 필요한 권한(있는 경우)이 태스크의 '필요한 권한' 섹션에 나열됩니다.
데이터 세트 라벨 업데이트
데이터세트 라벨을 다음 방법으로 업데이트할 수 있습니다.
- Google Cloud 콘솔 사용
- SQL DDL 문 사용
- bq 명령줄 도구의
bq update
명령어 사용 datasets.patch
API 메서드 호출- 클라이언트 라이브러리 사용
필수 권한
데이터 세트 라벨을 업데이트하려면 bigquery.datasets.update
IAM 권한이 필요합니다.
다음과 같은 사전 정의된 IAM 역할에는 데이터 세트 라벨을 업데이트하는 데 필요한 권한이 포함되어 있습니다.
roles/bigquery.dataOwner
roles/bigquery.admin
또한 bigquery.datasets.create
권한이 있으면 만드는 데이터 세트의 라벨을 업데이트할 수 있습니다.
BigQuery의 IAM 역할과 권한에 대한 자세한 내용은 사전 정의된 역할 및 권한을 참조하세요.
데이터세트 라벨 업데이트
데이터 세트의 라벨을 업데이트하려면 다음 옵션 중 하나를 선택합니다.
콘솔
Google Cloud 콘솔에서 데이터 세트를 선택합니다.
데이터세트 세부정보 페이지에서 라벨 오른쪽에 있는 연필 아이콘을 클릭합니다.
라벨 수정 대화상자에서 다음을 수행합니다.
- 추가 라벨을 적용하려면 라벨 추가를 클릭합니다. 각 키는 데이터 세트당 한 번만 사용할 수 있지만 동일한 프로젝트의 여러 데이터 세트에 같은 키를 사용할 수 있습니다.
- 기존 키 또는 값을 수정하여 라벨을 업데이트합니다.
- Update(업데이트)를 클릭하여 변경사항을 저장합니다.
SQL
기존 데이터 세트의 라벨을 설정하려면 ALTER SCHEMA SET OPTIONS
DDL 문을 사용합니다. 라벨을 설정하면 데이터 세트의 기존 라벨을 덮어씁니다. 다음 예시에서는 mydataset
데이터 세트에 단일 라벨을 설정합니다.
Google Cloud Console에서 BigQuery 페이지로 이동합니다.
쿼리 편집기에서 다음 문을 입력합니다.
ALTER SCHEMA mydataset SET OPTIONS (labels = [('sensitivity', 'high')]);
실행을 클릭합니다.
쿼리를 실행하는 방법에 대한 자세한 내용은 대화형 쿼리 실행을 참조하세요.
bq
라벨을 추가하거나 데이터 세트 라벨을 업데이트하려면 set_label
플래그가 지정된 bq update
명령어를 실행합니다. 여러 개의 라벨을 추가하거나 업데이트하려면 플래그를 반복합니다.
데이터 세트가 기본 프로젝트 이외의 프로젝트에 있는 경우 데이터 세트에 프로젝트 ID를 [PROJECT_ID]:[DATASET]
형식으로 추가합니다.
bq update \ --set_label key:value \ project_id:dataset
각 항목의 의미는 다음과 같습니다.
- key:value는 추가하거나 업데이트하려는 라벨의 키-값 쌍에 해당합니다. 기존 라벨과 동일한 키를 지정하는 경우 기존 라벨의 값이 업데이트됩니다. 키는 고유해야 합니다.
- project_id는 프로젝트 ID입니다.
- dataset는 업데이트하는 데이터 세트입니다.
예시:
mydataset
의 department
라벨을 업데이트하려면 bq update
명령어를 입력하고 라벨 키에 department
를 지정합니다. 예를 들어 department:shipping
라벨을 department:logistics
로 업데이트하려면 다음 명령어를 입력합니다. mydataset
는 기본 프로젝트가 아닌 myotherproject
에 있습니다.
bq update \
--set_label department:logistics \
myotherproject:mydataset
출력은 다음과 같이 표시됩니다.
Dataset 'myotherproject:mydataset' successfully updated.
API
라벨을 추가하거나 기존 데이터 세트의 라벨을 업데이트하려면 datasets.patch
메서드를 호출하고 데이터 세트 리소스의 labels
속성에 추가하거나 해당 속성을 업데이트합니다.
datasets.update
메서드는 전체 데이터 세트 리소스를 대체하므로 datasets.patch
메서드를 사용하는 것이 좋습니다.
Go
이 샘플을 사용해 보기 전에 BigQuery 빠른 시작: 클라이언트 라이브러리 사용의 Go 설정 안내를 따르세요. 자세한 내용은 BigQuery Go API 참고 문서를 확인하세요.
BigQuery에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 클라이언트 라이브러리의 인증 설정을 참조하세요.
자바
이 샘플은 자바용 Google HTTP 클라이언트 라이브러리를 사용하여 BigQuery API에 요청을 전송합니다.
이 샘플을 사용해 보기 전에 BigQuery 빠른 시작: 클라이언트 라이브러리 사용의 Java 설정 안내를 따르세요. 자세한 내용은 BigQuery Java API 참고 문서를 확인하세요.
BigQuery에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 클라이언트 라이브러리의 인증 설정을 참조하세요.
Node.js
이 샘플을 사용해 보기 전에 BigQuery 빠른 시작: 클라이언트 라이브러리 사용의 Node.js 설정 안내를 따르세요. 자세한 내용은 BigQuery Node.js API 참고 문서를 확인하세요.
BigQuery에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 클라이언트 라이브러리의 인증 설정을 참조하세요.
Python
이 샘플을 사용해 보기 전에 BigQuery 빠른 시작: 클라이언트 라이브러리 사용의 Python 설정 안내를 따르세요. 자세한 내용은 BigQuery Python API 참고 문서를 확인하세요.
BigQuery에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 클라이언트 라이브러리의 인증 설정을 참조하세요.
테이블 및 뷰 라벨 업데이트
테이블 또는 뷰를 만든 후에 다음과 같은 방법으로 라벨을 업데이트할 수 있습니다.
- Google Cloud 콘솔 사용
- bq 명령줄 도구의
bq update
명령어 사용 tables.patch
API 메서드 호출- 뷰는 테이블 리소스와 같이 취급되므로
tables.patch
메서드를 사용하여 뷰와 테이블을 모두 수정합니다.
- 뷰는 테이블 리소스와 같이 취급되므로
- 클라이언트 라이브러리 사용
필수 권한
테이블이나 뷰 라벨을 업데이트하려면 bigquery.tables.update
IAM 권한이 필요합니다.
다음과 같은 사전 정의된 IAM 역할마다 테이블이나 뷰 라벨을 업데이트하는 데 필요한 권한이 포함되어 있습니다.
roles/bigquery.dataEditor
roles/bigquery.dataOwner
roles/bigquery.admin
또한 bigquery.datasets.create
권한이 있으면 만드는 데이터 세트에서 테이블 및 뷰의 라벨을 업데이트할 수 있습니다.
BigQuery의 IAM 역할과 권한에 대한 자세한 내용은 사전 정의된 역할 및 권한을 참조하세요.
테이블 또는 뷰 라벨 업데이트
테이블 또는 뷰 라벨을 업데이트하려면 다음 안내를 따르세요.
콘솔
Google Cloud 콘솔에서 테이블 또는 뷰를 선택합니다.
세부정보 탭을 클릭한 후 라벨 오른쪽에 있는 연필 아이콘을 클릭합니다.
라벨 수정 대화상자에서 다음을 수행합니다.
- 추가 라벨을 적용하려면 라벨 추가를 클릭합니다. 각 키는 테이블 또는 뷰당 한 번만 사용할 수 있지만 데이터 세트가 다른 테이블 또는 뷰에는 동일한 키를 사용할 수 있습니다.
- 기존 키 또는 값을 수정하여 라벨을 업데이트합니다.
- Update(업데이트)를 클릭하여 변경사항을 저장합니다.
SQL
ALTER TABLE SET OPTIONS
DDL 문을 사용하여 기존 테이블에 라벨을 설정하거나 ALTER VIEW SET OPTIONS
DDL 문을 사용하여 기존 뷰에 라벨을 설정합니다. 라벨을 설정하면 테이블 또는 뷰의 기존 라벨을 덮어씁니다. 다음 예시에서는 테이블 mytable
에 라벨 두 개를 설정합니다.
Google Cloud 콘솔에서 BigQuery 페이지로 이동합니다.
쿼리 편집기에서 다음 문을 입력합니다.
ALTER TABLE mydataset.mytable SET OPTIONS ( labels = [('department', 'shipping'), ('cost_center', 'logistics')]);
실행을 클릭합니다.
쿼리를 실행하는 방법에 대한 자세한 내용은 대화형 쿼리 실행을 참조하세요.
bq
라벨을 추가하거나 테이블 또는 뷰 라벨을 업데이트하려면 set_label
플래그가 지정된 bq
update
명령어를 실행합니다. 여러 개의 라벨을 추가하거나 업데이트하려면 플래그를 반복합니다.
테이블 또는 뷰가 기본 프로젝트 이외의 프로젝트에 있으면 프로젝트 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는 업데이트하는 테이블 또는 뷰의 이름입니다.
예시:
mytable
의 department
라벨을 업데이트하려면 bq update
명령어를 입력하고 라벨 키에 department
를 지정합니다. 예를 들어 mytable
에서 department:shipping
라벨을 department:logistics
로 업데이트하려면 다음 명령어를 입력합니다. mytable
는 기본 프로젝트가 아닌 myotherproject
에 있습니다.
bq update \
--set_label department:logistics \
myotherproject:mydataset.mytable
출력 결과는 다음과 같습니다.
Table 'myotherproject:mydataset.mytable' successfully updated.
API
라벨을 추가하거나 기존 테이블 또는 뷰의 라벨을 업데이트하려면 tables.patch
메서드를 호출하고 테이블 리소스의 labels
속성에 추가하거나 해당 속성을 업데이트합니다.
뷰는 테이블 리소스와 같이 취급되므로 tables.patch
메서드를 사용하여 뷰와 테이블을 모두 수정합니다.
tables.update
메서드는 전체 데이터 세트 리소스를 대체하므로 tables.patch
메서드를 사용하는 것이 좋습니다.
Go
이 샘플을 사용해 보기 전에 BigQuery 빠른 시작: 클라이언트 라이브러리 사용의 Go 설정 안내를 따르세요. 자세한 내용은 BigQuery Go API 참고 문서를 확인하세요.
BigQuery에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 클라이언트 라이브러리의 인증 설정을 참조하세요.
자바
이 샘플은 Java용 Google HTTP 클라이언트 라이브러리를 사용하여 BigQuery API에 요청을 전송합니다.
이 샘플을 사용해 보기 전에 BigQuery 빠른 시작: 클라이언트 라이브러리 사용의 Java 설정 안내를 따르세요. 자세한 내용은 BigQuery Java API 참고 문서를 확인하세요.
BigQuery에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 클라이언트 라이브러리의 인증 설정을 참조하세요.
Node.js
이 샘플을 사용해 보기 전에 BigQuery 빠른 시작: 클라이언트 라이브러리 사용의 Node.js 설정 안내를 따르세요. 자세한 내용은 BigQuery Node.js API 참고 문서를 확인하세요.
BigQuery에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 클라이언트 라이브러리의 인증 설정을 참조하세요.
Python
이 샘플을 사용해 보기 전에 BigQuery 빠른 시작: 클라이언트 라이브러리 사용의 Python 설정 안내를 따르세요. 자세한 내용은 BigQuery Python API 참고 문서를 확인하세요.
BigQuery에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 클라이언트 라이브러리의 인증 설정을 참조하세요.
작업 라벨 업데이트
현재 작업 라벨 업데이트는 지원되지 않습니다. 작업 라벨을 업데이트하려면 새 라벨을 지정해 작업을 다시 제출하세요.
라벨을 태그로 변환
값이 빈 키가 있는 라벨은 태그로 사용됩니다. 값이 없는 새 라벨을 만들거나 데이터 세트, 테이블 또는 뷰의 기존 라벨을 태그로 전환할 수 있습니다. 작업 라벨을 태그로 변환할 수는 없습니다.
태그는 리소스에 라벨을 지정하려 하지만 key:value
형식은 필요하지 않은 경우 유용할 수 있습니다. 예를 들어 여러 그룹(지원, 개발 등)이 사용하는 테스트 데이터가 포함된 테이블이 있는 경우 테이블에 test_data
태그를 추가하여 식별할 수 있습니다.
필수 권한
라벨을 태그로 변환하려면 다음 IAM 권한이 필요합니다.
bigquery.datasets.update
(데이터 세트 라벨을 변환할 수 있음)bigquery.tables.update
(테이블 또는 뷰 라벨을 변환할 수 있음)
사전 정의된 다음 각 IAM 역할에는 데이터 세트 라벨 변환에 필요한 권한이 포함되어 있습니다.
roles/bigquery.dataOwner
roles/bigquery.admin
다음과 같은 사전 정의된 IAM 역할마다 테이블이나 뷰 라벨을 변환하는 데 필요한 권한이 포함되어 있습니다.
roles/bigquery.dataEditor
roles/bigquery.dataOwner
roles/bigquery.admin
또한 bigquery.datasets.create
권한이 있는 경우 만드는 데이터 세트의 라벨과 해당 데이터 세트의 테이블과 뷰를 업데이트할 수 있습니다.
BigQuery의 IAM 역할과 권한에 대한 자세한 내용은 사전 정의된 역할 및 권한을 참조하세요.
라벨을 태그로 변환
라벨을 태그로 변환하려면 다음 안내를 따르세요.
콘솔
Google Cloud 콘솔에서 데이터 세트, 테이블 또는 뷰를 선택합니다.
데이터세트의 경우 데이터세트 세부정보 페이지가 자동으로 열립니다. 테이블 및 뷰의 경우 세부정보를 클릭하여 세부정보 페이지를 엽니다.
세부정보 페이지에서 라벨 오른쪽에 있는 연필 아이콘을 클릭합니다.
라벨 수정 대화상자에서 다음을 수행합니다.
- 기존 라벨 값을 삭제합니다.
- 업데이트를 클릭합니다.
bq
라벨을 태그로 변환하려면 set_label
플래그가 지정된 bq update
명령어를 사용합니다. 키를 지정하고 그 뒤에 콜론을 입력하고, 값을 지정하지 않고 비워 둡니다. 기존 라벨이 태그로 업데이트됩니다.
bq update \ --set_label key: \ resource_id
각 항목의 의미는 다음과 같습니다.
- key:는 태그로 업데이트할 라벨 키입니다.
- resource_id는 유효한 데이터 세트, 테이블 또는 뷰 이름입니다. 리소스가 기본 프로젝트 이외의 프로젝트에 있으면
project_id:dataset
형식으로 프로젝트 ID를 추가합니다.
예시:
다음 명령어를 입력하여 mydataset
의 기존 test_data:development
라벨을 태그로 변경합니다. mydataset
는 기본 프로젝트가 아닌 myotherproject
에 있습니다.
bq update --set_label test_data: myotherproject:mydataset
출력 결과는 다음과 같습니다.
Dataset 'myotherproject:mydataset' successfully updated.
API
기존 라벨을 태그로 전환하려면 datasets.patch
메서드 또는 tables.patch
메서드를 호출하고 데이터 세트 리소스 또는 테이블 리소스에서 라벨 값을 빈 문자열(""
)로 바꿉니다.
뷰는 테이블 리소스와 같이 취급되므로 tables.patch
메서드를 사용하여 뷰와 테이블을 모두 수정합니다. 또한 tables.update
메서드는 전체 데이터 세트 리소스를 대체하므로 tables.patch
메서드를 사용하는 것이 좋습니다.
다음 단계
- BigQuery 리소스에 대한 라벨 추가 방법 알아보기
- BigQuery 리소스의 라벨 확인 방법 알아보기
- 라벨을 사용한 리소스 필터링 방법 알아보기
- BigQuery 리소스의 라벨 삭제 방법 알아보기
- Resource Manager 문서의 라벨 사용 읽어보기