全部產品
Search
文件中心

E-MapReduce:快速建立和使用資料湖分析叢集

更新時間:May 20, 2026

本文為您介紹如何通過E-MapReduce(簡稱EMR)控制台,快速建立一個基於開源Hadoop生態的資料湖分析叢集,並通過叢集用戶端提交經典的WordCount作業。WordCount是Hadoop中最基礎且經典的分散式運算任務,用於統計海量文本中的單詞數量,廣泛應用於資料分析、資料採礦等情境。

操作概述

通過本快速入門,您將學會:

  • 如何快速建立一個資料湖分析叢集。

  • 如何通過叢集用戶端提交和運行WordCount作業。

  • 初步瞭解阿里雲EMR的核心功能和Hadoop生態的基本使用方法。

前提條件

  • 註冊阿里雲帳號,並完成實名認證。

  • 完成對E-MapReduce的服務帳號授予預設的EMR和ECS角色許可權,詳情請參見阿里雲帳號角色授權

注意事項

代碼的運行環境由所屬使用者負責管理和配置。

操作流程

步驟一:建立叢集

  1. 進入建立叢集頁面。

    1. 登入EMR on ECS控制台

    2. 在頂部功能表列處,根據實際情況選擇地區和資源群組。

      • 地區:建立的叢集會在對應的地區內,一旦建立不能修改。

      • 資源群組:預設顯示帳號全部資源。

    3. 單擊上方的创建集群

  2. 在建立叢集頁面,完成叢集相關配置。

    配置地區

    配置項

    樣本

    描述

    软件配置

    地域

    華東1(杭州)

    叢集節點ECS執行個體所在的物理位置。

    重要

    叢集建立後,無法更改地區,請謹慎選擇。

    业务场景

    資料湖

    選擇適合的業務情境,建立叢集時阿里雲EMR會自動為您配置預設的組件、服務和資源,以簡化叢集配置,並提供符合特定業務情境需求的叢集環境。

    产品版本

    EMR-5.18.1

    選擇最新的軟體版本。

    服务高可用

    不開啟

    預設不開啟。開啟服务高可用開關後,EMR會把Master節點分布在不同的底層硬體上以降低故障風險。

    可选服务

    HADOOP-COMMON、 OSS-HDFS、YARN、Hive、Spark3、Tez、Knox和OpenLDAP。

    根據您的實際需求選擇組件,被選中的組件會預設啟動相關的服務進程。

    說明

    如需通過控制台訪問Web UI介面, 還需 選擇Knox和OpenLDAP服務。

    允许采集服务运行日志

    開啟

    支援一鍵開啟或關閉所有服務的日誌採集。預設開啟,將收集您的服務作業記錄,這些日誌僅供叢集診斷使用。

    叢集建立後,您可以在基礎資訊頁面,修改服務作業記錄收集狀態

    重要

    關閉日誌採集後,EMR的健全狀態檢查和支援人員將受到限制,但其他功能仍可正常使用。如何關閉及影響詳情,請參見如何停止採集服務日誌?

    元数据

    內建MySQL

    表示中繼資料存放區在MySQL中。

    重要

    內建MySQL是一種快速搭建測試環境的方式,不建議在生產環境中使用。如果您正在規劃生產環境的中繼資料存放區方案,建議根據實際需求選擇自建RDS或者DLF統一中繼資料。

    集群存储根路径

    oss://******.cn-hangzhou.oss-dls.aliyuncs.com

    當您在可選服務地區選取項目了OSS-HDFS服務時,需要配置該參數,如果選擇的是HDFS服務,則無需配置該參數。

    說明
    • 在選擇使用OSS-HDFS服務之前,請確保您選擇的地區支援該服務。否則,您可以嘗試更換地區或使用HDFS服務替代OSS-HDFS服務。OSS-HDFS服務目前支援的地區資訊,請參見開通並授權訪問OSS-HDFS服務

    • EMR-5.12.1及後續版本,EMR-3.46.1及後續版本的DataLake、DataFlow、DataServing和Custom叢集,支援選擇OSS-HDFS服務。

    硬件配置

    付费类型

    隨用隨付

    在測試情境下,建議使用按量付费,測試正常後可以釋放該叢集,再建立一個包年包月的生產叢集正式使用。

    可用区

    可用性區域 I

    叢集建立後,無法直接更改可用性區域,請謹慎選擇。

    专有网络

    vpc_Hangzhou/vpc-bp1f4epmkvncimpgs****

    選擇對應地區下的專用網路。如果沒有,單擊创建 VPC前往建立。建立專用網路完成後,單擊刷新,可以選擇剛建立的VPC。

    交换机

    vsw_i/vsw-bp1e2f5fhaplp0g6p****

    選擇在對應專用網路下可用性區域的交換器,如果在這個可用性區域沒有可用的交換器,則需要新建立一個。

    默认安全组

    sg_seurity/sg-bp1ddw7sm2risw****

    重要

    不支援使用ECS上建立的企業安全性群組。

    如果已有在使用的安全性群組,則可以直接選擇使用。您也可以建立一個安全性群組。

    节点组

    開啟Master節點群組下的挂载公网開關,其餘使用預設值即可。

    您可以根據業務訴求,配置Master節點群組、Core節點群組或Task節點群組資訊。詳情請參見選擇硬體與網路

    基础配置

    集群名称

    Emr-DataLake

    叢集的名字,長度限制為1~64個字元,僅可使用中文、字母、數字、短劃線(-)和底線(_)。

    身份凭证

    密碼。

    用於遠程登入叢集的Master節點。

    說明

    如果您希望在不輸入密碼的情況下進行身分識別驗證,可以選擇密钥对方式,更多詳情請參見管理SSH金鑰組

    登录密码确认密码

    自訂密碼。

    請記錄該配置,登入叢集時您需要輸入該密碼。

  3. 單擊确认订单

    在EMR on ECS頁面,當叢集状态顯示為运行中時,表示叢集建立成功。更多叢集參數資訊,請參見建立叢集

