Versão 5.26.0 do Amazon EMR - Amazon EMR

Versão 5.26.0 do Amazon EMR

Versões 5.26.0 da aplicação

Esta versão inclui as seguintes aplicações: Flink, Ganglia, HBase, HCatalog, Hadoop, Hive, Hue, JupyterHub, Livy, MXNet, Mahout, Oozie, Phoenix, Pig, Presto, Spark, Sqoop, TensorFlow, Tez, Zeppelin e ZooKeeper.

A tabela abaixo lista as versões das aplicações disponíveis nesta versão do Amazon EMR e as versões de aplicações nas três versões anteriores do Amazon EMR (quando aplicável).

Para obter um histórico abrangente das versões das aplicações de cada versão do Amazon EMR, consulte os seguintes tópicos:

Informações da versão da aplicação
emr-5.26.0 emr-5.25.0 emr-5.24.1 emr-5.24.0
AWS SDK para Java 1.11.5951.11.5661.11.5461.11.546
Python 2.7, 3.62.7, 3.62.7, 3.62.7, 3.6
Scala 2.11.122.11.122.11.122.11.12
AmazonCloudWatchAgent - - - -
Delta - - - -
Flink1.8.01.8.01.8.01.8.0
Ganglia3.7.23.7.23.7.23.7.2
HBase1.4.101.4.91.4.91.4.9
HCatalog2.3.5-amzn-02.3.5-amzn-02.3.4-amzn-22.3.4-amzn-2
Hadoop2.8.5-amzn-42.8.5-amzn-42.8.5-amzn-42.8.5-amzn-4
Hive2.3.5-amzn-02.3.5-amzn-02.3.4-amzn-22.3.4-amzn-2
Hudi - - - -
Hue4.4.04.4.04.4.04.4.0
Iceberg - - - -
JupyterEnterpriseGateway - - - -
JupyterHub0.9.60.9.60.9.60.9.6
Livy0.6.0-incubating0.6.0-incubating0.6.0-incubating0.6.0-incubating
MXNet1.4.01.4.01.4.01.4.0
Mahout0.13.00.13.00.13.00.13.0
Oozie5.1.05.1.05.1.05.1.0
Phoenix4.14.2-HBase-1.44.14.1-HBase-1.44.14.1-HBase-1.44.14.1-HBase-1.4
Pig0.17.00.17.00.17.00.17.0
Presto0.2200.2200.2190.219
Spark2.4.32.4.32.4.22.4.2
Sqoop1.4.71.4.71.4.71.4.7
TensorFlow1.13.11.13.11.12.01.12.0
Tez0.9.20.9.20.9.10.9.1
Trino (PrestoSQL) - - - -
Zeppelin0.8.10.8.10.8.10.8.1
ZooKeeper3.4.143.4.143.4.133.4.13

Notas da versão 5.26.0

As notas da versão a seguir incluem informações para a versão 5.26.0 do Amazon EMR. As alterações são referentes à versão 5.25.0.

Data da versão inicial: 8 de agosto de 2019

Data da última atualização: 19 de agosto de 2019

Atualizações
  • AWS SDK para Java 1.11.595

  • HBase 1.4.10

  • Phoenix 4.14.2

  • Conectores e drivers:

    • Conector do DynamoDB 4.11.0

    • Conector do MariaDB 2.4.2

    • Driver JDBC do Amazon Redshift, 1.2.32.1056

Novos atributos
  • (Beta) Com a versão 5.26.0 do Amazon EMR, você pode iniciar um cluster que se integre ao Lake Formation. Essa integração fornece acesso detalhado no nível da coluna a bancos de dados e tabelas no Catálogo de Dados do AWS Glue. Ela também permite logon único federado para Cadernos do EMR ou para o Apache Zeppelin em um sistema de identidade empresarial. Para obter mais informações, consulte Integrar o Amazon EMR com AWS Lake Formation (Beta).

  • (19 de agosto de 2019) O bloqueio de acesso público do Amazon EMR agora está disponível em todas as versões do Amazon EMR compatíveis com grupos de segurança. Bloquear acesso público é uma configuração em toda a conta aplicada a cada região da AWS. Bloquear acesso público impede que um cluster seja iniciado quando qualquer grupo de segurança associado ao cluster tiver uma regra que permita tráfego de entrada de IPv4 0.0.0.0/0 ou IPv6 ::/0 (acesso público) em uma porta, a menos que a porta seja especificada como uma exceção. A porta 22 é uma exceção por padrão. Para obter mais informações, consulte Usar o bloqueio de acesso público do Amazon EMR no Guia de gerenciamento do Amazon EMR.

