Tampilan SEARCH_INDEX_OPTIONS

Tampilan INFORMATION_SCHEMA.SEARCH_INDEX_OPTIONS berisi satu baris untuk setiap opsi indeks penelusuran dalam set data.

Izin yang diperlukan

Untuk melihat metadata indeks penelusuran, Anda memerlukan izin Identity and Access Management (IAM) bigquery.tables.get atau bigquery.tables.list pada tabel dengan indeks. Setiap peran IAM yang telah ditetapkan berikut menyertakan setidaknya salah satu izin ini:

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

Untuk mengetahui informasi selengkapnya tentang izin BigQuery, lihat Kontrol akses dengan IAM.

Skema

Saat Anda membuat kueri tampilan INFORMATION_SCHEMA.SEARCH_INDEX_OPTIONS, hasil kueri akan berisi satu baris untuk setiap opsi indeks penelusuran dalam set data.

Tampilan INFORMATION_SCHEMA.SEARCH_INDEX_OPTIONS memiliki skema berikut:

Nama kolom Jenis data Nilai
index_catalog STRING Nama project yang berisi set data.
index_schema STRING Nama set data yang berisi indeks.
table_name STRING Nama tabel dasar tempat indeks dibuat.
index_name STRING Nama indeks.
option_name STRING Nama opsi, yang dapat berupa salah satu dari berikut: analyzer, analyzer_options, atau data_types.
option_type STRING Jenis opsi.
option_value STRING Nilai opsi.

Cakupan dan sintaksis

Kueri terhadap tampilan ini harus memiliki penentu set data. Tabel berikut menjelaskan cakupan wilayah untuk tampilan ini:

Nama Tampilan Cakupan resource Cakupan region
[PROJECT_ID.]DATASET_ID.INFORMATION_SCHEMA.SEARCH_INDEX_OPTIONS Level set data Lokasi set data
Ganti kode berikut:

  • Opsional: PROJECT_ID: ID project Google Cloud Anda. Jika tidak ditentukan, project default akan digunakan.

    • DATASET_ID: ID set data Anda. Untuk mengetahui informasi selengkapnya, lihat Penentu set data.

    Contoh

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

    Contoh

    Contoh berikut membuat tiga opsi indeks penelusuran untuk kolom table1, lalu mengekstrak opsi tersebut dari kolom yang diindeks:

    CREATE SEARCH INDEX myIndex ON `mydataset.table1` (ALL COLUMNS) OPTIONS (
      analyzer = 'LOG_ANALYZER',
      analyzer_options = '{ "delimiters" : [".", "-"] }',
      data_types = ['STRING', 'INT64', 'TIMESTAMP']
    );
    
    SELECT index_name, option_name, option_type, option_value
    FROM mydataset.INFORMATION_SCHEMA.SEARCH_INDEX_OPTIONS
    WHERE table_name='table1';

    Hasilnya mirip dengan berikut ini:

    +------------+------------------+---------------+----------------------------------+
    | index_name |  option_name     | option_type   | option_value                     |
    +------------+------------------+---------------+----------------------------------+
    | myIndex    | analyzer         | STRING        | LOG_ANALYZER                     |
    | myIndex    | analyzer_options | STRING        | { "delimiters": [".", "-"] }     |
    | myIndex    | data_types       | ARRAY<STRING> | ["STRING", "INT64", "TIMESTAMP"] |
    +------------+------------------+---------------+----------------------------------+
    

    Contoh berikut membuat satu opsi indeks penelusuran untuk kolom table1, lalu mengekstrak opsi tersebut dari kolom yang diindeks. Jika opsi tidak ada, opsi default akan dihasilkan:

    CREATE SEARCH INDEX myIndex ON `mydataset.table1` (ALL COLUMNS) OPTIONS (
      analyzer = 'NO_OP_ANALYZER'
    );
    
    SELECT index_name, option_name, option_type, option_value
    FROM mydataset.INFORMATION_SCHEMA.SEARCH_INDEX_OPTIONS
    WHERE table_name='table1';

    Hasilnya mirip dengan berikut ini:

    +------------+------------------+---------------+----------------+
    | index_name |  option_name     | option_type   | option_value   |
    +------------+------------------+---------------+----------------+
    | myIndex    | analyzer         | STRING        | NO_OP_ANALYZER |
    | myIndex    | data_types       | ARRAY<STRING> | ["STRING"]     |
    +------------+------------------+---------------+----------------+
    

    Contoh berikut tidak membuat opsi indeks penelusuran untuk kolom table1, lalu mengekstrak opsi default dari kolom yang diindeks:

    CREATE SEARCH INDEX myIndex ON `mydataset.table1` (ALL COLUMNS);
    
    SELECT index_name, option_name, option_type, option_value
    FROM mydataset.INFORMATION_SCHEMA.SEARCH_INDEX_OPTIONS
    WHERE table_name='table1';

    Hasilnya mirip dengan berikut ini:

    +------------+------------------+---------------+----------------+
    | index_name |  option_name     | option_type   | option_value   |
    +------------+------------------+---------------+----------------+
    | myIndex    | analyzer         | STRING        | LOG_ANALYZER   |
    | myIndex    | data_types       | ARRAY<STRING> | ["STRING"]     |
    +------------+------------------+---------------+----------------+