Häufige Fehler bei explorativen Datenanalysen

Auf dieser Seite erfahren Sie, wie Sie Probleme Datenerkundungs-Workbench in Dataplex.

Datenbank nicht gefunden

Wenn Sie eine Spark-Abfrage über die 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 kann. Dataplex-Zonennamen können einen Bindestrich (-) enthalten, Hive-Datenbanknamen hingegen nicht. Dementsprechend werden Bindestriche in den Dataplex-Zonennamen werden Unterstrichen (_) im Hive-Datenbanknamen

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

  1. Liste der verfügbaren Datenbanken abrufen:

    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, geschieht Folgendes: Fehler:

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 stellt sie über Dataproc Metastore (DPMS) zugänglich. Bei Spark-Abfragen in SQL Workbench oder Jupyter-Notebooks wird beim Ausführen von SQL-Abfragen eine Verbindung zu DPMS hergestellt, 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, benötigen Sie folgende Berechtigungen: die erforderlichen Rollen und Berechtigungen für die Dataplex-Ressourcen zugrunde liegende Assets.

So beheben Sie das Berechtigungsproblem:

  • Sie benötigen die erforderlichen Rollen und Berechtigungen, um die Workbench für explorative Datenanalyse verwenden zu können.
  • Sie benötigen die Berechtigung read für die zugrunde liegenden Cloud Storage- und BigQuery-Assets.
  • Bei benutzerdefinierten Paketen muss der Cloud Dataplex-Dienst-Agent die Berechtigung read für den in der Umgebung konfigurierten Cloud Storage-Bucket haben.

Speicher, der Scripts oder Notebooks enthält, kann nicht gelöscht werden

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

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

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

Verwenden Sie eine der folgenden Behelfslösungen, um dieses Problem zu beheben.

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

Job abgebrochen

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

Lesen Sie die Fehlermeldung, um die Ursache des Problems zu ermitteln und es zu beheben.

TTransportException beim Abfragen von Iceberg-Tabellen

Wenn Sie eine breite Iceberg-Tabelle abfragen, wird TTransportException ausgegeben.

Bei Iceberg gibt es ein bekanntes Problem mit Spark 3.1, das auf Dataproc 2.0-Images verfügbar ist, die von 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 „Explore“ nicht angezeigt

Die Funktion „Explore“ ist nur für Seen 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 Explore nicht angezeigt Ressourcenbrowser.

Dataplex-Explore kann nicht gestartet werden

Wenn Sie in der Google Cloud Console auf der Seite Dataplex auf Explore (Expl. Datenanalyse) 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.

Explores funktionieren 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.

Kontingenteinschränkungen

Beim Erstellen einer Umgebung können kontingentbezogene Fehler auftreten.

Prüfen Sie vor dem Erstellen einer Umgebung die folgenden Kontingente, um dieses Problem zu beheben:

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

Die Sitzungsstartzeit ist lang

Das Starten einer neuen Sitzung dauert pro Nutzer 2,5 bis 3,5 Minuten. Sobald eine Sitzung aktiv ist, werden nachfolgende Abfragen und Notebooks für denselben Nutzer ausgeführt.

Um die Startzeit der Sitzung zu verkürzen, erstellen Sie eine Standardumgebung, bei der der schnelle Start aktiviert ist.

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, wird der folgende Fehler ausgegeben:

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.

Verwenden Sie die gcloud CLI, um Notebooks mit benutzerdefinierten Paketen zu planen, um dieses Problem zu beheben.