Alterações, melhorias e problemas resolvidos
  • Blocos de anotações do EMR

    • Com as versões 5.26.0 e posteriores do EMR, os Cadernos do EMR são compatíveis com as bibliotecas Python com escopo de caderno, além das bibliotecas Python padrão. Você pode instalar bibliotecas com escopo de caderno de dentro do editor de caderno sem precisar recriar um cluster ou reanexar um caderno a um cluster. As bibliotecas com escopo de caderno são criadas em um ambiente Python virtual para serem aplicadas somente à sessão de caderno atual. Isso permite isolar as dependências do caderno. Para obter mais informações, consulte Usar bibliotecas com escopo de caderno no Guia de gerenciamento do Amazon EMR.

  • EMRFS

    • Você pode habilitar um atributo de verificação de ETag (Beta) definindo fs.s3.consistent.metadata.etag.verification.enabled como true. Com esse atributo, o EMRFS usa ETags do Amazon S3 para verificar se os objetos que estão sendo lidos estão na versão mais recente disponível. Esse atributo é útil para casos de uso de leitura após atualização em que arquivos no Amazon S3 são substituídos, mas mantêm o mesmo nome. No momento, esse recurso de verificação de ETag não funciona com o S3 Select. Para obter mais informações, consulte Configurar visualização consistente.

  • Spark

    • As seguintes otimizações agora estão habilitadas por padrão: remoção dinâmica de partições, DISTINCT antes de INTERSECT, melhorias na inferência de estatísticas do plano SQL para JOIN seguida por consultas DISTINCT, nivelamento de subconsultas escalares, reordenamento otimizado de junções e junção com filtro de Bloom. Para obter mais informações, consulte Otimizar a performance do Spark.

    • Aprimorada a geração de código de estágio completo para Sort-Merge Join.

    • Aprimorado o fragmento de consulta e a reutilização de subconsultas.

    • Melhorias na pré-alocação de executores na inicialização do Spark.

    • As junções com filtro de Bloom não são mais aplicadas quando o lado menor da junção inclui uma dica de transmissão.

  • Tez

    • Resolvido um problema com o Tez. A IU do Tez agora funciona em um cluster do Amazon EMR com vários nós primários.

Problemas conhecidos
  • Os recursos aprimorados de geração de código em todo o estágio de Sort Merge Join podem aumentar a pressão de memória quando habilitados. Essa otimização melhora a performance, mas pode resultar em novas tentativas ou falhas de trabalho se spark.yarn.executor.memoryOverheadFactor não for ajustado para fornecer memória suficiente. Para desabilitar esse atributo, defina spark.sql.sortMergeJoinExec.extendedCodegen.enabled como falso.

  • Problema conhecido em clusters com vários nós primários e autenticação Kerberos

    Se você executar clusters com vários nós primários e autenticação Kerberos nas versões 5.20.0 e posteriores do Amazon EMR, poderá encontrar problemas nas operações de cluster, como redução da escala verticalmente ou envio de etapas depois que o cluster estiver em execução por algum tempo. O período depende do período de validade do tíquete do Kerberos que você definiu. O problema de redução da escala verticalmente afeta tanto as solicitações de redução automática quanto as de reduções explícitas que você enviou. Operações adicionais de cluster também podem ser afetadas.

    Solução:

    • SSH como usuário do hadoop para o nó primário de liderança do cluster do EMR com vários nós primários.

    • Execute o comando a seguir para renovar o tíquete do Kerberos para o usuário do hadoop.

      kinit -kt <keytab_file> <principal>

      Normalmente, o arquivo keytab está localizado em /etc/hadoop.keytab e a entidade principal está na forma de hadoop/<hostname>@<REALM>.

    nota

    Essa solução alternativa entrará em vigor durante o período de validade do tíquete do Kerberos. Essa duração é de 10 horas por padrão, mas pode ser configurada pelas definições do Kerberos. Você deve executar novamente o comando acima quando o tíquete do Kerberos expirar.

