Repositories erstellen
In diesem Dokument erfahren Sie, wie Sie mit Repositories in BigQuery arbeiten. Dazu gehören die folgenden Aufgaben:
- Repositories erstellen
- Repositories löschen
- Repositories freigeben
- Optionale Verbindung eines BigQuery-Repositories mit einem Drittanbieter-Repository
Hinweise
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the BigQuery and Dataform APIs.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the BigQuery and Dataform APIs.
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für Repositories und Arbeitsbereiche zuzuweisen, um die Berechtigungen zu erhalten, die Sie für die Arbeit mit Repositories und Arbeitsbereichen benötigen:
-
Freigegebene Repositories erstellen und verwalten:
Code Owner (
roles/dataform.codeOwner
) -
Arbeitsbereiche in freigegebenen Repositories erstellen und löschen:
Code-Editor (
roles/dataform.codeEditor
) -
Dateien in Arbeitsbereichen in freigegebenen Repositories erstellen, ändern und versionieren:
Code-Editor (
roles/dataform.codeEditor
) -
Arbeitsbereiche und ihre Dateien in freigegebenen Repositories ansehen:
Code Viewer (
roles/dataform.codeViewer
) -
Private Repositories erstellen und verwalten, einschließlich aller Aktionen mit Arbeitsbereichen und Dateien im privaten Repository:
Code Creator (
roles/dataform.codeCreator
)
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.
Hauptkonten mit der Rolle „Code-Editor“ für ein Repository können alle Arbeitsbereiche im Repository bearbeiten.
Von Ihnen erstellte private Repositories sind weiterhin für Nutzer sichtbar, die auf Projektebene die Rolle „BigQuery-Administrator“ oder „BigQuery Studio-Administrator“ haben. Diese Hauptkonten können Ihr privates Repository für andere Nutzer freigeben.
Repository erstellen
So erstellen Sie ein BigQuery-Repository:
Öffnen Sie in der Google Cloud Console die Seite BigQuery.
Klicken Sie im Bereich Explorer auf den Ordner Repositories.
Klicken Sie im Editor auf Repository hinzufügen.
Geben Sie im Bereich Repository erstellen im Feld Repository-ID eine eindeutige ID ein.
IDs dürfen nur Ziffern, Buchstaben, Bindestriche und Unterstriche enthalten.
Wählen Sie in der Drop-down-Liste Region eine BigQuery-Region zum Speichern des Repositories und seines Inhalts aus. Wählen Sie die BigQuery-Region aus, die Ihrem Standort am nächsten ist.
Eine Liste der verfügbaren BigQuery-Regionen finden Sie unter BigQuery Studio-Standorte. Die Repository-Region muss nicht mit dem Speicherort Ihrer BigQuery-Datasets übereinstimmen.
Klicken Sie auf Erstellen.
Verbindung zu einem Drittanbieter-Repository herstellen
In diesem Abschnitt wird beschrieben, wie Sie ein BigQuery-Repository mit einem Remote-Repository verbinden. Nachdem Sie die Repositories verbunden haben, können Sie Git-Aktionen auf die Dateien in den Arbeitsbereichen ausführen, die sich im Repository befinden. Beispielsweise können Sie Updates aus dem Remote-Repository abrufen und Änderungen an das Remote-Repository übertragen.
Wir empfehlen, für jedes Remote-Repository, mit dem Sie eine Verbindung herstellen, ein eigenes BigQuery-Repository zu erstellen. Geben Sie dem BigQuery-Repository einen ähnlichen Namen wie dem Remote-Repository, um die Zuordnung verständlicher zu machen.
Sie können ein Remote-Repository über HTTPS oder SSH verbinden. In der folgenden Tabelle sind die unterstützten Git-Anbieter und die Verbindungsmethoden aufgeführt, die für ihre Repositories verfügbar sind:
Git-Provider | Verbindungsmethode |
---|---|
Azure DevOps-Dienste | SSH |
Bitbucket | SSH |
GitHub | SSH oder HTTPS |
GitLab | SSH oder HTTPS |
Remote-Repository über SSH verbinden
Wenn Sie eine Verbindung zu einem Remote-Repository über SSH herstellen möchten, müssen Sie einen SSH-Schlüssel und ein Secret Manager-Secret generieren. Der SSH-Schlüssel besteht aus einem öffentlichen und einem privaten SSH-Schlüssel. Sie müssen den öffentlichen SSH-Schlüssel für Ihren Git-Anbieter freigeben und ein Secret Manager-Secret mit dem privaten SSH-Schlüssel erstellen. Geben Sie das Secret dann für Ihr BigQuery-Standarddienstkonto frei.
BigQuery verwendet das Secret mit dem privaten SSH-Schlüssel, um sich bei Ihrem Git-Anbieter anzumelden und Änderungen im Namen von Nutzern zu committen. BigQuery führt diese Commits mit der E-Mail-Adresse des Nutzers aus Google Cloud , damit Sie sehen können, wer die einzelnen Commits vorgenommen hat.
So stellen Sie über SSH eine Verbindung zwischen einem Remote-Repository und einem BigQuery-Repository her:
Gehen Sie bei Ihrem Git-Anbieter so vor:
Azure DevOps-Dienste
Bitbucket
GitHub
- Prüfen Sie in GitHub, ob bereits SSH-Schlüssel vorhanden sind.
- Wenn Sie keine SSH-Schlüssel haben oder einen neuen Schlüssel verwenden möchten, erstellen Sie einen privaten SSH-Schlüssel.
- Laden Sie den öffentlichen SSH-Schlüssel von GitHub in Ihr GitHub-Repository hoch.
GitLab
Erstellen Sie in Secret Manager ein Secret und fügen Sie Ihren privaten SSH-Schlüssel als Secret-Wert ein. Ihr privater SSH-Schlüssel sollte in einer Datei wie
~/.ssh/id_ed25519
gespeichert sein. Geben Sie dem Secret einen Namen, damit Sie es später wiederfinden.Gewähren Sie dem Standarddienstkonto von Dataform Zugriff auf das Secret.
Das Standarddienstkonto für Dataform hat das folgende Format:
service-PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.com
Weisen Sie dem Dienstkonto die Rolle
roles/secretmanager.secretAccessor
zu.Öffnen Sie in der Google Cloud Console die Seite BigQuery.
Maximieren Sie im Bereich Explorer den Ordner Repositories.
Wählen Sie das BigQuery-Repository aus, das Sie mit dem Remote-Repository verbinden möchten.
Wählen Sie im Editor den Tab Konfiguration aus.
Klicken Sie auf Mit Git verbinden.
Wählen Sie im Bereich Mit Remote-Repository verbinden die Optionsschaltfläche SSH aus.
Geben Sie im Feld URL des Remote-Git-Repositorys die URL des Remote-Git-Repositorys ein, die auf
.git
enden muss.Die URL des Remote-Git-Repositorys muss eines der folgenden Formate haben:
- Absolute URL:
ssh://git@{host_name}[:{port}]/{repository_path}
,port
ist optional. - SCP-ähnliche URL:
git@{host_name}:{repository_path}
.
- Absolute URL:
Geben Sie im Feld Standardname des Remote-Branches den Namen des Hauptzweigs des Remote-Git-Repositorys ein.
Wählen Sie im Drop-down-Menü Secret das von Ihnen erstellte Secret aus, das den privaten SSH-Schlüssel enthält.
Geben Sie im Feld Wert des öffentlichen SSH-Hostschlüssels den öffentlichen Hostschlüssel Ihres Git-Anbieters ein.
Azure DevOps-Dienste
Der Wert des öffentlichen SSH-Hostschlüssels muss im Format einer
known_hosts
-Datei vorliegen. Der Wert muss einen Algorithmus und einen öffentlichen Schlüssel enthalten, der imbase64
-Format codiert ist, aber ohne Hostnamen oder IP-Adresse, im folgenden Format:ALGORITHM BASE64_KEY_VALUE
Führen Sie den Befehl
ssh-keyscan -t rsa ssh.dev.azure.com
im Terminal aus, um den öffentlichen Hostschlüssel von Azure DevOps Services abzurufen.Bitbucket
Der Wert des öffentlichen SSH-Hostschlüssels muss im Format einer
known_hosts
-Datei vorliegen. Der Wert muss einen Algorithmus und einen öffentlichen Schlüssel enthalten, der imbase64
-Format codiert ist, aber ohne Hostnamen oder IP-Adresse, im folgenden Format:ALGORITHM BASE64_KEY_VALUE
Informationen zum Abrufen des öffentlichen Hostschlüssels von Bitbucket finden Sie unter SSH konfigurieren.
GitHub
Der Wert des öffentlichen SSH-Hostschlüssels muss im Format einer
known_hosts
-Datei vorliegen. Der Wert muss einen Algorithmus und einen öffentlichen Schlüssel enthalten, der imbase64
-Format codiert ist, aber ohne Hostnamen oder IP-Adresse, im folgenden Format:ALGORITHM BASE64_KEY_VALUE
Informationen zum Abrufen des öffentlichen Hostschlüssels von GitHub finden Sie unter SSH-Schlüsselfingerabdrücke von GitHub.
GitLab
Der Wert des öffentlichen SSH-Hostschlüssels muss im Format einer
known_hosts
-Datei vorliegen. Der Wert muss einen Algorithmus und einen öffentlichen Schlüssel enthalten, der imbase64
-Format codiert ist, aber ohne Hostnamen oder IP-Adresse, im folgenden Format:ALGORITHM BASE64_KEY_VALUE
Informationen zum Abrufen des öffentlichen Hostschlüssels von GitLab finden Sie unter SSH-
known_hosts
-Einträge.Klicken Sie auf Verbinden.
Remote-Repository über HTTPS verbinden
Wenn Sie eine Verbindung zu einem Remote-Repository über HTTPS herstellen möchten, müssen Sie ein Secret Manager-Secret mit einem persönlichen Zugriffstoken erstellen und das Secret für Ihr Standard-BigQuery-Dienstkonto freigeben.
BigQuery verwendet dann das Zugriffstoken, um sich bei Ihrem Git-Anbieter anzumelden und Änderungen im Namen der Nutzer zu committen. BigQuery führt diese Commits mit der E-Mail-Adresse des Nutzers aus Google Cloud , damit Sie sehen können, wer welchen Commit vorgenommen hat.
So stellen Sie eine Verbindung zwischen einem Remote-Repository und einem BigQuery-Repository über HTTPS her:
Gehen Sie bei Ihrem Git-Anbieter so vor:
GitHub
Erstellen Sie in GitHub ein detailliertes persönliches Zugriffstoken oder ein klassisches persönliches Zugriffstoken.
- So erstellen Sie ein detailliertes GitHub-persönliches Zugriffstoken:
Wählen Sie den Repositoryzugriff nur für ausgewählte Repositories aus und wählen Sie dann das Repository aus, mit dem Sie eine Verbindung herstellen möchten.
Gewähren Sie Lese- und Schreibzugriff auf den Inhalt des Repositories.
Legen Sie eine Token-Ablaufzeit fest, die Ihren Anforderungen entspricht.
- So erstellen Sie ein klassisches persönliches GitHub-Zugriffstoken:
Gewähren Sie BigQuery die Berechtigung
repo
.Legen Sie eine Token-Ablaufzeit fest, die Ihren Anforderungen entspricht.
Wenn Ihre Organisation die SAML-Einmalanmeldung (SSO) verwendet, autorisieren Sie das Token.
GitLab
Erstellen Sie in GitLab ein persönliches GitLab-Zugriffstoken.
Geben Sie dem Token den Namen
dataform
.Gewähren Sie BigQuery die Berechtigungen
api
,read_repository
undwrite_repository
.Legen Sie eine Token-Ablaufzeit fest, die Ihren Anforderungen entspricht.
Erstellen Sie in Secret Manager ein Secret, das das persönliche Zugriffstoken Ihres Remote-Repositories enthält.
Gewähren Sie dem Standarddienstkonto von Dataform Zugriff auf das Secret.
Das Standarddienstkonto für Dataform hat das folgende Format:
service-PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.com
Weisen Sie dem Dienstkonto die Rolle
roles/secretmanager.secretAccessor
zu.Öffnen Sie in der Google Cloud Console die Seite BigQuery.
Maximieren Sie im Bereich Explorer den Ordner Repositories.
Wählen Sie das BigQuery-Repository aus, das Sie mit dem Remote-Repository verbinden möchten.
Wählen Sie im Editor den Tab Konfiguration aus.
Klicken Sie auf Mit Git verbinden.
Wählen Sie im Bereich Mit Remote-Repository verbinden die Optionsschaltfläche HTTPS aus.
Geben Sie im Feld URL des Remote-Git-Repositorys die URL des Remote-Git-Repositorys ein, die auf
.git
enden muss.Die URL des Remote-Git-Repositorys darf keine Nutzernamen oder Passwörter enthalten.
Geben Sie im Feld Standardname des Remote-Branches den Namen des Hauptzweigs des Remote-Git-Repositorys ein.
Wählen Sie im Drop-down-Menü Secret das von Ihnen erstellte Secret aus, das das persönliche Zugriffstoken enthält.
Klicken Sie auf Verbinden.
Verbindung zum Remote-Repository bearbeiten
So bearbeiten Sie eine Verbindung zwischen einem BigQuery-Repository und einem Remote-Git-Repository:
Öffnen Sie in der Google Cloud Console die Seite BigQuery.
Maximieren Sie im Bereich Explorer den Ordner Repositories.
Wählen Sie das BigQuery-Repository aus, dessen Verbindung Sie bearbeiten möchten.
Wählen Sie im Editor den Tab Konfiguration aus.
Klicken Sie auf der Repository-Seite auf Git-Verbindung bearbeiten.
Bearbeiten Sie die Verbindungseinstellungen.
Klicken Sie auf Aktualisieren.
Repository freigeben
So geben Sie ein Repository frei:
Öffnen Sie in der Google Cloud Console die Seite BigQuery.
Klicken Sie im Bereich Explorer auf den Ordner Repositories.
Wählen Sie im Bereich Git-Repositories das Repository aus, das Sie freigeben möchten.
Klicken Sie auf die Option
Aktionen und dann auf Teilen.Klicken Sie im Bereich Freigabeberechtigungen auf Nutzer/Gruppe hinzufügen.
Geben Sie im Bereich Nutzer/Gruppe hinzufügen im Feld Neue Hauptkonten einen oder mehrere Nutzer- oder Gruppennamen ein, die durch Kommas getrennt sind.
Wählen Sie im Feld Rolle die Rolle aus, die Sie den neuen Hauptkonten zuweisen möchten.
Klicken Sie auf Speichern.
Ein Repository löschen
So löschen Sie ein Repository und seinen Inhalt:
Öffnen Sie in der Google Cloud Console die Seite BigQuery.
Klicken Sie im Bereich Explorer auf den Ordner Repositories.
Wählen Sie im Bereich Git-Repositories das Repository aus, das Sie löschen möchten.
Klicken Sie auf die Option
Aktionen und dann auf Löschen.Klicken Sie auf Löschen.