Questa pagina mostra come risolvere i problemi relativi al workbench per l'esplorazione dei dati in Dataplex.
Database non trovato
Quando esegui una query Spark da SQL Workbench o da un blocco note Jupyter, si verifica il seguente errore:
Script failed in execution.
org.apache.spark.sql.catalyst.parser.ParseException:
No viable alternative at input `zone-name`(line 1, pos24)
I nomi delle zone Dataplex sono mappati a nomi di database compatibili con Hive, su cui è possibile eseguire query utilizzando Spark. I nomi delle zone Dataplex possono contenere un trattino (-
), mentre i nomi dei database Hive non possono. Pertanto, i trattini
nei nomi delle zone Dataplex vengono mappati ai trattini bassi (_
) nei nomi dei database Hive.
Per risolvere il problema, segui questi passaggi:
Visualizza un elenco dei database disponibili:
show databases
Esamina l'elenco dei nomi dei database restituiti e assicurati di eseguire query sul nome corretto del database.
Tabella non trovata
Quando esegui una query Spark da SQL Workbench o da un blocco note Jupyter, si verifica il seguente errore:
Script failed in execution.
org.apache.spark.sql.AnalysisException: Table or view not found
Dataplex rileva i metadati degli asset BigQuery e Cloud Storage e li rende accessibili utilizzando Dataproc Metastore (DPMS). Le query Spark su SQL Workbench o Jupyter si connettono a DPMS durante l'esecuzione di query SQL per recuperare i metadati delle tabelle.
Per risolvere il problema, segui questi passaggi:
Recupera l'elenco delle tabelle disponibili:
show tables in DATABASE_NAME
Assicurati di eseguire una query sul nome della tabella corretto.
Se il nome della tabella contiene lettere maiuscole, imposta
spark.sql.caseSensitive
sutrue
nella configurazione dell'ambiente.
Errori di autorizzazione
Le query Spark non riescono a causa di errori di autorizzazione. Ad esempio:
HiveException
TTransportException
Per utilizzare le funzionalità di esplorazione in Dataplex, devi disporre dei ruoli e delle autorizzazioni richiesti per le risorse Dataplex e gli asset sottostanti.
Per risolvere il problema di autorizzazione:
- Assicurati di disporre dei ruoli e delle autorizzazioni richiesti per utilizzare la Workbench di esplorazione dei dati.
- Assicurati di disporre delle autorizzazioni
read
per gli asset Cloud Storage e BigQuery sottostanti. - Per i pacchetti personalizzati, assicurati che l'agente di servizio Cloud Dataplex abbia autorizzazioni
read
sul bucket Cloud Storage configurato nell'ambiente.
Impossibile eliminare il lake contenente script o notebook
Quando elimini un lake utilizzato per Dataplex Explore e se il lake contiene script o notebook, si verifica il seguente errore:
Failed to delete `projects/locations/region/lakes/lakename` since it has child
resources.
Dataplex Explore richiede almeno un ambiente nel browser delle risorse.
Per risolvere il problema, utilizza una delle seguenti soluzioni alternative:
- Utilizza i comandi dell'interfaccia a riga di comando gcloud per eliminare gli script e i notebook dal lago, quindi elimina il lago.
- Crea un ambiente temporaneo che attivi il browser delle risorse. Elimina tutti gli script e i notebook, seguiti dall'ambiente temporaneo e dal lake.
Job interrotto
Quando esegui una query Spark, il job viene interrotto in caso di errore critici.
Per risolvere il problema, fai riferimento al messaggio di errore per identificare la causa principale del problema e risolverlo.
TTransportException durante l'esecuzione di query sulle tabelle Iceberg
Quando esegui una query su una tabella Iceberg ampia, si verifica TTransportException
.
Iceberg presenta un problema noto su Spark 3.1, disponibile nelle immagini Dataproc 2.0 utilizzate da Dataplex Explore.
Per risolvere il problema, aggiungi un'altra proiezione nella query SELECT
.
Ad esempio:
SELECT a,b,c, 1 AS dummy FROM ICEBERG_TABLE
In questo esempio, 1 AS dummy
è la proiezione aggiuntiva. Per ulteriori informazioni, consulta la pagina dei dettagli del problema.
I laghi non vengono visualizzati nel browser delle risorse di Esplora
La funzionalità Esplora è disponibile per i laghi solo nelle regioni us-central1
, europe-west2
,
europe-west1
, us-east1
, us-west1
, asia-southeast1
, asia-northeast1
. I laghi appartenenti ad altre regioni non vengono visualizzati nel browser di risorse di Esplora.
Impossibile iniziare a utilizzare Dataplex Explore
Nella console Google Cloud, nella pagina Dataplex, quando fai clic su Esplora, viene visualizzato il seguente messaggio:
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.
Esplora funziona solo se un lake ha un Dataproc Metastore (DPMS) configurato e almeno una configurazione dell'ambiente.
Per risolvere il problema, collega il tuo lake a Dataproc Metastore.
Restrizioni relative alle quote
Quando crei un ambiente, potresti visualizzare errori relativi alla quota.
Per risolvere il problema, controlla le seguenti quote prima di creare un ambiente:
- Puoi creare 10 ambienti per lake.
- Puoi creare ambienti con un massimo di 150 nodi.
- La durata delle sessioni dei singoli utenti è limitata a 10 ore.
Il tempo di avvio della sessione è lungo
Sono necessari 2,5-3,5 minuti per avviare una nuova sessione per utente. Una volta attivata, la sessione viene utilizzata per eseguire query e notebook successivi per lo stesso utente.
Per ridurre il tempo di avvio della sessione, crea un ambiente predefinito con l'avvio rapido abilitato.
Impossibile pianificare i notebook contenenti pacchetti Python personalizzati
Nella console Google Cloud, quando pianifichi un notebook contenente pacchetti Python personalizzati, si verifica il seguente errore:
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.
Non puoi pianificare un blocco note nella console Google Cloud se l'ambiente contiene pacchetti Python personalizzati.
Per risolvere il problema, utilizza l'interfaccia a riga di comando gcloud per pianificare i notebook contenenti pacchetti personalizzati.