Häufige Explore-Fehler

Auf dieser Seite wird beschrieben, wie Sie Probleme mit der Data exploration Workbench in Dataplex beheben.

Datenbank nicht gefunden

Wenn Sie eine Spark-Abfrage über SQL Workbench oder ein Jupyter-Notebook ausführen, tritt der folgende Fehler auf:

Script failed in execution.
org.apache.spark.sql.catalyst.parser.ParseException:
No viable alternative at input `zone-name`(line 1, pos24)

Dataplex-Zonennamen werden Hive-kompatiblen Datenbanknamen zugeordnet, die mit Spark abgefragt werden können. Dataplex-Zonennamen können einen Bindestrich (-) enthalten, bei Hive-Datenbanknamen jedoch nicht. Daher werden Bindestriche in den Dataplex-Zonennamen Unterstrichen (_) in den Namen der Hive-Datenbank zugeordnet.

Führen Sie die folgenden Schritte aus, um das Problem zu beheben:

  1. Rufen Sie eine Liste der verfügbaren Datenbanken ab:

    show databases
    
  2. Prüfen Sie die Liste der zurückgegebenen Datenbanknamen und achten Sie darauf, dass Sie den richtigen Datenbanknamen abfragen.

Tabelle nicht gefunden

Wenn Sie eine Spark-Abfrage über SQL Workbench oder ein Jupyter-Notebook ausführen, tritt der folgende Fehler auf:

Script failed in execution.
org.apache.spark.sql.AnalysisException: Table or view not found

Dataplex erkennt die Metadaten für BigQuery- und Cloud Storage-Assets und macht sie über Dataproc Metastore (DPMS) zugänglich. Spark-Abfragen in SQL Workbench oder Jupyter Notebooks stellen eine Verbindung zu DPMS her, während SQL-Abfragen ausgeführt werden, um die Tabellenmetadaten abzurufen.

Führen Sie die folgenden Schritte aus, um das Problem zu beheben:

  1. Rufen Sie die Liste der verfügbaren Tabellen ab:

    show tables in DATABASE_NAME
    
  2. Achten Sie darauf, dass Sie den richtigen Tabellennamen abfragen.

  3. Wenn der Tabellenname Großbuchstaben enthält, setzen Sie spark.sql.caseSensitive in der Umgebungskonfiguration auf true.

Berechtigungsfehler

Spark-Abfragen schlagen mit Berechtigungsfehlern fehl. Beispiel:

  • HiveException
  • TTransportException

Damit Sie die Explore-Features in Dataplex verwenden können, müssen Ihnen die erforderlichen Rollen und Berechtigungen für die Dataplex-Ressourcen und zugrunde liegenden Assets gewährt werden.

So beheben Sie das Berechtigungsproblem:

  • Prüfen Sie, ob Ihnen die erforderlichen Rollen und Berechtigungen für die Verwendung der Data exploration Workbench gewährt wurden.
  • Sie benötigen Berechtigungen des Typs read für die zugrunde liegenden Cloud Storage- und BigQuery-Assets.
  • Achten Sie bei benutzerdefinierten Paketen darauf, dass der Cloud Dataplex-Dienst-Agent read-Berechtigungen für den in der Umgebung konfigurierten Cloud Storage-Bucket hat.

Lake mit Skripts oder Notebooks kann nicht gelöscht werden

Wenn Sie einen Lake löschen, der für Dataplex-Explores verwendet wird und der Lake Skripts oder Notebooks enthält, tritt der folgende Fehler auf:

Failed to delete `projects/locations/region/lakes/lakename` since it has child
resources.

Für das Dataplex-Explore muss im Ressourcenbrowser mindestens eine Umgebung vorhanden sein.

Sie haben folgende Möglichkeiten, das Problem zu beheben:

  • Verwenden Sie die gcloud CLI-Befehle, um Skripts und Notebooks aus dem Lake zu löschen, und löschen Sie dann den Lake.
  • Erstellen Sie eine temporäre Umgebung, in der der Ressourcenbrowser aktiviert wird. Löschen Sie alle Skripts und Notebooks, gefolgt von der temporären Umgebung und dem Lake.

