Datasets verwalten
In diesem Dokument wird beschrieben, wie Datasets in BigQuery verwaltet werden. Wenn Sie ein Dataset erstellt haben, können Sie es so verwalten:
Hinweis
Erteilen Sie IAM-Rollen (Identity and Access Management), die Nutzern die erforderlichen Berechtigungen zum Ausführen der einzelnen Aufgaben in diesem Dokument geben. Die Berechtigungen, die zum Ausführen einer Aufgabe erforderlich sind (sofern zutreffend), werden im Abschnitt "Erforderliche Berechtigungen" der Aufgabe aufgelistet.
Datasets umbenennen
Derzeit können Sie den Namen eines vorhandenen Datasets nicht ändern, aber Sie können ein Dataset kopieren. Siehe Datasets kopieren.
Datasets kopieren
Unter Datasets kopieren erfahren Sie, wie Sie ein Dataset kopieren, auch regionenübergreifend.
Dataset verschieben
Wenn Sie ein Dataset manuell von einem Standort an einen anderen verschieben möchten, gehen Sie so vor:
-
Exportieren Sie die Daten aus Ihren BigQuery-Tabellen in einen Cloud Storage-Bucket, der sich am selben Standort wie das Dataset oder an einem Standort im Dataset befindet. Wenn sich Ihr Dataset zum Beispiel am multiregionalen Standort
EU
befindet, können Sie Ihre Daten in den Standorteurope-west1
Belgien exportieren, der Teil der EU ist.Beim Exportieren von Daten aus BigQuery fallen keine Gebühren an. Dies ist jedoch anders, wenn Sie die exportierten Daten in Cloud Storage speichern. BigQuery-Exporte unterliegen den Limits für Exportjobs.
-
Kopieren oder verschieben Sie die Daten aus Ihrem Cloud Storage-Export-Bucket in einen neuen Bucket, den Sie am Zielspeicherort erstellt haben. Wenn Sie zum Beispiel Ihre Daten aus der Multiregion
US
in dieasia-northeast1
-Region „Tokio” verschieben, werden die Daten in einen Bucket übertragen, den Sie in Tokio erstellt haben. Weitere Informationen zum Übertragen von Cloud Storage-Objekten finden Sie in der Cloud Storage-Dokumentation unter Objekte kopieren, umbenennen und verschieben.Beim Übertragen von Daten zwischen Regionen fallen in Cloud Storage Gebühren für ausgehenden Netzwerktraffic an.
-
Nachdem Sie die Daten in einen Cloud Storage-Bucket am neuen Standort übertragen haben, erstellen Sie dort ein neues BigQuery-Dataset. Laden Sie Ihre Daten dann aus dem Cloud Storage-Bucket in BigQuery.
Beim Laden der Daten in BigQuery fallen keine Kosten an. Das gilt jedoch nicht für das Speichern von Daten in Cloud Storage. Hier werden Gebühren berechnet, bis Sie die Daten oder den Bucket löschen. Es fallen außerdem Kosten an, wenn Sie die Daten in BigQuery speichern, nachdem sie geladen wurden. Das Laden von Daten in BigQuery unterliegt den Limits für Ladejobs.
Sie können auch Cloud Composer verwenden, um große Datasets programmatisch zu verschieben und zu kopieren.
Weitere Informationen zur Verwendung von Cloud Storage zum Speichern und Verschieben großer Datasets finden Sie unter Cloud Storage mit Big Data verwenden.
Existenz eines Datasets prüfen
Java
Bevor Sie dieses Beispiel anwenden, folgen Sie den Schritten zur Einrichtung von Java in der BigQuery-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Angaben finden Sie in der Referenzdokumentation zur BigQuery Java API.
Python
Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Python-Einrichtungsanleitung in der BigQuery-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Angaben finden Sie in der Referenzdokumentation zur BigQuery Python API.
Datasets löschen
Sie können ein Dataset auf folgenden Wegen löschen:
- Google Cloud Console verwenden.
- Verwenden Sie die
DROP SCHEMA
-DDL-Anweisung. - Verwenden Sie den Befehl
bq rm
imbq
-Befehlszeilentool. - Rufen Sie die API-Methode
datasets.delete
auf. - Verwenden Sie die Client-Bibliotheken.
Erforderliche Berechtigungen
Zum Löschen eines Datasets benötigen Sie die folgenden IAM-Berechtigungen:
bigquery.datasets.delete
(zum Löschen eines Datasets)bigquery.tables.delete
(zum Löschen von Tabellen und Ansichten)
Jede der folgenden vordefinierten IAM-Rollen enthält die Berechtigungen, die Sie zum Löschen eines Datasets benötigen:
roles/bigquery.dataOwner
roles/bigquery.admin
Wenn Sie die Berechtigung bigquery.datasets.create
haben, können Sie die von Ihnen erstellten Datasets und Tabellen außerdem löschen.
Weitere Informationen zu IAM-Rollen und Berechtigungen in BigQuery finden Sie unter Vordefinierte Rollen und Berechtigungen.
Dataset löschen
Wählen Sie eine der folgenden Optionen aus, um ein Dataset zu löschen:
Console
Maximieren Sie im Bereich Explorer Ihr Projekt und wählen Sie ein Dataset aus.
Maximieren Sie die Option
Aktionen und klicken Sie auf Löschen.Geben Sie im Dialogfeld Dataset löschen
"delete"
in das Textfeld ein und klicken Sie dann auf Löschen.
SQL
Zum Löschen eines Datasets verwenden Sie die DROP SCHEMA
-DDL-Anweisung.
Im folgenden Beispiel wird ein Dataset mit dem Namen mydataset
erstellt:
Öffnen Sie in der Google Cloud Console die Seite BigQuery.
Geben Sie im Abfrageeditor die folgende Anweisung ein:
DROP SCHEMA IF EXISTS mydataset;
Standardmäßig funktioniert dies nur mit dem Löschen eines leeren Datasets. Wenn Sie ein Dataset und dessen gesamten Inhalt löschen möchten, verwenden Sie das Schlüsselwort
CASCADE
:DROP SCHEMA IF EXISTS mydataset CASCADE;
Klicken Sie auf
Ausführen.
Informationen zum Ausführen von Abfragen finden Sie unter Interaktive Abfragen ausführen.
bq
Verwenden Sie den Befehl bq rm
mit dem optionalen Flag --dataset
oder -d
, um ein Dataset zu löschen. Wenn Sie ein Dataset mit dem bq
-Befehlszeilentool entfernen, müssen Sie den Befehl bestätigen. Sie können die Bestätigung mit dem Flag -f
überspringen.
Wenn das Dataset außerdem Tabellen enthält, müssen Sie das Flag -r
verwenden, um alle Tabellen im Dataset zu entfernen. Wenn Sie eine Tabelle in einem anderen Projekt als Ihrem Standardprojekt löschen, fügen Sie dem Dataset-Namen die Projekt-ID im folgenden Format hinzu: project_id:dataset
.
bq rm -r -f -d project_id:dataset
Ersetzen Sie Folgendes:
project_id
ist die Projekt-ID.dataset
ist der Name des zu löschenden Datasets.
Beispiele:
Geben Sie den folgenden Befehl ein, um mydataset
und alle darin enthaltenen Tabellen aus Ihrem Standardprojekt zu entfernen. Für den Befehl wird das optionale Flag -d
verwendet.
bq rm -r -d mydataset
Geben Sie bei entsprechender Aufforderung y
ein und drücken Sie die Eingabetaste.
Geben Sie den folgenden Befehl ein, um mydataset
und alle darin enthaltenen Tabellen aus myotherproject
zu entfernen. Für den Befehl wird nicht das optionale Flag -d
verwendet.
Das Flag -f
wird zum Überspringen der Bestätigung verwendet.
bq rm -r -f myotherproject:mydataset
API
Rufen Sie die Methode datasets.delete
auf, um das Dataset zu löschen. Setzen Sie dann den Parameter deleteContents
auf true
, um die darin enthaltenen Tabellen zu löschen.
C#
Im folgenden Codebeispiel wird ein leeres Dataset gelöscht.
Bevor Sie dieses Beispiel anwenden, folgen Sie den Schritten zur Einrichtung von C# in der BigQuery-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Angaben finden Sie in der Referenzdokumentation zur BigQuery C# API.
Im folgenden Codebeispiel werden ein Dataset und sein gesamter Inhalt gelöscht:
Einfach loslegen (Go)
Bevor Sie dieses Beispiel anwenden, folgen Sie den Schritten zur Einrichtung von Go in der BigQuery-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Angaben finden Sie in der Referenzdokumentation zur BigQuery Go API.
Java
Im folgenden Codebeispiel wird ein leeres Dataset gelöscht.
Bevor Sie dieses Beispiel anwenden, folgen Sie den Schritten zur Einrichtung von Java in der BigQuery-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Angaben finden Sie in der Referenzdokumentation zur BigQuery Java API.
Im folgenden Codebeispiel werden ein Dataset und sein gesamter Inhalt gelöscht:
Node.js
Bevor Sie dieses Beispiel anwenden, folgen Sie den Schritten zur Einrichtung von Node.js in der BigQuery-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Angaben finden Sie in der Referenzdokumentation zur BigQuery Node.js API.
PHP
Bevor Sie dieses Beispiel anwenden, folgen Sie den Schritten zur Einrichtung von PHP in der BigQuery-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Angaben finden Sie in der Referenzdokumentation zur BigQuery PHP API.
Python
Bevor Sie dieses Beispiel anwenden, folgen Sie den Schritten zur Einrichtung von Python in der BigQuery-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Angaben finden Sie in der Referenzdokumentation zur BigQuery Python API.
Ruby
Im folgenden Codebeispiel wird ein leeres Dataset gelöscht.
Bevor Sie dieses Beispiel anwenden, folgen Sie den Schritten zur Einrichtung von Ruby in der BigQuery-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Angaben finden Sie in der Referenzdokumentation zur BigQuery Ruby API.
Im folgenden Codebeispiel werden ein Dataset und sein gesamter Inhalt gelöscht:
Tabellen aus gelöschten Datasets wiederherstellen
Sie können Tabellen aus einem gelöschten Dataset wiederherstellen, solange Sie sich noch im Zeitstempelfenster des Datasets befinden. Dazu kopieren Sie jede Tabelle im gelöschten Dataset mithilfe eines Tabellen-Decorators in ein neu erstelltes Dataset. Sie müssen andere mit dem Dataset verknüpfte Objekte wie Ansichten, materialisierte Ansichten und Routinen manuell neu erstellen.
Erforderliche Rollen
Sie müssen ein Mitglied der Rolle roles/bigquery.admin
sein, um eine Tabelle aus einem gelöschten Dataset wiederherstellen zu können.
Tabelle aus einem gelöschten Dataset wiederherstellen
So stellen Sie eine Tabelle aus einem gelöschten Dataset wieder her:
Dataset erstellen:
bq mk tmp_dataset
Wählen Sie einen Zeitstempel aus der Zeit vor dem Löschen des ursprünglichen Datasets mit einem Format aus Millisekunden seit der Epoche. Beispiel:
1418864998000
.Kopieren Sie die Tabelle
original_dataset.table1
zum Zeitpunkt1418864998000
in das neue Datasettmp_dataset
:bq cp original_dataset.table1@1418864998000 tmp_dataset.table1
Wiederholen Sie Schritt 4 für jede Tabelle im gelöschten Dataset.
Dataset-Sicherheit
Informationen zum Steuern des Zugriffs auf Datasets in BigQuery finden Sie unter Zugriff auf Datasets steuern. Informationen zur Datenverschlüsselung finden Sie unter Verschlüsselung inaktiver Daten.
Weitere Informationen
- Datasets erstellen
- Datasets aktualisieren
- Weitere Informationen zum Kopieren von Datasets, auch regionsübergreifend, finden Sie unter Datasets kopieren.