Einführung in logische Ansichten

Dieses Dokument bietet einen Überblick über die BigQuery-Unterstützung für logische Ansichten. Eine Ansicht ist eine virtuelle Tabelle, die durch eine SQL-Abfrage definiert wird. Der Standardtyp von Ansichten für BigQuery ist eine logische Ansicht. Abfrageergebnisse enthalten nur die Daten aus den Tabellen und Feldern, die in der Abfrage angegeben sind, in der die Ansicht definiert wird.

Die Abfrage, die eine Ansicht definiert, wird bei jeder Abfrage der Ansicht ausgeführt.

Häufige Anwendungsfälle für Ansichten:

  • Sie können einen wiederverwendbaren Namen für eine komplexe Abfrage oder eine begrenzte Datenmenge bereitstellen, für die Sie dann andere Nutzer autorisieren können. Nachdem Sie eine Ansicht erstellt haben, kann ein Nutzer die Ansicht wie eine Tabelle abfragen.
  • Abstrakte und Speicherberechnung und Join-Logik in einem gemeinsamen Objekt, um die Abfragenutzung zu vereinfachen.
  • Zugriff auf eine Teilmenge von Daten und Berechnungslogik gewähren, ohne Zugriff auf die Basistabellen zu gewähren.
  • Optimieren Sie Abfragen mit hohen Rechenkosten und kleinen Datasets für mehrere Anwendungsfälle.

Sie können Ansichten auch in anderen Kontexten verwenden:

Einen Vergleich von logischen Ansichten, materialisierten Ansichten und autorisierten Ansichten finden Sie unter Übersicht über logische und materialisierte Ansichten.

Einschränkungen von logischen Ansichten

BigQuery-Ansichten unterliegen den folgenden Beschränkungen:

  • Ansichten sind schreibgeschützt. Sie können beispielsweise keine Abfragen ausführen, die Daten einfügen, aktualisieren oder löschen.
  • Das Dataset, in dem die Ansicht enthalten ist, und das Dataset mit den Tabellen, auf die in der Ansicht verwiesen wird, müssen sich am selben Standort befinden.
  • Ein Verweis innerhalb einer Ansicht muss mit einem Dataset qualifiziert sein. Das Standard-Dataset hat keinen Einfluss auf einen Ansichtstext.
  • Die JSON API-Methode TableDataList kann nicht zum Abrufen von Daten aus einer Ansicht verwendet werden. Weitere Informationen finden Sie unter Tabledata: list.
  • Bei Verwendung von Ansichten können GoogleSQL- und Legacy-SQL-Abfragen nicht kombiniert werden. Eine GoogleSQL-Abfrage kann nicht auf eine Ansicht verweisen, die mit der Legacy-SQL-Syntax definiert ist.
  • Sie können in Ansichten keine Abfrageparameter referenzieren.
  • Die Schemas der zugrunde liegenden Tabellen werden beim Erstellen der Ansicht mit dieser gespeichert. Wenn Spalten nach dem Erstellen der Ansicht hinzugefügt, gelöscht oder geändert werden, wird die Ansicht nicht automatisch aktualisiert. Das gemeldete Schema bleibt so lange ungenau, bis die SQL-Definition der Ansicht geändert oder die Ansicht neu erstellt wird. Auch wenn das gemeldete Schema ungenau sein könnte, geben die übermittelten Abfragen doch genaue Ergebnisse zurück.
  • Sie können eine Legacy-SQL-Ansicht nicht automatisch auf die GoogleSQL-Syntax aktualisieren. Zum Ändern der Abfrage zum Definieren einer Ansicht verwenden Sie Folgendes:
  • Es ist nicht möglich, eine temporäre benutzerdefinierte Funktion oder eine temporäre Tabelle in die SQL-Abfrage aufzunehmen, die eine Ansicht definiert.
  • In der Abfrage einer Platzhaltertabelle kann keine Ansicht referenziert werden.

Kontingente für logische Ansichten

Informationen zu Kontingenten und Limits für Ansichten finden Sie unter Limits von Ansichten. Für SQL-Abfragen, die zur Definition von Ansichten verwendet werden, gelten die Kontingente für Abfragejobs.

Preise für logische Ansichten

In BigQuery werden standardmäßig logische Ansichten und keine materialisierten Ansichten verwendet. Da Ansichten standardmäßig nicht materialisiert werden, wird die Abfrage, die die Ansicht definiert, jedes Mal ausgeführt, wenn die Ansicht abgefragt wird. Die Abfragen werden anhand der Datenmenge in allen Tabellenfeldern abgerechnet, die von der übergeordneten Abfrage direkt oder indirekt referenziert werden.

Sicherheit logischer Ansichten

Informationen zum Steuern des Zugriffs auf Ansichten in BigQuery finden Sie unter Autorisierte Ansichten.

Nächste Schritte