上云无忧 > 文档中心 > 天翼云翼MapReduce功能详解
翼MapReduce
天翼云翼MapReduce功能详解

文档简介:
MRS基于开源软件Hadoop进行功能增强、Spark内存计算引擎、HBase分布式存储数据库以及Hive数据仓库框架,提供海量数据的分析计算与存储能力。另外,MRS还具备集群管理功能,在申请MRS时, 你所要做的是根据业务情况选择节点数量,数据磁盘空间来满足业务要求。MRS申请成功后,你只需要集中精力分析数据即可。
*产品来源:中国电信天翼云。免费试用 咨询热线:400-826-7010,为您提供专业的售前咨询,让您快速了解云产品,助您轻松上云! 微信咨询
  免费试用、价格特惠

产品功能


MRS基于开源软件Hadoop进行功能增强、Spark内存计算引擎、HBase分布式存储数据库以及Hive数据仓库框架,提供海量数据的分析计算与存储能力。另外,MRS还具备集群管理功能,在申请MRS时, 你所要做的是根据业务情况选择节点数量,数据磁盘空间来满足业务要求。MRS申请成功后,你只需要集中精力分析数据即可。


集群管理功能

MRS是公有云的一项基础服务,为海量数据提供处理、分析和计算能力。MRS提供Web界面,界面功能如下:

创建集群:在MRS界面完成集群的创建。集群有以下应用场景:

数据存储在OBS:数据存储和计算分离,集群存储成本低,存储量不受限制,并且集群可以随时删除,但计算性能取决于OBS访问性能,相对HDFS有所下降,建议在数据计算不频繁场景下使用。

数据存储在HDFS:数据存储和计算不分离,集群成本较高,计算性能高,但存储量受磁盘空间限制,删除集群前需将数据导出保存,建议在数据计算频繁场景下使用。

扩容集群:目前支持扩容集群Core节点,用户可通过增加节点数量处理业务峰值负载。

管理集群:对创建的集群进行管理,数据完成处理分析和计算后可终止集群服务。

查询告警:集群运行异常或系统故障时,MRS会收集故障信息并上报网管系统,维护人员可根据告警信息定位问题原因。

日志查询:记录用户对集群、作业的操作信息,便于集群运行异常时定位分析问题原因。

文件管理:MRS支持数据导入、导出,目前只支持数据从OBS系统导入到HDFS中,数据完成分析处理后再从HDFS导出至OBS,您也可以将数据存储在HDFS中。

创建作业:作业是MRS为用户提供的程序执行平台,用户可将自己开发的程序提交到MRS集群中,用于数据的处理和分析。当前MRS支持MR、Spark和Hive作业,并支持用户在线提交Spark SQL语句,直接查询和分析数据。

管理作业:对所有的作业进行管理,可查看作业的详细配置信息和所有完成作业的记录,停止和删除作业,但Spark SQL作业不支持停止。

管理页面:使用MRS Manager作为MRS集群的统一管理平台。

  • 提供集群状态的监控功能,您能快速掌握服务及主机的健康状态。

  • 提供图形化的指标监控及定制,您能及时的获取系统的关键信息。

  • 提供服务属性的配置功能,满足您实际业务的性能需求。

  • 提供集群、服务、角色实例的操作功能,满足您一键启停等操作需求。


Hadoop

MRS在云上部署并托管了Apache Hadoop集群,为大数据处理分析场景提供高可靠性、高可用性的服务。Hadoop是一个分布式系统基础架构,包含HDFS、MapReduce和YARN组件。各组件功能如下:

HDFS组件:Hadoop分布式文件系统(Hadoop Distributed File System)能提供高吞吐量的数据访问,适合大规模数据集方面的应用。MRS集群中的数据存储在HDFS中。

MapReduce组件:Hadoop的MapReduce组件是一种简化并行计算的编程模型,名字源于该模型中的两项核心操作:Map和Reduce。Map将一个任务分解成为多个任务,Reduce将分解后多任务处理的结果汇总起来,得出最终的分析结果。在MRS集群中,支持提交用户开发的MapReduce程序,执行程序并获取结果。

