Erros comuns no recurso "Explorar"

Esta página mostra como resolver problemas com a área de trabalho de análise de dados no Dataplex.

Banco de dados não encontrado

Ao executar uma consulta do Spark no workbench do SQL ou no notebook do Jupyter, ocorre o seguinte erro:

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

Os nomes de zona do Dataplex são mapeados para nomes de banco de dados compatíveis com o Hive, que podem ser consultados usando o Spark. Os nomes de zona do Dataplex podem conter um hífen (-), mas os nomes de banco de dados do Hive não podem. Portanto, os hifens nos nomes de zona do Dataplex são mapeados para sublinhados (_) nos nomes de banco de dados do Hive.

Para resolver o problema, siga estas etapas:

  1. Confira uma lista de bancos de dados disponíveis:

    show databases
    
  2. Confira a lista de nomes de banco de dados retornados e verifique se você está consultando o nome correto.

Tabela não encontrada

Ao executar uma consulta do Spark no workbench do SQL ou no notebook do Jupyter, ocorre o seguinte erro:

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

O Dataplex descobre os metadados dos recursos do BigQuery e do Cloud Storage e os torna acessíveis usando a Metastore do Dataproc (DPMS, na sigla em inglês). As consultas do Spark no workbench do SQL ou nos notebooks do Jupyter se conectam ao DPMS ao executar consultas SQL para receber os metadados da tabela.

Para resolver o problema, siga estas etapas:

  1. Confira a lista de tabelas disponíveis:

    show tables in DATABASE_NAME
    
  2. Verifique se você está consultando o nome correto da tabela.

  3. Se o nome da tabela tiver letras maiúsculas, defina spark.sql.caseSensitive como true na configuração do ambiente.

Erros de permissão

As consultas do Spark falham com erros de permissão. Exemplo:

  • HiveException
  • TTransportException

Para usar os recursos de análise no Dataplex, você precisa receber as funções e permissões necessárias nos recursos do Dataplex e nos recursos subjacentes.

Para resolver o problema de permissão, siga estas etapas:

  • Verifique se você tem os papéis e permissões necessários para usar a plataforma de análise de dados.
  • Verifique se você tem permissões read nos recursos do Cloud Storage e do BigQuery.
  • Para pacotes personalizados, verifique se o agente de serviço do Cloud Dataplex tem permissões read no bucket do Cloud Storage configurado no ambiente.

Não é possível excluir um lago que contém scripts ou notebooks

Ao excluir um lake usado pelo Dataplex Explore e se ele contém scripts ou notebooks, ocorre o seguinte erro:

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

O Dataplex Explore exige que pelo menos um ambiente esteja presente no navegador de recursos.

Para resolver esse problema, use um dos métodos a seguir.

  • Use os comandos da CLI gcloud para excluir scripts e notebooks do lago e, em seguida, exclua o lago.
  • Crie um ambiente temporário que ative o navegador de recursos. Exclua todos os scripts e cadernos, seguidos pelo ambiente temporário e pelo lago.

Job abortado

Quando você executa uma consulta do Spark, o job é interrompido se houver um erro crítico.

Para resolver esse problema, consulte a mensagem de erro para identificar a causa raiz do problema e corrigi-lo.

TTransportException ao consultar tabelas Iceberg

Quando você consulta uma tabela Iceberg ampla, o TTransportException ocorre.

O Iceberg tem um problema conhecido no Spark 3.1, que está disponível nas imagens do Dataproc 2.0 usadas pelo Dataplex Explore.

Para resolver esse problema, adicione uma projeção extra na consulta SELECT. Exemplo:

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

Neste exemplo, 1 AS dummy é a projeção extra. Para mais informações, consulte a página de detalhes do problema.

Os lagos não aparecem no navegador de recursos do recurso "Explorar"

A seção "Explorar" está disponível apenas para lagos nas regiões us-central1, europe-west2, europe-west1, us-east1, us-west1, asia-southeast1 e asia-northeast1. Lagos que pertencem a qualquer outra região não aparecem no navegador de recursos do recurso Explorar.

Não é possível começar a usar o Dataplex Explore

No console do Google Cloud, na página Dataplex, quando você clica em Explorar, a seguinte mensagem aparece:

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.

A opção "Analisar" só funciona se um lake tiver uma metastore do Dataproc (DPMS) configurada e pelo menos uma configuração de ambiente.

Para resolver esse problema, vincule seu lake ao Metastore do Dataproc.

Restrições de cota

Ao criar um ambiente, você pode encontrar erros relacionados à cota.

Para resolver esse problema, revise as seguintes cotas antes de criar um ambiente:

  • É possível criar 10 ambientes por lake.
  • É possível criar ambientes com até 150 nós.
  • A duração das sessões de usuários individuais é restrita a 10 horas.

O tempo de inicialização da sessão é longo

Demora de 2,5 a 3,5 minutos para iniciar uma nova sessão por usuário. Quando uma sessão está ativa, ela é usada para executar consultas e notebooks subsequentes para o mesmo usuário.

Para reduzir o tempo de inicialização da sessão, crie um ambiente padrão com a inicialização rápida ativada.

Não é possível programar notebooks que contêm pacotes personalizados do Python

No console do Google Cloud, ao programar um notebook que contém pacotes Python personalizados, ocorre o seguinte erro:

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.

Não é possível programar um notebook no console do Google Cloud se o ambiente tiver pacotes Python personalizados.

Para resolver esse problema, use a CLI gcloud para programar notebooks com pacotes personalizados.