Visualizzazione TABLE_STORAGE_USAGE_TIMELINE

La vista INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE fornisce ogni giorno totali di utilizzo dello spazio di archiviazione negli ultimi 90 giorni per i seguenti tipi di tabelle:

  • Tabelle standard
  • Viste materializzate
  • Cloni di tabelle che hanno un delta in byte dalla tabella di base
  • Snapshot della tabella con un delta in byte dalla tabella di base

Le tabelle che non hanno byte fatturabili non sono incluse nel INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE visualizzazione. È incluso il parametro i seguenti tipi di tabelle:

  • Tabelle esterne
  • Tabelle anonime
  • Tabelle vuote
  • Cloni di tabelle senza delta in byte dalla tabella di base
  • Snapshot della tabella senza delta in byte dalla tabella di base

Quando esegui una query su INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE i risultati della query contengono una riga al giorno per ogni tabella o vista materializzata per il progetto attuale.

I dati di questa tabella non vengono conservati in tempo reale. Ci vogliono circa 72 ore necessarie per la visualizzazione dei dati della tabella in questa vista.

L'utilizzo dello spazio di archiviazione viene restituito in MB al secondo. Ad esempio, se un progetto utilizza 1.000.000 di byte fisici per 86.400 secondi (24 ore), il totale è di 86.400.000.000 di secondi, che viene convertito in 82.397 MB secondi, come mostrato nell'esempio seguente:

86,400,000,000 / 1,024 / 1,024 = 82,397

Questo è il valore che verrebbe restituito dall'BILLABLE_TOTAL_PHYSICAL_USAGE colonna.

Per ulteriori informazioni, vedi Dettagli sui prezzi dell'archiviazione.

Autorizzazioni obbligatorie

Per eseguire query sulla vista INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE, è necessario il le seguenti autorizzazioni IAM (Identity and Access Management):

  • bigquery.tables.get
  • bigquery.tables.list

Ciascuno dei seguenti ruoli IAM predefiniti include autorizzazioni:

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

Per le query con un qualificatore della regione, devi disporre delle autorizzazioni per il progetto.

Per ulteriori informazioni sulle autorizzazioni BigQuery, consulta Controllo dell'accesso con IAM.

Schema

La vista INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE ha il seguente schema:

USAGE_DATE DATE La data di fatturazione per i byte mostrati
PROJECT_ID STRING L'ID del progetto che contiene il set di dati
TABLE_CATALOG STRING L'ID del progetto che contiene il set di dati
PROJECT_NUMBER INT64 Il numero del progetto che contiene il set di dati
TABLE_SCHEMA STRING Il nome del set di dati che contiene la tabella o la vista materializzata, noto anche come datasetId
TABLE_NAME STRING Il nome della tabella o della vista materializzata, indicato anche come tableId
BILLABLE_TOTAL_LOGICAL_USAGE INT64

L'utilizzo logico totale, in MB secondi.

Restituisce 0 se il set di dati utilizza l'archiviazione fisica modello di fatturazione.

BILLABLE_ACTIVE_LOGICAL_USAGE INT64

L'utilizzo logico risalente a non più di 90 giorni, in MB secondo.

Restituisce 0 se il set di dati utilizza l'archiviazione fisica modello di fatturazione.

BILLABLE_LONG_TERM_LOGICAL_USAGE INT64

L'utilizzo logico risalente a più di 90 giorni, in MB secondo.

Restituisce 0 se il set di dati utilizza l'archiviazione fisica modello di fatturazione.

BILLABLE_TOTAL_PHYSICAL_USAGE INT64

L'utilizzo totale in MB secondo. Sono inclusi byte fisici utilizzati per attività di sicurezza di archiviazione dei viaggi nel tempo.

Restituisce 0 se il set di dati utilizza l'archiviazione logica modello di fatturazione.

BILLABLE_ACTIVE_PHYSICAL_USAGE INT64

L'utilizzo fisico da meno di 90 giorni, in MB al secondo. Questo include i byte fisici utilizzati per le attività di sicurezza di archiviazione dei viaggi nel tempo.

Restituisce 0 se il set di dati utilizza l'archiviazione logica modello di fatturazione.

BILLABLE_LONG_TERM_PHYSICAL_USAGE INT64

Per l'utilizzo fisico da più di 90 giorni, in MB al secondo.

Restituisce 0 se il set di dati utilizza l'archiviazione logica modello di fatturazione.

Ambito e sintassi

Le query relative a questa vista devono includere un qualificatore regione. La tabella seguente spiega l'ambito della regione per questa visualizzazione:

Nome vista Ambito risorsa Ambito della regione
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE[_BY_PROJECT] Livello di progetto REGION
Sostituisci quanto segue:

  • (Facoltativo) PROJECT_ID: l'ID del tuo progetto Google Cloud. Se non specificato, viene utilizzato il progetto predefinito.
  • REGION: qualsiasi nome della regione del set di dati. Ad esempio: region-us.

L'esempio seguente mostra come restituire le informazioni di archiviazione per le tabelle in di un progetto specifico:

SELECT * FROM myProject.`region-REGION`.INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE;

L'esempio seguente mostra come restituire le informazioni di archiviazione per le tabelle in un regione specificata:

SELECT * FROM `region-REGION`.INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE;

Esempi

Esempio 1

L'esempio seguente somma l'utilizzo dello spazio di archiviazione per giorno per i progetti in un regione specificata.

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;

Il risultato è simile al seguente:

+-------------------------+------------------------------+-------------------------------+-----------------------------------+-------------------------------+--------------------------------+-------------------------------------+
| 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                                   |
+-------------------------+------------------------------+-------------------------------+-----------------------------------+-------------------------------+--------------------------------+-------------------------------------+

Esempio 2

L'esempio seguente mostra l'utilizzo dello spazio di archiviazione per un giorno specificato per le tabelle in un set di dati che utilizza l'archiviazione logica.

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;

Il risultato è simile al seguente:

+--------------+--------------+------------+------------------------------+
| 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                 |
+--------------+--------------+------------+------------------------------+

Esempio 3

L'esempio seguente mostra l'utilizzo dello spazio di archiviazione per la data di utilizzo più recente per le tabelle in un set di dati che utilizza l'archiviazione fisica.

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;

Il risultato è simile al seguente:

+--------------+--------------+------------+-------------------------------+
| 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                 |
+--------------+--------------+------------+-------------------------------+

Esempio 4

L'esempio seguente unisce gli elementi TABLE_OPTIONS e TABLE_STORAGE_USAGE_TIMELINE visualizzazioni per ottenere dettagli sull'utilizzo dello spazio di archiviazione in base ai 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\")')