Job abgebrochen

Wenn Sie eine Spark-Abfrage ausführen, wird der Job bei einem kritischen Fehler abgebrochen.

Um dieses Problem zu beheben, sehen Sie sich die Fehlermeldung an, um die Ursache des Problems zu ermitteln und zu beheben.

TTransportException beim Abfragen von Iceberg-Tabellen

Wenn Sie eine breite Iceberg-Tabelle abfragen, wird TTransportException ausgeführt.

Iceberg hat ein bekanntes Problem in Spark 3.1, das in Dataproc 2.0-Images verfügbar ist, die vom Dataplex-Explore verwendet werden.

Fügen Sie der SELECT-Abfrage eine zusätzliche Projektion hinzu, um dieses Problem zu beheben. Beispiel:

SELECT a,b,c, 1 AS dummy FROM ICEBERG_TABLE

In diesem Beispiel ist 1 AS dummy die zusätzliche Projektion. Weitere Informationen finden Sie auf der Seite mit den Problemdetails.

Lakes werden im Ressourcenbrowser für Explores nicht angezeigt

Explore ist nur für Lakes in den Regionen us-central1, europe-west2, europe-west1, us-east1, us-west1, asia-southeast1 und asia-northeast1 verfügbar. Lakes, die zu einer anderen Region gehören, werden im Ressourcenbrowser von Explore nicht angezeigt.

Erste Schritte mit Dataplex Explore nicht möglich

Wenn Sie in der Google Cloud Console auf der Seite Dataplex auf Explore klicken, wird die folgende Meldung angezeigt:

In order to use Dataplex Explore to query data in CLoud Storage and BigQuery
using open soure applications (ex: SparkSQL), connect a metastore. Get started
by setting up one. If DPMS is already attached to the lake and you are seeing
this page, please check the DPMS logs for any possible issues.

Das Explore funktioniert nur, wenn für einen Lake ein Dataproc Metastore (DPMS) konfiguriert und mindestens eine Umgebung eingerichtet ist.

Verknüpfen Sie Ihren Lake mit Dataproc Metastore, um dieses Problem zu beheben.

Kontingentbeschränkungen

Beim Erstellen einer Umgebung werden möglicherweise kontingentbezogene Fehler angezeigt.

Prüfen Sie die folgenden Kontingente, bevor Sie eine Umgebung erstellen, um dieses Problem zu beheben:

  • Sie können 10 Umgebungen pro Lake erstellen.
  • Sie können Umgebungen mit maximal 150 Knoten erstellen.
  • Die Sitzungsdauer für einzelne Nutzersitzungen ist auf 10 Stunden beschränkt.

Sitzungsstartzeit ist lang

Pro Nutzer dauert es 2,5 bis 3,5 Minuten, um eine neue Sitzung zu starten. Sobald eine Sitzung aktiv ist, wird sie zum Ausführen nachfolgender Abfragen und Notebooks für denselben Nutzer verwendet.

Erstellen Sie eine Standardumgebung mit aktiviertem Schnellstart, um die Sitzungsstartzeit zu verkürzen.

Notebooks mit benutzerdefinierten Python-Paketen können nicht geplant werden

Wenn Sie in der Google Cloud Console ein Notebook planen, das benutzerdefinierte Python-Pakete enthält, tritt der folgende Fehler auf:

Selected environment ENVIRONMENT_NAME has additional Python
packages configured. These packages will not be available in the default runtime
for the scheduled notebook when scheduling in the Console. To make the required
additional Python packages available in the runtime, please create Notebook
Schedule using gcloud command instead, referencing a container image with
required additional packages.

Sie können ein Notebook in der Google Cloud Console nicht planen, wenn die Umgebung benutzerdefinierte Python-Pakete enthält.

Verwenden Sie zum Beheben dieses Problems die gcloud CLI, um Notebooks mit benutzerdefinierten Paketen zu planen.