Ansichtsattribute aktualisieren
In diesem Dokument wird beschrieben, wie Sie Ansichtsattribute oder -metadaten aktualisieren. Für eine erstellte Ansicht können Sie folgende Ansichtsattribute ändern:
Hinweis
Erteilen Sie IAM-Rollen (Identity and Access Management), die Nutzern die erforderlichen Berechtigungen zum Ausführen der einzelnen Aufgaben in diesem Dokument geben.
Erforderliche Berechtigungen
Zum Aktualisieren einer Ansicht benötigen Sie die folgenden IAM-Berechtigungen:
bigquery.tables.update
bigquery.tables.get
Jede der folgenden vordefinierten IAM-Rollen enthält die Berechtigungen, die Sie für das Aktualisieren einer Ansicht benötigen:
roles/bigquery.dataEditor
roles/bigquery.dataOwner
roles/bigquery.admin
Wenn Sie die Berechtigung bigquery.datasets.create
haben, können Sie außerdem Tabellen und Ansichten in den von Ihnen erstellten Datasets aktualisieren.
Wenn Sie die SQL-Abfrage der Ansicht aktualisieren, benötigen Sie außerdem Berechtigungen zum Abfragen der Tabellen, auf die die SQL-Abfrage der Ansicht verweist.
Weitere Informationen zu IAM-Rollen und Berechtigungen in BigQuery finden Sie unter Vordefinierte Rollen und Berechtigungen.
SQL-Abfrage einer Ansicht aktualisieren
Sie können die zum Definieren einer Ansicht verwendete SQL-Abfrage so aktualisieren:
- Google Cloud Console verwenden
- Mit dem Befehl
bq update
desbq
-Befehlszeilentools - Durch Aufrufen der API-Methode
tables.patch
- Mit den Clientbibliotheken
Sie können den SQL-Dialekt in der API oder im bq
-Befehlszeilentool von Legacy-SQL zu Google Standard-SQL ändern. In der Google Cloud Console können Legacy-SQL-Ansichten nicht auf Google Standard-SQL aktualisiert werden.
So aktualisieren Sie die SQL-Abfrage einer Ansicht:
Console
Maximieren Sie im Bereich Explorer Ihr Projekt und das Dataset und wählen Sie dann die Ansicht aus.
Klicken Sie auf den Tab Details.
Klicken Sie über dem Feld Query (Abfrage) auf die Schaltfläche Edit query (Abfrage bearbeiten). Klicken Sie im angezeigten Dialogfeld auf Open (Öffnen).
Bearbeiten Sie im Feld Query editor (Abfrageeditor) die SQL-Abfrage und klicken Sie dann auf Save view (Ansicht speichern).
Prüfen Sie, ob alle Felder im Dialogfeld Save view (Ansicht speichern) korrekt ausgefüllt wurden, bevor Sie auf Save (Speichern) klicken.
bq
Führen Sie den Befehl bq update
mit dem Flag --view
aus. Um Google Standard-SQL zu verwenden oder den Abfragedialekt von Legacy-SQL zu Google Standard-SQL zu aktualisieren, geben Sie zusätzlich das Flag --use_legacy_sql
ein und setzen es auf false
.
Wenn die Abfrage auf externe, benutzerdefinierte Funktionsressourcen verweist, die in Cloud Storage oder lokalen Dateien gespeichert sind, geben Sie diese Ressourcen mit dem Flag --view_udf_resource
an. Das Flag --view_udf_resource
wird hier nicht erläutert. Weitere Informationen zum Verwenden von benutzerdefinierten Funktionen finden Sie unter Benutzerdefinierte Google Standard-SQL-Funktionen.
Wenn Sie eine Ansicht in einem anderen Projekt als dem Standardprojekt aktualisieren, fügen Sie dem Dataset-Namen die Projekt-ID im folgenden Format hinzu: project_id:dataset
.
bq update \ --use_legacy_sql=false \ --view_udf_resource=path_to_file \ --view='query' \ project_id:dataset.view
Dabei gilt:
- path_to_file ist der URI oder lokale Dateisystempfad zu einer Codedatei, die sofort als benutzerdefinierte Funktionsressource, die von der Ansicht verwendet werden kann, geladen und ausgewertet werden soll. Wiederholen Sie das Flag, um mehrere Dateien anzugeben.
- query: eine gültige Google Standard-SQL-Abfrage.
- project_id: Ihre Projekt-ID
- dataset: der Name des Datasets, das die zu aktualisierende Ansicht enthält
- view: der Name der zu aktualisierenden Ansicht
Beispiele
Geben Sie den folgenden Befehl ein, um die SQL-Abfrage für eine Ansicht namens myview
in mydataset
zu aktualisieren. mydataset
befindet sich in Ihrem Standardprojekt. Die zum Aktualisieren der Ansicht verwendete Beispielabfrage fragt Daten aus dem öffentlichen Dataset USA Name Data ab.
bq update \
--use_legacy_sql=false \
--view \
'SELECT
name,
number
FROM
`bigquery-public-data.usa_names.usa_1910_current`
WHERE
gender = "M"
ORDER BY
number DESC;' \
mydataset.myview
Geben Sie den folgenden Befehl ein, um die SQL-Abfrage für eine Ansicht namens myview
in mydataset
zu aktualisieren. mydataset
befindet sich in myotherproject
, nicht in Ihrem Standardprojekt. Die zum Aktualisieren der Ansicht verwendete Beispielabfrage fragt Daten aus dem öffentlichen Dataset USA Name Data ab.
bq update \
--use_legacy_sql=false \
--view \
'SELECT
name,
number
FROM
`bigquery-public-data.usa_names.usa_1910_current`
WHERE
gender = "M"
ORDER BY
number DESC;' \
myotherproject:mydataset.myview
API
Zum Aktualisieren einer Ansicht rufen Sie die Methode tables.patch
mit einer Tabellenressource auf, die ein aktualisiertes view
-Attribut enthält. Da die Methode tables.update
die gesamte Tabellenressource ersetzt, ist die Methode tables.patch
zu bevorzugen.
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
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.
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.
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.
Ablaufzeit einer Ansicht aktualisieren
Sie können eine Standardtabellenablaufzeit auf Dataset-Ebene festlegen, die sowohl für Tabellen als auch für Ansichten gilt, oder die Ablaufzeit einer Ansicht bei der Erstellung der Ansicht festlegen. Wenn Sie den Ablauf einer Ansicht bei ihrer Erstellung festlegen, wird der Standardtabellenablauf des Datasets ignoriert. Wenn Sie keine Standardablaufzeit für Tabellen auf Dataset-Ebene und keine Ablaufzeit beim Erstellen der Ansicht festlegen, ist die Ansicht unbegrenzt gültig. Sie müssen die Ansicht dann manuell löschen.
Nach dem Erstellen der Ansicht können Sie die Ablaufzeit der Ansicht jederzeit so aktualisieren:
- Google Cloud Console verwenden
- DDL-Anweisung (Data Definition Language, Datendefinitionssprache) in der Google Standard-SQL-Syntax verwenden
- Mit dem Befehl
bq update
desbq
-Befehlszeilentools - Durch Aufrufen der API-Methode
tables.patch
- Mit den Clientbibliotheken
So aktualisieren Sie die Ablaufzeit einer Ansicht:
Console
Wählen Sie im Navigationsbereich Ihre Ansicht aus.
Klicken Sie auf der Seite "Details ansehen" auf den Tab Details.
Klicken Sie rechts neben Ansichtsinformationen auf das Symbol "Bearbeiten" (Stift).
Klicken Sie im Dialogfeld Ansichtsinformationen für Ablauf der Ansicht auf Datum angeben.
Geben Sie in der Datumsauswahl das Datum und die Uhrzeit für den Ablauf ein und klicken Sie dann auf Ok.
Klicken Sie auf Aktualisieren. Die aktualisierte Ablaufzeit wird im Bereich Ansichtsinformationen angezeigt.
SQL
Anweisungen zur Datendefinitionssprache (Data Definition Language, DDL) ermöglichen das Erstellen und Ändern von Tabellen und Ansichten mit der Google Standard-SQL-Abfragesyntax.
Weitere Informationen finden Sie unter DDL-Anweisungen verwenden.
Mit einer DDL-Anweisung können Sie die Ablaufzeit einer Ansicht aktualisieren:
Öffnen Sie in der Google Cloud Console die Seite BigQuery.
Geben Sie im Abfrageeditor die folgende Anweisung ein:
ALTER VIEW DATASET_ID.MY_VIEW SET OPTIONS ( expiration_timestamp = TIMESTAMP('NEW_TIMESTAMP'));
Dabei gilt:
- DATASET_ID: die ID des Datasets, das Ihre Ansicht enthält
- MY_VIEW: der Name der zu aktualisierenden Ansicht
- NEW_TIMESTAMP: ein ZEITSTEMPEL-Wert
Klicken Sie auf
Ausführen.
Informationen zum Ausführen von Abfragen finden Sie unter Interaktive Abfragen ausführen.
bq
Führen Sie den Befehl bq update
mit dem Flag --expiration
aus. Wenn Sie eine Ansicht in einem anderen Projekt als Ihrem Standardprojekt aktualisieren, fügen Sie dem Dataset-Namen die Projekt-ID im folgenden Format hinzu: project_id:dataset
.
bq update \ --expiration integer \ project_id:dataset.view
Ersetzen Sie Folgendes:
- integer: die Standardlebensdauer der Tabelle in Sekunden. Der Mindestwert beträgt 3.600 Sekunden bzw. eine Stunde. Die Ablaufzeit entspricht der aktuellen Zeit plus dem ganzzahligen Wert.
- project_id: Ihre Projekt-ID
- dataset: der Name des Datasets, das die zu aktualisierende Ansicht enthält
- view: der Name der zu aktualisierenden Ansicht
Beispiele
Geben Sie den folgenden Befehl ein, um die Ablaufzeit von myview
in mydataset
auf 5 Tage (432000 Sekunden) zu aktualisieren. mydataset
befindet sich in Ihrem Standardprojekt.
bq update \
--expiration 432000 \
mydataset.myview
Geben Sie den folgenden Befehl ein, um die Ablaufzeit von myview
in mydataset
auf 5 Tage (432000 Sekunden) zu aktualisieren. mydataset
befindet sich nicht in Ihrem Standardprojekt, sondern in myotherproject
.
bq update \
--expiration 432000 \
myotherproject:mydataset.myview
API
Rufen Sie die Methode tables.patch
auf und verwenden Sie das Attribut expirationTime
in der Tabellenressource. Da die Methode tables.update
die gesamte Tabellenressource ersetzt, ist die Methode tables.patch
zu bevorzugen. Wenn Sie die REST API verwenden, geben Sie die Ablaufzeit der Ansicht in Millisekunden an.
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
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.
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.
Python
Das Aktualisieren der Ablaufzeit einer Ansicht funktioniert genauso wie bei einer Tabelle.
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.
Beschreibung einer Ansicht aktualisieren
Sie können die Beschreibung einer Ansicht so aktualisieren:
- Google Cloud Console verwenden
- DDL-Anweisung (Data Definition Language, Datendefinitionssprache) in der Google Standard-SQL-Syntax verwenden
- Mit dem Befehl
bq update
desbq
-Befehlszeilentools - Durch Aufrufen der API-Methode
tables.patch
- Mit den Clientbibliotheken
So aktualisieren Sie die Beschreibung einer Ansicht:
Console
Sie können keine Beschreibung hinzufügen, wenn Sie eine Ansicht mit der Google Cloud Console erstellen. Nachdem die Ansicht erstellt wurde, können Sie auf der Seite Details eine Beschreibung hinzufügen.
Maximieren Sie im Bereich Explorer Ihr Projekt und das Dataset und wählen Sie dann die Ansicht aus.
Klicken Sie auf den Tab Details.
Klicken Sie auf das Stiftsymbol neben Description (Beschreibung).
Geben Sie eine Beschreibung in das Dialogfeld ein. Klicken Sie auf Aktualisieren, um die neue Beschreibung zu speichern.
SQL
Anweisungen zur Datendefinitionssprache (Data Definition Language, DDL) ermöglichen das Erstellen und Ändern von Tabellen und Ansichten mit der Google Standard-SQL-Abfragesyntax.
Weitere Informationen finden Sie unter DDL-Anweisungen verwenden.
Mit einer DDL-Anweisung können Sie die Beschreibung einer Ansicht aktualisieren:
Öffnen Sie in der Google Cloud Console die Seite BigQuery.
Geben Sie im Abfrageeditor die folgende Anweisung ein:
ALTER VIEW DATASET_ID.MY_VIEW SET OPTIONS ( description = 'NEW_DESCRIPTION');
Dabei gilt:
- DATASET_ID: die ID des Datasets, das Ihre Ansicht enthält
- MY_VIEW: der Name der zu aktualisierenden Ansicht
- NEW_DESCRIPTION: die neue Beschreibung der Ansicht
Klicken Sie auf
Ausführen.
Informationen zum Ausführen von Abfragen finden Sie unter Interaktive Abfragen ausführen.
bq
Führen Sie den Befehl bq update
mit dem Flag --description
aus. Wenn Sie eine Ansicht in einem anderen Projekt als Ihrem Standardprojekt aktualisieren, fügen Sie dem Dataset-Namen die Projekt-ID im folgenden Format hinzu: [PROJECT_ID]:[DATASET]
.
bq update \ --description "description" \ project_id:dataset.view
Dabei gilt:
- description: der Text, der die Ansicht in Anführungszeichen beschreibt.
- project_id: Ihre Projekt-ID.
- dataset: der Name des Datasets, das die zu aktualisierende Ansicht enthält
- view: der Name der zu aktualisierenden Ansicht
Beispiele
Geben Sie den folgenden Befehl ein, um die Beschreibung von myview
in mydataset
zu "Description of myview" zu ändern. mydataset
befindet sich in Ihrem Standardprojekt.
bq update \
--description "Description of myview" \
mydataset.myview
Geben Sie den folgenden Befehl ein, um die Beschreibung von myview
in mydataset
zu "Description of myview" zu ändern. mydataset
befindet sich nicht in Ihrem Standardprojekt, sondern in myotherproject
.
bq update \
--description "Description of myview" \
myotherproject:mydataset.myview
API
Zum Aktualisieren der Ansichtsbeschreibung in der Tabellenressource rufen Sie die Methode tables.patch
auf und verwenden das Attribut description
. Da die Methode tables.update
die gesamte Tabellenressource ersetzt, ist die Methode tables.patch
zu bevorzugen.
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
Das Aktualisieren der Beschreibung einer Ansicht funktioniert genauso wie bei einer Tabelle.
Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Java-Einrichtungsanleitung in der BigQuery-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Angaben finden Sie in der Referenzdokumentation zur BigQuery Java API.
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.
Python
Das Aktualisieren der Beschreibung einer Ansicht funktioniert genauso wie bei einer Tabelle.
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.
Sicherheit ansehen
Informationen zum Steuern des Zugriffs auf Ansichten in BigQuery finden Sie unter Autorisierte Ansichten.
Nächste Schritte
- Ansichten verwalten (inklusive Kopieren und Löschen)
- Ansichten erstellen
- Autorisierte Ansichten erstellen
- Ansichten auflisten
- Metadaten zu Ansichten abrufen