步驟二:準備資料

叢集建立成功後,您可以使用叢集用戶端內預置的WordCount範例程式進行資料分析測試,也可以上傳並運行自行開發的巨量資料應用程式。本文將以運行預置的WordCount範例程式為例,指導您完成從資料準備到資料分析作業提交的完整流程。

  1. 通過SSH方式串連叢集,詳情請參見登入叢集

  2. 準備資料檔案。

    建立一個文字檔 wordcount.txt,作為WordCount的輸入資料,內容如下所示。

    hello world
    hello wordcount
  3. 上傳資料檔案。

    說明

    您可以根據實際情況將資料檔案上傳至叢集的HDFS或OSS/OSS-HDFS。本文以上傳至OSS-HDFS為例,如果是上傳至OSS,可以參見簡單上傳

    1. 執行以下命令,建立名為input的目錄。

      hadoop fs -mkdir oss://<yourBucketname>.cn-hangzhou.oss-dls.aliyuncs.com/input/
    2. 執行以下命令,將本地根目錄下的wordcount.txt檔案上傳至OSS-HDFS的input目錄。

      
      hadoop fs -put wordcount.txt oss://<yourBucketname>.cn-hangzhou.oss-dls.aliyuncs.com/input/

步驟三:提交作業

通過WordCount程式,您可以實現對文本資料中單詞出現頻率的統計分析。

執行以下命令,提交WordCount作業。

hadoop jar /opt/apps/HDFS/hadoop-3.2.1-1.2.16-alinux3/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.2.1.jar wordcount -D mapreduce.job.reduces=1 "oss://<yourBucketname>.cn-hangzhou.oss-dls.aliyuncs.com/input/wordcount.txt" "oss://<yourBucketname>.cn-hangzhou.oss-dls.aliyuncs.com/output/"

