SEARCH_INDEXES 뷰
INFORMATION_SCHEMA.SEARCH_INDEXES
뷰에는 데이터 세트에 있는 각 검색 색인에 대해 하나의 행이 포함되어 있습니다.
필수 권한
검색 색인 메타데이터를 보려면 색인이 있는 테이블에 대한 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_INDEXES
뷰를 쿼리하면 데이터 세트에 있는 각 검색 색인마다 행이 하나씩 쿼리 결과에 포함됩니다.
INFORMATION_SCHEMA.SEARCH_INDEXES
뷰에는 다음과 같은 스키마가 있습니다.
열 이름 | 데이터 유형 | 값 |
---|---|---|
index_catalog |
STRING |
데이터 세트가 포함된 프로젝트의 이름입니다. |
index_schema |
STRING |
색인이 포함된 데이터 세트 이름입니다. |
table_name |
STRING |
색인이 생성되는 기본 테이블의 이름입니다. |
index_name |
STRING |
색인의 이름입니다. |
index_status |
STRING |
색인의 상태(ACTIVE , PENDING
DISABLEMENT , TEMPORARILY DISABLED 또는 PERMANENTLY DISABLED )입니다.
|
creation_time |
TIMESTAMP |
색인이 생성된 시간입니다. |
last_modification_time |
TIMESTAMP |
색인 구성이 마지막으로 수정된 시간입니다. 예를 들어 색인이 생성된 열을 삭제합니다. |
last_refresh_time |
TIMESTAMP |
테이블 데이터의 색인이 마지막으로 생성된 시간입니다. NULL 값은 색인을 아직 사용할 수 없다는 의미입니다. |
disable_time |
TIMESTAMP |
색인의 상태가 DISABLED 로 설정된 시간입니다. 색인 상태가 DISABLED 가 아닌 경우에는 NULL 값입니다. |
disable_reason |
STRING |
색인이 중지된 이유입니다. 색인 상태가 DISABLED 가 아닌 경우 NULL 입니다. |
DDL |
STRING |
색인을 만드는 데 사용되는 DDL 문입니다. |
coverage_percentage |
INTEGER |
색인이 생성된 테이블 데이터의 대략적인 비율입니다. 0%는 일부 데이터가 이미 색인으로 생성되었더라도 색인이 SEARCH 쿼리에서 사용 가능하지 않음을 의미합니다. |
unindexed_row_count |
INTEGER |
색인이 생성되지 않은 기본 테이블의 행 수입니다. |
total_logical_bytes |
INTEGER |
색인의 청구 가능한 논리적 바이트 수입니다. |
total_storage_bytes |
INTEGER |
색인의 청구 가능한 스토리지 바이트 수입니다. |
analyzer |
STRING |
검색 색인의 토큰을 생성하는 데 사용할 텍스트 분석기입니다. |
범위 및 구문
이 뷰에 대한 쿼리에는 데이터 세트 한정자가 있어야 합니다. 다음 표에는 이 뷰의 리전 범위가 나와 있습니다.
뷰 이름 | 리소스 범위 | 리전 범위 |
---|---|---|
[PROJECT_ID.]DATASET_ID.INFORMATION_SCHEMA.SEARCH_INDEXES |
데이터 세트 수준 | 데이터 세트 위치 |
- (선택사항)
PROJECT_ID
: Google Cloud 프로젝트의 ID입니다. 지정하지 않으면 기본 프로젝트가 사용됩니다.
DATASET_ID
: 데이터 세트의 ID입니다. 자세한 내용은 데이터 세트 한정자를 참조하세요.
예시
-- Returns metadata for search indexes in a single dataset.
SELECT * FROM myDataset.INFORMATION_SCHEMA.SEARCH_INDEXES;
예시
다음 예시는 my_project
프로젝트에 위치한 데이터 세트 my_dataset
에 있는 테이블의 모든 활성 검색 색인을 보여줍니다. 여기에는 검색 색인의 이름, 검색 색인을 만드는 데 사용된 DDL 문, 적용 범위 비율, 텍스트 분석기가 포함됩니다. 색인이 생성된 기본 테이블이 10GB 미만이면 색인이 채워지지 않으며, 이 경우 coverage_percentage
는 0입니다.
SELECT table_name, index_name, ddl, coverage_percentage, analyzer
FROM my_project.my_dataset.INFORMATION_SCHEMA.SEARCH_INDEXES
WHERE index_status = 'ACTIVE';
다음과 같은 결과가 표시됩니다.
+-------------+-------------+--------------------------------------------------------------------------------------+---------------------+----------------+ | table_name | index_name | ddl | coverage_percentage | analyzer | +-------------+-------------+--------------------------------------------------------------------------------------+---------------------+----------------+ | small_table | names_index | CREATE SEARCH INDEX `names_index` ON `my_project.my_dataset.small_table`(names) | 0 | NO_OP_ANALYZER | | large_table | logs_index | CREATE SEARCH INDEX `logs_index` ON `my_project.my_dataset.large_table`(ALL COLUMNS) | 100 | LOG_ANALYZER | +-------------+-------------+--------------------------------------------------------------------------------------+---------------------+----------------+