Amazon EMR 发行版 4.7.0 - Amazon EMR

Amazon EMR 发行版 4.7.0

4.7.0 应用程序版本

此版本支持以下应用程序:GangliaHBaseHCatalogHadoopHiveHueMahoutOozie-SandboxPhoenixPigPresto-SandboxSparkSqoop-SandboxTezZeppelin-SandboxZooKeeper-Sandbox

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

有关每个发行版的 Amazon EMR 的应用程序版本的全面历史记录,请参见以下主题:

应用程序版本信息
emr-4.7.0 emr-4.6.1 emr-4.6.0 emr-4.5.0
AWS SDK for Java 1.10.751.10.271.10.271.10.27
Python 未跟踪未跟踪未跟踪未跟踪
Scala 未跟踪未跟踪未跟踪未跟踪
AmazonCloudWatchAgent - - - -
Delta - - - -
Flink - - - -
Ganglia3.7.23.7.23.7.23.7.2
HBase1.2.11.2.01.2.0 -
HCatalog1.0.01.0.01.0.01.0.0
Hadoop2.7.22.7.22.7.22.7.2
Hive1.0.01.0.01.0.01.0.0
Hudi - - - -
Hue3.7.13.7.13.7.13.7.1
Iceberg - - - -
JupyterEnterpriseGateway - - - -
JupyterHub - - - -
Livy - - - -
MXNet - - - -
Mahout0.12.00.11.10.11.10.11.1
Oozie - - - -
Oozie-Sandbox4.2.04.2.04.2.04.2.0
Phoenix4.7.0 - - -
Pig0.14.00.14.00.14.00.14.0
Presto - - - -
Presto-Sandbox0.1470.1430.1430.140
Spark1.6.11.6.11.6.11.6.1
Sqoop - - - -
Sqoop-Sandbox1.4.61.4.61.4.61.4.6
TensorFlow - - - -
Tez0.8.3 - - -
Trino (PrestoSQL) - - - -
Zeppelin - - - -
Zeppelin-Sandbox0.5.60.5.60.5.60.5.6
ZooKeeper - - - -
ZooKeeper-Sandbox3.4.83.4.83.4.8 -

4.7.0 发布说明

重要

Amazon EMR 4.7.0 已弃用。请改用 Amazon EMR 4.7.1 或更高版本。

发布日期:2016 年 6 月 2 日

功能
  • 已添加 Apache Phoenix 4.7.0

  • 已添加 Apache Tez 0.8.3

  • 已升级到 HBase 1.2.1

  • 已升级到 Mahout 0.12.0

  • 已升级到 Presto 0.147

  • 已将 AWS SDK for Java 升级到 1.10.75

  • 已从 mapreduce.cluster.local.dir 中的 mapred-site.xml 属性中删除最终标志以允许用户以本地模式运行 Pig。

  • 集群上可用的 Amazon Redshift JDBC 驱动程序

    Amazon Redshift JDBC 驱动程序现在包含在 /usr/share/aws/redshift/jdbc 中。/usr/share/aws/redshift/jdbc/RedshiftJDBC41.jar 是与 JDBC 4.1 兼容的驱动程序,/usr/share/aws/redshift/jdbc/RedshiftJDBC4.jar 是与 JDBC 4.0 兼容的 Amazon Redshift 驱动程序。有关更多信息,请参阅 Amazon Redshift 管理指南中的配置 JDBC 连接

  • Java 8

    OpenJDK 1.7 是用于所有应用程序 (Presto 除外) 的默认 JDK。但是,将同时安装 OpenJDK 1.7 和 1.8。有关如何为应用程序设置 JAVA_HOME 的信息,请参阅配置应用程序以使用 Java 8

