Visualizzazione TABLE_STORAGE_USAGE_TIMELINE

La visualizzazione INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE fornisce i totali giornalieri dell'utilizzo dello spazio di archiviazione negli ultimi 90 giorni per i seguenti tipi di tabelle:

  • Tabelle standard
  • Viste materializzate
  • Cloni di tabelle con un delta in byte rispetto alla tabella di base
  • Snapshot delle tabelle con un delta in byte rispetto alla tabella di base

Le tabelle che non hanno byte fatturabili non sono incluse nella INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE visualizzazione. Sono inclusi i seguenti tipi di tabelle:

  • Tabelle esterne
  • Tabelle anonime
  • Tabelle vuote
  • Cloni di tabelle che non hanno delta in byte rispetto alla tabella di base
  • Snapshot delle tabelle che non hanno delta in byte rispetto alla tabella di base

Quando esegui una query sulla vista INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE, i risultati della query contengono una riga al giorno per ogni tabella o vista materializzata del progetto corrente.

I dati in questa tabella non vengono conservati in tempo reale. Sono necessarie circa 72 ore affinché i dati della tabella vengano visualizzati in questa visualizzazione.

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

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

Questo è il valore che verrebbe restituito dalla colonna BILLABLE_TOTAL_PHYSICAL_USAGE.

Per maggiori informazioni, consulta Dettagli dei prezzi di archiviazione.

Autorizzazioni obbligatorie

Per eseguire query sulla visualizzazione INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE, devi disporre delle seguenti autorizzazioni IAM (Identity and Access Management):

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

Ciascuno dei seguenti ruoli IAM predefiniti include le autorizzazioni precedenti:

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

Per le query con un qualificatore 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 lo schema seguente:

USAGE_DATE DATE La data di fatturazione per i byte mostrati, utilizzando il fuso orario America/Los_Angeles
PROJECT_ID STRING L'ID del progetto contenente il set di dati
TABLE_CATALOG STRING L'ID del progetto contenente il set di dati
PROJECT_NUMBER INT64 Il numero del progetto contenente 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, chiamato anche tableId
BILLABLE_TOTAL_LOGICAL_USAGE INT64

L'utilizzo logico totale, in MiB al secondo.

Restituisce 0 se il set di dati utilizza il modello di fatturazione dello spazio di archiviazione fisico.

BILLABLE_ACTIVE_LOGICAL_USAGE INT64

L'utilizzo logico risale a meno di 90 giorni fa, in MiB al secondo.

Restituisce 0 se il set di dati utilizza il modello di fatturazione dello spazio di archiviazione fisico.

BILLABLE_LONG_TERM_LOGICAL_USAGE INT64

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

Restituisce 0 se il set di dati utilizza il modello di fatturazione dello spazio di archiviazione fisico.

BILLABLE_TOTAL_PHYSICAL_USAGE INT64

L'utilizzo totale in MiB al secondo. Sono inclusi i byte fisici utilizzati per lo archiviazione con fail-safe e spostamento cronologico.

Restituisce 0 se il set di dati utilizza il modello di fatturazione dello spazio di archiviazione logico.

BILLABLE_ACTIVE_PHYSICAL_USAGE INT64

L'utilizzo fisico risalente a meno di 90 giorni fa, in MiB al secondo. Sono inclusi i byte fisici utilizzati per lo spazio di archiviazione con fail-safe e spostamento cronologico.

Restituisce 0 se il set di dati utilizza il modello di fatturazione dello spazio di archiviazione logico.

BILLABLE_LONG_TERM_PHYSICAL_USAGE INT64

L'utilizzo fisico risalente a più di 90 giorni fa, in MiB al secondo.

Restituisce 0 se il set di dati utilizza il modello di fatturazione dello spazio di archiviazione logico.

Ambito e sintassi

Le query su questa visualizzazione devono includere un qualificatore regione. La tabella seguente illustra l'ambito della regione per questa visualizzazione:

Nome vista Ambito risorsa Ambito regione
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.TABLE_STORAGE_USAGE_TIMELINE[_BY_PROJECT] Livello 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 sullo spazio di archiviazione per le tabelle di un progetto specificato:

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

    L'esempio seguente mostra come restituire le informazioni sullo spazio di archiviazione per le tabelle in una 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 una 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 di un set di dati che utilizza lo spazio di archiviazione logico.

    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 riportato di seguito mostra l'utilizzo dello spazio di archiviazione per la data di utilizzo più recente per le tabelle di un set di dati che utilizza lo spazio di archiviazione fisico.

    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 le visualizzazioni TABLE_OPTIONS e TABLE_STORAGE_USAGE_TIMELINE per ottenere i 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\")')