Condivisione di stream con Pub/Sub
Puoi condividere gli argomenti Pub/Sub tramite la condivisione di BigQuery per organizzare e distribuire una libreria di dati in streaming su più confini organizzativi interni ed esterni. I dati in streaming in tempo reale vengono condivisi utilizzando scambi e schede di condivisione BigQuery, che ti consentono di classificare e raggruppare logicamente grandi insiemi di argomenti Pub/Sub e di eseguire il provisioning dell'accesso su larga scala.
Puoi condividere i dati in streaming per:
- Servizi finanziari:
- Condividere in tempo reale prezzi, quotazioni e ordini degli strumenti in rapida evoluzione
- Rilevare riciclaggio di denaro e frodi nei pagamenti
- Supportare i calcoli del rischio di trading
- Vendite al dettaglio e beni di largo consumo:
- Aiutare i negozi a gestire l'inventario in tempo reale
- Personalizzare il marketing e l'assistenza clienti
- Modificare i prezzi in modo dinamico
- Monitorare i canali social
- Ottimizza i layout dei negozi fisici
- Assistenza sanitaria:
- Utilizza algoritmi predittivi per monitorare i pazienti e analizzare i rischi in tempo reale
- Monitorare i parametri vitali con dispositivi medici indossabili
- Acquisizione, strutturazione, archiviazione ed elaborazione automatica dei dati di pazienti, operatori sanitari e amministrazione delle strutture
- Telecomunicazioni:
- Controllare l'integrità della rete e prevedere gli errori
- Scoprire i pattern di comportamento degli utenti per localizzare meglio dispositivi e antenne
Ruoli obbligatori
I ruoli per la condivisione degli argomenti Pub/Sub sono analoghi a quelli per la condivisione dei set di dati BigQuery:
- Amministratore:un utente che gestisce le autorizzazioni, la visibilità e l'appartenenza a piattaforme di scambio pubblicitario e schede. Utilizza il ruolo Amministratore di Analytics Hub.
- Publisher (di un argomento condiviso): un utente che crea, gestisce e concede l'accesso alle schede degli argomenti Pub/Sub condivisi. Utilizza il ruolo Analytics Hub Publisher o Analytics Hub Listing Admin. Il publisher a cui si fa riferimento qui è un utente e non l'applicazione publisher che crea e invia i messaggi all'argomento.
- Abbonato (di un argomento condiviso): un utente che si iscrive alla scheda dell'argomento condiviso. I sottoscrittori possono configurare la modalità di recapito dei messaggi dell'argomento. Utilizza il ruolo Analytics Hub Subscriber o il ruolo Analytics Hub Subscription Owner. A seconda di come vengono inviati i dati dei messaggi, potrebbero essere necessari ruoli aggiuntivi (ad es. autorizzazioni dell'account di servizio Pub/Sub per scrivere messaggi in BigQuery).
Architettura
Il seguente diagramma descrive l'interazione dei publisher e degli abbonati alle risorse Pub/Sub con la condivisione di BigQuery:
- Argomenti condivisi
- Un argomento condiviso è l'unità di condivisione di un argomento Pub/Sub in Condivisione. In qualità di publisher, crei o utilizzi un argomento Pub/Sub esistente per distribuire i dati dei messaggi ai tuoi abbonati. La condivisione non replica l'argomento Pub/Sub di origine.
- Schede
- Una scheda viene creata quando un publisher aggiunge un argomento condiviso a una piattaforma di scambio pubblicitario. Contiene un riferimento all'argomento condiviso.
- Piattaforme pubblicitarie
- Uno scambio è un raggruppamento logico di schede che fanno riferimento ad argomenti condivisi.
- Sottoscrizioni Pub/Sub collegate
- Quando ti abboni a una scheda con un argomento condiviso, nel progetto dell'abbonato viene creata una sottoscrizione Pub/Sub collegata. Una sottoscrizione Pub/Sub è rappresentata anche nel progetto publisher come sottoscrizione Pub/Sub e sottoscrizione della scheda di condivisione.
- Un argomento condiviso può avere al massimo 10.000 iscrizioni Pub/Sub. Questo limite include le sottoscrizioni Pub/Sub collegate e le sottoscrizioni Pub/Sub create al di fuori della condivisione, ad esempio le sottoscrizioni create direttamente da Pub/Sub.
Gli argomenti condivisi sono indicizzati in Data Catalog (dismesso) e in Dataplex Universal Catalog, ma non puoi filtrare in base al tipo di risorsa.
Le metriche di utilizzo vengono acquisite e visualizzate nel pannello delle metriche per gli argomenti e le sottoscrizioni Pub/Sub condivisi, ma non sono disponibili in
INFORMATION_SCHEMA.SHARED_DATASET_USAGE
.Per monitorare le metriche, consulta Monitorare Pub/Sub in Cloud Monitoring.
Queste metriche possono includere:
- Numero di messaggi pubblicati
- Richieste di pubblicazione
- Velocità effettiva di pubblicazione in byte
- I 5 abbonamenti principali
- Byte importati
- Altro
- Aggiungere argomenti condivisi a una piattaforma di scambio pubblicitario creando una scheda
- Aggiornare una scheda
- Eliminare una scheda
- Condividere una scheda
- Gestire le iscrizioni alla tua scheda
- Rimuovere gli iscritti dalla tua scheda
Vai alla pagina Condivisione (Analytics Hub).
Andare a Condivisione (Analytics Hub)
Viene visualizzata una pagina che elenca tutti gli scambi di dati a cui puoi accedere.
Fai clic sul nome dello scambio dati in cui vuoi creare la scheda.
Fai clic su
Crea scheda.Nella pagina Crea scheda, seleziona "Argomento Pub/Sub" nell'elenco a discesa Tipo di risorsa.
Seleziona un argomento Pub/Sub esistente nel menu a discesa Argomento condiviso o fai clic su Crea un argomento.
Nella pagina Dettagli scheda, in Nome visualizzato, inserisci il nome della scheda.
Inserisci i seguenti dettagli facoltativi:
Categoria: seleziona fino a due categorie che rappresentano al meglio la tua scheda. Gli iscritti possono filtrare le schede in base a queste categorie.
Affinità dei dati: le regioni utilizzate dall'editore per pubblicare i dati. Queste informazioni sono utili per gli abbonati per ridurre al minimo o evitare i costi di traffico in uscita dalla rete Pub/Sub leggendo i dati dalla stessa regione. Per ulteriori informazioni sui costi in uscita, consulta Costi di trasferimento dei dati.
Icona: un'icona per la tua scheda. I formati file PNG e JPEG sono supportati. Le icone devono avere una dimensione file inferiore a 512 KiB e dimensioni non superiori a 512 x 512 pixel.
Descrizione: una breve descrizione della tua scheda. Gli abbonati possono cercare le schede in base alla descrizione.
Visibilità pubblica: attiva la visibilità pubblica della tua scheda nel catalogo di condivisione BigQuery. Devi anche impostare le autorizzazioni per la scheda. Fai clic su Azioni della piattaforma di scambio pubblicitario e poi su Imposta autorizzazioni. Assegna a
allUsers
oallAuthenticatedusers
il ruolo Visualizzatore di Analytics Hub. Fai clic su Consenti accesso pubblico.Documentazione > Markdown: informazioni aggiuntive, ad esempio link a documentazione pertinente e altre informazioni che possono aiutare gli iscritti a utilizzare il tuo argomento.
Nella pagina Dati di contatto della scheda, inserisci i seguenti dettagli facoltativi:
Contatto principale: inserisci un'email o un URL del contatto principale per la scheda.
Contatto per richiedere l'accesso: inserisci un'email o l'URL del modulo di inserimento per consentire agli abbonati di contattarti.
Fornitore: espandi la sezione Fornitore e specifica i dettagli nei seguenti campi:
- Nome del provider: il nome del provider di argomenti.
- Contatto principale del fornitore: un'email o un URL del contatto principale del fornitore dell'argomento.
Gli abbonati possono filtrare le schede in base ai fornitori di dati.
Editore: espandi la sezione Editore e specifica i dettagli nei seguenti campi:
- Nome publisher: il nome del publisher che sta creando la scheda.
- Contatto principale del publisher: un indirizzo email o un URL del contatto principale del publisher dell'argomento.
Esamina la pagina Anteprima della scheda.
Fai clic su Pubblica.
PROJECT_ID
: l'ID progetto che contiene la piattaforma di scambio dati in cui vuoi creare la scheda.LOCATION
: la posizione per lo scambio di dati. Per maggiori informazioni sulle località che supportano la condivisione, consulta Regioni supportate.DATAEXCHANGE_ID
: l'ID dello scambio dati.LISTING_ID
: l'ID scheda.Vai alla pagina Condivisione (Analytics Hub).
Fai clic sul nome dello scambio dati contenente la scheda.
Fai clic sulla scheda che vuoi aggiornare.
Fai clic su
Modifica scheda.Modifica i valori nei campi. Puoi modificare tutti i valori tranne l'argomento condiviso della scheda.
Per salvare le modifiche, fai clic su Pubblica.
PROJECT_ID
: l'ID progetto che contiene la piattaforma di scambio dati in cui vuoi creare la scheda.LOCATION
: la posizione per lo scambio di dati. Per maggiori informazioni sulle località che supportano la condivisione, consulta Regioni supportate.DATAEXCHANGE_ID
: l'ID dello scambio dati.LISTING_ID
: l'ID scheda.UPDATEMASK
: l'elenco dei campi che vuoi aggiornare. Per aggiornare più valori, utilizza un elenco separato da virgole.Vai alla pagina Condivisione (Analytics Hub).
Fai clic sul nome dello scambio dati contenente la scheda.
Fai clic sulla scheda che vuoi eliminare.
Fai clic su
Elimina.Nella finestra di dialogo Vuoi eliminare la scheda?, conferma l'eliminazione digitando delete.
Fai clic su Elimina.
PROJECT_ID
: l'ID progetto che contiene la piattaforma di scambio dati in cui vuoi creare la scheda.LOCATION
: la posizione per lo scambio di dati. Per maggiori informazioni sulle località che supportano la condivisione, consulta Regioni supportate.DATAEXCHANGE_ID
: l'ID dello scambio dati.LISTING_ID
: l'ID scheda.Vai alla pagina Condivisione (Analytics Hub).
Fai clic sul nome dello scambio dati contenente la scheda.
Fai clic sulla scheda per cui vuoi aggiungere gli abbonati.
Fai clic su
Imposta autorizzazioni.Per aggiungere entità, fai clic su
Aggiungi entità.Nel campo Nuovi principali, aggiungi i seguenti dettagli in base al tipo di scheda:
- Per una scheda privata, inserisci le email dell'identità a cui vuoi concedere l'accesso.
- Per una scheda pubblica, aggiungi
allAuthenticatedUsers
.
Nel menu Seleziona un ruolo, seleziona Analytics Hub e, in base al tipo di scheda, seleziona uno dei seguenti ruoli:
- Per una scheda commerciale, seleziona il ruolo Visualizzatore di Analytics Hub. Questo ruolo consente agli utenti di visualizzare la scheda e richiedere l'accesso.
- Per una scheda pubblica privata o non commerciale, seleziona il ruolo Abbonato ad Analytics Hub. Questo ruolo consente agli utenti di abbonarsi alla tua scheda.
Fai clic su Salva.
Vai alla pagina Condivisione (Analytics Hub).
Fai clic sul nome dello scambio dati contenente la scheda per la quale vuoi gestire le iscrizioni.
Fai clic sulla scheda per la quale vuoi elencare tutti gli abbonati.
Fai clic su
Imposta autorizzazioni.Per aggiungere entità, fai clic su
Aggiungi entità.Nel campo Nuovi principali, inserisci i nomi utente o gli indirizzi email degli abbonati da aggiungere.
In Seleziona un ruolo, seleziona Analytics Hub > Abbonato ad Analytics Hub.
Fai clic su
Aggiungi un altro ruolo.In Seleziona un ruolo, seleziona Analytics Hub > Analytics Hub Subscription Owner.
Fai clic su Salva.
Per elencare tutti gli iscritti di una scheda, segui le Google Cloud istruzioni della console in Visualizzare tutti gli abbonamenti.
Fai clic sulla scheda Abbonamenti per visualizzare tutte le iscrizioni allo scambio di dati.
Seleziona la casella di controllo accanto agli abbonamenti che vuoi rimuovere o tutti gli abbonamenti.
Nella finestra di dialogo Rimuovi l'abbonamento?, inserisci revoca per confermare.
Fai clic su Revoca.
PROJECT_ID
: l'ID progetto dell'abbonamento che vuoi rimuovere.LOCATION
: la posizione dell'abbonamento.SUBSCRIPTION_ID
: l'ID dell'abbonamento che vuoi rimuovere.Per visualizzare un elenco delle schede a cui hai accesso, segui i passaggi descritti in Visualizzare le schede.
Sfoglia le schede e fai clic su una a cui vuoi iscriverti. Viene visualizzata una finestra di dialogo contenente i dettagli della scheda.
Fai clic su Iscriviti per aprire la finestra di dialogo Crea abbonamento.
Se l'API Analytics Hub non è abilitata nel tuo progetto, viene visualizzato un messaggio di errore con un link per attivarla. Fai clic su Abilita l'API Analytics Hub.
Nella finestra di dialogo Crea sottoscrizione, specifica i seguenti dettagli:
- ID abbonamento:specifica il nome dell'abbonamento che stai creando.
- Tipo di importazione:seleziona il meccanismo di importazione dei dati del messaggio.
- Durata di conservazione dei messaggi:imposta la durata di conservazione dei messaggi.
- Periodo di scadenza: imposta la data di scadenza dell'abbonamento dopo un periodo di inattività, se presente.
- Scadenza conferma:imposta la scadenza della conferma.
- Filtro degli abbonamenti:imposta la sintassi del filtro sui messaggi.
- Consegna "exactly-once": abilita la consegna "exactly-once".
- Ordinamento dei messaggi:abilita l'ordinamento dei messaggi con una chiave di ordinamento.
- Messaggi non recapitabili: attiva i messaggi non recapitabili.
- Criterio di ripetizione:imposta un criterio di ripetizione.
Per ulteriori informazioni sulle proprietà delle sottoscrizioni Pub/Sub, consulta Proprietà delle sottoscrizioni.
Per salvare le modifiche, fai clic su Crea. L'abbonamento Pub/Sub collegato viene creato nel progetto.
PROJECT_ID
: l'ID progetto della scheda a cui vuoi abbonarti.LOCATION
: la località della tua scheda a cui vuoi abbonarti.DATAEXCHANGE_ID
: l'ID dello scambio dati della scheda a cui vuoi abbonarti.LISTING_ID
: l'ID scheda a cui vuoi abbonarti.
Limitazioni
La condivisione di stream con Pub/Sub presenta le seguenti limitazioni:
Abilita l'API Analytics Hub
Per attivare l'API Analytics Hub, segui questi passaggi:
Console
Vai alla libreria API e abilita l'API Analytics Hub per il tuo Google Cloud progetto.
gcloud
Esegui il comando gcloud services enable
:
gcloud services enable analyticshub.googleapis.com
Abilita l'API Pub/Sub
Vai alla libreria API e abilita l'API Pub/Sub per il tuo Google Cloud progetto.
Workflow per i publisher
In qualità di publisher di Analytics Hub, puoi:
Autorizzazioni aggiuntive per i publisher
Per eseguire le attività di publisher, devi disporre del ruolo Publisher di Analytics Hub (roles/analyticshub.publisher
) su una piattaforma di scambio pubblicitario o una scheda. Per visualizzare tutti gli
scambi di dati tra
i progetti di un'organizzazione a cui hai accesso, devi disporre dell'autorizzazione resourcemanager.organizations.get.
Inoltre, devi disporre dell'autorizzazione pubsub.topics.setIamPolicy
per l'argomento Pub/Sub che vuoi elencare. Per condividere argomenti con uno schema allegato, devi concedere agli abbonati di Analytics Hub l'autorizzazione pubsub.schemas.get
per lo schema allegato all'argomento. In questo modo, i sottoscrittori di Analytics Hub possono analizzare correttamente i messaggi della sottoscrizione Pub/Sub.
Crea una scheda (per aggiungere un argomento condiviso)
Per aggiungere un argomento condiviso a una scheda, seleziona una delle seguenti opzioni:
Console
API
Utilizza il metodo projects.locations.dataExchanges.listings.create
.
POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/dataExchanges/DATAEXCHANGE_ID/listings?listingId=LISTING_ID
Sostituisci quanto segue:
Nel corpo della richiesta, fornisci i dettagli della scheda. Se la richiesta va a buon fine, il corpo della risposta contiene i dettagli della scheda.
Per ulteriori informazioni sulle attività che puoi eseguire sulle schede utilizzando le API, consulta i metodi projects.locations.dataExchanges.listings
.
Aggiornare una scheda
Per aggiornare una scheda, seleziona una delle seguenti opzioni:
Console
API
Utilizza il metodo projects.locations.dataExchanges.listings.patch
.
PATCH https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/dataExchanges/DATAEXCHANGE_ID/listings/LISTING_ID?updateMask=UPDATEMASK
Sostituisci quanto segue:
Nel corpo della richiesta, specifica i valori aggiornati.
Per ulteriori informazioni sulle attività che puoi eseguire sulle schede utilizzando le API, consulta i metodi projects.locations.dataExchanges.listings
.
Eliminare una scheda
Le schede con argomenti Pub/Sub condivisi non possono essere eliminate con le iscrizioni attive. Rimuovi tutti gli abbonamenti attivi prima di tentare di eliminare una scheda dell'argomento condiviso. Una volta eliminata una scheda, non puoi annullare l'operazione. Per eliminare una scheda, seleziona una delle seguenti opzioni:
Console
API
Utilizza il metodo projects.locations.dataExchanges.listings.delete
.
DELETE https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/dataExchanges/DATAEXCHANGE_ID/listings/LISTING_ID
Sostituisci quanto segue:
Per ulteriori informazioni sulle attività che puoi eseguire sulle schede utilizzando le API, consulta i metodi projects.locations.dataExchanges.listings
.
Condividere una scheda
Se vuoi consentire agli utenti di accedere a una scheda privata, devi impostare il criterio IAM per una persona o un gruppo per quella scheda. Per una scheda commerciale, lo scambio di dati deve essere pubblico. Le schede in uno scambio di dati pubblico vengono visualizzate in Condivisione per tutti gli utenti di Google Cloud (allAuthenticatedUsers). Per consentire agli utenti di richiedere l'accesso per le schede commerciali, devi concedere loro il ruolo Visualizzatore di Analytics Hub.
Per consentire agli utenti di visualizzare o iscriversi alla tua scheda:
Per ulteriori informazioni, consulta Ruoli di visualizzatore e abbonato di Analytics Hub.
Gestisci gli abbonamenti
Per consentire a un utente di iscriversi a una scheda con un argomento condiviso, assegnagli i ruoli Analytics Hub Subscriber (roles/analyticshub.subscriber
) e Analytics Hub Subscription Owner (roles/analyticshub.subscriptionOwner
) per una scheda specifica:
Puoi eliminare e aggiornare gli abbonati in qualsiasi momento facendo clic su Imposta autorizzazioni.
Revocare un abbonamento
Per rimuovere una sottoscrizione alla scheda di un argomento condiviso dalla sezione Condivisione, seleziona una delle seguenti opzioni:
Console
API
Per rimuovere un abbonamento, utilizza il metodo projects.locations.subscriptions.revoke
.
POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/subscriptions/SUBSCRIPTION_ID:revoke
Sostituisci quanto segue:
Se un sottoscrittore revoca una sottoscrizione dalla condivisione BigQuery, non riceve più i dati dei messaggi dall'argomento condiviso. La sottoscrizione Pub/Sub è scollegata dall'argomento condiviso. Se un abbonamento viene eliminato direttamente da Pub/Sub, l'abbonamento alla condivisione BigQuery rimarrà e dovrà essere ripulito.
Workflow per gli abbonati
In qualità di abbonato ad Analytics Hub, puoi visualizzare e iscriverti a una scheda. La sottoscrizione a una scheda di un argomento condiviso crea una sottoscrizione Pub/Sub collegata nel progetto dell'abbonato. L'abbonamento Pub/Sub sarà visibile nel progetto del publisher.
Autorizzazioni aggiuntive per gli abbonati
Per eseguire le attività di abbonato, devi disporre del ruolo Analytics Hub Subscriber (roles/analyticshub.subscriber
) concesso a livello di progetto, piattaforma di scambio pubblicitario o scheda.
Iscriverti a una scheda di argomenti condivisi
Per iscriverti a una scheda con un argomento condiviso, seleziona una delle seguenti opzioni:
Console
API
Utilizza il metodo projects.locations.dataExchanges.listings.subscribe
.
POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/dataExchanges/DATAEXCHANGE_ID/listings/LISTING_ID:subscribe
Sostituisci quanto segue:
Nel corpo della richiesta, specifica l'abbonamento Pub/Sub in cui vuoi creare l'abbonamento Pub/Sub collegato. In caso di esito positivo, il corpo della risposta è vuoto.
Per ulteriori informazioni sulle sottoscrizioni Pub/Sub, consulta la panoramica delle sottoscrizioni.
Prezzi
Non sono previsti costi aggiuntivi per i publisher di argomenti Pub/Sub per elencare e condividere gli argomenti tramite la Condivisione. Ai publisher viene addebitato il numero totale di byte scritti (throughput di pubblicazione) nell'argomento condiviso e nell'uscita di rete (se applicabile). Agli abbonati viene addebitato il numero totale di byte letti (throughput dell'abbonamento) dall'abbonamento collegato e dal traffico in uscita della rete (se applicabile). Per ulteriori dettagli, consulta la pagina Prezzi di Pub/Sub.
Controlli di servizio VPC
Per gli argomenti condivisi dei progetti che hanno perimetri di Controlli di servizio VPC, puoi impostare le regole di ingresso e uscita appropriate necessarie per concedere l'accesso a publisher e iscritti.