

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# Amazon EMR 发行版 5.8.0
<a name="emr-580-release"></a>

## 5.8.0 应用程序版本
<a name="emr-580-app-versions"></a>

此版本包括以下应用程序：[https://flink.apache.org/](https://flink.apache.org/)、[http://ganglia.info](http://ganglia.info)、[http://hbase.apache.org/](http://hbase.apache.org/)、[https://cwiki.apache.org/confluence/display/Hive/HCatalog](https://cwiki.apache.org/confluence/display/Hive/HCatalog)、[http://hadoop.apache.org/docs/current/](http://hadoop.apache.org/docs/current/)、[http://hive.apache.org/](http://hive.apache.org/)、[http://gethue.com/](http://gethue.com/)、[http://mahout.apache.org/](http://mahout.apache.org/)、[http://oozie.apache.org/](http://oozie.apache.org/)、[https://phoenix.apache.org/](https://phoenix.apache.org/)、[http://pig.apache.org/](http://pig.apache.org/)、[https://prestodb.io/](https://prestodb.io/)、[https://spark.apache.org/docs/latest/](https://spark.apache.org/docs/latest/)、[http://sqoop.apache.org/](http://sqoop.apache.org/)、[https://tez.apache.org/](https://tez.apache.org/)、[https://zeppelin.incubator.apache.org/](https://zeppelin.incubator.apache.org/) 和 [https://zookeeper.apache.org](https://zookeeper.apache.org)。

下表列出了此版本的 Amazon EMR 中提供的应用程序版本以及前三个 Amazon EMR 发行版中的应用程序版本（若适用）。

有关每个发行版的 Amazon EMR 的应用程序版本的全面历史记录，请参见以下主题：
+ [Amazon EMR 7.x 发行版中的应用程序版本](emr-release-app-versions-7.x.md)
+ [Amazon EMR 6.x 发行版中的应用程序版本](emr-release-app-versions-6.x.md)
+ [Amazon EMR 5.x 发行版中的应用程序版本](emr-release-app-versions-5.x.md)
+ [Amazon EMR 4.x 发行版中的应用程序版本](emr-release-app-versions-4.x.md)


**应用程序版本信息**  

|  | emr-5.8.0 | emr-5.7.1 | emr-5.7.0 | emr-5.6.1 | 
| --- | --- | --- | --- | --- | 
| AWS 适用于 Java 的 SDK | 1.11.160 | 1.10.75 | 1.10.75 | 1.10.75 | 
| Python | 未跟踪 | 未跟踪 | 未跟踪 | 未跟踪 | 
| Scala | 2.11.8 | 2.11.8 | 2.11.8 | 2.11.8 | 
| AmazonCloudWatchAgent |  -  |  -  |  -  |  -  | 
| Delta |  -  |  -  |  -  |  -  | 
| Flink | 1.3.1 | 1.3.0 | 1.3.0 | 1.2.1 | 
| Ganglia | 3.7.2 | 3.7.2 | 3.7.2 | 3.7.2 | 
| HBase | 1.3.1 | 1.3.1 | 1.3.1 | 1.3.0 | 
| HCatalog | 2.3.0-amzn-0 | 2.1.1-amzn-0 | 2.1.1-amzn-0 | 2.1.1-amzn-0 | 
| Hadoop | 2.7.3-amzn-3 | 2.7.3-amzn-2 | 2.7.3-amzn-2 | 2.7.3-amzn-2 | 
| Hive | 2.3.0-amzn-0 | 2.1.1-amzn-0 | 2.1.1-amzn-0 | 2.1.1-amzn-0 | 
| Hudi |  -  |  -  |  -  |  -  | 
| Hue | 3.12.0 | 3.12.0 | 3.12.0 | 3.12.0 | 
| Iceberg |  -  |  -  |  -  |  -  | 
| JupyterEnterpriseGateway |  -  |  -  |  -  |  -  | 
| JupyterHub |  -  |  -  |  -  |  -  | 
| Livy |  -  |  -  |  -  |  -  | 
| MXNet |  -  |  -  |  -  |  -  | 
| Mahout | 0.13.0 | 0.13.0 | 0.13.0 | 0.13.0 | 
| Oozie | 4.3.0 | 4.3.0 | 4.3.0 | 4.3.0 | 
| Phoenix | 4.11.0--1.3 HBase | 4.11.0--1.3 HBase | 4.11.0--1.3 HBase | 4.9.0--1.2 HBase | 
| Pig | 0.16.0-amzn-1 | 0.16.0-amzn-0 | 0.16.0-amzn-0 | 0.16.0-amzn-0 | 
| Presto | 0.170 | 0.170 | 0.170 | 0.170 | 
| Spark | 2.2.0 | 2.1.1 | 2.1.1 | 2.1.1 | 
| Sqoop | 1.4.6 | 1.4.6 | 1.4.6 | 1.4.6 | 
| TensorFlow |  -  |  -  |  -  |  -  | 
| Tez | 0.8.4 | 0.8.4 | 0.8.4 | 0.8.4 | 
| Trino (PrestoSQL) |  -  |  -  |  -  |  -  | 
| Zeppelin | 0.7.2 | 0.7.2 | 0.7.2 | 0.7.1 | 
| ZooKeeper | 3.4.10 | 3.4.10 | 3.4.10 | 3.4.10 | 

## 5.8.0 发布说明
<a name="emr-580-relnotes"></a>

以下发布说明包括有关 Amazon EMR 发行版 5.8.0 的信息。更改与 Amazon EMR 5.7.0 发行版有关。

首次发布日期：2017 年 8 月 10 日

最近功能更新时间：2017 年 9 月 25 日

**升级**
+ AWS SDK 1.11.160
+ Flink 1.3.1
+ Hive 2.3.0。有关更多信息，请参阅 Apache Hive 站点上的[发布说明](https://issues.apache.org/jira/secure/ConfigureReleaseNote.jspa?projectId=12310843&version=12340269)。
+ Spark 2.2.0。有关更多信息，请参阅 Apache Spark 站点上的[发布说明](https://spark.apache.org/releases/spark-release-2-2-0.html)。

**新特征**
+ 添加了对查看应用程序历史记录的支持 (2017 年 9 月 25 日)。有关更多信息，请参阅《Amazon EMR 管理指南》**中的[查看应用程序历史记录](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-cluster-application-history.html)。

**更改、增强功能和解决的问题**
+ **与 AWS Glue 数据目录集成**
  + 添加了 Hive 和 Spark SQL 使用 AWS Glue 数据目录作为 Hive 元数据存储的功能。有关更多信息，请参阅[使用 AWS Glue 数据目录作为 Hive 的元数据库](emr-hive-metastore-glue.md)和[在亚马逊 EMR 上使用 AWS Glue 数据目录和 Spark](emr-spark-glue.md)。
+ 已向集群详细信息添加 **Application history (应用程序历史记录)**，这可让您查看 YARN 应用程序的历史数据以及 Spark 应用程序的其它详细信息。有关更多信息，请参阅《Amazon EMR 管理指南》**中的[查看应用程序历史记录](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-cluster-application-history.html)。
+ **Oozie**
  + 已逆向移植 [OOZIE-2748](https://issues.apache.org/jira/browse/OOZIE-2748)。
+ **Hue**
  + 已逆向移植 [HUE-5859](https://issues.cloudera.org/browse/HUE-5859)
+ **HBase**
  + 添加了用于通过 Java 管理扩展 (JMX) 公开 HBase 主服务器启动时间的补丁。`getMasterInitializedTime`
  + 添加了改进集群启动时间的补丁。

**已知问题**
+ 当安装了所有应用程序且未更改默认 Amazon EBS 根卷大小时，集群启动会失败。要解决这个问题，请使用中的`aws emr create-cluster`命令 AWS CLI 并指定一个更大的`--ebs-root-volume-size`参数。
+ 默认情况下，Hive 2.3.0 设置 `hive.compute.query.using.stats=true`。这会导致查询从现有统计数据而不是直接从数据中获取数据，这可能会造成混淆。例如，如果您有一个包含 `hive.compute.query.using.stats=true` 的表并且将新文件上载到表 `LOCATION`，则在该表上运行 `SELECT COUNT(*)` 查询会返回来自统计数据的计数，而不是选择已添加的行。

  作为解决方法，请使用 `ANALYZE TABLE` 命令收集新的统计数据，或者设置 `hive.compute.query.using.stats=false`。有关更多信息，请参阅 Apache Hive 文档中的 [Hive 中的统计数据](https://cwiki.apache.org/confluence/display/Hive/StatsDev#StatsDev-StatisticsinHive)。
+ **Spark**：在使用 Spark 时，apppusher 进程守护程序存在文件处理程序泄漏问题，长时间运行的 Spark 任务在几个小时或几天后可能会出现此情况。要解决此问题，请连接到主节点并键入 `sudo /etc/init.d/apppusher stop`。这将停止 apppusher 进程守护程序，而 Amazon EMR 将自动重新启动它。
+ **应用程序历史记录**
  + 死 Spark 执行程序的历史数据不可用。
  + 应用程序历史记录对使用安全配置来启用传输中加密的集群不可用。

## 5.8.0 组件版本
<a name="emr-580-components"></a>

下面列出了 Amazon EMR 随此发行版一起安装的组件。一些组件作为大数据应用程序包的一部分安装。其它组件是 Amazon EMR 独有的，并且已为系统流程和功能安装这些组件。它们通常以 `emr` 或 `aws` 开头。最新的 Amazon EMR 发行版中的大数据应用程序包通常是在社区中找到的最新版本。我们会尽快在 Amazon EMR 中提供社区发行版。

Amazon EMR 中的某些组件与社区版本不同。这些组件具有以下形式的 `CommunityVersion-amzn-EmrVersion` 的发行版标注。`EmrVersion` 从 0 开始。例如，假设已对名为 `myapp-component` 的版本 2.2 的开源社区组件进行三次修改，以包含在不同的 Amazon EMR 发行版中，则其发行版将为 `2.2-amzn-2`。


| 组件 | 版本 | 说明 | 
| --- | --- | --- | 
| emr-ddb | 4.4.0 | 适用于 Hadoop 生态系统应用程序的 Amazon DynamoDB 连接器。 | 
| emr-goodies | 2.4.0 | 适用于 Hadoop 生态系统的方便易用的库。 | 
| emr-kinesis | 3.4.0 | 适用于 Hadoop 生态系统应用程序的 Amazon Kinesis 连接器。 | 
| emr-s3-dist-cp | 2.6.0 | 针对 Amazon S3 优化的分布式复制应用程序。 | 
| emrfs | 2.18.0 | 适用于 Hadoop 生态系统应用程序的 Amazon S3 连接器。 | 
| flink-client | 1.3.1 | Apache Flink 命令行客户端脚本和应用程序。 | 
| ganglia-monitor | 3.7.2 | 适用于 Hadoop 生态系统应用程序的嵌入式 Ganglia 代理以及 Ganglia 监控代理。 | 
| ganglia-metadata-collector | 3.7.2 | 用于从 Ganglia 监控代理中聚合指标的 Ganglia 元数据收集器。 | 
| ganglia-web | 3.7.1 | 用于查看由 Ganglia 元数据收集器收集的指标的 Web 应用程序。 | 
| hadoop-client | 2.7.3-amzn-3 | Hadoop 命令行客户端，如“hdfs”、“hadoop”或“yarn”。 | 
| hadoop-hdfs-datanode | 2.7.3-amzn-3 | 用于存储数据块的 HDFS 节点级服务。 | 
| hadoop-hdfs-library | 2.7.3-amzn-3 | HDFS 命令行客户端和库 | 
| hadoop-hdfs-namenode | 2.7.3-amzn-3 | 用于跟踪文件名和数据块位置的 HDFS 服务。 | 
| hadoop-httpfs-server | 2.7.3-amzn-3 | 用于 HDFS 操作的 HTTP 终端节点。 | 
| hadoop-kms-server | 2.7.3-amzn-3 | 基于 Hadoop 的 API 的加密密钥管理服务器。 KeyProvider  | 
| hadoop-mapred | 2.7.3-amzn-3 | MapReduce 用于运行 MapReduce 应用程序的执行引擎库。 | 
| hadoop-yarn-nodemanager | 2.7.3-amzn-3 | 用于管理单个节点上的容器的 YARN 服务。 | 
| hadoop-yarn-resourcemanager | 2.7.3-amzn-3 | 用于分配和管理集群资源与分布式应用程序的 YARN 服务。 | 
| hadoop-yarn-timeline-server | 2.7.3-amzn-3 | 用于检索 YARN 应用程序的当前信息和历史信息的服务。 | 
| hbase-hmaster | 1.3.1 | 为负责协调区域和执行管理命令的 HBase 集群提供服务。 | 
| hbase-region-server | 1.3.1 | 为一个或多个 HBase 地区提供服务的服务。 | 
| hbase-client | 1.3.1 | HBase 命令行客户端。 | 
| hbase-rest-server | 1.3.1 | 为其提供 RESTful HTTP 端点的服务 HBase。 | 
| hbase-thrift-server | 1.3.1 | 为其提供 Thrift 端点的 HBase服务。 | 
| hcatalog-client | 2.3.0-amzn-0 | 用于操作 hcatalog-server 的“hcat”命令行客户端。 | 
| hcatalog-server | 2.3.0-amzn-0 | 提供服务 HCatalog，为分布式应用程序提供表和存储管理层。 | 
| hcatalog-webhcat-server | 2.3.0-amzn-0 | 为其提供 REST 接口的 HTTP 端点 HCatalog。 | 
| hive-client | 2.3.0-amzn-0 | Hive 命令行客户端。 | 
| hive-hbase | 2.3.0-amzn-0 | Hive-hbase 客户端。 | 
| hive-metastore-server | 2.3.0-amzn-0 | 用于访问 Hive 元存储 (一个用于存储 Hadoop 操作中的 SQL 的元数据的语义存储库) 的服务。 | 
| hive-server2 | 2.3.0-amzn-0 | 用于将 Hive 查询作为 Web 请求接受的服务。 | 
| hue-server | 3.12.0 | 用于使用 Hadoop 生态系统应用程序分析数据的 Web 应用程序 | 
| mahout-client | 0.13.0 | 用于机器学习的库。 | 
| mysql-server | 5.5.54\$1 | MySQL 数据库服务器。 | 
| oozie-client | 4.3.0 | Oozie 命令行客户端。 | 
| oozie-server | 4.3.0 | 用于接受 Oozie 工作流请求的服务。 | 
| phoenix-library | 4.11.0--1.3 HBase | 服务器和客户端的 phoenix 库 | 
| phoenix-query-server | 4.11.0--1.3 HBase | 向 Avatica API 提供 JDBC 访问权限以及协议缓冲区和 JSON 格式访问权限的轻量级服务器  | 
| presto-coordinator | 0.170 | 用于在 presto-worker 之中接受查询并管理查询的服务。 | 
| presto-worker | 0.170 | 用于执行查询的各个部分的服务。 | 
| pig-client | 0.16.0-amzn-1 | Pig 命令行客户端。 | 
| spark-client | 2.2.0 | Spark 命令行客户端。 | 
| spark-history-server | 2.2.0 | 用于查看完整的 Spark 应用程序的生命周期的已记录事件的 Web UI。 | 
| spark-on-yarn | 2.2.0 | 适用于 YARN 的内存中执行引擎。 | 
| spark-yarn-slave | 2.2.0 | YARN 从属项所需的 Apache Spark 库。 | 
| sqoop-client | 1.4.6 | Apache Sqoop 命令行客户端。 | 
| tez-on-yarn | 0.8.4 | tez YARN 应用程序和库。 | 
| webserver | 2.4.25\$1 | Apache HTTP 服务器。 | 
| zeppelin-server | 0.7.2 | 支持交互式数据分析的基于 Web 的 Notebook。 | 
| zookeeper-server | 3.4.10 | 用于维护配置信息、命名、提供分布式同步以及提供组服务的集中式服务。 | 
| zookeeper-client | 3.4.10 | ZooKeeper 命令行客户端。 | 

## 5.8.0 配置分类
<a name="emr-580-class"></a>

配置分类允许您自定义应用程序。这些通常与应用程序的配置 XML 文件（例如 `hive-site.xml`）相对应。有关更多信息，请参阅[配置应用程序](emr-configure-apps.md)。


**emr-5.8.0 分类**  

| 分类 | 说明 | 
| --- | --- | 
| capacity-scheduler | 更改 Hadoop 的 capacity-scheduler.xml 文件中的值。 | 
| core-site | 更改 Hadoop 的 core-site.xml 文件中的值。 | 
| emrfs-site | 更改 EMRFS 设置。 | 
| flink-conf | 更改 flink-conf.yaml 设置。 | 
| flink-log4j | 更改 Flink log4j.properties 设置。 | 
| flink-log4j-yarn-session | 更改 Flink log4 j-yarn-session .properties 设置。 | 
| flink-log4j-cli | 更改 Flink log4j-cli.properties 设置。 | 
| hadoop-env | 更改适用于所有 Hadoop 组件的 Hadoop 环境中的值。 | 
| hadoop-log4j | 更改 Hadoop 的 log4j.properties 文件中的值。 | 
| hadoop-ssl-server | 更改 hadoop ssl 服务器配置 | 
| hadoop-ssl-client | 更改 hadoop ssl 客户端配置 | 
| hbase | 亚马逊 EMR 精心策划的 Apache 设置。 HBase | 
| hbase-env | 更改环境 HBase中的值。 | 
| hbase-log4j | 更改 hbase- HBase log4j.properties 文件中的值。 | 
| hbase-metrics | 更改 hadoop-metrics2-h HBase base.properties 文件中的值。 | 
| hbase-policy | 更改 HBase的 hbase-policy.xml 文件中的值。 | 
| hbase-site | 更改 HBase的 hbase-site.xml 文件中的值。 | 
| hdfs-encryption-zones | 配置 HDFS 加密区域。 | 
| hdfs-site | 更改 HDFS 的 hdfs-site.xml 中的值。 | 
| hcatalog-env | 更改环境 HCatalog中的值。 | 
| hcatalog-server-jndi | 更改 HCatalog的 jndi.properties 中的值。 | 
| hcatalog-server-proto-hive-site | 更改 proto-hive-site .x HCatalog ml 中的值。 | 
| hcatalog-webhcat-env | 更改 HCatalog Web 环境HCat中的值。 | 
| hcatalog-webhcat-log4j2 | 更改 HCatalog Web HCat 的 log4j2.properties 中的值。 | 
| hcatalog-webhcat-site | 更改 HCatalog Web HCat 的 webhcat-site.xml 文件中的值。 | 
| hive-beeline-log4j2 | 更改 Hive 的 beeline-log4j2.properties 文件中的值。 | 
| hive-parquet-logging | 更改 Hive parquet-logging.properties 文件中的值。 | 
| hive-env | 更改 Hive 环境中的值。 | 
| hive-exec-log4j2 | 更改 Hive 的 hive-exec-log 4j2.properties 文件中的值。 | 
| hive-llap-daemon-log4j2 | 更改 Hive 的 llap-daemon-log 4j2.properties 文件中的值。 | 
| hive-log4j2 | 更改 Hive 的 hive-log4j2.properties 文件中的值。 | 
| hive-site | 更改 Hive 的 hive-site.xml 文件中的值 | 
| hiveserver2-site | 更改 Hive Server2 的 hiveserver2-site.xml 文件中的值 | 
| hue-ini | 更改 Hue 的 ini 文件中的值 | 
| httpfs-env | 更改 HTTPFS 环境中的值。 | 
| httpfs-site | 更改 Hadoop 的 httpfs-site.xml 文件中的值。 | 
| hadoop-kms-acls | 更改 Hadoop 的 kms-acls.xml 文件中的值。 | 
| hadoop-kms-env | 更改 Hadoop KMS 环境中的值。 | 
| hadoop-kms-log4j | 更改 Hadoop 的 kms-log4j.properties 文件中的值。 | 
| hadoop-kms-site | 更改 Hadoop 的 kms-site.xml 文件中的值。 | 
| mapred-env | 更改 MapReduce 应用程序环境中的值。 | 
| mapred-site | 更改 MapReduce 应用程序的 mapred-site.xml 文件中的值。 | 
| oozie-env | 更改 Oozie 的环境中的值。 | 
| oozie-log4j | 更改 Oozie 的 oozie-log4j.properties 文件中的值。 | 
| oozie-site | 更改 Oozie 的 oozie-site.xml 文件中的值。 | 
| phoenix-hbase-metrics | 更改 Phoenix 的 hadoop-metrics2-hbase.properties 文件中的值。 | 
| phoenix-hbase-site | 更改 Phoenix 的 hbase-site.xml 文件中的值。 | 
| phoenix-log4j | 更改 Phoenix 的 log4j.properties 文件中的值。 | 
| phoenix-metrics | 更改 Phoenix 的 hadoop-metrics2-phoenix.properties 文件中的值。 | 
| pig-properties | 更改 Pig 的 pig.properties 文件中的值。 | 
| pig-log4j | 更改 Pig 的 log4j.properties 文件中的值。 | 
| presto-log | 更改 Presto 的 log.properties 文件中的值。 | 
| presto-config | 更改 Presto 的 config.properties 文件中的值。 | 
| presto-env | 更改 Presto 的 presto-env.sh 文件中的值。 | 
| presto-node | 更改 Presto 的 node.properties 文件中的值。 | 
| presto-connector-blackhole | 更改 Presto 的 blackhole.properties 文件中的值。 | 
| presto-connector-cassandra | 更改 Presto 的 cassandra.properties 文件中的值。 | 
| presto-connector-hive | 更改 Presto 的 hive.properties 文件中的值。 | 
| presto-connector-jmx | 更改 Presto 的 jmx.properties 文件中的值。 | 
| presto-connector-kafka | 更改 Presto 的 kafka.properties 文件中的值。 | 
| presto-connector-localfile | 更改 Presto 的 localfile.properties 文件中的值。 | 
| presto-connector-mongodb | 更改 Presto 的 mongodb.properties 文件中的值。 | 
| presto-connector-mysql | 更改 Presto 的 mysql.properties 文件中的值。 | 
| presto-connector-postgresql | 更改 Presto 的 postgresql.properties 文件中的值。 | 
| presto-connector-raptor | 更改 Presto 的 raptor.properties 文件中的值。 | 
| presto-connector-redis | 更改 Presto 的 redis.properties 文件中的值。 | 
| presto-connector-tpch | 更改 Presto 的 tpch.properties 文件中的值。 | 
| spark | 适用于 Apache Spark 的 Amazon EMR 辅助设置。 | 
| spark-defaults | 更改 Spark 的 spark-defaults.conf 文件中的值。 | 
| spark-env | 更改 Spark 环境中的值。 | 
| spark-hive-site | 更改 Spark 的 hive-site.xml 文件中的值 | 
| spark-log4j | 更改 Spark 的 log4j.properties 文件中的值。 | 
| spark-metrics | 更改 Spark 的 metrics.properties 文件中的值。 | 
| sqoop-env | 更改 Sqoop 的环境中的值。 | 
| sqoop-oraoop-site | 更改 Sqoop OraOop 的 oraoop-site.xml 文件中的值。 | 
| sqoop-site | 更改 Sqoop 的 sqoop-site.xml 文件中的值。 | 
| tez-site | 更改 Tez 的 tez-site.xml 文件中的值。 | 
| yarn-env | 更改 YARN 环境中的值。 | 
| yarn-site | 更改 YARN 的 yarn-site.xml 文件中的值。 | 
| zeppelin-env | 更改 Zeppelin 环境中的值。 | 
| zookeeper-config | 更改 ZooKeeper的 zoo.cfg 文件中的值。 | 
| zookeeper-log4j | 更改 ZooKeeper的 log4j.properties 文件中的值。 | 