Versões de componente 5.26.0

Os componentes que o Amazon EMR instala com esta versão estão listados abaixo. Alguns são instalados como parte de pacotes de aplicativos de big data. Outros são exclusivos do Amazon EMR e instalados para processos e atributos do sistema. Eles normalmente começam com emr ou aws. Os pacotes de aplicações de big data na versão mais recente do Amazon EMR são geralmente a versão mais recente encontrada na comunidade. Disponibilizamos as versões da comunidade no Amazon EMR o mais rapidamente possível.

Alguns componentes no Amazon EMR diferem das versões da comunidade. Esses componentes tem um rótulo de versão no formulário CommunityVersion-amzn-EmrVersion. O EmrVersion começa em 0. Por exemplo, se um componente da comunidade de código aberto denominado myapp-component com a versão 2.2 tiver sido alterado três vezes para inclusão em versões diferentes do Amazon EMR, sua versão será listada como 2.2-amzn-2.

Componente Versão Descrição
aws-sagemaker-spark-sdk1.2.4Spark SDK para o Amazon SageMaker
emr-ddb4.11.0O conector do Amazon DynamoDB para aplicativos do ecossistema do Hadoop.
emr-goodies2.10.0Bibliotecas convenientes para o ecossistema do Hadoop.
emr-kinesis3.4.0O conector do Amazon Kinesis para aplicativos do ecossistema do Hadoop.
emr-s3-dist-cp2.12.0Cópia distribuída otimizada de aplicativos para o Amazon S3.
emr-s3-select1.3.0EMR S3Select Connector
emrfs2.35.0O conector do Amazon S3 para aplicações do ecossistema do Hadoop.
flink-client1.8.0Scripts do cliente da linha de comando e aplicativos do Apache Flink.
ganglia-monitor3.7.2O agente incorporado do Ganglia para aplicativos do ecossistema do Hadoop, juntamente com o agente de monitoramento do Ganglia.
ganglia-metadata-collector3.7.2O coletor de metadados do Ganglia para agregar métricas de agentes de monitoramento do Ganglia.
ganglia-web3.7.1O aplicativo web para visualizar as métricas coletadas pelo coletor de metadados do Ganglia.
hadoop-client2.8.5-amzn-4Clientes da linha de comando do Hadoop, como 'hdfs', 'hadoop', ou 'yarn'.
hadoop-hdfs-datanode2.8.5-amzn-4O serviço de nível de nó do HDFS para armazenamento de blocos.
hadoop-hdfs-library2.8.5-amzn-4O cliente de linha de comando e biblioteca do HDFS
hadoop-hdfs-namenode2.8.5-amzn-4O serviço do HDFS para rastrear nomes de arquivos e locais de blocos.
hadoop-hdfs-journalnode2.8.5-amzn-4O serviço do HDFS para gerenciar o lançamento de arquivos do Hadoop em clusters de HA.
hadoop-httpfs-server2.8.5-amzn-4O endpoint de HTTP para as operações do HDFS.
hadoop-kms-server2.8.5-amzn-4O servidor de gerenciamento de chaves criptográficas baseado na API de KeyProvider do Hadoop.
hadoop-mapred2.8.5-amzn-4As bibliotecas do mecanismo de execução do MapReduce para a execução de aplicativos do MapReduce.
hadoop-yarn-nodemanager2.8.5-amzn-4O serviço do YARN para o gerenciamento de contêineres em um nó individual.
hadoop-yarn-resourcemanager2.8.5-amzn-4O serviço do YARN para alocar e gerenciar recursos de cluster e aplicativos distribuídos.
hadoop-yarn-timeline-server2.8.5-amzn-4O serviço para recuperar informações atuais e históricas dos aplicativos do YARN.
hbase-hmaster1.4.10O serviço de um cluster do HBase responsável pela coordenação de regiões e execução de comandos administrativos.
hbase-region-server1.4.10O serviço que abrange uma ou mais regiões do HBase.
hbase-client1.4.10O cliente da linha de comando do HBase.
hbase-rest-server1.4.10O serviço que fornece um endpoint do HTTP RESTful para o HBase.
hbase-thrift-server1.4.10O serviço que fornece um endpoint do Thrift para o HBase.
hcatalog-client2.3.5-amzn-0O cliente da linha de comando 'hcat' para manipular o hcatalog-server.
hcatalog-server2.3.5-amzn-0O serviço que fornece a HCatalog, uma camada de gerenciamento de tabelas e armazenamento para aplicativos distribuídos.
hcatalog-webhcat-server2.3.5-amzn-0O endpoint do HTTP que fornece uma interface REST para a HCatalog.
hive-client2.3.5-amzn-0O cliente da linha de comando do Hive.
hive-hbase2.3.5-amzn-0Cliente do Hive-hbase.
hive-metastore-server2.3.5-amzn-0O serviço de acesso à metastore do Hive, um repositório de semântica que armazena metadados do SQL nas operações do Hadoop.
hive-server22.3.5-amzn-0O serviço que aceita as consultas do Hive como solicitações da web.
hue-server4.4.0O aplicativo web para analisar dados usando aplicativos do ecossistema do Hadoop
jupyterhub0.9.6Servidor de vários usuários para blocos de anotações Jupyter
livy-server0.6.0-incubatingInterface REST para interagir com o Apache Spark
nginx1.12.1nginx [mecanismo x] é um servidor de proxy reverso e HTTP
mahout-client0.13.0A biblioteca de Machine Learning.
mxnet1.4.0Uma biblioteca flexível, escalável e eficiente para aprendizado aprofundado.
mysql-server5.5.54+O servidor de banco de dados MySQL.
nvidia-cuda9.2.88Drivers NVIDIA e toolkit CUDA
oozie-client5.1.0O cliente da linha de comando do Oozie.
oozie-server5.1.0O serviço que aceita solicitações de fluxo de trabalho do Oozie.
opencv3.4.0Biblioteca de Visão Computacional de Código Aberto.
phoenix-library4.14.2-HBase-1.4As bibliotecas do phoenix para servidor e cliente
phoenix-query-server4.14.2-HBase-1.4Um servidor leve que fornece acesso à JDBC, bem como buffers de protocolo e acesso no formato JSON à API do Avatica
presto-coordinator0.220O serviço que aceita consultas e gerencia a execução de consultas entre os presto-workers.
presto-worker0.220O serviço que executa partes de uma consulta.
pig-client0.17.0O cliente da linha de comando do Pig.
r3.4.1O projeto R para computação estatística
spark-client2.4.3Os clientes da linha de comando do Spark.
spark-history-server2.4.3A interface de usuário da web para visualizar os eventos registrados por toda a vida útil de um aplicativo Spark concluído.
spark-on-yarn2.4.3O mecanismo de execução em memória para o YARN.
spark-yarn-slave2.4.3As bibliotecas do Apache Spark necessárias para subordinados do YARN.
sqoop-client1.4.7O cliente da linha de comando do Apache Sqoop.
tensorflow1.13.1Biblioteca de software de código aberto TensorFlow para computação numérica de alto desempenho.
tez-on-yarn0.9.2O aplicativo e as bibliotecas do YARN para Tez.
webserver2.4.25+O servidor Apache HTTP.
zeppelin-server0.8.1O notebook baseado na web que permite um data analytics interativo.
zookeeper-server3.4.14O serviço centralizado de manutenção de informações de configuração, nomenclatura, fornecimento de sincronização distribuída, e fornecimento de serviços de grupo.
zookeeper-client3.4.14O cliente da linha de comando do ZooKeeper.

Classificações de configuração 5.26.0

As classificações de configuração permitem que você personalize aplicações. Elas geralmente correspondem a um arquivo XML de configuração da aplicação, como hive-site.xml. Para obter mais informações, consulte Configurar aplicações.

Classificações do emr-5.26.0
Classificações Descrição

capacity-scheduler

Alterar os valores no arquivo capacity-scheduler.xml do Hadoop.

container-log4j

Altere os valores no arquivo container-log4j.properties do YARN do Hadoop.

core-site

Alterar os valores no arquivo core-site.xml do Hadoop.

emrfs-site

Alterar as configurações do EMRFS.

flink-conf

Alterar as configurações do flink-conf.yaml.

flink-log4j

Alterar as configurações de log4j.properties no Flink.

flink-log4j-yarn-session

Alterar as configurações de log4j-yarn-session.properties no Flink.

flink-log4j-cli

Alterar as configurações de log4j-cli.properties no Flink.

hadoop-env

Alterar os valores no ambiente do Hadoop para todos os componentes do Hadoop.

hadoop-log4j

Alterar os valores no arquivo log4j.properties do Hadoop.

hadoop-ssl-server

Alterar a configuração do servidor SSL no Hadoop

hadoop-ssl-client

Alterar a configuração do cliente SSL no Hadoop

hbase

As configurações administradas pelo Amazon EMR para o Apache HBase.

hbase-env

Alterar os valores no ambiente do HBase.

hbase-log4j

Alterar os valores no arquivo hbase-log4j.properties do HBase.

hbase-metrics

Altere os valores no arquivo hadoop-metrics2-hbase.properties do HBase.

hbase-policy

Alterar os valores no arquivo hbase-policy.xml do HBase.

hbase-site

Alterar os valores no arquivo hbase-site.xml do HBase.

hdfs-encryption-zones

Configurar as zonas de criptografia do HDFS.

hdfs-site

Alterar os valores no arquivo hdfs-site.xml do HDFS.

hcatalog-env

Alterar os valores no ambiente do HCatalog.

hcatalog-server-jndi

Alterar os valores no jndi.properties do HCatalog.

hcatalog-server-proto-hive-site

Alterar os valores no arquivo proto-hive-site.xml do HCatalog.

hcatalog-webhcat-env

Alterar os valores no ambiente do HCatalog WebHCat.

hcatalog-webhcat-log4j2

Alterar os valores no log4j2.properties do HCatalog WebHCat.

hcatalog-webhcat-site

Alterar os valores no arquivo webhcat-site.xml do HCatalog WebHCat.

hive-beeline-log4j2

Alterar os valores no arquivo beeline-log4j2.properties do Hive.

hive-parquet-logging

Alterar os valores no arquivo parquet-logging.properties do Hive.

hive-env

Alterar os valores no ambiente do Hive.

hive-exec-log4j2

Alterar os valores no arquivo hive-exec-log4j2.properties do Hive.

hive-llap-daemon-log4j2

Alterar os valores no arquivo llap-daemon-log4j2.properties do Hive.

hive-log4j2

Alterar os valores no arquivo hive-log4j2.properties do Hive.

hive-site

Alterar os valores no arquivo hive-site.xml do Hive.

hiveserver2-site

Alterar os valores no arquivo hiveserver2-site.xml do Hive Server2.

hue-ini

Alterar os valores no arquivo ini do Hue

httpfs-env

Alterar os valores no ambiente do HTTPFS.

httpfs-site

Alterar os valores no arquivo httpfs-site.xml do Hadoop.

hadoop-kms-acls

Alterar os valores no arquivo kms-acls.xml do Hadoop.

hadoop-kms-env

Alterar os valores no ambiente do Hadoop KMS.

hadoop-kms-log4j

Alterar os valores no arquivo kms-log4j.properties do Hadoop.

hadoop-kms-site

Alterar os valores no arquivo kms-site.xml do Hadoop.

jupyter-notebook-conf

Alterar os valores no arquivo jupyter_notebook_config.py do Notebook Jupyter.

jupyter-hub-conf

Alterar os valores no arquivo jupyterhub_config.py de JupyterHubs.

jupyter-s3-conf

Configurar a persistência do notebook Jupyter S3.

jupyter-sparkmagic-conf

Altere os valores no arquivo config.json do Sparkmagic.

livy-conf

Alterar os valores no arquivo livy.conf do Livy.

livy-env

Alterar os valores no ambiente do Livy.

livy-log4j

Alterar as configurações de log4j.properties no Livy.

mapred-env

Alterar os valores no ambiente do aplicativo MapReduce.

mapred-site

Alterar os valores no arquivo mapred-site.xml do aplicativo MapReduce.

oozie-env

Alterar os valores no ambiente do Oozie.

oozie-log4j

Alterar os valores no arquivo oozie-log4j.properties do Oozie.

oozie-site

Alterar os valores no arquivo oozie-site.xml do Oozie.

phoenix-hbase-metrics

Alterar os valores no arquivo hadoop-metrics2-hbase.properties do Phoenix.

phoenix-hbase-site

Alterar os valores no arquivo hbase-site.xml do Phoenix.

phoenix-log4j

Alterar os valores no arquivo log4j.properties do Phoenix.

phoenix-metrics

Alterar os valores no arquivo hadoop-metrics2-phoenix.properties do Phoenix.

pig-env

Alterar os valores no ambiente do Pig.

pig-properties

Alterar os valores no arquivo pig.properties do Pig.

pig-log4j

Alterar os valores no arquivo log4j.properties do Pig.

presto-log

Alterar os valores no arquivo log.properties do Presto.

presto-config

Alterar os valores no arquivo config.properties do Presto.

presto-password-authenticator

Altere os valores no arquivo password-authenticator.properties do Presto.

presto-env

Altere os valores no arquivo presto-env.sh do Presto.

presto-node

Altere os valores no arquivo node.properties do Presto.

presto-connector-blackhole

Alterar os valores no arquivo blackhole.properties do Presto.

presto-connector-cassandra

Alterar os valores no arquivo cassandra.properties do Presto.

presto-connector-hive

Alterar os valores no arquivo hive.properties do Presto.

presto-connector-jmx

Alterar os valores no arquivo jmx.properties do Presto.

presto-connector-kafka

Alterar os valores no arquivo kafka.properties do Presto.

presto-connector-localfile

Alterar os valores no arquivo localfile.properties do Presto.

presto-connector-memory

Alterar os valores no arquivo memory.properties do Presto.

presto-connector-mongodb

Alterar os valores no arquivo mongodb.properties do Presto.

presto-connector-mysql

Alterar os valores no arquivo mysql.properties do Presto.

presto-connector-postgresql

Alterar os valores no arquivo postgresql.properties do Presto.

presto-connector-raptor

Alterar os valores no arquivo raptor.properties do Presto.

presto-connector-redis

Alterar os valores no arquivo redis.properties do Presto.

presto-connector-redshift

Alterar os valores no arquivo de propriedades redshift do Presto.

presto-connector-tpch

Alterar os valores no arquivo tpch.properties do Presto.

presto-connector-tpcds

Alterar os valores no arquivo tpcds.properties do Presto.

recordserver-env

Alterar os valores no ambiente RecordServer do EMR.

recordserver-conf

Alterar os valores no arquivo server.properties do RecordServer do RMS.

recordserver-log4j

Alterar os valores no arquivo log4j.properties do RecordServer do do EMR.

spark

As configurações administradas pelo Amazon EMR para o Apache Spark.

spark-defaults

Alterar os valores no arquivo spark-defaults.conf do Spark.

spark-env

Alterar os valores no ambiente do Spark.

spark-hive-site

Alterar os valores no arquivo hive-site.xml do Spark.

spark-log4j

Alterar os valores no arquivo log4j.properties do Spark.

spark-metrics

Alterar os valores no arquivo metrics.properties do Spark.

sqoop-env

Alterar os valores no ambiente do Sqoop.

sqoop-oraoop-site

Alterar os valores no arquivo oraoop-site.xml do Sqoop OraOop.

sqoop-site

Alterar os valores no arquivo sqoop-site.xml do Sqoop.

tez-site

Alterar os valores no arquivo tez-site.xml do Tez.

yarn-env

Alterar os valores no ambiente do YARN.

yarn-site

Alterar os valores no arquivo yarn-site.xml do YARN.

zeppelin-env

Alterar os valores no ambiente do Zeppelin.

zookeeper-config

Alterar os valores no arquivo zoo.cfg do ZooKeeper.

zookeeper-log4j

Alterar os valores no arquivo log4j.properties do ZooKeeper.