Visualizzazione INFORMATION_SCHEMA.SHARED_DATASET_USAGE
La visualizzazione INFORMATION_SCHEMA.SHARED_DATASET_USAGE
contiene i metadati quasi in tempo reale relativi al consumo delle tabelle del set di dati condiviso. Per iniziare
condividere i dati tra le organizzazioni, consulta Analytics Hub.
Ruoli obbligatori
Per ottenere l'autorizzazione di cui hai bisogno per eseguire query sulla vista INFORMATION_SCHEMA.SHARED_DATASET_USAGE
,
chiedi all'amministratore di concederti
Ruolo IAM Proprietario dati BigQuery (roles/bigquery.dataOwner
) nel progetto di origine.
Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.
Questo ruolo predefinito contiene l'autorizzazione
bigquery.datasets.listSharedDatasetUsage
necessaria per eseguire query sulla visualizzazione INFORMATION_SCHEMA.SHARED_DATASET_USAGE
.
Potresti anche riuscire a ottenere questa autorizzazione con ruoli personalizzati altri ruoli predefiniti.
Schema
I dati sottostanti sono partizionati in base alla colonnajob_start_time
e raggruppati in cluster per project_id
e dataset_id
.
INFORMATION_SCHEMA.SHARED_DATASET_USAGE
ha lo schema seguente:
Nome colonna | Tipo di dati | Valore |
---|---|---|
project_id
|
STRING
|
(Colonna di clustering) L'ID del progetto che contiene il set di dati condiviso. |
dataset_id
|
STRING
|
(Colonna di clustering) L'ID del set di dati condiviso. |
table_id
|
STRING
|
L'ID della tabella a cui si accede. |
data_exchange_id
|
STRING
|
Il percorso della risorsa dello scambio dati. |
listing_id
|
STRING
|
Il percorso della risorsa della scheda. |
job_start_time
|
TIMESTAMP
|
(Colonna di partizionamento) L'ora di inizio di questo job. |
job_end_time
|
TIMESTAMP
|
L'ora di fine di questo job. |
job_id
|
STRING
|
L'ID job. Ad esempio, bquxjob_1234. |
job_project_number
|
INTEGER
|
Il numero del progetto a cui appartiene il job. |
job_location
|
STRING
|
La posizione del lavoro. |
linked_project_number
|
INTEGER
|
Il numero del progetto dell'abbonato. |
linked_dataset_id
|
STRING
|
L'ID del set di dati collegato del set di dati dell'abbonato. |
subscriber_org_number
|
INTEGER
|
Il numero dell'organizzazione in cui è stato eseguito il job. Si tratta del numero dell'organizzazione sottoscrittore. Questo campo è vuoto per i progetti che non hanno un'organizzazione. |
subscriber_org_display_name
|
STRING
|
Una stringa leggibile che fa riferimento all'organizzazione in cui è stato eseguito il job. Questo è il organizzazione del sottoscrittore. Questo campo è vuoto per i progetti che non hanno un'organizzazione. |
num_rows_processed
|
INTEGER
|
Il numero di righe elaborate da questa tabella dal job. |
total_bytes_processed
|
INTEGER
|
I byte totali elaborati da questa tabella dal job. |
Conservazione dei dati
La visualizzazione INFORMATION_SCHEMA.SHARED_DATASET_USAGE
contiene i job in esecuzione e la cronologia dei job degli ultimi 180 giorni.
Ambito e sintassi
Le query su questa visualizzazione devono includere un qualificatore regione. Se non specifichi un qualificatore regionale, i metadati vengono recuperati dagli Stati Uniti regione. La tabella seguente spiega l'ambito della regione per questa visualizzazione:
Visualizza nome | Ambito risorsa | Ambito della regione |
---|---|---|
[PROJECT_ID.]INFORMATION_SCHEMA.SHARED_DATASET_USAGE |
Livello progetto | Regione degli Stati Uniti |
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.SHARED_DATASET_USAGE |
Livello progetto | REGION |
- (Facoltativo)
PROJECT_ID
: l'ID del tuo progetto Google Cloud. Se non viene specificato, viene utilizzato il progetto predefinito.
REGION
: qualsiasi nome della regione del set di dati. Ad esempio:`region-us`
.
Esempi
Per eseguire la query su un progetto diverso da quello predefinito, aggiungi ID progetto nel seguente formato:
PROJECT_ID
.region-REGION_NAME
.INFORMATION_SCHEMA.SHARED_DATASET_USAGE
Ad esempio, myproject.region-us.INFORMATION_SCHEMA.SHARED_DATASET_USAGE
.
Ottieni il numero totale di job eseguiti su tutte le tabelle condivise
L'esempio seguente calcola i job totali eseguiti dai sottoscrittori per un progetto:
SELECT COUNT(DISTINCT job_id) AS num_jobs FROM `region-us`.INFORMATION_SCHEMA.SHARED_DATASET_USAGE
Il risultato è simile al seguente:
+------------+ | num_jobs | +------------+ | 1000 | +------------+
Per controllare i job totali eseguiti dai sottoscrittori, utilizza la clausola WHERE
:
- Per i set di dati, utilizza
WHERE dataset_id = "..."
. - Per le tabelle, utilizza
WHERE dataset_id = "..." AND table_id = "..."
.
Ottenere la tabella più utilizzata in base al numero di righe elaborate
La seguente query calcola la tabella più utilizzata in base al numero di righe elaborate dagli abbonati.
SELECT dataset_id, table_id, SUM(num_rows_processed) AS usage_rows FROM `region-us`.INFORMATION_SCHEMA.SHARED_DATASET_USAGE GROUP BY 1, 2 ORDER BY 3 DESC LIMIT 1
L'output è simile al seguente:
+---------------+-------------+----------------+ | dataset_id | table_id | usage_rows | +---------------+-------------+----------------+ | mydataset | mytable | 15 | +---------------+-------------+----------------+
Trova le principali organizzazioni che utilizzano le tue tabelle
La seguente query calcola i principali iscritti in base al numero di byte elaborati dalle tabelle. Puoi anche utilizzare la colonna num_rows_processed
come
di una metrica.
SELECT subscriber_org_number, ANY_VALUE(subscriber_org_display_name) AS subscriber_org_display_name, SUM(total_bytes_processed) AS usage_bytes FROM `region-us`.INFORMATION_SCHEMA.SHARED_DATASET_USAGE GROUP BY 1
L'output è simile al seguente:
+--------------------------+--------------------------------+----------------+ |subscriber_org_number | subscriber_org_display_name | usage_bytes | +-----------------------------------------------------------+----------------+ | 12345 | myorganization | 15 | +--------------------------+--------------------------------+----------------+
Per gli abbonati senza un'organizzazione, puoi utilizzare job_project_number
instead of subscriber_org_number
.
Ottenere le metriche di utilizzo per lo scambio di dati
Se lo scambio di dati e il set di dati di origine si trovano in progetti diversi, segui questo passaggio per visualizzare le metriche di utilizzo per lo scambio di dati:
- Trova tutte le schede che appartengono al tuo scambio di dati.
- Recupera il set di dati di origine collegato alla scheda.
- Per visualizzare le metriche di utilizzo per lo scambio di dati, usa la seguente query:
SELECT * FROM source_project_1.`region-us`.INFORMATION_SCHEMA.SHARED_DATASET_USAGE WHERE dataset_id='source_dataset_id' AND data_exchange_id="projects/4/locations/us/dataExchanges/x1" UNION ALL SELECT * FROM source_project_2.`region-us`.INFORMATION_SCHEMA.SHARED_DATASET_USAGE WHERE dataset_id='source_dataset_id' AND data_exchange_id="projects/4/locations/us/dataExchanges/x1"