SEARCH_INDEX_COLUMN_OPTIONS 뷰

INFORMATION_SCHEMA.SEARCH_INDEX_COLUMN_OPTIONS 뷰에는 데이터 세트의 테이블에 있는 검색 색인 생성 열에 설정된 각 옵션에 대해 행이 하나씩 포함됩니다.

필수 권한

검색 색인 메타데이터를 보려면 색인이 있는 테이블에 대한 bigquery.tables.get 또는 bigquery.tables.list Identity and Access Management(IAM) 권한이 필요합니다. 다음과 같은 사전 정의된 IAM 역할에는 이러한 권한 중 하나 이상이 포함되어 있습니다.

  • roles/bigquery.admin
  • roles/bigquery.dataEditor
  • roles/bigquery.dataOwner
  • roles/bigquery.dataViewer
  • roles/bigquery.metadataViewer
  • roles/bigquery.user

BigQuery 권한에 대한 자세한 내용은 IAM으로 액세스 제어를 참조하세요.

스키마

INFORMATION_SCHEMA.SEARCH_INDEX_COLUMN_OPTIONS 뷰를 쿼리하면 쿼리 결과에 데이터 세트의 테이블에 있는 검색 색인이 생성된 열에 설정된 각 옵션에 대한 행이 하나씩 포함됩니다.

INFORMATION_SCHEMA.SEARCH_INDEX_OPTIONS 뷰에는 다음과 같은 스키마가 있습니다.

열 이름 데이터 유형
index_catalog STRING 데이터 세트가 포함된 프로젝트의 이름입니다.
index_schema STRING 색인이 포함된 데이터 세트 이름입니다.
table_name STRING 색인이 생성되는 기본 테이블의 이름입니다.
index_name STRING 색인의 이름입니다.
column_name STRING 옵션이 설정된 색인이 생성된 열의 이름입니다.
option_name STRING 열에 지정된 옵션의 이름입니다.
option_type STRING 옵션의 유형입니다.
option_value STRING 옵션의 값입니다.

범위 및 구문

이 뷰에 대한 쿼리에는 데이터 세트 한정자가 있어야 합니다. 다음 표에는 이 뷰의 리전 범위가 나와 있습니다.

뷰 이름 리소스 범위 리전 범위
[PROJECT_ID.]DATASET_ID.INFORMATION_SCHEMA.SEARCH_INDEX_COLUMN_OPTIONS 데이터 세트 수준 데이터 세트 위치
다음을 바꿉니다.
  • 선택사항: PROJECT_ID: Google Cloud 프로젝트의 ID입니다. 지정하지 않으면 기본 프로젝트가 사용됩니다.
  • DATASET_ID: 데이터 세트의 ID입니다. 자세한 내용은 데이터 세트 한정자를 참조하세요.

예시

-- Returns metadata for search index column options in a single dataset.
SELECT * FROM myDataset.INFORMATION_SCHEMA.SEARCH_INDEX_COLUMN_OPTIONS;

다음 예에서는 기본 색인 열 세부사항을 COLUMN로 설정하고 col2col3의 세부사항을 각각 GLOBALCOLUMN로 개별적으로 설정합니다. 이 예시에서 col2col3 열은 세부사항이 명시적으로 설정되어 있으므로 결과에 표시됩니다. col1 열의 세부사항은 기본 세부사항을 사용하므로 표시되지 않습니다.

CREATE SEARCH INDEX index1 ON `mydataset.table1` (
  ALL COLUMNS WITH COLUMN OPTIONS (
    col2 OPTIONS(index_granularity = 'GLOBAL'),
    col3 OPTIONS(index_granularity = 'COLUMN')
  )
)
OPTIONS(
  default_index_column_granularity = 'COLUMN'
);

SELECT
  index_column_name, option_name, option_type, option_value
FROM
  mydataset.INFORMATION_SCHEMA.SEARCH_INDEX_COLUMN_OPTIONS
WHERE
  index_schema = 'mydataset' AND index_name = 'index1' AND table_name = 'table1';

결과는 다음과 비슷합니다.

+-------------+-------------------+---------------+--------------+
| column_name |  option_name      | option_type   | option_value |
+-------------+-------------------+---------------+--------------+
| col2        | index_granularity | STRING        | GLOBAL       |
| col3        | index_granularity | STRING        | COLUMN       |
+-------------+-------------------+---------------+--------------+

ALL COLUMNS를 사용하지 않는 다음 등가 예에서는 기본 색인 열 세부사항을 COLUMN로 설정하고 두 열의 세부사항을 각각 GLOBALCOLUMN로 개별적으로 설정합니다.

CREATE SEARCH INDEX index1 ON `mydataset.table1` (
  col1,
  col2 OPTIONS(index_granularity = 'GLOBAL'),
  col3 OPTIONS(index_granularity = 'COLUMN')
)
OPTIONS(
  default_index_column_granularity = 'COLUMN'
);

SELECT
  index_column_name, option_name, option_type, option_value
FROM
  mydataset.INFORMATION_SCHEMA.SEARCH_INDEX_COLUMN_OPTIONS
WHERE
  index_schema = 'mydataset' AND index_name = 'index1' AND table_name = 'table1';

결과는 다음과 비슷합니다.

+-------------+-------------------+---------------+--------------+
| column_name |  option_name      | option_type   | option_value |
+-------------+-------------------+---------------+--------------+
| col2        | index_granularity | STRING        | GLOBAL       |
| col3        | index_granularity | STRING        | COLUMN       |
+-------------+-------------------+---------------+--------------+