YARN组件:YARN是Hadoop中的资源管理系统,是一个通用的资源模块,可以为各类应用程序进行资源管理和调度。MRS采用YARN对集群资源进行调度管理。

Hadoop的架构和详细原理介绍,请参见:/docs/stable/index.html


Spark

MRS在云上部署并托管了Apache Spark集群,Spark是一款分布式并行数据处理框架。

相对于MapReduce计算框架,Spark是一款高容错、基于内存计算的计算框架,确保数据能够快速恢复并重新计算,对于迭代数据计算场景,其计算效率更高。

在Hadoop生态系统中,Spark与Hadoop组件无缝对接,使用HDFS组件进行数据存储,使用YARN组件进行资源管理和调度,使用户能够快速的从MapReduce任务切换到Spark计算平台。

Spark适用场景:

  • 数据处理,ETL(抽取、转换、加载)

  • 机器学习

  • 交互式分析

特别适用于迭代计算,数据重复利用场景。需要反复操作的次数越多,所需读取的数据量越大,受益越大。

云上的Spark组件具备易用、低成本的特点,且可以按需扩容。

Spark的架构和详细原理介绍,请参见:/docs/2.1.0/quick-start.html。


Spark SQL

Spark SQL是Apache Spark的重要组成部分,其前身是Shark,为熟悉传统数据库但又不理解MapReduce的技术人员提供快速上手的工具。用户可以通过界面直接输入SQL语句,即可完成对数据的分析处理和查询。

对比Apache社区的Spark SQL,提供的Spark SQL具备如下特性:

  • 兼容大部分Hive语法,使得Hive用户无缝切换。

  • 兼容标准SQL语法。

  • 支持数据倾斜优化:Spark SQL支持倾斜数据Join转换,对于不包含倾斜键的数据依然能够平均到不同的Task进行处理,对于包含倾斜键的数据,将数据较小的那部分进行广播,利用Map-Side Join来平均到不同的Task进行处理,从而充分利用CPU资源,提升整体的性能。

  • 支持小文件优化:Spark SQL针对小文件的场景采用coalesce算子,对Table中的小文件生成的partition进行合并,减少partition数,从而避免在shuffle的时候,生成过多的hash分桶,提高性能。

Spark SQL的架构和详细原理介绍,请参见:/docs/2.1.0/programming-guide.html


HBase

HBase是一个稳定可靠,性能卓越、可伸缩、面向列的分布式云存储系统,适用于海量数据存储以及分布式计算的场景,用户可以利用HBase搭建起TB至PB级数据规模的存储系统,对数据轻松进行过滤分析,毫秒级得到响应,快速发现数据价值。

HBase适用场景有:

  • 海量数据存储

适用于TB~PB级以上的数据存储,提供动态伸缩能力,方便用户在性能或容量需要改变时,改变集群资源,轻松构建企业海量数据存储系统。

  • 实时查询

HBase的列式KV存储机制,适用于企业用户明细数据即席查询,基于主键的低时延点查,响应时延一般为秒级或毫秒级,方便用户对数据的实时分析。

对比Apache社区,提供的HBase组件具备如下特性:

支持多点分割(又称为动态分割),即把空的Region预先分割成多个Region。通过预先分割,避免了因为Region空间不足出现Region分割导致性能下降的现象。

针对MOB数据提供存储策略。对于Apache HBase,如果存放在HBase的数据大于100KB甚至到10MB时,插入同样个数的数据文件,会导致频繁的compaction和split,占用很多CPU,磁盘IO频率很高,性能严重下降。HBase组件支持将MOB数据(即100KB到10MB大小的数据)直接以HFile的格式存储在文件系统上(例如HDFS文件系统),然后把这个文件的地址信息及大小信息作为value存储在普通HBase的store上,通过expiredMobFileCleaner和Sweeper工具集中管理这些文件。大大降低HBase的compaction和split频率,提升性能。

HBase的架构和详细原理介绍,请参见:/book.html。


Hive

