Amazon EMR
Amazon EMR Release Guide

About Amazon EMR Releases

This documentation is for versions 4.x and 5.x of Amazon EMR. For information about Amazon EMR AMI versions 2.x and 3.x, see the Amazon EMR Developer Guide (PDF).

This document provides information about Amazon EMR 4.x and 5.x software releases. A release is a set of software applications and components that can be installed and configured on an Amazon EMR cluster. Amazon EMR releases are packaged using a system based on Apache BigTop, which is an open source project associated with the Hadoop ecosystem. In addition to Hadoop and Spark ecosystem projects, each Amazon EMR release provides components that enable cluster and resource management, interoperability with other AWS services, and additional configuration optimizations for installed software.


Each Amazon EMR release contains several distributed applications available for installation on your cluster. Amazon EMR defines each application as not only the set of the components which comprise that open source project but also a set of associated components which are required for that the application to function. When you choose to install an application using the console, API, or CLI, Amazon EMR installs and configures this set of components across nodes in your cluster. The following applications are supported for this release: Flink, Ganglia, Hadoop, HBase, HCatalog, Hive, Hue, Livy, Mahout, MXNet, Oozie, Phoenix, Pig, Presto, Spark, Sqoop, TensorFlow, Tez, Zeppelin, and ZooKeeper.


The Amazon EMR releases include various components that can be installed by specifying an application which uses them. The versions of these components are typically those found in the community. Amazon EMR makes an effort to make community releases available in a timely fashion. However, there may be a need to make changes to specific components. If those components are modified, they have a release version such as the following:


As an example, assume that the component, ExampleComponent1, has not been modified by Amazon EMR; the version is 1.0, which is the community version. However, another component, ExampleComponent2, is modified and its Amazon EMR release version is 1.0.0-amzn-0.

There are also components provided exclusively by Amazon EMR. For example, the DynamoDB connector component, emr-ddb, is provided by Amazon EMR for use with applications running on Amazon EMR clusters. Amazon components have just one version number. For example, an emr-ddb version is 2.1.0. For more information about using Hive to query DynamoDB and an example, see Amazon EMR Hive Queries to Accommodate Partial DynamoDB Schemas.

The following components are included with Amazon EMR:

Component Version Description
aws-hm-client 1.2.0 Amazon Glue connector for Hadoop ecosystem applications integrated with the Hive Metastore.
emr-ddb 4.5.0 Amazon DynamoDB connector for Hadoop ecosystem applications.
emr-goodies 2.4.0 Extra convenience libraries for the Hadoop ecosystem.
emr-kinesis 3.4.0 Amazon Kinesis connector for Hadoop ecosystem applications.
emr-s3-dist-cp 2.7.0 Distributed copy application optimized for Amazon S3.
emrfs 2.20.0 Amazon S3 connector for Hadoop ecosystem applications.
flink-client 1.3.2 Apache Flink command line client scripts and applications.
ganglia-monitor 3.7.2 Embedded Ganglia agent for Hadoop ecosystem applications along with the Ganglia monitoring agent.
ganglia-metadata-collector 3.7.2 Ganglia metadata collector for aggregating metrics from Ganglia monitoring agents.
ganglia-web 3.7.1 Web application for viewing metrics collected by the Ganglia metadata collector.
hadoop-client 2.7.3-amzn-5 Hadoop command-line clients such as 'hdfs', 'hadoop', or 'yarn'.
hadoop-hdfs-datanode 2.7.3-amzn-5 HDFS node-level service for storing blocks.
hadoop-hdfs-library 2.7.3-amzn-5 HDFS command-line client and library
hadoop-hdfs-namenode 2.7.3-amzn-5 HDFS service for tracking file names and block locations.
hadoop-httpfs-server 2.7.3-amzn-5 HTTP endpoint for HDFS operations.
hadoop-kms-server 2.7.3-amzn-5 Cryptographic key management server based on Hadoop's KeyProvider API.
hadoop-mapred 2.7.3-amzn-5 MapReduce execution engine libraries for running a MapReduce application.
hadoop-yarn-nodemanager 2.7.3-amzn-5 YARN service for managing containers on an individual node.
hadoop-yarn-resourcemanager 2.7.3-amzn-5 YARN service for allocating and managing cluster resources and distributed applications.
hadoop-yarn-timeline-server 2.7.3-amzn-5 Service for retrieving current and historical information for YARN applications.
hbase-hmaster 1.3.1 Service for an HBase cluster responsible for coordination of Regions and execution of administrative commands.
hbase-region-server 1.3.1 Service for serving one or more HBase regions.
hbase-client 1.3.1 HBase command-line client.
hbase-rest-server 1.3.1 Service providing a RESTful HTTP endpoint for HBase.
hbase-thrift-server 1.3.1 Service providing a Thrift endpoint to HBase.
hcatalog-client 2.3.1-amzn-0 The 'hcat' command line client for manipulating hcatalog-server.
hcatalog-server 2.3.1-amzn-0 Service providing HCatalog, a table and storage management layer for distributed applications.
hcatalog-webhcat-server 2.3.1-amzn-0 HTTP endpoint providing a REST interface to HCatalog.
hive-client 2.3.1-amzn-0 Hive command line client.
hive-hbase 2.3.1-amzn-0 Hive-hbase client.
hive-metastore-server 2.3.1-amzn-0 Service for accessing the Hive metastore, a semantic repository storing metadata for SQL on Hadoop operations.
hive-server2 2.3.1-amzn-0 Service for accepting Hive queries as web requests.
hue-server 4.0.1 Web application for analyzing data using Hadoop ecosystem applications
livy-server 0.4.0-incubating REST interface for interacting with Apache Spark
mahout-client 0.13.0 Library for machine learning.
mxnet 0.12.0 A flexible, scalable, and efficient library for deep learning.
mysql-server 5.5.54+ MySQL database server.
oozie-client 4.3.0 Oozie command-line client.
oozie-server 4.3.0 Service for accepting Oozie workflow requests.
phoenix-library 4.11.0-HBase-1.3 The phoenix libraries for server and client
phoenix-query-server 4.11.0-HBase-1.3 A light weight server providing JDBC access as well as Protocol Buffers and JSON format access to the Avatica API
presto-coordinator 0.187 Service for accepting queries and managing query execution among presto-workers.
presto-worker 0.187 Service for executing pieces of a query.
pig-client 0.17.0 Pig command-line client.
spark-client 2.2.0 Spark command-line clients.
spark-history-server 2.2.0 Web UI for viewing logged events for the lifetime of a completed Spark application.
spark-on-yarn 2.2.0 In-memory execution engine for YARN.
spark-yarn-slave 2.2.0 Apache Spark libraries needed by YARN slaves.
sqoop-client 1.4.6 Apache Sqoop command-line client.
tez-on-yarn 0.8.4 The tez YARN application and libraries.
webserver 2.4.25+ Apache HTTP server.
zeppelin-server 0.7.3 Web-based notebook that enables interactive data analytics.
zookeeper-server 3.4.10 Centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services.
zookeeper-client 3.4.10 ZooKeeper command line client.

Learn More

If you are looking for additional information, see the following guides and sites: