阿里云 Elastic MapReduce(E-MapReduce) 是運(yùn)行在阿里云平臺(tái)上的一種大數(shù)據(jù)處理的系統(tǒng)解決方案。E-MapReduce 構(gòu)建于阿里云云服務(wù)器 ECS 上,基于開(kāi)源的 Apache Hadoop 和 Apache Spark,讓用戶可以方便地使用Hadoop和Spark生態(tài)系統(tǒng)中的其他周邊系統(tǒng)(如 Apache Hive、Apache Pig、HBase 等)來(lái)分析和處理自己的數(shù)據(jù)。不僅如此,用戶還可以通過(guò)E-MapReduce將數(shù)據(jù)非常方便的導(dǎo)入和導(dǎo)出到阿里云其他的云數(shù)據(jù)存儲(chǔ)系統(tǒng)和數(shù)據(jù)庫(kù)系統(tǒng)中,如阿里云 OSS、阿里云 RDS 等。
E-MapReduce 的用途
當(dāng)用戶想要使用 Hadoop、Spark 等分布式處理系統(tǒng)的時(shí)候,通常需要經(jīng)歷如下的步驟:
在這些流程中,真正跟用戶的應(yīng)用邏輯相關(guān)的是從第8步才開(kāi)始,第1-7步的各項(xiàng)工作都是前期的準(zhǔn)備工作,通常這個(gè)前期工作都非常冗長(zhǎng)繁瑣。而 E-MapReduce 提供了集群管理工具的集成解決方案,如主機(jī)選型、環(huán)境部署、集群搭建、集群配置、集群運(yùn)行、作業(yè)配置、作業(yè)運(yùn)行、集群管理、性能監(jiān)控等。
通過(guò)使用 E-MapReduce,用戶可以從集群構(gòu)建各種繁瑣的采購(gòu)、準(zhǔn)備、運(yùn)維等工作中解放出來(lái),只關(guān)心自己應(yīng)用程序的處理邏輯即可。此外,E-MapReduce 還給用戶提供了靈活的搭配組合方式,用戶可以根據(jù)自己的業(yè)務(wù)特點(diǎn)選擇不同的集群服務(wù)。例如,如果用戶的需求是對(duì)數(shù)據(jù)進(jìn)行日常統(tǒng)計(jì)和簡(jiǎn)單的批量運(yùn)算,則可以只選擇在 E-MapReduce 中運(yùn)行 Hadoop 服務(wù);而如果用戶還需要流式計(jì)算和實(shí)時(shí)計(jì)算的需求,則可以在 Hadoop 服務(wù)基礎(chǔ)上再加入 Spark 服務(wù)。
E-MapReduce 的組成
E-MapReduce 最核心也是用戶直接面對(duì)的組件是集群。一個(gè) E-MapReduce 集群是由一個(gè)或多個(gè)阿里云 ECS instance 組成的 Hadoop 和 Spark 集群。以 Hadoop 為例,在每一個(gè) ECS instance 上,通常都運(yùn)行了一些 daemon 進(jìn)程(如 namenode、datanode、resoucemanager 和 nodemanager),這些 daemon 進(jìn)程就組成了 Hadoop 集群。運(yùn)行 namenode 和 resourcemanager 的節(jié)點(diǎn)被稱為 master 節(jié)點(diǎn),而運(yùn)行 datanode 和 nodemanager 的節(jié)點(diǎn)被稱為 slave 節(jié)點(diǎn)。
例如,下圖表示了一個(gè)包含1個(gè) master 節(jié)點(diǎn)和3個(gè) slave 節(jié)點(diǎn)的 E-MapReduce 集群:
聯(lián)系客服