Hive是建立在Hadoop上的数据仓库框架,提供类似SQL的HiveQL语言操作结构化数据,其基本原理是将HiveQL语言自动转换成MapReduce或HDFS任务,从而完成对Hadoop集群中存储的海量数据进行查询和分析。Console控制台提供了Hive Script输入入口,支持在线提交HiveQL语句。

  • 支持HDFS Colocation

HDFS Colocation(同分布)是HDFS提供的数据分布控制功能,利用HDFS Colocation接口,可以将存在关联关系或者可能进行关联操作的数据存放在相同的存储节点上。

Hive支持HDFS的Colocation功能,即在创建Hive表时,通过设置表文件分布的locator信息,可以将相关表的数据文件存放在相同的存储节点上,从而使后续的多表关联的数据计算更加方便和高效。

  • 支持列加密功能

Hive支持对表的某一列或者多列进行加密。在创建Hive表时,可以指定要加密的列和加密算法。当使用insert语句向表中插入数据时,即可实现将对应进行列加密。

Hive列加密机制目前支持的加密算法有两种,具体使用的算法在建表时指定。

AES(对应加密类名称为:org.apache.hadoop.hive.serde2.AESRewriter)

SMS4(对应加密类名称为:org.apache.hadoop.hive.serde2.SMS4Rewriter)

  • 支持HBase删除功能

由于底层存储系统的原因,Hive并不能支持对单条表数据进行删除操作,但在Hive on HBase功能中,MRS Hive提供了对HBase表的单条数据的删除功能,通过特定的语法,Hive可以将自己的HBase表中符合条件的一条或者多条数据清除。

  • 支持行分隔符

通常情况下,Hive以文本文件存储的表会以回车作为其行分隔符,即在查询过程中,以回车符作为一行表数据的结束符。但某些数据文件并不是以回车分隔的规则文本格式,而是以某些特殊符号分割其规则文本。

MRS Hive支持指定不同的字符或字符组合作为Hive文本数据的行分隔符,既在创建表的时候,指定inputformat为SpecifiedDelimiterInputFormat,在每次查询前,设置如下参数来指定分隔符,即可实现根据指定的分隔符查询表数据。

set hive.textinput.record.delimiter='';

  • 支持CSV SerDe

CSV是一种常见的文本文件格式,其文件以纯文本形式存储表格数据(数字和文本),并以逗号作为文本分隔符。

CSV文件具有较强的通用性,有许多应用程序允许用户查看和编辑CSV文件,可以方便的在Windows Office或者一些传统数据库中使用。

MRS Hive增加了对CSV文件的支持,可以将用户的CSV文件导入Hive表中,或者将用户的Hive表数据以CSV文件格式导出,从而方便在其他应用中使用。


Hue

Hue是建立在开源Django Python Web框架的Web应用程序,为MRS集群提供了图形化用户界面,便于用户配置、使用以及查看MRS集群。Hue支持MRS集群中HDFS、Hive、MapReduce和ZooKeeper,包含以下使用场景:

HDFS:创建文件、目录,修改文件、目录权限,上传、下载文件,查看、修改文件等操作。

Hive:编辑、执行HiveQL,也可通过metastore对数据库及表和视图进行增删改查等操作。

MapReduce:查看集群中正在执行和已经完成的MR任务,包括它们的状态,起始结束时间、运行日志等。

ZooKeeper:查看集群中ZooKeeper的状态信息。

有关Hue的详细信息,请参见:/。


Kerberos认证

  • 概述

MRS集群为保障使用者的大数据信息安全,集成了用户身份认证和用户鉴权管理功能。如果需要启用所有认证和鉴权功能,创建MRS集群时需要启用支持Kerberos认证功能。

  • 认证

用户身份认证用于在执行运维管理操作或访问业务数据的场景中,验证表明特定身份的人员信息准确且真实有效。

在MRS Manager执行操作时,如果涉及重启MRS集群中的服务,则Manager要求输入当前登录用户的密码。例如重启服务、同步集群配置等。

  • 鉴权

每个特定身份的用户可能拥有集群资源不同的访问与使用权限,为了保护不同业务数据的信息安全,用户在认证后还需要鉴权。

  • 认证

支持Kerberos认证的集群统一使用Kerberos认证协议进行安全认证。Kerberos协议支持客户端与服务端进行相互认证,提高了安全性,可有效消除使用网络发送用户凭据进行模拟认证的安全风险。MRS集群中由KrbServer提供Kerberos认证支持。

  • Kerberos用户对象

Kerberos协议中,每个用户对象即一个principal。一个完整的用户对象包含两个部分信息:用户名和域名。在运维管理或应用开发的场景中,需要在客户端认证用户身份后才能连接到集群服务端。MRS集群操作运维与业务场景中主要使用的用户分为“人机”用户和“机机”用户。二者主要区别在于“机机”用户密码由系统随机生成。

  • Kerberos认证

Kerberos认证支持两种方式:密码认证及keytab认证。认证有效时间默认为24小时。

−密码认证:通过输入用户正确的密码完成身份认证。主要在运维管理场景中使用“人机”用户进行认证,命令为kinit 用户名。

−keytab认证:keytab文件包含了用户的安全信息。使用keytab文件认证时,系统自动使用加密的凭据信息进行认证无需输入用户密码。主要在组件应用开发场景中使用,且使用“机机”用户。keytab文件也支持在kinit命令中使用。

  • 鉴权

用户访问MRS集群完成身份认证后,系统还会对用户进行鉴权,确保系统用户拥有资源的有限或全部权限。如果系统用户权限不足,需要由系统管理员为用户授予各个组件对应的权限后,才能访问资源。


Kafka

MRS基于Apache Kafka在公有云平台部署并托管了Kafka集群,Kafka是一个分布式的、分区的、多副本的消息发布及订阅系统。它提供了类似于Java消息服务(Java Message Service,JMS)的特性,但具有以下增强特性:

  • 消息持久化

将消息持久化到集群的存储空间,用于批量消费,以及实时应用程序。通过将数据持久化到云硬盘以及保存副本防止数据丢失。

  • 高吞吐

利用数据持久化、减少I/O操作、数据批量发送,以及主题包含多个分区,同时为发布和订阅提供高吞吐量。

  • 可靠性

提供At-Least Once,At-Most Once,Exactly Once消息可靠传递。

  • 分布式

易于扩展的Kafka架构,通过扩容Core节点,使新的Kafka节点可以在MRS集群中被感知,从而实现业务连续运行。

Kafka适用于离线和在线的消息消费,如常规的消息收集、网站活性跟踪、聚合统计系统运营数据(监控数据)、日志收集等大量数据的网络服务的数据收集场景。

关于Kafka架构和详细原理介绍,请参见:/0100/documentation.html。


Storm

MRS基于开源Apache Storm在公有云平台部署并托管了Strom集群,Storm是一个分布式、可靠、容错的实时计算系统,用于对大规模流式数据提供实时处理。Storm有众多适用场景:实时分析、持续计算、分布式ETL等,支持以下特性:

  • 分布式实时计算框架

部署Storm的每个节点都可以运行多个工作进程,每个工作进程又可创建多个线程,每个线程可以执行多个任务,任务是并发进行数据处理。

  • 高容错

如果在消息处理过程中有节点、进程等出现异常,提供重新部署该处理单元的能力。

  • 可靠的消息保证

支持At-Least Once、At-Most Once、Exactly Once的数据处理模式。

  • 灵活的拓扑定义及部署

使用Flux框架定义及部署业务拓扑,在业务DAG发生变化时,只需对YAML DSL(domain-specific language)定义进行修改,无需重新编译及打包业务代码。

  • 与外部组件集成

支持与多种外部组件集成,包括:Kafka、HDFS或HBase等服务,便于实现涉及多种数据源的业务。

关于Storm的架构和详细原理介绍,请参见:/releases/1.0.2/index.html。


CarbonData

CarbonData是一种新型的Apache Hadoop文件格式,使用先进的列式存储、索引、压缩和编码技术,将数据保存在HDFS中以提高计算效率,有助于加速超过PB数量级的数据查询,可用于更快的交互查询。同时,CarbonData也是一种将数据源与Spark集成的高性能分析引擎,用户可使用Spark SQL执行数据查询和分析。

