Datenaustausch in BigQuery-Freigaben verwalten
Als BigQuery Sharing-Administrator haben Sie in BigQuery Sharing (früher Analytics Hub) folgende Möglichkeiten:
- Datenpools erstellen, aktualisieren, ansehen, freigeben und löschen.
- Einträge erstellen, aktualisieren, löschen und freigeben.
- BigQuery Sharing-Administratoren verwalten, Administratoren, Publisher, Abonnenten und Betrachter auflisten.
Standardmäßig ist ein Datenpool privat. Nur Nutzer oder Gruppen, die Zugriff darauf haben, können die Daten aufrufen oder abonnieren. Wenn die Einträge jedoch von Google Cloud -Nutzern (allAuthenticatedUsers) gefunden und abonniert werden sollen, können Sie anfordern, dass der Datenaustausch öffentlich gemacht wird.
Hinweise
Damit Sie BigQuery Sharing (früher Analytics Hub) nutzen können, müssen Sie die Analytics Hub API in Ihrem Google Cloud Projekt aktivieren.
Zum Aktivieren der Analytics Hub API benötigen Sie die folgenden IAM-Berechtigungen (Identity and Access Management):
serviceUsage.services.getserviceUsage.services.listserviceUsage.services.enable
Die folgende vordefinierte IAM-Rolle enthält die Berechtigungen, die Sie zum Aktivieren der Analytics Hub API benötigen:
- Service Usage Admin (
roles/serviceusage.serviceUsageAdmin)
Wählen Sie eine der folgenden Optionen aus, um die Analytics Hub API zu aktivieren:
Console
Rufen Sie die Seite Analytics Hub API auf und aktivieren Sie die Analytics Hub API für Ihr Google Cloud Projekt.
gcloud
Führen Sie den Befehl gcloud services enable aus:
gcloud services enable analyticshub.googleapis.com
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Analytics Hub-Administrator (roles/analyticshub.admin) für Ihr Projekt zuzuweisen, damit Sie die Berechtigungen erhalten, die Sie zum Verwalten von Datenpools benötigen.
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.
Datenaustausch erstellen
So erstellen Sie einen Datenaustausch:
Console
Rufen Sie die Seite Sharing (Analytics Hub) auf.
Klicken Sie auf Austausch erstellen.
Wählen Sie im Dialogfeld Exchange erstellen ein Projekt und eine Region für den Datenaustausch aus. Sie können das Projekt und die Region nicht aktualisieren, nachdem Sie den Datenaustausch erstellt haben.
Geben Sie unter Anzeigename einen Namen für den Datenaustausch ein.
Optional: Geben Sie Werte in die folgenden Felder ein:
- Primärer Kontakt: Geben Sie die URL oder die E-Mail-Adresse des primären Kontakts für den Datenaustausch ein.
- Beschreibung: Geben Sie eine Beschreibung für den Datenaustausch ein.
Wenn Sie die Haupt-IDs aller Nutzer protokollieren möchten, die Jobs und Abfragen für verknüpfte Datasets ausführen, klicken Sie auf den Schalter Logging der E‑Mail-Adressen von Abonnenten. Wenn Sie diese Option aktivieren, ist das Logging von Abonnenten-E‑Mails für alle zukünftigen Einträge im Datenaustausch aktiviert. Die protokollierten Daten sind im Feld
job_principal_subjectderINFORMATION_SCHEMA.SHARED_DATASET_USAGE-Ansicht verfügbar.Klicken Sie auf die Ein-/Aus-Schaltfläche Öffentliche Sichtbarkeit, um die öffentliche Sichtbarkeit zu aktivieren. Sobald eine Anzeigenplattform öffentlich sichtbar ist, werden alle Einträge in der Anzeigenplattform angezeigt und im Katalog durchsucht. Wenn Sie die öffentliche Sichtbarkeit aktivieren, müssen Sie die Austauschberechtigungen konfigurieren. Aufgrund der Übernahme von Berechtigungen werden für alle Einträge standardmäßig derselbe öffentliche Sichtbarkeitstyp der Anzeigenplattform festgelegt. Daher können öffentliche Anzeigenplattformen keine privaten Einträge haben, aber private Anzeigenplattformen können öffentliche Einträge haben (z. B. können Sie den Typ der öffentlichen Sichtbarkeit auf der Ebene einzelner Einträge festlegen). Das Projekt, in dem Sie den Datenpool erstellen, muss eine Organisation und ein Rechnungskonto haben.
Klicken Sie auf Austausch erstellen.
Optional: Führen Sie im Abschnitt Austausch-Berechtigungen die folgenden Schritte aus:
Geben Sie die E-Mail-Adressen in die folgenden Felder ein, um die IAM-Rollen (Identity and Access Management) zuzuweisen:
- Administratoren: Diese Nutzer haben die Rolle „Analytics Hub-Administrator“ (
roles/analyticshub.admin). - Publisher: Diese Nutzer erhalten die Rolle „Analytics Hub-Publisher“ (
roles/analyticshub.publisher). Informationen zu den Aufgaben, die Publisher von BigQuery Sharing ausführen können, finden Sie unter Einträge verwalten. - Abonnenten: Diese Nutzer haben die Rolle „Analytics Hub-Abonnent“ (
roles/analyticshub.subscriber). Informationen zu den Aufgaben, die Abonnenten von BigQuery-Freigaben ausführen können, finden Sie unter Einträge und Datenaustausche ansehen und abonnieren. - Betrachter: Diese Nutzer erhalten die Rolle „Analytics Hub-Betrachter“ (
roles/analyticshub.viewer). Betrachter können Einträge ansehen.- Wenn die öffentliche Sichtbarkeit aktiviert ist, weisen Sie
allUsersoderallAuthenticatedUsersdie Rolle „Analytics Hub-Betrachter“ zu.
- Wenn die öffentliche Sichtbarkeit aktiviert ist, weisen Sie
- Administratoren: Diese Nutzer haben die Rolle „Analytics Hub-Administrator“ (
Klicken Sie zum Speichern von Berechtigungen auf Berechtigungen festlegen.
Wenn Sie keine Berechtigungen für den Datenaustausch festgelegt haben, klicken Sie auf Überspringen.
API
Verwenden Sie die Methode projects.locations.dataExchanges.create.
POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/dataExchanges?dataExchangeId=DATAEXCHANGE_ID
Dabei gilt:
PROJECT_ID: Die ID des Projekts, in dem Sie den Datenaustausch erstellen möchten.LOCATION: Der Standort für Ihren Datenaustausch. Weitere Informationen zu Standorten, die BigQuery Sharing (früher Analytics Hub) unterstützen, finden Sie unter Unterstützte Regionen.DATAEXCHANGE_ID: die ID für Ihren Datenaustausch.
Geben Sie im Anfragetext die Details zum Datenaustausch an.
Wenn die Anfrage erfolgreich ist, enthält der Antworttext die Details zum Datenaustausch.
Wenn Sie das Logging von Abonnenten-E‑Mails mit dem Feld logLinkedDatasetQueryUserEmail aktivieren, enthält die Antwort des Datenaustauschs log_linked_dataset_query_user_email: true. Die protokollierten Daten sind im Feld job_principal_subject der INFORMATION_SCHEMA.SHARED_DATASET_USAGE-Ansicht verfügbar.
Weitere Informationen zu den Aufgaben, die Sie für den Datenaustausch mit APIs ausführen können, finden Sie unter projects.locations.dataExchanges-Methoden.
Datenaustausch aktualisieren
So aktualisieren Sie einen Datenaustausch:
Console
Rufen Sie die Seite Sharing (Analytics Hub) auf.
Klicken Sie in der Liste der Datenaustausche auf einen Datenaustausch, den Sie aktualisieren möchten.
Wechseln Sie zum Tab Details.
Klicken Sie auf Austausch bearbeiten.
Aktualisieren Sie im Dialogfeld Austausch bearbeiten die folgenden Felder:
- Anzeigename
- Primärer Kontakt
- Beschreibung
- Öffentliche Sichtbarkeit
- Wenn Sie die öffentliche Sichtbarkeit aktivieren, weisen Sie
allUsersoderallAuthenticatedUsersdie Rolle „Analytics Hub-Betrachter“ (roles/analyticshub.viewer) zu. - Wenn Sie die öffentliche Sichtbarkeit deaktivieren, entfernen Sie die Rolle „Analytics Hub-Betrachter“ (
roles/analyticshub.viewer) ausallUsersoderallAuthenticatedUsers. Öffentliche Anzeigenplattformen können keine privaten Einträge haben, private Anzeigenplattformen können jedoch öffentliche Einträge haben.
- Wenn Sie die öffentliche Sichtbarkeit aktivieren, weisen Sie
Logging der E‑Mail-Adressen von Abonnenten
Klicken Sie auf Speichern.
API
Verwenden Sie die Methode projects.locations.dataExchanges.patch.
PATCH https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/dataExchanges/DATAEXCHANGE_ID?updateMask=UPDATEMASK
Ersetzen Sie UPDATEMASK durch die Liste der Felder, die Sie aktualisieren möchten. Verwenden Sie eine durch Kommas getrennte Liste, um mehrere Werte zu aktualisieren. Geben Sie beispielsweise displayName,primaryContact ein, um den Anzeigenamen und den primären Kontakt für einen Datenaustausch zu aktualisieren.
Geben Sie im Anfragetext die aktualisierten Werte für die folgenden Felder an:
displayNamedescriptionprimaryContactdocumentationicondiscoveryTypelogLinkedDatasetQueryUserEmail
Weitere Informationen zu diesen Feldern finden Sie unter Ressource: DataExchange.
Weitere Informationen zu den Aufgaben, die Sie für den Datenaustausch mit APIs ausführen können, finden Sie unter projects.locations.dataExchanges-Methoden.
Datenaustausch ansehen
So rufen Sie die Datenaustausche in Ihrem Projekt oder Ihrer Organisation auf, auf die Sie Zugriff haben:
Console
Rufen Sie die Seite Sharing (Analytics Hub) auf.
Sehen Sie sich die Liste der Datenpools in Ihrem Google Cloud -Projekt an. Wenn Sie die Berechtigung
resourcemanager.organizations.gethaben, können Sie auch die Liste der Datenpools in Ihrer Google Cloud -Organisation aufrufen.
API
Verwenden Sie die Methode projects.locations.dataExchanges.list, um Datenaustausche in Ihrem Projekt aufzurufen:
GET https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/dataExchanges
Ersetzen Sie Folgendes:
- PROJECT_ID: Projekt-ID.
- LOCATION: der Standort, für den Sie die vorhandenen Datenpools auflisten möchten.
Verwenden Sie die Methode organizations.locations.dataExchanges.list, um Datenaustausche in Ihrer Organisation aufzurufen:
GET https://analyticshub.googleapis.com/v1/organizations/ORGANIZATION_ID/location/LOCATION/dataExchanges
Ersetzen Sie Folgendes:
- ORGANIZATION_ID: die Organisations-ID. Weitere Informationen finden Sie unter Organisations-ID abrufen.
- LOCATION: der Standort, für den Sie die vorhandenen Datenpools auflisten möchten.
Datenpools freigeben
Wenn der Publisher von BigQuery Sharing zu einer anderen Organisation gehört als die Organisation, die den Datenaustausch enthält, kann der Publisher Ihren Datenaustausch in Sharing nicht aufrufen. Sie müssen einen Link zum Datenpool mit dem Publisher teilen.
Rufen Sie die Seite Sharing (Analytics Hub) auf.
Klicken Sie in der Liste der Datenpools auf Weitere Optionen.
Klicken Sie auf Link zur Freigabe kopieren.
Nutzern Zugriff auf einen Datenaustausch gewähren
Damit Nutzer auf einen Datenaustausch zugreifen können, müssen Sie die IAM-Richtlinie für diesen Datenaustausch festlegen. Informationen zu vordefinierten IAM-Nutzerrollen finden Sie unter IAM-Rollen für die BigQuery-Freigabe. Führen Sie dazu die folgenden Schritte aus:
Console
Rufen Sie in der Google Cloud -Console die Seite Freigabe (Analytics Hub) auf.
Klicken Sie auf den Namen des Datenpools, für den Sie Berechtigungen festlegen möchten.
Wechseln Sie zum Tab Details.
Klicken Sie auf Berechtigungen festlegen.
Klicken Sie zum Hinzufügen von Hauptkonten auf Hauptkonto hinzufügen.
Fügen Sie im Feld Neue Hauptkonten die E-Mail-Adressen hinzu, für die Sie den Zugriff gewähren möchten. Sie können auch
allUsersverwenden, um eine Ressource öffentlich und für alle im Internet zugänglich zu machen, oderallAuthenticatedUsers, um sie nur für angemeldete Google-Nutzer zugänglich zu machen.Wählen Sie im Menü Rolle auswählen die Option Analytics Hub und dann eine der folgenden IAM-Rollen (Identity and Access Management) aus:
- Analytics Hub-Administrator
- Administrator von Analytics Hub-Einträgen
- Analytics Hub-Publisher
- Analytics Hub-Abonnent
- Analytics Hub Subscription Owner
- Analytics Hub-Betrachter
Klicken Sie auf Speichern.
API
Lesen Sie die vorhandene Richtlinie mit der Eintragsmethode
getIamPolicy. Verwenden Sie dazu die Methodeprojects.locations.dataExchanges.getIamPolicy:POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges/DATAEXCHANGE_ID:getIamPolicy
Dabei gilt:
PROJECT_ID: die Projekt-ID, z. B.my-project-1.LOCATION: der Standort für Ihren Datenpool. Verwenden Sie Kleinbuchstaben.DATAEXCHANGE_ID: die Datenpool-ID.
BigQuery Sharing (früher Analytics Hub) gibt die aktuelle Richtlinie zurück.
Bearbeiten Sie die Richtlinie mit einem Texteditor, um Mitglieder und ihre zugehörigen IAM-Rollen (Identity and Access Management) hinzuzufügen oder zu entfernen. Verwenden Sie das folgende Format, um Mitglieder hinzuzufügen:
user:test-user@gmail.comgroup:admins@example.comserviceAccount:test123@example.domain.comdomain:example.domain.com
Fügen Sie der Richtlinie beispielsweise die folgende Bindung hinzu, um
group:subscribers@example.comdie Rolleroles/analyticshub.subscriberzuzuweisen:{ "members": [ "group:subscribers@example.com" ], "role":"roles/analyticshub.subscriber" }Verwenden Sie die Methode
projects.locations.dataExchanges.setIamPolicy, um die aktualisierte Richtlinie zu schreiben. Geben Sie im Anfragetext die aktualisierte IAM-Richtlinie aus dem vorherigen Schritt an.POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges/DATAEXCHANGE_ID:setIamPolicy
Geben Sie im Anfragetext die Eintragsdetails an. Wenn die Anfrage erfolgreich ist, enthält der Antworttext Details zum Eintrag.
BigQuery Sharing-Administratoren erstellen
Zum Verwalten von Datenaustauschen müssen Sie Datenaustauschadministratoren erstellen, indem Sie Nutzern die Rolle „Analytics Hub-Administrator“ (roles/analyticshub.admin) auf Projekt- oder Datenaustauschebene zuweisen.
Wenn Sie möchten, dass Administratoren alle Datenaustausche in einem Projekt verwalten, weisen Sie die Rolle „Analytics Hub-Administrator” für dieses Projekt zu.
Wenn Sie möchten, dass Administratoren einen bestimmten Datenaustausch verwalten, weisen Sie die Rolle „Analytics Hub-Administrator” für diesen Datenaustausch zu.
Datenaustausch veröffentlichen
Standardmäßig ist ein Datenpool privat. Nur Nutzer oder Gruppen, die Zugriff darauf haben, können die Einträge aufrufen oder abonnieren. Sie können jedoch einen Datenpool öffentlich machen. Einträge in öffentlichen Datenpools können von Google Cloud -Nutzern (allAuthenticatedUsers) gefunden und abonniert werden.
So machen Sie einen Datenaustausch öffentlich:
Damit
allAuthenticatedUsersEinträge ansehen kann, müssen Sie den Nutzern auf Datenaustauschebene die Rolle „Analytics Hub-Betrachter“ (roles/analyticshub.viewer) zuweisen.Damit
allAuthenticatedUsersEinträge abonnieren kann, müssen Sie den Nutzern auf Datenaustauschebene die Rolle „Analytics Hub-Abonnent“ (roles/analyticshub.subscriber) zuweisen.Aktivieren Sie die öffentliche Sichtbarkeit, wenn Sie einen Datenaustausch erstellen oder aktualisieren. Geben Sie die entsprechenden Berechtigungen an, wenn Sie einen Datenaustausch öffentlich machen.
Datenaustausch löschen
Wenn ein Datenaustausch gelöscht wird, werden auch alle darin enthaltenen Einträge gelöscht. Die freigegebenen Datasets und verknüpften Datasets werden jedoch nicht gelöscht. Außerdem werden die darin enthaltenen Daten nicht gelöscht, wenn ein Projekt gelöscht wird. Sie müssen diese Datenpools manuell löschen, bevor Sie das Projekt löschen. Wenn Sie einen Datenaustausch löschen, können Sie ihn nicht rückgängig machen.
Bevor Sie einen Datenaustausch löschen, müssen Sie je nach Konfiguration des Datenaustauschs die folgenden Schritte ausführen:
- Wenn Sie den Datenaustausch mit kommerziellen Einträgen, die in Google Cloud Marketplace eingebunden sind, beenden möchten, löschen Sie die kommerziellen Einträge, die in Google Cloud Marketplace eingebunden sind. Sie können die Einträge dann als nicht kommerzielle Einträge neu erstellen.
- Bei Datenaustausch mit Einträgen für mehrere Regionen entfernen Sie alle aktiven Abos mit der Methode
projects.locations.subscriptions.revoke.
So löschen Sie einen Datenaustausch:
Console
Rufen Sie die Seite Sharing (Analytics Hub) auf.
Klicken Sie in der Liste der Datenaustausche auf den Datenaustausch, den Sie löschen möchten.
Wechseln Sie zum Tab Details.
Klicken Sie auf Austausch löschen.
Bestätigen Sie im Dialogfeld Austausch löschen? den Löschvorgang, indem Sie Löschen eingeben.
Klicken Sie auf Löschen.
API
Verwenden Sie die Methode projects.locations.dataExchanges.delete.
DELETE https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges/DATAEXCHANGE_ID
Weitere Informationen zu den Aufgaben, die Sie für den Datenaustausch mit APIs ausführen können, finden Sie unter projects.locations.dataExchanges-Methoden.
Nächste Schritte
- Einträge verwalten
- Analytics Hub-Nutzerrollen zuweisen
- Informationen zum Aufrufen und Abonnieren von Einträgen und Datenpools
- Weitere Informationen zum Audit-Logging für die Freigabe