涉及參數說明如下。

參數

說明

/opt/apps/.../hadoop-mapreduce-examples-3.2.1.jar

該檔案是Hadoop內建的樣本程式包,包含了多個經典的MapReduce樣本程式。其中,hadoop-mapreduce-examples-3.2.1.jar為您叢集中對應的JAR包名稱,3.2.1為版本號碼。通常EMR-5.x系列叢集的版本號碼為3.2.1,如果您使用EMR-3.x系列叢集,則版本號碼為2.8.5。

-D mapreduce.job.reduces

用於設定MapReduce作業的Reducer數量。

預設情況下,Hadoop會根據輸入資料量自動決定Reducer的數量。如果未明確指定,可能會產生多個輸出檔案(如part-r-00000part-r-00001 等)。通過設定為1,可以確保最終只產生一個輸出檔案(part-r-00000)。

oss://<yourBucketname>.cn-hangzhou.oss-dls.aliyuncs.com/input/wordcount.txt

WordCount作業的輸入路徑。為前一個步驟中您上傳至OSS的資料檔案。其中,應替換<yourBucketname>為您的OSS儲存空間的Bucket名稱,cn-hangzhou為地區名稱。

oss://<yourBucketname>.cn-hangzhou.oss-dls.aliyuncs.com/output/

WordCount作業的輸出路徑,用於儲存作業的計算結果。

步驟四:查看結果

查看作業執行結果

您可以通過Hadoop Shell命令方式查看執行結果。

  1. 通過SSH方式串連叢集,詳情請參見登入叢集

  2. 執行以下命令,查看作業執行結果。

    hadoop fs -cat oss://<yourBucketname>.cn-hangzhou.oss-dls.aliyuncs.com/output/part-r-00000

    查看返回資訊。

    hello	2
    wordcount	1
    world	1

查看作業運行記錄

YARN是Hadoop的資源管理架構,負責調度和管理叢集上的任務。通過YARN UI,您可以查看作業的運行狀態和記錄,瞭解作業的執行過程。例如,查看作業狀態、任務詳情、日誌資訊、資源使用方式等。

  1. 開啟8443連接埠,詳情請參見管理安全性群組

  2. 新增使用者,詳情請參見OpenLDAP 使用者管理

    在使用Knox帳號訪問YARN UI頁面時,需要Knox帳號的使用者名稱和密碼。

  3. EMR on ECS頁面,單擊目的地組群所在行的集群服务

  4. 單擊访问链接与端口頁簽。

  5. 單擊YARN UI所在行的公網連結。

    使用使用者管理中的使用者身份資訊進行登入認證,即可進入YARN UI頁面。

  6. All Applications頁面,單擊目標作業的ID,可以查看作業啟動並執行詳情。

    該頁面頂部展示 Cluster Metrics(Apps Submitted、Apps Running、Memory Used 等)和 Cluster Nodes Metrics,底部為應用列表,包含 IDNameApplication TypeStateFinalStatus 等列資訊。

(可選)步驟五:釋放叢集

如果您建立的叢集不再使用時,可以釋放叢集節約成本。確認叢集釋放後,系統會對叢集進行如下處理:

  1. 強制終止叢集上的所有作業。

  2. 終止並釋放所有的ECS執行個體。

這個過程所需時間取決於叢集的大小,叢集越小釋放越快。通常在幾秒內可以完成釋放,至多不會超過5分鐘。

重要
  • 隨用隨付的叢集可以隨時釋放,訂用帳戶的叢集到期後才能釋放。

  • 釋放叢集前,請確保叢集狀態是初始化中、運行中或空閑。

  1. EMR on ECS頁面,選擇目的地組群所在行的more > 释放

    您還可以單擊目的地組群的叢集名稱,然後在基础信息頁面,選擇右上方的全部操作 > 释放

  2. 在彈出的對話方塊中單擊确定

相關文檔

常見問題

瞭解使用阿里雲EMR的常見問題