CarbonData主要支持以下特性:

  • SQL功能

CarbonData与Spark SQL完全兼容,支持所有可以直接在Spark SQL上运行的SQL查询操作。

  • 简单的Table数据集定义

CarbonData支持易于使用的DDL(数据定义语言)语句来定义和创建数据集。CarbonData DDL十分灵活、易于使用,并且足够强大,可以定义复杂类型的Table。

  • 便捷的数据管理

CarbonData为数据加载和维护提供多种数据管理功能,支持加载历史数据以及增量加载新数据。加载的数据可以基于加载时间进行删除,也可以撤销特定的数据加载操作。

  • 快速查询响应

高性能查询是CarbonData关键技术。CarbonData使用的专用数据格式围绕高性能查询进行设计,其中包括多种索引技术、全局字典编码和多次的Push down优化,查询速度大约是Spark SQL的10倍。

  • 高效率数据压缩

CarbonData使用轻量级压缩和重量级压缩的组合压缩算法压缩数据,可以减少60%~80%数据存储空间,大大节省存储成本。

关于CarbonData的架构和详细原理介绍,请参见:/。


Flume

Flume是一个分布式和高可用的海量日志聚合系统,用户可在Flume定制各类数据发送方并收集数据。在接收数据时,Flume可以对数据进行简单处理。

Flume主要支持以下特性:

  • 收集、聚合事件流数据的分布式框架

  • 通常用于日志数据

  • 支持动态更新配置

  • 提供上下文路由功能

  • 支持负载均衡和故障转移

  • 完全的可扩展

Flume的架构和详细原理介绍,请参见:/releases/1.6.0.html。


Loader

Loader是基于Apache Sqoop的数据迁移组件,使Hadoop与结构化数据、半结构化数据和非结构化数据的迁移更加快速、高效以及便捷。在迁移数据时,Loader不仅仅支持将数据从MRS集群外导入MRS集群,也可以从MRS集群导出数据到外部系统。

Loader主要支持以下特性:

  • 采用高可用服务架构

  • 支持客户端方式执行数据迁移作业

  • 支持数据迁移作业管理

  • 数据迁移过程可进行数据处理

  • 迁移作业使用MapReduce组件运行

Loader的架构和详细原理介绍,请参见:/docs/1.99.7/index.html。


相似文档
  • 易用 提供Hadoop、Spark、Spark SQL、HBase和Hive能力,全流程统一的SQL交互接口使得大数据开发变得更加简单。 低成本 免运维,计算和存储分离,计算的集群可以按需创建,作业运行结束就可以释放集群。 稳定 您用于调试和监视集群的时间将更少,服务可用性高(99.9%),数据可靠性高(99.9999%)。 开放 积极拥抱开源大数据生态,兼容开源,易于与其他服务对接,提供REST API、JDBC等多种使用方式。
  • 虚拟私有云 MRS集群创建在虚拟私有云的子网内,VPC通过逻辑方式进行网络隔离,为用户的MRS集群提供安全、隔离的网络环境。 对象存储服务 对象存储服务用于存储用户数据,包括MRS作业输入数据和作业输出数据: MRS作业输入数据:用户程序和数据文件 MRS作业输出数据:作业输出的结果文件和日志文件 MRS中HDFS、Hive、MapReduce、YARN、Spark、Flume和Loader支持从对象存储导入、导出数据。
  • 产品价格: 天翼云诸葛AI平台-大数据平台根据客户所需计算资源和存储资源量,购买计算单元(CU)和分布式存储资源。 a) 计算资源(CU)价格: 销售品 标准资费(元/CU/月) 大数据平台计算资源 116 包年预付费政策:一年85折
  • (1)个人用户通过天翼云官网进行购买。 (2)企业客户通过省公司客户经理在省公司订购页面购买。
  • 可退订。按天计算使用费用,扣除已经发生的费用。
官方微信
联系客服
400-826-7010
7x24小时客服热线
分享
  • QQ好友
  • QQ空间
  • 微信
  • 微博
返回顶部