Amazon EMR, versión 5.25.0 - Amazon EMR

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Amazon EMR, versión 5.25.0

Versiones de las aplicaciones de la versión 5.25.0

Esta versión admite las siguientes aplicaciones: Flink, Ganglia, HBase, HCatalog, Hadoop, Hive, Hue, JupyterHub, Livy, MXNet, Mahout, Oozie, Phoenix, Pig, Presto, Spark, Sqoop, TensorFlow, Tez, Zeppelin, y ZooKeeper.

En la siguiente tabla se enumeran las versiones de la aplicación disponibles en esta versión de Amazon EMR y las versiones de la aplicación en las tres versiones anteriores de Amazon EMR (cuando corresponda).

Para ver un historial completo de las versiones de la aplicación disponibles para cada versión de Amazon EMR, consulte los temas siguientes:

Información sobre la versión de la aplicación
emr-5.25.0 emr-5.24.1 emr-5.24.0 emr-5.23.1
AWS SDK for Java 1.11.5661.11,5461.11,5461.11,519
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.7.1
Ganglia3.7.23.7.23.7.23.7.2
HBase1.4.91.4.91.4.91.4.9
HCatalog2.3.52.3.42.3.42.3.4
Hadoop2.8.52.8.52.8.52.8.5
Hive2.3.52.3.42.3.42.3.4
Hudi - - - -
Hue4.4.04.4.04.4.04.3.0
Iceberg - - - -
JupyterEnterpriseGateway - - - -
JupyterHub0.9.60.9.60.9.60.9.4
Livy0.6.00.6.00.6.00.5.0
MXNet1.4.01.4.01.4.01.3.1
Mahout0.13.00.13.00.13.00.13.0
Oozie5.1.05.1.05.1.05.1.0
Phoenix4.14.14.14.14.14.14.14.1
Pig0.17.00.17.00.17.00.17.0
Presto0.2200.2190.2190.215
Spark2.4.32.4.22.4.22.4.0
Sqoop1.4.71.4.71.4.71.4.7
TensorFlow1.13.11.12.01.12.01.12.0
Tez0.9.20.9.10.9.10.9.1
Trino (PrestosQL) - - - -
Zeppelin0.8.10.8.10.8.10.8.1
ZooKeeper3.4.143.4.133.4.133.4.13

Notas de la versión 5.25.0

Las siguientes notas de la versión incluyen información sobre la versión 5.25.0 de Amazon EMR. Los cambios son respecto a la versión 5.24.1.

Fecha de lanzamiento inicial: 17 de julio de 2019

Fecha de la última actualización: 30 de octubre de 2019

Amazon EMR 5.25.0

Actualizaciones
  • AWS SDK for Java 1.11.566

  • Hive 2.3.5

  • Presto 0.220

  • Spark 2.4.3

  • TensorFlow 1.13.1

  • Tez 0.9.2

  • ZooKeeper 3.4.14

Nuevas características
  • (30 de octubre de 2019) A partir de la versión 5.25.0 de Amazon EMR, podrá conectarse a la IU del servidor del historial de Spark desde la página Resumen del clúster o desde la pestaña Historial de aplicaciones de la consola. En lugar de configurar un proxy web a través de una conexión SSH, puede acceder rápidamente a la interfaz de usuario del servidor de historial de Spark para ver las métricas de las aplicaciones y acceder a los archivos de registro relevantes de los clústeres activos y terminados. Para más información, consulte Acceso fuera del clúster a las interfaces de usuario de aplicaciones persistentes en la Guía de administración de Amazon EMR.

Cambios, mejoras y problemas resueltos
  • Spark

    • Se ha mejorado el rendimiento de algunas uniones mediante el uso de filtros de Bloom para hacer un filtrado previo de las entradas. La optimización está deshabilitada de forma predeterminada y se puede habilitar configurando el parámetro spark.sql.bloomFilterJoin.enabled de configuración de Spark en true.

    • Se ha mejorado el rendimiento de la agrupación de columnas por tipo de cadena.

    • Se mejoró la configuración predeterminada de memoria y núcleos del ejecutor Spark de los tipos de instancias R4 para clústeres sin instalación. HBase

    • Se ha resuelto un problema anterior relacionado con la característica de eliminación dinámica de particiones, por el que la tabla eliminada tenía que estar en el lado izquierdo de la unión.

    • Se ha mejorado la optimización de DISTINCT antes de INTERSECT para aplicarla a casos adicionales relacionados con alias.

    • Se ha mejorado la inferencia estadística del plan de SQL para JOIN seguida de consultas DISTINCT. Esta mejora se ha desactivado de forma predeterminada y se puede habilitar configurando el parámetro de configuración de Spark spark.sql.statsImprovements.enabled como true. La característica Distinct antes de Intersect requiere esta optimización y se habilitará automáticamente cuando spark.sql.optimizer.distinctBeforeIntersect.enabled se establezca en true.

    • Se ha optimizado el orden de unión con base en el tamaño de la tabla y de los filtros. La optimización se ha desactivado de forma predeterminada y se puede habilitar configurando el parámetro de configuración de Spark spark.sql.optimizer.sizeBasedJoinReorder.enabled en true.

    Para más información, consulte Optimización del rendimiento de Spark.

  • EMRFS

    • La configuración de EMRFS, fs.s3.buckets.create.enabled, ahora está deshabilitada de forma predeterminada. Tras realizar pruebas, se ha descubierto que al deshabilitar esta configuración se mejora el rendimiento y se evita la creación involuntaria de buckets de S3. Si su aplicación se basa en esta funcionalidad, puede habilitarla estableciendo la propiedad fs.s3.buckets.create.enabled en true en la clasificación de configuración emrfs-site. Para obtener información, consulte Suministro de una configuración durante la creación de un clúster.

  • Mejoras en el cifrado de disco local y en el cifrado de S3 en las configuraciones de seguridad (5 de agosto de 2019)

    • Se ha separado la configuración del cifrado de Amazon S3 de la configuración del cifrado de disco local en la configuración de seguridad.

    • Se ha agregado una opción para habilitar el cifrado de EBS en la versión 5.24.0 y posteriores. Al seleccionar esta opción, se cifra el volumen del dispositivo raíz además de los volúmenes de almacenamiento. Las versiones anteriores requerían el uso de una AMI personalizada para cifrar el volumen del dispositivo raíz.

    • Para más información, consulte Opciones de cifrado en la Guía de administración de Amazon EMR.

Problemas conocidos
  • Problema conocido en clústeres con varios nodos principales y autenticación de Kerberos

    Si ejecuta clústeres con varios nodos principales y autenticación de Kerberos en las versiones 5.20.0 y posteriores de Amazon EMR, es posible que tenga problemas con las operaciones del clúster, como la reducción vertical o el envío escalonado, después de que el clúster se haya estado ejecutando durante algún tiempo. El periodo de tiempo depende del periodo de validez del ticket de Kerberos que se haya definido. El problema de la reducción vertical afecta tanto a las solicitudes de reducción vertical automática como a las solicitudes de reducción vertical explícita que haya enviado. Las operaciones adicionales del clúster también pueden verse afectadas.

    Solución:

    • SSH como usuario de hadoop con el nodo principal líder del clúster de EMR con varios nodos principales.

    • Ejecute el siguiente comando para renovar el ticket de Kerberos para el usuario de hadoop.

      kinit -kt <keytab_file> <principal>

      Normalmente, el archivo keytab se encuentra en /etc/hadoop.keytab y la entidad principal tiene la forma de hadoop/<hostname>@<REALM>.

    nota

    Esta solución alternativa estará en vigor durante el periodo de validez del ticket de Kerberos. Esta duración es de 10 horas de forma predeterminada, pero se puede configurar con los ajustes de Kerberos. Debe volver a ejecutar el comando anterior una vez que venza el ticket de Kerberos.

Versiones de los componentes de la versión 5.25.0

A continuación, se muestran los componentes que Amazon EMR instala con esta versión. Algunos se instalan como parte de paquetes de aplicación de Big Data. Otros son exclusivos de Amazon EMR y se instalan para ciertos procesos y características del sistema. Normalmente, estos componentes comienzan con emr o aws. Normalmente, los paquetes de aplicación de macrodatos de la versión más reciente de Amazon EMR son las versiones más recientes que pueden encontrarse en la comunidad. Intentamos que las versiones de la comunidad estén disponibles en Amazon EMR lo más rápido posible.

Algunos componentes de Amazon EMR son distintos de las versiones que se encuentran en la comunidad. Estos componentes tienen una etiqueta de versión con el formato CommunityVersion-amzn-EmrVersion. La EmrVersion empieza por 0. Por ejemplo, si un componente de la comunidad de código abierto llamado myapp-component con la versión 2.2 se ha modificado tres veces para incluirlo en diferentes versiones de lanzamiento de Amazon EMR, la versión que se mostrará será 2.2-amzn-2.

Componente Versión Descripción
aws-sagemaker-spark-sdk1.2.4SDK de Amazon SageMaker Spark
emr-ddb4.10.0Conector de Amazon DynamoDB para aplicaciones del ecosistema de Hadoop.
emr-goodies2.9.0Bibliotecas especialmente prácticas para el ecosistema de Hadoop.
emr-kinesis3.4.0Conector de Amazon Kinesis para aplicaciones del ecosistema de Hadoop.
emr-s3-dist-cp2.11.0Aplicación de copia distribuida optimizada para Amazon S3.
emr-s3-select1.3.0Conector S3Select de EMR
emrfs2.34.0Conector de Amazon S3 para aplicaciones del ecosistema de Hadoop.
flink-client1.8.0Scripts y aplicaciones de cliente de línea de comando de Apache Flink.
ganglia-monitor3.7.2Agente de Ganglia incrustado para aplicaciones del ecosistema de Hadoop junto con el agente de monitorización de Ganglia.
ganglia-metadata-collector3.7.2Recopilador de metadatos de Ganglia para agregación de métricas a partir de los agentes de monitorización de Ganglia.
ganglia-web3.7.1Aplicación web para visualizar las métricas recopiladas por el recopilador de metadatos de Ganglia.
hadoop-client2.8.5-amzn-4Los clientes de línea de comando de Hadoop como, por ejemplo "hdfs", "hadoop" o "yarn".
hadoop-hdfs-datanode2.8.5-amzn-4Servicio de nivel de nodos de HDFS para el almacenamiento de bloques.
hadoop-hdfs-library2.8.5-amzn-4Biblioteca y cliente de línea de comandos HDFS
hadoop-hdfs-namenode2.8.5-amzn-4Servicio de HDFS para realizar un seguimiento de nombres de archivo y bloquear ubicaciones.
hadoop-hdfs-journalnode2.8.5-amzn-4Servicio de HDFS para administrar los archivos de Hadoop periódico en clústeres de alta disponibilidad.
hadoop-httpfs-server2.8.5-amzn-4Punto de enlace HTTP para operaciones HDFS.
hadoop-kms-server2.8.5-amzn-4Servidor de administración de claves criptográficas basado en la API de Hadoop. KeyProvider
hadoop-mapred2.8.5-amzn-4MapReduce bibliotecas de motores de ejecución para ejecutar una aplicación. MapReduce
hadoop-yarn-nodemanager2.8.5-amzn-4Servicio de YARN para la administración de contenedores en un nodo individual.
hadoop-yarn-resourcemanager2.8.5-amzn-4Servicio de YARN para la asignación y administración de recursos de clúster y aplicaciones distribuidas.
hadoop-yarn-timeline-server2.8.5-amzn-4Servicio para recuperar información actual e histórica para aplicaciones de YARN.
hbase-hmaster1.4.9Servicio para un HBase clúster responsable de la coordinación de las regiones y la ejecución de los comandos administrativos.
hbase-region-server1.4.9Servicio para prestar servicio a una o más HBase regiones.
hbase-client1.4.9HBase cliente de línea de comandos.
hbase-rest-server1.4.9Servicio que proporciona un punto final RESTful HTTP para. HBase
hbase-thrift-server1.4.9Servicio que proporciona un punto final de Thrift para HBase.
hcatalog-client2.3.5-amzn-0El cliente de línea de comando "hcat" para manipular hcatalog-server.
hcatalog-server2.3.5-amzn-0Prestación de servicios HCatalog, una capa de administración de tablas y almacenamiento para aplicaciones distribuidas.
hcatalog-webhcat-server2.3.5-amzn-0Punto final HTTP que proporciona una interfaz REST para HCatalog.
hive-client2.3.5-amzn-0Cliente de línea de comando de Hive.
hive-hbase2.3.5-amzn-0Hive-hbase client.
hive-metastore-server2.3.5-amzn-0Service para acceder al metaalmacén de Hive, un repositorio semántico que almacena metadatos para SQL en operaciones de Hadoop.
hive-server22.3.5-amzn-0Servicio para aceptar consultas de Hive como solicitudes web.
hue-server4.4.0Aplicación web para analizar datos con aplicaciones del ecosistema de Hadoop
jupyterhub0.9.6Servidor multiusuario para blocs de notas Jupyter
livy-server0.6.0-incubatingInterfaz de REST para interactuar con Apache Spark
nginx1.12.1nginx [engine x] es un servidor HTTP y proxy inverso
mahout-client0.13.0Biblioteca para machine learning.
mxnet1.4.0Una biblioteca flexible, escalable y eficiente para el aprendizaje profundo.
mysql-server5.5.54+Servidor de bases de datos MySQL.
nvidia-cuda9.2.88Controladores Nvidia y conjunto de herramientas Cuda
oozie-client5.1.0Cliente de línea de comando de Oozie.
oozie-server5.1.0Servicio para aceptar solicitudes de flujo de trabajo de Oozie.
opencv3.4.0Biblioteca de visión artificial de código abierto.
phoenix-library4.14.1- -1.4 HBaseLas bibliotecas de Phoenix para servidor y cliente
phoenix-query-server4.14.1- -1,4 HBaseUn servidor ligero que proporciona acceso a JDBC, así como acceso de formato Protocol Buffers y JSON al API de Avatica
presto-coordinator0.220Servicio para aceptar las consultas y administrar la ejecución de consultas entre presto-workers.
presto-worker0.220Service para ejecutar partes de una consulta.
pig-client0.17.0Cliente de línea de comando de Pig.
r3.4.1Proyecto R para análisis estadístico
spark-client2.4.3Clientes de línea de comando de Spark.
spark-history-server2.4.3IU web para la visualización de eventos registrados durante la vida útil de una aplicación Spark completada.
spark-on-yarn2.4.3Motor de ejecución en memoria para YARN.
spark-yarn-slave2.4.3Bibliotecas de Apache Spark necesarias para esclavos de YARN.
sqoop-client1.4.7Cliente de línea de comando de Apache Sqoop.
tensorflow1.13.1TensorFlow biblioteca de software de código abierto para computación numérica de alto rendimiento.
tez-on-yarn0.9.2La aplicación YARN de tez y bibliotecas.
webserver2.4.25+Servidor HTTP de Apache.
zeppelin-server0.8.1Bloc de notas basado en web que permite el análisis de datos interactivo.
zookeeper-server3.4.14Servicio centralizado para mantener información de configuración, nomenclatura, proporcionar sincronización distribuida y proporcionar servicios de grupo.
zookeeper-client3.4.14ZooKeeper cliente de línea de comandos.

Clasificaciones de configuración de la versión 5.25.0

Las clasificaciones de configuración le permiten personalizar las aplicaciones. Suelen corresponder a un archivo XML de configuración para la aplicación como, por ejemplo, hive-site.xml. Para obtener más información, consulte Configuración de aplicaciones.

Clasificaciones de emr-5.25.0
Clasificaciones Descripción

capacity-scheduler

Cambiar los valores en el archivo capacity-scheduler.xml de Hadoop.

container-log4j

Cambiar los valores en el archivo container-log4j.properties de Hadoop YARN.

core-site

Cambiar los valores en el archivo core-site.xml de Hadoop.

emrfs-site

Cambiar la configuración de EMRFS.

flink-conf

Cambiar la configuración de flink-conf.yaml.

flink-log4j

Cambiar la configuración de log4j.properties de Flink.

flink-log4j-yarn-session

Cambie la configuración de Flink log4 j-yarn-session .properties.

flink-log4j-cli

Cambiar la configuración de log4j-cli.properties de Flink.

hadoop-env

Cambiar los valores en el entorno de Hadoop para todos los componentes de Hadoop.

hadoop-log4j

Cambiar los valores en el archivo log4j.properties de Hadoop.

hadoop-ssl-server

Cambiar la configuración del servidor ssl de Hadoop

hadoop-ssl-client

Cambiar la configuración del cliente ssl de Hadoop

hbase

Configuraciones seleccionadas por Amazon EMR para Apache. HBase

hbase-env

Cambie los valores en su entorno HBase.

hbase-log4j

Cambie los valores en el archivo HBase hbase-log4j.properties.

hbase-metrics

Cambie los valores en el archivo hadoop-metrics2-hbase.properties. HBase

hbase-policy

Cambie los valores en HBase el archivo hbase-policy.xml.

hbase-site

Cambie los valores en HBase el archivo hbase-site.xml.

hdfs-encryption-zones

Configurar zonas de cifrado de HDFS.

hdfs-site

Cambiar los valores en hdfs-site.xml de HDFS.

hcatalog-env

Cambie los valores en HCatalog el entorno.

hcatalog-server-jndi

Cambie los valores en HCatalog jndi.properties.

hcatalog-server-proto-hive-site

Cambie los valores en .xml HCatalog. proto-hive-site

hcatalog-webhcat-env

Cambie los valores en el entorno HCat de la HCatalog Web.

hcatalog-webhcat-log4j2

Cambie los valores en las propiedades HCatalog HCat log4j2.properties de la Web.

hcatalog-webhcat-site

Cambie los valores del archivo webhcat-site.xml de la HCatalog WebHCat.

hive-beeline-log4j2

Cambiar los valores en el archivo beeline-log4j2.properties de Hive.

hive-parquet-logging

Cambiar los valores en el archivo parquet-logging.properties de Hive.

hive-env

Cambiar los valores en el entorno de Hive.

hive-exec-log4j2

Cambie los valores en el archivo hive-exec-log 4j2.properties de Hive.

hive-llap-daemon-log4j2

Cambie los valores en el archivo 4j2.properties de Hive. llap-daemon-log

hive-log4j2

Cambiar los valores en el archivo hive-log4j2.properties de Hive.

hive-site

Cambiar los valores en el archivo hive-site.xml de Hive.

hiveserver2-site

Cambiar los valores en el archivo hiveserver2-site.xml de Hive Server2.

hue-ini

Cambiar los valores en el archivo ini de Hue

httpfs-env

Cambiar los valores en el entorno de HTTPFS.

httpfs-site

Cambiar los valores en el archivo httpfs-site.xml de Hadoop.

hadoop-kms-acls

Cambiar los valores en el archivo kms-acls.xml de Hadoop.

hadoop-kms-env

Cambiar los valores en el entorno de Hadoop KMS.

hadoop-kms-log4j

Cambiar los valores en el archivo kms-log4j.properties de Hadoop.

hadoop-kms-site

Cambiar los valores en el archivo kms-site.xml de Hadoop.

jupyter-notebook-conf

Cambiar los valores en el archivo jupyter_notebook_config.py de Jupyter Notebook.

jupyter-hub-conf

Cambie los valores en JupyterHubs el archivo jupyterhub_config.py.

jupyter-s3-conf

Configurar la persistencia en S3 del bloc de notas de Jupyter.

jupyter-sparkmagic-conf

Cambiar los valores en el archivo config.json de Sparkmagic.

livy-conf

Cambiar los valores en el archivo livy.conf de Livy.

livy-env

Cambiar los valores en el entorno de Livy.

livy-log4j

Cambiar la configuración de log4j.properties de Livy.

mapred-env

Cambie los valores en el entorno de la MapReduce aplicación.

mapred-site

Cambie los valores en el archivo mapred-site.xml de la MapReduce aplicación.

oozie-env

Cambiar los valores en el entorno de Oozie.

oozie-log4j

Cambiar los valores en el archivo oozie-log4j.properties de Oozie.

oozie-site

Cambiar los valores en el archivo oozie-site.xml de Oozie.

phoenix-hbase-metrics

Cambiar los valores en el archivo hadoop-metrics2-hbase.properties de Phoenix.

phoenix-hbase-site

Cambiar los valores en el archivo hbase-site.xml de Phoenix.

phoenix-log4j

Cambiar los valores en el archivo log4j.properties de Phoenix.

phoenix-metrics

Cambiar los valores en el archivo hadoop-metrics2-phoenix.properties de Phoenix.

pig-env

Cambiar los valores en el entorno de Pig.

pig-properties

Cambiar los valores en el archivo pig.properties de Pig.

pig-log4j

Cambiar los valores en el archivo log4j.properties de Pig.

presto-log

Cambiar los valores en el archivo log.properties de Presto.

presto-config

Cambiar los valores en el archivo config.properties de Presto.

presto-password-authenticator

Cambiar los valores en el archivo password-authenticator.properties de Presto.

presto-env

Cambiar valores en el archivo presto-env.sh de Presto.

presto-node

Cambiar valores en el archivo node.properties de Presto.

presto-connector-blackhole

Cambiar los valores en el archivo blackhole.properties de Presto.

presto-connector-cassandra

Cambiar los valores en el archivo cassandra.properties de Presto.

presto-connector-hive

Cambiar los valores en el archivo hive.properties de Presto.

presto-connector-jmx

Cambiar los valores en el archivo jmx.properties de Presto.

presto-connector-kafka

Cambiar los valores en el archivo kafka.properties de Presto.

presto-connector-localfile

Cambiar los valores en el archivo localfile.properties de Presto.

presto-connector-memory

Cambiar los valores del archivo memory.properties de Presto.

presto-connector-mongodb

Cambiar los valores en el archivo mongodb.properties de Presto.

presto-connector-mysql

Cambiar los valores en el archivo mysql.properties de Presto.

presto-connector-postgresql

Cambiar los valores en el archivo postgresql.properties de Presto.

presto-connector-raptor

Cambiar los valores en el archivo raptor.properties de Presto.

presto-connector-redis

Cambiar los valores en el archivo redis.properties de Presto.

presto-connector-redshift

Cambiar los valores en el archivo redshift.properties de Presto.

presto-connector-tpch

Cambiar los valores en el archivo tpch.properties de Presto.

presto-connector-tpcds

Cambiar los valores del archivo tpcds.properties de Presto.

recordserver-env

Cambie los valores en el entorno EMR. RecordServer

recordserver-conf

Cambie los valores en el archivo erver.properties RecordServer de EMR.

recordserver-log4j

Cambie los valores en el archivo log4j.properties RecordServer de EMR.

spark

Configuración de Amazon EMR mantenida para Apache Spark.

spark-defaults

Cambiar los valores en el archivo spark-defaults.conf de Spark.

spark-env

Cambiar los valores en el entorno de Spark.

spark-hive-site

Cambiar los valores en el archivo hive-site.xml de Spark.

spark-log4j

Cambiar los valores en el archivo log4j.properties de Spark.

spark-metrics

Cambiar los valores en el archivo metrics.properties de Spark.

sqoop-env

Cambiar los valores en el entorno de Sqoop.

sqoop-oraoop-site

Cambie los valores en el archivo oraoop-site.xml de Sqoop OraOop.

sqoop-site

Cambiar los valores en el archivo sqoop-site.xml de Sqoop.

tez-site

Cambiar los valores en el archivo tez-site.xml de Tez.

yarn-env

Cambiar los valores en el entorno de YARN.

yarn-site

Cambiar los valores en el archivo yarn-site.xml de YARN.

zeppelin-env

Cambiar los valores en el entorno de Zeppelin.

zookeeper-config

Cambie los valores en el ZooKeeper archivo zoo.cfg.

zookeeper-log4j

Cambie los valores en el ZooKeeper archivo log4j.properties.