Referenz zu Systemprozeduren

BigQuery unterstützt die folgenden Systemprozeduren, die ähnlich wie vom Nutzer erstellte gespeicherte Prozeduren verwendet werden können.

BQ.ABORT_SESSION

Syntax

CALL BQ.ABORT_SESSION([session_id]);

Beschreibung

Beendet Ihre aktuelle Sitzung.

Optional können Sie die Sitzungs-ID, um eine Sitzung zu beenden, wenn die Systemprozedur nicht von dieser Sitzung aus aufgerufen wird, angeben.

Weitere Informationen finden Sie unter Sitzungen beenden.

BQ.JOBS.CANCEL

Syntax

CALL BQ.JOBS.CANCEL(job);

Beschreibung

Bricht einen laufenden Job ab

Geben Sie den Job als String im Format '[project_id.]job_id' an. Wenn Sie dieses Systemverfahren von einem anderen Projekt als dem Job aus ausführen, müssen Sie die Projekt-ID angeben. Die Prozedur muss am selben Ort wie der Job ausgeführt werden.

Weitere Informationen erhalten Sie auch unter Job abbrechen.

BQ.CANCEL_INDEX_ALTERATION

Syntax

CALL BQ.CANCEL_INDEX_ALTERATION(table_name, index_name);

Beschreibung

Bricht eine vom Nutzer initiierte Änderung eines Suchindex oder einen Wiederaufbau eines Vektorindex ab.

Geben Sie den Namen der Tabelle als String im Format '[project_id.]dataset.table' und den Indexnamen als String an. Wenn Sie dieses Systemverfahren von einem anderen Projekt als der Tabelle aus ausführen, müssen Sie die Projekt-ID angeben.

Sie müssen diese Prozedur am selben Ort wie die indizierte Tabelle ausführen. Informationen zum Festlegen des Standorts Ihrer Abfrage finden Sie unter Standorte angeben.

Beispiel

CALL BQ.CANCEL_INDEX_ALTERATION('my_project.my_dataset.indexed_table', 'my_index');

BQ.REFRESH_EXTERNAL_METADATA_CACHE

Syntax

CALL BQ.REFRESH_EXTERNAL_METADATA_CACHE(table_name [, [subdirectory_uri, ]]);

Beschreibung

Aktualisiert den Metadaten-Cache einer BigLake-Tabelle oder einer Objekttabelle. Dieser Vorgang schlägt fehl, wenn Sie ihn für eine Tabelle ausführen, deren Metadaten-Caching-Modus auf AUTOMATIC gesetzt ist.

Zum Ausführen dieses Systemverfahrens benötigen Sie die Berechtigungen bigquery.tables.update und bigquery.tables.updateData.

Geben Sie den Namen der Tabelle als String im Format '[project_id.]dataset.table' an. Wenn Sie dieses Systemverfahren von einem anderen Projekt als der Tabelle aus ausführen, müssen Sie die Projekt-ID angeben.

Bei BigLake-Tabellen können Sie optional ein oder mehrere Unterverzeichnisse des Tabellendatenverzeichnisses in Cloud Storage im Format 'gs://table_data_directory/subdirectory/.../' angeben. Damit eine selektive Aktualisierung ordnungsgemäß funktioniert, müssen die Cloud Storage-Pfadparameter entweder einen bestimmten Pfad oder einen Platzhalter enthalten. Weitere Informationen finden Sie unter Unterstützung von Platzhaltern für Cloud Storage-URIs. So können Sie nur die Tabellenmetadaten aus diesen Unterverzeichnissen aktualisieren und dadurch unnötige Metadatenverarbeitung vermeiden.

Beispiele

So aktualisieren Sie alle Metadaten für eine Tabelle:

CALL BQ.REFRESH_EXTERNAL_METADATA_CACHE('myproject.test_db.test_table')

So aktualisieren Sie die Metadaten für eine BigLake-Tabelle selektiv:

CALL BQ.REFRESH_EXTERNAL_METADATA_CACHE('myproject.test_db.test_table', ['gs://source/uri/sub/path/d1/*', 'gs://source/uri/sub/path/d2/*'])

Beschränkung

  • Die Aktualisierung des Metadaten-Cache wird für Tabellen, auf die von verknüpften Datasets über externe Datasets verwiesen wird, nicht unterstützt.
  • Die Aktualisierung des Metadaten-Cache sollte nicht in einer Transaktion mit mehreren Anweisungen verwendet werden.

BQ.REFRESH_MATERIALIZED_VIEW

Syntax

CALL BQ.REFRESH_MATERIALIZED_VIEW(view_name);

Beschreibung

Aktualisiert eine materialisierte Ansicht.

Geben Sie den Namen der materialisierten Ansicht als String im Format '[project_id.]dataset.table' an. Wenn Sie dieses Systemverfahren von einem anderen Projekt als der materialisierten Ansicht ausführen, müssen Sie die Projekt-ID angeben.

Weitere Informationen finden Sie unter Manuelle Aktualisierung.

BQ.SHOW_GRAPH_EXPAND_SCHEMA

Syntax

CALL BQ.SHOW_GRAPH_EXPAND_SCHEMA(graph_name, output_schema);

Beschreibung

Füllt die Variable output_schema, die Sie mit dem Schema der Tabelle angeben, die durch Aufrufen der GRAPH_EXPAND TVF für graph_name zurückgegeben wird.

Geben Sie den Namen des Graphen als String im Format '[project_id.]dataset.graph' an. Jede von der TVF GRAPH_EXPAND zurückgegebene Spalte stellt eine Property im Graphen dar. Die Ausgabe enthält den Namen, Typ und Modus für jede Spalte. Wenn für die Property eine Beschreibung oder Synonyme definiert sind, werden diese in einem Feld description für die Spalte angezeigt. Wenn die Property eine Messung definiert, dann enthält die Ausgabe "is_measure":true für dieses Feld.

Beispiele

DECLARE schema STRING;
CALL BQ.SHOW_GRAPH_EXPAND_SCHEMA('my_project.my_dataset.my_graph', schema);
SELECT schema;

Die Ausgabe sieht dann ungefähr so aus:

{
  "fields":[
    {
      "name":"Department_dept_name",
      "type":"STRING",
      "mode":"NULLABLE",
      "description":
        "{\"description\":\"The name of the academic department\",
          \"synonyms\":[\"division\"]}"
    },
    {
      "name":"Department_budget",
      "type":"FLOAT",
      "mode":"NULLABLE"
    },
    {
      "name":"Department_total_budget",
      "type":"FLOAT",
      "mode":"NULLABLE",
      "is_measure":true
    }
  ]
}