Visualizzazione STREAMING_TIMELINE_BY_FOLDER
La visualizzazione INFORMATION_SCHEMA.STREAMING_TIMELINE_BY_FOLDER
contiene al minuto
statistiche aggregate sui flussi di dati per la cartella padre del progetto corrente
incluse le relative sottocartelle.
Puoi eseguire query sulle viste flussi di INFORMATION_SCHEMA
per recuperare informazioni storiche e in tempo reale sui flussi di dati in
BigQuery che utilizza il metodo tabledata.insertAll
legacy
e non l'API BigQuery Storage Writer. Per ulteriori informazioni sui flussi di dati in
BigQuery, vedi Flusso di dati in BigQuery.
Autorizzazione obbligatoria
Per eseguire query sulla vista INFORMATION_SCHEMA.STREAMING_TIMELINE_BY_FOLDER
, devi disporre
l'autorizzazione bigquery.tables.list
Identity and Access Management (IAM) per l'account padre
cartella del progetto.
Ciascuno dei seguenti ruoli IAM predefiniti include autorizzazione:
roles/bigquery.admin
roles/bigquery.user
roles/bigquery.dataViewer
roles/bigquery.dataEditor
roles/bigquery.dataOwner
roles/bigquery.metadataViewer
roles/bigquery.resourceAdmin
Per ulteriori informazioni sulle autorizzazioni BigQuery, consulta Controllo dell'accesso con IAM.
Schema
Quando esegui una query sulle viste flussi di INFORMATION_SCHEMA
, i risultati
contengono informazioni storiche e in tempo reale sui flussi di dati
in BigQuery. Ogni riga nelle visualizzazioni seguenti rappresenta le statistiche
per l'inserimento di flussi in una tabella specifica, aggregati in un intervallo di un minuto
a partire da start_timestamp
. Le statistiche sono raggruppate per codice di errore,
sarà una riga per ogni codice di errore riscontrato nell'intervallo di un minuto.
per ogni combinazione di timestamp e tabella. Le richieste andate a buon fine presentano l'errore
codice impostato su NULL
. Se nessun dato è stato trasmesso in flusso in una tabella durante un determinato periodo di tempo
non ci sono righe per i timestamp corrispondenti
tabella.
Le INFORMATION_SCHEMA.STREAMING_TIMELINE_BY_*
viste hanno
schema riportato di seguito:
Nome colonna | Tipo di dati | Valore |
---|---|---|
start_timestamp |
TIMESTAMP |
(Colonna di partizionamento) Timestamp di inizio dell'intervallo di 1 minuto per le statistiche aggregate. |
project_id |
STRING |
ID (colonna clustering) del progetto. |
project_number |
INTEGER |
Numero del progetto. |
dataset_id |
STRING |
ID (colonna clustering) del set di dati. |
table_id |
STRING |
ID (colonna clustering) della tabella. |
error_code |
STRING |
Codice di errore restituito per le richieste specificate da questa riga. NULL per richieste riuscite. |
total_requests |
INTEGER |
Numero totale di richieste nell'intervallo di 1 minuto. |
total_rows |
INTEGER |
Numero totale di righe di tutte le richieste nell'intervallo di 1 minuto. |
total_input_bytes |
INTEGER |
Numero totale di byte di tutte le righe nell'intervallo di 1 minuto. |
Conservazione dei dati
Questa visualizzazione contiene la cronologia di streaming degli ultimi 180 giorni.
Ambito e sintassi
Le query relative a questa vista devono includere un qualificatore regione. Se non specifichi un qualificatore regionale, i metadati vengono recuperati da tutti regioni. La tabella seguente spiega l'ambito della regione per questa visualizzazione:
Nome vista | Ambito risorsa | Ambito della regione |
---|---|---|
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.STREAMING_TIMELINE_BY_FOLDER |
Cartella che contiene il progetto specificato | REGION |
- (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
.
Esempio
- Per eseguire query sui dati nell'area multiregionale degli Stati Uniti, utilizza
region-us.INFORMATION_SCHEMA.STREAMING_TIMELINE_BY_FOLDER
- Per eseguire query sui dati nella località multiregionale UE, utilizza
region-eu.INFORMATION_SCHEMA.STREAMING_TIMELINE_BY_FOLDER
- Per eseguire query sui dati della regione asia-northeast1, utilizza
region-asia-northeast1.INFORMATION_SCHEMA.STREAMING_TIMELINE_BY_FOLDER
Per un elenco delle regioni disponibili, vedi Località dei set di dati.
Esempi
Esempio 1: errori recenti di flussi di dati
L'esempio seguente calcola l'analisi al minuto del totale degli errori richieste per tutte le tabelle nella cartella del progetto negli ultimi 30 minuti, suddivise per codice di errore:
SELECT start_timestamp, error_code, SUM(total_requests) AS num_failed_requests FROM `region-us`.INFORMATION_SCHEMA.STREAMING_TIMELINE_BY_FOLDER WHERE error_code IS NOT NULL AND start_timestamp > TIMESTAMP_SUB(CURRENT_TIMESTAMP, INTERVAL 30 MINUTE) GROUP BY start_timestamp, error_code ORDER BY start_timestamp DESC;
Il risultato è simile al seguente:
+---------------------+------------------+---------------------+ | start_timestamp | error_code | num_failed_requests | +---------------------+------------------+---------------------+ | 2020-04-15 20:55:00 | INTERNAL_ERROR | 41 | | 2020-04-15 20:41:00 | CONNECTION_ERROR | 5 | | 2020-04-15 20:30:00 | INTERNAL_ERROR | 115 | +---------------------+------------------+---------------------+
Esempio 2: analisi al minuto per tutte le richieste con codici di errore
L'esempio seguente calcola un'analisi al minuto delle operazioni riuscite e non riuscite richieste di flussi di dati nella cartella del progetto, suddivise in categorie di codici di errore. Questa query potrebbe essere utilizzata per compilare una dashboard.
SELECT start_timestamp, SUM(total_requests) AS total_requests, SUM(total_rows) AS total_rows, SUM(total_input_bytes) AS total_input_bytes, SUM( IF( error_code IN ('QUOTA_EXCEEDED', 'RATE_LIMIT_EXCEEDED'), total_requests, 0)) AS quota_error, SUM( IF( error_code IN ( 'INVALID_VALUE', 'NOT_FOUND', 'SCHEMA_INCOMPATIBLE', 'BILLING_NOT_ENABLED', 'ACCESS_DENIED', 'UNAUTHENTICATED'), total_requests, 0)) AS user_error, SUM( IF( error_code IN ('CONNECTION_ERROR','INTERNAL_ERROR'), total_requests, 0)) AS server_error, SUM(IF(error_code IS NULL, 0, total_requests)) AS total_error, FROM `region-us`.INFORMATION_SCHEMA.STREAMING_TIMELINE_BY_FOLDER GROUP BY start_timestamp ORDER BY start_timestamp DESC;
Il risultato è simile al seguente:
+---------------------+----------------+------------+-------------------+-------------+------------+--------------+-------------+ | start_timestamp | total_requests | total_rows | total_input_bytes | quota_error | user_error | server_error | total_error | +---------------------+----------------+------------+-------------------+-------------+------------+--------------+-------------+ | 2020-04-15 22:00:00 | 441854 | 441854 | 23784853118 | 0 | 0 | 17 | 17 | | 2020-04-15 21:59:00 | 355627 | 355627 | 26101982742 | 5 | 8 | 0 | 13 | | 2020-04-15 21:58:00 | 354603 | 354603 | 26160565341 | 0 | 0 | 0 | 0 | | 2020-04-15 21:57:00 | 298823 | 298823 | 23877821442 | 0 | 2 | 0 | 2 | +---------------------+----------------+------------+-------------------+-------------+------------+--------------+-------------+
Esempio 3: tabelle con il traffico più in entrata
L'esempio seguente restituisce le statistiche sui flussi di dati per le 10 tabelle nella cartella del progetto con il traffico più in entrata:
SELECT project_id, dataset_id, table_id, SUM(total_rows) AS num_rows, SUM(total_input_bytes) AS num_bytes, SUM(total_requests) AS num_requests FROM `region-us`.INFORMATION_SCHEMA.STREAMING_TIMELINE_BY_FOLDER GROUP BY project_id, dataset_id, table_id ORDER BY num_bytes DESC LIMIT 10;
Il risultato è simile al seguente:
+----------------------+------------+-------------------------------+------------+----------------+--------------+ | project_id | dataset_id | table_id | num_rows | num_bytes | num_requests | +----------------------+------------+-------------------------------+------------+----------------+--------------+ | my-project1 | dataset1 | table1 | 8016725532 | 73787301876979 | 8016725532 | | my-project2 | dataset1 | table2 | 26319580 | 34199853725409 | 26319580 | | my-project1 | dataset2 | table1 | 38355294 | 22879180658120 | 38355294 | | my-project3 | dataset1 | table3 | 270126906 | 17594235226765 | 270126906 | | my-project2 | dataset2 | table2 | 95511309 | 17376036299631 | 95511309 | | my-project2 | dataset2 | table3 | 46500443 | 12834920497777 | 46500443 | | my-project3 | dataset2 | table4 | 25846270 | 7487917957360 | 25846270 | | my-project4 | dataset1 | table4 | 18318404 | 5665113765882 | 18318404 | | my-project4 | dataset1 | table5 | 42829431 | 5343969665771 | 42829431 | | my-project4 | dataset1 | table6 | 8771021 | 5119004622353 | 8771021 | +----------------------+------------+-------------------------------+------------+----------------+--------------+