Tampilan TABLE_STORAGE_USAGE_TIMELINE
Tampilan INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE
memberikan total penggunaan penyimpanan harian selama 90 hari terakhir untuk jenis tabel berikut:
- Tabel standar
- Tampilan terwujud
- Clone tabel yang memiliki delta dalam byte dari tabel dasar
- Snapshot tabel yang memiliki delta dalam byte dari tabel dasar
Tabel yang tidak memiliki byte yang dapat ditagih tidak disertakan dalam
tampilan INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE
. Hal ini mencakup
jenis tabel berikut:
- Tabel eksternal
- Tabel anonim
- Tabel kosong
- Clone tabel yang tidak memiliki delta dalam byte dari tabel dasar
- Snapshot tabel yang tidak memiliki delta dalam byte dari tabel dasar
Saat Anda membuat kueri tampilan INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE
, hasil kueri akan berisi satu baris per hari untuk setiap tabel atau tampilan terwujud untuk project saat ini.
Data dalam tabel ini tidak disimpan secara real time. Perlu waktu sekitar 72 jam agar data tabel ditampilkan dalam tampilan ini.
Penggunaan penyimpanan ditampilkan dalam MiB detik. Misalnya, jika project menggunakan 1.000.000 byte fisik selama 86.400 detik (24 jam), total penggunaan fisik adalah 86.400.000.000 byte detik, yang dikonversi menjadi 82.397 MiB detik, seperti yang ditunjukkan dalam contoh berikut:
86,400,000,000 / 1,024 / 1,024 = 82,397
Ini adalah nilai yang akan ditampilkan oleh kolom BILLABLE_TOTAL_PHYSICAL_USAGE
.
Untuk mengetahui informasi selengkapnya, lihat Detail harga penyimpanan.
Izin yang diperlukan
Untuk membuat kueri tabel virtual INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE
, Anda memerlukan izin Identity and Access Management (IAM) berikut:
bigquery.tables.get
bigquery.tables.list
Setiap peran IAM yang telah ditetapkan berikut mencakup izin sebelumnya:
roles/bigquery.dataViewer
roles/bigquery.dataEditor
roles/bigquery.metadataViewer
roles/bigquery.admin
Untuk kueri dengan penentu region, Anda harus memiliki izin untuk project.
Untuk mengetahui informasi selengkapnya tentang izin BigQuery, lihat Kontrol akses dengan IAM.
Skema
Tampilan INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE
memiliki skema berikut:
USAGE_DATE |
DATE |
Tanggal penagihan untuk byte yang ditampilkan, menggunakan zona waktu America/Los_Angeles |
PROJECT_ID |
STRING |
ID project dari project yang berisi set data |
TABLE_CATALOG |
STRING |
ID project dari project yang berisi set data |
PROJECT_NUMBER |
INT64 |
Nomor project dari project yang berisi set data |
TABLE_SCHEMA |
STRING |
Nama set data yang berisi tabel atau tampilan terwujud,
juga disebut sebagai datasetId |
TABLE_NAME |
STRING |
Nama tabel atau tampilan terwujud, juga disebut sebagai
tableId |
BILLABLE_TOTAL_LOGICAL_USAGE |
INT64 |
Total penggunaan logis, dalam detik MiB. Menampilkan 0 jika set data menggunakan model penagihan penyimpanan fisik. |
BILLABLE_ACTIVE_LOGICAL_USAGE |
INT64 |
Penggunaan logis yang berusia kurang dari 90 hari, dalam hitungan detik MiB. Menampilkan 0 jika set data menggunakan model penagihan penyimpanan fisik. |
BILLABLE_LONG_TERM_LOGICAL_USAGE |
INT64 |
Penggunaan logis yang sudah lebih dari 90 hari, dalam satuan MiB detik. Menampilkan 0 jika set data menggunakan model penagihan penyimpanan fisik. |
BILLABLE_TOTAL_PHYSICAL_USAGE |
INT64 |
Total penggunaan dalam MiB detik. Hal ini mencakup byte fisik yang digunakan untuk penyimpanan fail-safe dan perjalanan waktu. Menampilkan 0 jika set data menggunakan model penagihan penyimpanan logis. |
BILLABLE_ACTIVE_PHYSICAL_USAGE |
INT64 |
Penggunaan fisik yang berusia kurang dari 90 hari, dalam hitungan detik MiB. Hal ini mencakup byte fisik yang digunakan untuk penyimpanan fail-safe dan perjalanan waktu. Menampilkan 0 jika set data menggunakan model penagihan penyimpanan logis. |
BILLABLE_LONG_TERM_PHYSICAL_USAGE |
INT64 |
Penggunaan fisik yang sudah lebih dari 90 hari, dalam hitungan detik MiB. Menampilkan 0 jika set data menggunakan model penagihan penyimpanan logis. |
Cakupan dan sintaksis
Kueri terhadap tabel virtual ini harus menyertakan penentu region. Tabel berikut menjelaskan cakupan region untuk tabel virtual ini:
Nama tabel virtual | Cakupan resource | Cakupan region |
---|---|---|
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE[_BY_PROJECT] |
Level project | REGION |
Opsional: PROJECT_ID
: ID project Google Cloud Anda. Jika tidak ditentukan, project default akan digunakan.
REGION
: nama region set data apa pun.
Misalnya, `region-us`
.
Contoh berikut menunjukkan cara menampilkan informasi penyimpanan untuk tabel di project yang ditentukan:
SELECT * FROM myProject.`region-REGION`.INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE;
Contoh berikut menunjukkan cara menampilkan informasi penyimpanan untuk tabel di region yang ditentukan:
SELECT * FROM `region-REGION`.INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE;
Contoh
Contoh 1
Contoh berikut menjumlahkan penggunaan penyimpanan berdasarkan hari untuk project di region yang ditentukan.
SELECT usage_date, project_id, SUM(billable_total_logical_usage) AS billable_total_logical_usage, SUM(billable_active_logical_usage) AS billable_active_logical_usage, SUM(billable_long_term_logical_usage) AS billable_long_term_logical_usage, SUM(billable_total_physical_usage) AS billable_total_physical_usage, SUM(billable_active_physical_usage) AS billable_active_physical_usage, SUM(billable_long_term_physical_usage) AS billable_long_term_physical_usage FROM `region-REGION`.INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE GROUP BY 1, 2 ORDER BY usage_date;
Hasilnya mirip dengan berikut ini:
+-------------------------+------------------------------+-------------------------------+-----------------------------------+-------------------------------+--------------------------------+-------------------------------------+ | usage_date | project_id | billable_total_logical_usage | billable_active_logical_usage | billable_long_term_logical_usage | billable_total_physical_usage | billable_active_physical_usage | billable_long_term_physical_usage | +-------------------------+------------------------------+-------------------------------+-----------------------------------+-------------------------------+--------------------------------+-------------------------------------+ | 2023-04-03 | project_A | 305085738096 | 7667321458 | 297418416638 | 74823954823 | 124235724 | 74699719099 | +-------------------------+------------------------------+-------------------------------+-----------------------------------+-------------------------------+--------------------------------+-------------------------------------+ | 2023-04-04 | project_A | 287033241105 | 7592334614 | 279440906491 | 75071991788 | 200134561 | 74871857227 | +-------------------------+------------------------------+-------------------------------+-----------------------------------+-------------------------------+--------------------------------+-------------------------------------+ | 2023-04-03 | project_B | 478173930912 | 8137372626 | 470036558286 | 0 | 0 | 0 | +-------------------------+------------------------------+-------------------------------+-----------------------------------+-------------------------------+--------------------------------+-------------------------------------+ | 2023-04-04 | project_B | 496648915405 | 7710451723 | 488938463682 | 0 | 0 | 0 | +-------------------------+------------------------------+-------------------------------+-----------------------------------+-------------------------------+--------------------------------+-------------------------------------+
Contoh 2
Contoh berikut menunjukkan penggunaan penyimpanan untuk hari yang ditentukan untuk tabel dalam set data yang menggunakan penyimpanan logis.
SELECT usage_date, table_schema, table_name, billable_total_logical_usage FROM `region-REGION`.INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE WHERE project_id = 'PROJECT_ID' AND table_schema = 'DATASET_NAME' AND usage_date = 'USAGE_DATE' ORDER BY billable_total_logical_usage DESC;
Hasilnya mirip dengan berikut ini:
+--------------+--------------+------------+------------------------------+ | usage_date | table_schema | table_name | billable_total_logical_usage | +--------------+--------------+------------+------------------------------+ | 2023-04-03 | dataset_A | table_4 | 734893409201 | +--------------+--------------+------------+------------------------------+ | 2023-04-03 | dataset_A | table_1 | 690070445455 | +--------------+--------------+------------+------------------------------+ | 2023-04-03 | dataset_A | table_3 | 52513713981 | +--------------+--------------+------------+------------------------------+ | 2023-04-03 | dataset_A | table_2 | 8894535355 | +--------------+--------------+------------+------------------------------+
Contoh 3
Contoh berikut menunjukkan penggunaan penyimpanan untuk tanggal penggunaan terbaru untuk tabel dalam set data yang menggunakan penyimpanan fisik.
SELECT usage_date, table_schema, table_name, billable_total_physical_usage FROM ( SELECT *, ROW_NUMBER() OVER (PARTITION BY project_id, table_schema, table_name ORDER BY usage_date DESC) AS rank FROM `region-REGION`.INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE ) WHERE rank = 1 AND project_id = 'PROJECT_ID' AND table_schema ='DATASET_NAME' ORDER BY usage_date;
Hasilnya mirip dengan berikut ini:
+--------------+--------------+------------+-------------------------------+ | usage_date | table_schema | table_name | billable_total_physical_usage | +--------------+--------------+------------+-------------------------------+ | 2023-04-12 | dataset_A | table_4 | 345788341123 | +--------------+--------------+------------+-------------------------------+ | 2023-04-12 | dataset_A | table_1 | 0 | +--------------+--------------+------------+-------------------------------+ | 2023-04-12 | dataset_A | table_3 | 9123481400212 | +--------------+--------------+------------+-------------------------------+ | 2023-04-12 | dataset_A | table_2 | 1451334553 | +--------------+--------------+------------+-------------------------------+
Contoh 4
Contoh berikut menggabungkan tampilan TABLE_OPTIONS
dan
TABLE_STORAGE_USAGE_TIMELINE
untuk mendapatkan detail penggunaan penyimpanan berdasarkan tag.
SELECT * FROM region-REGION.INFORMATION_SCHEMA.TABLE_OPTIONS INNER JOIN region-REGION.INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE USING (TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME) WHERE option_name='tags' AND CONTAINS_SUBSTR(option_value, '(\"tag_namespaced_key\", \"tag_namespaced_value\")')