早期版本中已解决的已知问题
  • 修复了一个内核问题,该问题已明显影响了 emr-4.6.0 中的 Amazon EMR 的吞吐量优化 HDD(st1)EBS 卷的性能。

  • 修复了在不选择 Hadoop 作为应用程序的情况下指定任何 HDFS 加密区域时集群将失败的问题。

  • 已将默认 HDFS 编写策略从 RoundRobin 更改为 AvailableSpaceVolumeChoosingPolicy。未通过 RoundRobin 配置正确利用某些卷,这将导致核心节点失败且 HDFS 不可靠。

  • 修复了与 EMRFS CLI 有关的问题,此问题将在创建默认 DynamoDB 元数据表以获得一致视图时导致异常。

  • 修复了在分段重命名和复制操作期间可能发生在 EMRFS 中的死锁问题。

  • 修复了与 EMRFS 有关的问题,此问题导致 CopyPart 大小默认为 5 MB。默认值现已相应地设置为 128 MB。

  • 修复了与 Zeppelin upstart 配置有关的问题,此问题可能会阻止您停止服务。

  • 修复了与 Spark 和 Zeppelin 有关的问题,此问题会阻止您使用 s3a:// URI 方案,因为 /usr/lib/hadoop/hadoop-aws.jar 未在其各自的类路径中正确加载。

  • 已逆向移植 HUE-2484

  • 已从 Hue 3.9.0 (不存在 JIRA) 逆向移植 commit 来修复与 HBase 浏览器示例有关的问题。

  • 已逆向移植 HIVE-9073

4.7.0 组件版本

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

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

组件 版本 描述
emr-ddb3.1.0适用于 Hadoop 生态系统应用程序的 Amazon DynamoDB 连接器。
emr-goodies2.0.0适用于 Hadoop 生态系统的方便易用的库。
emr-kinesis3.2.0适用于 Hadoop 生态系统应用程序的 Amazon Kinesis 连接器。
emr-s3-dist-cp2.4.0针对 Amazon S3 优化的分布式复制应用程序。
emrfs2.7.1适用于 Hadoop 生态系统应用程序的 Amazon S3 连接器。
ganglia-monitor3.7.2适用于 Hadoop 生态系统应用程序的嵌入式 Ganglia 代理以及 Ganglia 监控代理。
ganglia-metadata-collector3.7.2用于从 Ganglia 监控代理中聚合指标的 Ganglia 元数据收集器。
ganglia-web3.7.1用于查看由 Ganglia 元数据收集器收集的指标的 Web 应用程序。
hadoop-client2.7.2-amzn-2Hadoop 命令行客户端,如“hdfs”、“hadoop”或“yarn”。
hadoop-hdfs-datanode2.7.2-amzn-2用于存储数据块的 HDFS 节点级服务。
hadoop-hdfs-library2.7.2-amzn-2HDFS 命令行客户端和库
hadoop-hdfs-namenode2.7.2-amzn-2用于跟踪文件名和数据块位置的 HDFS 服务。
hadoop-httpfs-server2.7.2-amzn-2用于 HDFS 操作的 HTTP 终端节点。
hadoop-kms-server2.7.2-amzn-2基于 Hadoop 的 KeyProvider API 的加密密钥管理服务器。
hadoop-mapred2.7.2-amzn-2用于运行 MapReduce 应用程序的 MapReduce 执行引擎库。
hadoop-yarn-nodemanager2.7.2-amzn-2用于管理单个节点上的容器的 YARN 服务。
hadoop-yarn-resourcemanager2.7.2-amzn-2用于分配和管理集群资源与分布式应用程序的 YARN 服务。
hadoop-yarn-timeline-server2.7.2-amzn-2用于检索 YARN 应用程序的当前信息和历史信息的服务。
hbase-hmaster1.2.1适用于负责协调区域和执行管理命令的 HBase 集群的服务。
hbase-region-server1.2.1用于服务于一个或多个 HBase 区域的服务。
hbase-client1.2.1HBase 命令行客户端。
hbase-rest-server1.2.1用于向 HBase 提供 RESTful HTTP 终端节点的服务。
hbase-thrift-server1.2.1用于向 HBase 提供 Thrift 终端节点的服务。
hcatalog-client1.0.0-amzn-5用于操作 hcatalog-server 的“hcat”命令行客户端。
hcatalog-server1.0.0-amzn-5用于为分布式应用程序提供 HCatalog、表和存储管理层的服务。
hcatalog-webhcat-server1.0.0-amzn-5用于向 HCatalog 提供 REST 接口的 HTTP 终端节点。
hive-client1.0.0-amzn-5Hive 命令行客户端。
hive-metastore-server1.0.0-amzn-5用于访问 Hive 元存储 (一个用于存储 Hadoop 操作中的 SQL 的元数据的语义存储库) 的服务。
hive-server1.0.0-amzn-5用于将 Hive 查询作为 Web 请求接受的服务。
hue-server3.7.1-amzn-7用于使用 Hadoop 生态系统应用程序分析数据的 Web 应用程序
mahout-client0.12.0用于机器学习的库。
mysql-server5.5.46MySQL 数据库服务器。
oozie-client4.2.0Oozie 命令行客户端。
oozie-server4.2.0用于接受 Oozie 工作流请求的服务。
phoenix-library4.7.0-HBase-1.2服务器和客户端的 phoenix 库
phoenix-query-server4.7.0-HBase-1.2向 Avatica API 提供 JDBC 访问权限以及协议缓冲区和 JSON 格式访问权限的轻量级服务器
presto-coordinator0.147用于在 presto-worker 之中接受查询并管理查询的服务。
presto-worker0.147用于执行查询的各个部分的服务。
pig-client0.14.0-amzn-0Pig 命令行客户端。
spark-client1.6.1Spark 命令行客户端。
spark-history-server1.6.1用于查看完整的 Spark 应用程序的生命周期的已记录事件的 Web UI。
spark-on-yarn1.6.1适用于 YARN 的内存中执行引擎。
spark-yarn-slave1.6.1YARN 从属项所需的 Apache Spark 库。
sqoop-client1.4.6Apache Sqoop 命令行客户端。
tez-on-yarn0.8.3tez YARN 应用程序和库。
webserver2.4.18Apache HTTP 服务器。
zeppelin-server0.5.6-incubating支持交互式数据分析的基于 Web 的笔记本电脑。
zookeeper-server3.4.8用于维护配置信息、命名、提供分布式同步以及提供组服务的集中式服务。
zookeeper-client3.4.8ZooKeeper 命令行客户端。

