SCHEMATA_OPTIONS 뷰
INFORMATION_SCHEMA.SCHEMATA_OPTIONS 뷰에는 프로젝트의 각 데이터 세트에 설정된 각 옵션에 대한 하나의 행이 포함되어 있습니다.
시작하기 전에
데이터 세트 메타데이터에 대해 SCHEMATA_OPTIONS 뷰를 쿼리하려면 프로젝트 수준에서 bigquery.datasets.get Identity and Access Management(IAM) 권한이 필요합니다.
다음과 같은 각 사전 정의된 IAM 역할에는 SCHEMATA_OPTIONS 뷰를 가져오기 위해 필요한 권한이 포함되어 있습니다.
roles/bigquery.adminroles/bigquery.dataEditorroles/bigquery.dataOwnerroles/bigquery.dataViewer
BigQuery 권한에 대한 자세한 내용은 IAM으로 액세스 제어를 참조하세요.
스키마
INFORMATION_SCHEMA.SCHEMATA_OPTIONS 뷰를 쿼리할 때 쿼리 결과에는 프로젝트의 각 데이터 세트에 설정된 각 옵션에 대한 하나의 행이 포함됩니다.
INFORMATION_SCHEMA.SCHEMATA_OPTIONS 뷰에는 다음과 같은 스키마가 있습니다.
| 열 이름 | 데이터 유형 | 값 |
|---|---|---|
catalog_name |
STRING |
데이터 세트가 포함된 프로젝트 이름 |
schema_name |
STRING |
데이터 세트 이름(또는 datasetId라고 함) |
option_name |
STRING |
옵션의 이름입니다. 지원되는 옵션 목록은 스키마 옵션 목록을 참조하세요.
|
option_type |
STRING |
옵션의 데이터 유형입니다. |
option_value |
STRING |
옵션의 값입니다. |
범위 및 구문
이 뷰에 대한 쿼리에는 리전 한정자가 있어야 합니다. 리전 한정자를 지정하지 않으면 미국 리전에서 메타데이터가 검색됩니다. 다음 표에는 이 뷰의 리전 범위가 나와 있습니다.
| 뷰 이름 | 리소스 범위 | 리전 범위 |
|---|---|---|
[PROJECT_ID.]INFORMATION_SCHEMA.SCHEMATA_OPTIONS |
프로젝트 수준 | 미국 리전 |
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.SCHEMATA_OPTIONS |
프로젝트 수준 | REGION |
-
선택사항:
PROJECT_ID: Google Cloud 프로젝트의 ID입니다. 지정하지 않으면 기본 프로젝트가 사용됩니다. -
REGION: 모든 데이터 세트 리전 이름입니다. 예를 들면`region-us`입니다.
예시
-- Returns metadata for datasets in a region.
SELECT * FROM region-us.INFORMATION_SCHEMA.SCHEMATA_OPTIONS;
예시
프로젝트의 모든 데이터 세트에 대한 기본 테이블 만료 시간 검색
기본 프로젝트가 아닌 프로젝트에 쿼리를 실행하려면 프로젝트 ID를 다음 형식으로 데이터 세트에 추가합니다.
`PROJECT_ID`.INFORMATION_SCHEMA.SCHEMATA_OPTIONS
`myproject`.INFORMATION_SCHEMA.SCHEMATA_OPTIONS입니다.
SELECT * FROM INFORMATION_SCHEMA.SCHEMATA_OPTIONS WHERE option_name = 'default_table_expiration_days';
결과는 다음과 비슷합니다.
+----------------+---------------+-------------------------------+-------------+---------------------+ | catalog_name | schema_name | option_name | option_type | option_value | +----------------+---------------+-------------------------------+-------------+---------------------+ | myproject | mydataset3 | default_table_expiration_days | FLOAT64 | 0.08333333333333333 | | myproject | mydataset2 | default_table_expiration_days | FLOAT64 | 90.0 | | myproject | mydataset1 | default_table_expiration_days | FLOAT64 | 30.0 | +----------------+---------------+-------------------------------+-------------+---------------------+
프로젝트에서 모든 데이터 세트의 라벨 검색
기본 프로젝트가 아닌 프로젝트에 쿼리를 실행하려면 프로젝트 ID를 다음 형식으로 데이터 세트에 추가합니다.
`PROJECT_ID`.INFORMATION_SCHEMA.SCHEMATA_OPTIONS
`myproject`.INFORMATION_SCHEMA.SCHEMATA_OPTIONS.
SELECT * FROM INFORMATION_SCHEMA.SCHEMATA_OPTIONS WHERE option_name = 'labels';
결과는 다음과 비슷합니다.
+----------------+---------------+-------------+---------------------------------+------------------------+
| catalog_name | schema_name | option_name | option_type | option_value |
+----------------+---------------+-------------+---------------------------------+------------------------+
| myproject | mydataset1 | labels | ARRAY<STRUCT<STRING, STRING>> | [STRUCT("org", "dev")] |
| myproject | mydataset2 | labels | ARRAY<STRUCT<STRING, STRING>> | [STRUCT("org", "dev")] |
+----------------+---------------+-------------+---------------------------------+------------------------+