Todos os produtos
Search
Central de documentação

E-MapReduce:Use o recurso de extensão do Spark SQL para registrar linhagem de dados e informações históricas de acesso

Última atualização: Jun 27, 2026

O EMR-HOOK é integrado ao Spark 2 e ao Spark 3 em clusters E-MapReduce (EMR). Esse componente captura informações de execução de SQL — incluindo linhagem de dados e frequência de acesso a tabelas — e as envia ao Data Lake Formation (DLF) e ao DataWorks. Assim, você rastreia o fluxo de dados entre tabelas e a frequência de acesso a cada tabela ou partição sem modificar os jobs do Spark.

Pré-requisitos

Antes de começar, verifique se você tem:

  • Um cluster DataLake ou personalizado com o serviço Spark selecionado. Para mais informações, consulte Crie um cluster.

Limitações

  • O EMR-HOOK não coleta informações de SQL de jobs executados em um gateway implantado com EMR-CLI.

  • Nas versões anteriores ao EMR V5.16.0 ou EMR V3.50.0, as configurações hive.exec.post.hooks (Hive) e spark.sql.queryExecutionListeners (Spark) não são sincronizadas com o gateway. O EMR V5.16.0, o EMR V3.50.0 e as versões posteriores oferecem suporte à sincronização com o gateway e introduzem o parâmetro hive_aux_jars_path_gateway_only, que permite carregar um JAR de extensão personalizado exclusivamente no gateway.

Observações de uso

O estado padrão do EMR-HOOK varia conforme a versão do cluster. Consulte a tabela a seguir antes de prosseguir.

Versão do cluster

Estado padrão

Ação necessária

Anterior ao EMR V5.14.0 ou EMR V3.48.0

Ativado

Nenhuma ação necessária; configure apenas se desejar alterar o comportamento

EMR V5.14.0, EMR V3.48.0 ou posterior

Desativado

Ative manualmente conforme descrito no procedimento abaixo

EMR V3.44 (cluster personalizado)

Pode estar desativado

Consulte as Perguntas frequentes para obter as etapas de ativação manual

Ativar o EMR-HOOK para Spark

Etapa 1: Acesse a aba Services

  1. Faça login no console do EMR. No painel de navegação à esquerda, clique em EMR on ECS.

  2. Na barra de navegação superior, selecione uma região e um grupo de recursos.

  3. Localize seu cluster e clique em Services na coluna Actions.

Etapa 2: Configure o EMR-HOOK

  1. Na aba Services, localize o serviço Spark 2 ou Spark 3 e clique em Configure.

  2. Na aba Configure, defina os seguintes parâmetros nas respectivas subabas.

    Subaba

    Parâmetro

    Valor

    spark-defaults.conf

    spark.sql.queryExecutionListeners

    Para ativar: com.aliyun.emr.meta.spark.listener.EMRQueryLogger

    Para desativar: deixe em branco. Se esse campo ficar vazio, o EMR-HOOK para de funcionar completamente e a aba Data Overview das tabelas no console DLF deixa de exibir File Visits within Last Day, File Visits within Last Seven Days ou File Visits within Last 30 Days.

    hive-site.xml

    dlf.emrhook.webtracking

    true para ativar o relatório de frequência de acesso; false para desativar.

  3. Clique em Save. Na caixa de diálogo, defina Execution Reason e clique em Save.

Etapa 3: Reiniciar o Spark

  1. No canto superior direito da aba Configuration, escolha More > Restart.

  2. Na caixa de diálogo, defina Execution Reason e clique em OK.

  3. Na caixa de diálogo Confirm, clique em OK.

Visualize resultados

Após reiniciar o Spark, o EMR-HOOK começa a coletar dados. Visualize os resultados nos seguintes locais:

Perguntas frequentes

Como ativo o EMR-HOOK em um cluster personalizado que executa o EMR V3.44?

Na aba Configure do serviço Spark, adicione o seguinte caminho de JAR aos dois parâmetros de class path e aplique as alterações conforme solicitado.

Subaba

Parâmetro

Modificação

spark-defaults.conf

spark.driver.extraClassPath

Acrescente /opt/apps/EMRHOOK/emrhook-1.1.5/spark-hook-1.1.5-spark30.jar

spark-defaults.conf

spark.executor.extraClassPath

Acrescente /opt/apps/EMRHOOK/emrhook-1.1.5/spark-hook-1.1.5-spark30.jar

Próximos passos

Para configurar o EMR-HOOK para Hive, consulte Usar o recurso de extensão do Hive para registrar linhagem de dados e informações históricas de acesso.