Errores comunes de Explorar

En esta página, se muestra cómo resolver problemas con el espacio de trabajo de exploración de datos en Dataplex.

No se encontró la base de datos

Cuando ejecutas una consulta de Spark desde el Workbench de SQL o el notebook de Jupyter, se produce el siguiente error:

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

Los nombres de las zonas de Dataplex se asignan a nombres de bases de datos compatibles con Hive, que se pueden consultar con Spark. Los nombres de las zonas de Dataplex pueden contener un guion (-), mientras que los nombres de las bases de datos de Hive no. Por lo tanto, los guiones en los nombres de las zonas de Dataplex se asignan a guiones bajos (_) en los nombres de las bases de datos de Hive.

Para resolver el problema, sigue estos pasos:

  1. Obtén una lista de las bases de datos disponibles:

    show databases
    
  2. Revisa la lista de los nombres de las bases de datos que se muestran y asegúrate de consultar el nombre correcto de la base de datos.

No se encontró la tabla

Cuando ejecutas una consulta de Spark desde el Workbench de SQL o el notebook de Jupyter, se produce el siguiente error:

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

Dataplex descubre los metadatos de los elementos de BigQuery y Cloud Storage, y los hace accesibles mediante Dataproc Metastore (DPMS). Las consultas de Spark en Workbench de SQL o en los notebooks de Jupyter se conectan al DPMS mientras se ejecutan las consultas de SQL para obtener los metadatos de la tabla.

Para resolver el problema, sigue estos pasos:

  1. Obtén la lista de tablas disponibles:

    show tables in DATABASE_NAME
    
  2. Asegúrate de consultar el nombre de tabla correcto.

  3. Si el nombre de la tabla contiene letras mayúsculas, establece spark.sql.caseSensitive como true en la configuración del entorno.

Errores de permisos

Las consultas de Spark fallan con errores de permisos. Por ejemplo:

  • HiveException
  • TTransportException

Para usar las funciones de Explorar en Dataplex, debes tener los roles y permisos necesarios en los recursos y los recursos subyacentes de Dataplex.

Para resolver el problema de permisos, sigue estos pasos:

  • Asegúrate de tener los permisos y funciones necesarios para usar el área de trabajo de Exploración de datos.
  • Asegúrate de tener permisos read en los elementos subyacentes de Cloud Storage y BigQuery.
  • Para los paquetes personalizados, asegúrate de que el agente de servicio de Cloud Dataplex tenga permisos read en el bucket de Cloud Storage configurado en el entorno.

No se pudo borrar el lake que contiene secuencias de comandos o notebooks

Cuando borras un lake que se usa para Dataplex Explore y si el lake contiene secuencias de comandos o notebooks, se produce el siguiente error:

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

Dataplex Explore requiere al menos un entorno para estar presente en el navegador de recursos.

Para resolver este problema, usa una de las siguientes soluciones alternativas:

  • Usa los comandos de gcloud CLI para borrar secuencias de comandos y notebooks del lake y, luego, borrarlo.
  • Crear un entorno temporal que habilite el navegador de recursos Borra todas las secuencias de comandos y los notebooks, y, luego, el entorno temporal y el lake.

Se anuló el trabajo

Cuando ejecutas una consulta de Spark, el trabajo se anula si hay un error crítico.

Para resolver el problema, consulta el mensaje de error a fin de identificar su causa raíz y corregirlo.

TTransportException cuando se consultan tablas de Iceberg

Cuando consultas una tabla ancha de Iceberg, se produce la TTransportException.

Iceberg tiene un problema conocido en Spark 3.1 que está disponible en las imágenes de Dataproc 2.0 que usa Dataplex Explore.

Para resolver este problema, agrega una proyección adicional en la consulta SELECT. Por ejemplo:

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

En este ejemplo, 1 AS dummy es la proyección adicional. Para obtener más información, consulta la página de detalles del problema.

Los data lakes no aparecen en el navegador de recursos de Explore

Explorar solo está disponible para lakes en las regiones us-central1, europe-west2, europe-west1, us-east1, us-west1, asia-southeast1 y asia-northeast1. Los lakes que pertenecen a cualquier otra región no aparecen en el navegador de recursos Explorar.

No se puede comenzar a usar Dataplex Explore

En la consola de Google Cloud, en la página Dataplex, cuando haces clic en Explorar, se muestra el siguiente mensaje:

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.

La exploración solo funciona si un lake tiene configurado Dataproc Metastore (DPMS) y al menos una configuración de entorno.

Para resolver este problema, vincula tu lake a Dataproc Metastore.

Restricciones de cuota

Cuando creas un entorno, es posible que veas errores relacionados con la cuota.

Para resolver este problema, revisa las siguientes cuotas antes de crear un entorno:

  • Puedes crear 10 entornos por lake.
  • Puedes crear entornos con un máximo de 150 nodos.
  • La duración de las sesiones de usuarios individuales se limita a 10 horas.

El tiempo de inicio de la sesión es largo

Tarda entre 2.5 y 3.5 minutos en iniciar una nueva sesión por usuario. Una vez que una sesión está activa, se usa a fin de ejecutar consultas y notebooks posteriores para el mismo usuario.

Para reducir el tiempo de inicio de la sesión, crea un entorno predeterminado con el inicio rápido habilitado.

No se pueden programar notebooks que contengan paquetes personalizados de Python

En la consola de Google Cloud, cuando programas un notebook que contiene paquetes personalizados de Python, se produce el siguiente error:

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.

No puedes programar un notebook en la consola de Google Cloud si el entorno tiene paquetes personalizados de Python.

Para resolver este problema, usa gcloud CLI a fin de programar notebooks que contengan paquetes personalizados.