INFORMATION_SCHEMA를 사용하여 구성 값 가져오기
INFORMATION_SCHEMA
는 데이터 세트, 루틴, 테이블, 뷰, 작업, 예약, 데이터 스트리밍에 대한 메타데이터에 액세스할 수 있는 일련의 뷰입니다.
INFORMATION_SCHEMA
구성 옵션 뷰를 쿼리하여 BigQuery 구성 옵션에 대한 실시간 메타데이터를 검색할 수 있습니다. 이 뷰에는 조직 또는 프로젝트 수준의 기본 설정이 포함됩니다.
시작하기 전에
사용자에게 이 문서의 각 작업을 수행하는 데 필요한 권한을 부여하는 Identity and Access Management(IAM) 역할을 부여합니다.
필수 권한
구성 옵션 메타데이터를 가져오려면 다음 IAM 권한이 필요합니다.
bigquery.config.get
다음과 같이 사전 정의된 각 IAM 역할에는 조직 옵션 메타데이터를 가져오는 데 필요한 권한이 포함되어 있습니다.
roles/bigquery.jobUser
roles/bigquery.dataEditor
roles/bigquery.dataOwner
세분화된 BigQuery 권한에 대한 자세한 내용은 역할 및 권한을 참조하세요.
ORGANIZATION_OPTIONS
뷰
구문
이 뷰에 대한 쿼리에는 리전 한정자가 있어야 합니다.
-- Returns configurations for all set options within the organization.
SELECT * FROM region-us.INFORMATION_SCHEMA.ORGANIZATION_OPTIONS;
INFORMATION_SCHEMA.ORGANIZATION_OPTIONS
뷰를 쿼리하면 조직의 구성마다 행이 한 개씩 쿼리 결과에 포함됩니다.
INFORMATION_SCHEMA.ORGANIZATION_OPTIONS
뷰에는 다음과 같은 스키마가 있습니다.
열 이름 | 데이터 유형 | 값 |
---|---|---|
OPTION_NAME |
STRING |
옵션 테이블의 이름 값 중 하나 |
OPTION_DESCRIPTION |
STRING |
옵션 설명 |
OPTION_TYPE |
STRING |
OPTION_VALUE 의 데이터 유형 |
OPTION_VALUE |
STRING |
옵션의 현재 값 |
옵션 표
OPTION_NAME |
OPTION_TYPE |
OPTION_VALUE |
---|---|---|
default_time_zone |
STRING |
이 조직의 기본 시간대 |
default_kms_key_name |
STRING |
이 조직의 기본 키 이름 |
default_query_job_timeout_ms |
STRING |
이 조직의 기본 제한 시간(밀리초) |
예시
다음 예시에서는 INFORMATION_SCHEMA.ORGANIZATION_OPTIONS
에서 OPTION_NAME
, OPTION_TYPE
, OPTION_VALUE
열을 검색합니다.
SELECT option_name, option_type, option_value FROM `region-us`.INFORMATION_SCHEMA.ORGANIZATION_OPTIONS;
결과는 다음과 비슷합니다.
+---------------------------------+---------------+--------------------------+ | option_name | option_type | option_value | +---------------------------------+---------------+--------------------------+ | default_time_zone | STRING | America/Los_Angeles | +---------------------------------+---------------+--------------------------+ | default_kms_key_name | STRING | test/testkey1 | +---------------------------------+---------------+--------------------------+ | default_query_job_timeout_ms | INT64 | 18000000 | +---------------------------------+---------------+--------------------------+
PROJECT_OPTIONS
뷰
구문
이 뷰에 대한 쿼리에는 리전 한정자가 있어야 합니다.
-- Returns configurations for all set options within the project.
SELECT * FROM region-us.INFORMATION_SCHEMA.PROJECT_OPTIONS;
INFORMATION_SCHEMA.PROJECT_OPTIONS
뷰를 쿼리하면 프로젝트의 구성마다 행이 한 개씩 쿼리 결과에 포함됩니다.
INFORMATION_SCHEMA.PROJECT_OPTIONS
뷰에는 다음과 같은 스키마가 있습니다.
열 이름 | 데이터 유형 | 값 |
---|---|---|
OPTION_NAME |
STRING |
지정된 구성 설정의 옵션 ID |
OPTION_DESCRIPTION |
STRING |
옵션 설명 |
OPTION_TYPE |
STRING |
OPTION_VALUE 의 데이터 유형 |
OPTION_VALUE |
STRING |
옵션의 현재 값 |
옵션 표
OPTION_NAME |
OPTION_TYPE |
OPTION_VALUE |
---|---|---|
default_time_zone |
STRING |
이 프로젝트의 기본 시간대 |
default_kms_key_name |
STRING |
이 프로젝트의 기본 키 이름 |
default_query_job_timeout_ms |
STRING |
이 프로젝트의 기본 제한 시간(밀리초) |
예시
다음 예시에서는 INFORMATION_SCHEMA.PROJECT_OPTIONS
뷰에서 OPTION_NAME
, OPTION_TYPE
, OPTION_VALUE
열을 검색합니다.
SELECT option_name, option_type, option_value FROM `region-us`.INFORMATION_SCHEMA.PROJECT_OPTIONS;
결과는 다음과 비슷합니다.
+---------------------------------+---------------+----------------------+ | option_name | option_type | option_value | +---------------------------------+---------------+----------------------+ | default_time_zone | STRING | America/Chicago | +---------------------------------+---------------+----------------------+ | default_kms_key_name | STRING | test/testkey1 | +---------------------------------+---------------+----------------------+ | default_query_job_timeout_ms | INT64 | 36000000 | +---------------------------------+---------------+----------------------+
EFFECTIVE_PROJECT_OPTIONS
뷰
구문
이 뷰에 대한 쿼리에는 리전 한정자가 있어야 합니다.
-- Returns effective configurations for all set options within the project.
SELECT * FROM region-us.INFORMATION_SCHEMA.EFFECTIVE_PROJECT_OPTIONS;
INFORMATION_SCHEMA.EFFECTIVE_PROJECT_OPTIONS
뷰를 쿼리하면 프로젝트의 구성마다 행이 한 개씩 쿼리 결과에 포함됩니다.
INFORMATION_SCHEMA.EFFECTIVE_PROJECT_OPTIONS
뷰에는 다음과 같은 스키마가 있습니다.
열 이름 | 데이터 유형 | 값 |
---|---|---|
OPTION_NAME |
STRING |
지정된 구성 설정의 옵션 ID |
OPTION_DESCRIPTION |
STRING |
옵션 설명 |
OPTION_TYPE |
STRING |
OPTION_VALUE 의 데이터 유형 |
OPTION_SET_LEVEL |
STRING |
설정이 정의된 계층 구조의 수준으로 가능한 값은 DEFAULT , ORGANIZATION 또는 PROJECTS 입니다.
|
OPTION_SET_ON_ID |
STRING |
OPTION_SET_LEVEL 값에 따라 값을 설정합니다.
|
OPTION_VALUE |
STRING |
옵션의 현재 값 |
옵션 표
OPTION_NAME |
OPTION_TYPE |
OPTION_VALUE |
---|---|---|
default_time_zone |
STRING |
이 프로젝트의 유효 기본 시간대 |
default_kms_key_name |
STRING |
이 프로젝트의 유효한 기본 키 이름 |
default_query_job_timeout_ms |
INT64 |
이 프로젝트의 유효 기본 제한 시간(밀리초) |
예시
예시 1:
다음 예시는 INFORMATION_SCHEMA.PROJECT_OPTIONS
뷰에서 OPTION_NAME
, OPTION_TYPE
, OPTION_VALUE
, OPTION_SET_LEVEL
, OPTION_SET_ON_ID
열을 검색합니다.
SELECT option_name, option_type, option_value, option_set_level, option_set_on_id FROM `region-us`.INFORMATION_SCHEMA.PROJECT_OPTIONS;
결과는 다음과 비슷합니다.
+---------------------------------+---------------+-----------------------+---------------------+-----------------------+ | option_name | option_type | option_value | option_set_level | option_set_on_id | +---------------------------------+---------------+-----------------------+---------------------+-----------------------+ | default_time_zone | STRING | America/New_York | organizations | my_organization_id | +---------------------------------+---------------+-----------------------+---------------------+-----------------------+ | default_kms_key_name | STRING | test/testkey1 | projects | my_project_id | +---------------------------------+---------------+-----------------------+---------------------+-----------------------+ | default_query_job_timeout_ms | INT64 | 18000000 | projects | my_project_id | +---------------------------------+---------------+-----------------------+---------------------+-----------------------+