4.7.0 配置分类

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

emr-4.7.0 分类
分类 描述

capacity-scheduler

更改 Hadoop 的 capacity-scheduler.xml 文件中的值。

core-site

更改 Hadoop 的 core-site.xml 文件中的值。

emrfs-site

更改 EMRFS 设置。

hadoop-env

更改适用于所有 Hadoop 组件的 Hadoop 环境中的值。

hadoop-log4j

更改 Hadoop 的 log4j.properties 文件中的值。

hbase-env

更改 HBase 环境中的值。

hbase-log4j

更改 HBase 的 hbase-log4j.properties 文件中的值。

hbase-metrics

更改 HBase 的 hadoop-metrics2-hbaase.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

更改 HCatalog 的 proto-hive-site.xml 中的值。

hcatalog-webhcat-env

更改 HCatalog WebHCat 的环境中的值。

hcatalog-webhcat-log4j

更改 HCatalog WebHCat 的 log4j.properties 中的值。

hcatalog-webhcat-site

更改 HCatalog WebHCat 的 webhcat-site.xml 文件中的值。

hive-env

更改 Hive 环境中的值。

hive-exec-log4j

更改 Hive 的 hive-exec-log4j.properties 文件中的值。

hive-log4j

更改 Hive 的 hive-log4j.properties 文件中的值。

hive-site

更改 Hive 的 hive-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-connector-hive

更改 Presto 的 hive.properties 文件中的值。

spark

适用于 Apache Spark 的 Amazon EMR 辅助设置。

spark-defaults

更改 Spark 的 spark-defaults.conf 文件中的值。

spark-env

更改 Spark 环境中的值。

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 文件中的值。