`
fengshulin
  • 浏览: 40374 次
社区版块
存档分类
最新评论

基于Hadoop的大数据平台整体架构设计

阅读更多

1. 软件架构设计

 

软件架构图

 

大数据平台架构设计沿袭了分层设计的思想,将平台所需提供的服务按照功能划分成不同的模块层次,每一模块层次只与上层或下层的模块层次进行交互(通过层次边界的接口),避免跨层的交互,这种设计的好处是:各功能模块的内部是高内聚的,而模块与模块之间是松耦合的。这种架构有利于实现平台的高可靠性,高扩展性以及易维护性。比如,当我们需要扩容Hadoop集群时,只需要在基础设施层添加一台新的Hadoop节点服务器即可,而对其他模块层无需做任何的变动,且对用户也是完全透明的。

整个拉卡拉大数据平台按其职能划分为五个模块层次,从下到上依次为:

运行环境层:

运行环境层为基础设施层提供运行时环境,它由2部分构成,即操作系统和运行时环境。

(1)操作系统我们推荐安装REHL5.0以上版本(64位)。此外为了提高磁盘的IO吞吐量,避免安装RAID驱动,而是将分布式文件系统的数据目录分布在不同的磁盘分区上,以此提高磁盘的IO性能。

(2)运行时环境的具体要求如下表:

 

名称 版本 说明

JDK

1.6或以上版本

Hadoop需要Java运行时环境,必须安装JDK

gcc/g++

3.x或以上版本

当使用Hadoop Pipes运行MapReduce任务时,需要gcc编译器,可选。

python

2.x或以上版本

当使用Hadoop Streaming运行MapReduce任务时,需要python运行时,可选。

 

 

基础设施层:

基础设施层由2部分组成:Zookeeper集群和Hadoop集群。它为基础平台层提供基础设施服务,比如命名服务、分布式文件系统、MapReduce等。

(1)ZooKeeper集群用于命名映射,做为Hadoop集群的命名服务器,基础平台层的任务调度控制台可以通过命名服务器访问Hadoop集群中的NameNode,同时具备failover的功能。

(2)Hadoop集群是大数据平台的核心,是基础平台层的基础设施。它提供了HDFS、MapReduce、JobTracker和TaskTracker等服务。目前我们采用双主节点模式,以此避免Hadoop集群的单点故障问题。

基础平台层:

基础平台层由3个部分组成:任务调度控制台、HBase和Hive。它为用户网关层提供基础服务调用接口。

(1)任务调度控制台是MapReduce任务的调度中心,分配各种任务执行的顺序和优先级。用户通过调度控制台提交作业任务,并通过用户网关层的Hadoop客户端返回其任务执行的结果。其具体执行步骤如下:

  • 任务调度控制台接收到用户提交的作业后,匹配其调度算法;
  • 请求ZooKeeper返回可用的Hadoop集群的JobTracker节点地址;
  • 提交MapReduce作业任务;
  • 轮询作业任务是否完成;
  • 如果作业完成发送消息并调用回调函数;
  • 继续执行下一个作业任务。

 

作为一个完善的Hadoop集群实现,任务调度控制台尽量自己开发实现,这样灵活性和控制力会更加的强。

(2)HBase是基于Hadoop的列数据库,为用户提供基于表的数据访问服务。

(3)Hive是在Hadoop上的一个查询服务,用户通过用户网关层的Hive客户端提交类SQL的查询请求,并通过客户端的UI查看返回的查询结果,该接口可提供数据部门准即时的数据查询统计服务。

用户网关层:

用户网关层用于为终端客户提供个性化的调用接口以及用户的身份认证,是用户唯一可见的大数据平台操作入口。终端用户只有通过用户网关层提供的接口才可以与大数据平台进行交互。目前网关层提供了3个个性化调用接口:

(1)Hadoop客户端是用户提交MapReduce作业的入口,并可从其UI界面查看返回的处理结果。

(2)Hive客户端是用户提交HQL查询服务的入口,并可从其UI界面查看查询结果。

(3)Sqoop是关系型数据库与HBase或Hive交互数据的接口。可以将关系型数据库中的数据按照要求导入到HBase或Hive中,以提供用户可通过HQL进行查询。同时HBase或Hive或HDFS也可以将数据导回到关系型数据库中,以便其他的分析系统进行进一步的数据分析。

用户网关层可以根据实际的需求无限的扩展,以满足不同用户的需求。

客户应用层:

客户应用层是各种不同的终端应用程序,可以包括:各种关系型数据库,报表,交易行为分析,对账单,清结算等。

目前我能想到的可以落地到大数据平台的应用有:

1.行为分析:将交易数据从关系型数据库导入到Hadoop集群中,然后根据数据挖掘算法编写MapReduce作业任务并提交到JobTracker中进行分布式计算,然后将其计算结果放入Hive中。终端用户通过Hive客户端提交HQL查询统计分析的结果。

2.对账单:将交易数据从关系型数据库导入到Hadoop集群,然后根据业务规则编写MapReduce作业任务并提交到JobTracker中进行分布式计算,终端用户通过Hadoop客户端提取对账单结果文件(Hadoop本身也是一个分布式文件系统,具备通常的文件存取能力)。

3.清结算:将银联文件导入HDFS中,然后将之前从关系型数据库中导入的POSP交易数据进行MapReduce计算(即对账操作),然后将计算结果连接到另外一个MapReduce作业中进行费率及分润的计算(即结算操作),最后将计算结果导回到关系型数据库中由用户触发商户划款(即划款操作)。

部署架构设计

部署架构图

 

关键点说明:

1.目前整个Hadoop集群均放置在银联机房中。

2.Hadoop集群中有2个Master节点和5个Slave节点,2个Master节点互为备份通过ZooKeeper可实现failover功能。每个Master节点共享所有的Slave节点,保证分布式文件系统的备份存在于所有的DataNode节点之中。Hadoop集群中的所有主机必须使用同一网段并放置在同一机架上,以此保证集群的IO性能。

3.ZooKeeper集群至少配置2台主机,以避免命名服务的单节点故障。通过ZooKeeper我们可以不再需要F5做负载均衡,直接由任务调度控制台通过ZK实现Hadoop名称节点的负载均衡访问。

4.所有服务器之间必须配置为无密钥SSH访问。

5.外部或内部用户均需要通过网关才能访问Hadoop集群,网关在经过一些身份认证之后才能提供服务,以此保证Hadoop集群的访问安全。

分享到:
评论

相关推荐

    「大数据干货」基于Hadoop的大数据平台实施——整体架构设计.pdf

    「⼤数据⼲货」基于 「⼤数据⼲货」基于Hadoop的⼤数据平台实施 的⼤数据平台实施——整体架构设 整体架构设 计 计 ⼤数据的热度在持续的升温,继云计算之后⼤数据成为⼜⼀⼤众所追捧的新星。我们暂不去讨论⼤数据...

    Hadoop实战大数据大作业

    一个基于Hadoop平台进行的单词统计系统,其中包含了伪分布架构,并且包含HDFS数据存储,结合Java后台利用Mapreduce架包进行单词的统计与分析。包含了完整的实践过程,内涵源代码,以及实验命令,内容丰富,实验过程...

    基于大数据(Hadoop+Java+MySQL)的数码商城购物推荐系统设计与实现.zip

    本系统利用大数据技术,合理的为用户做出推荐,推荐的结果可靠程度很高,这就是我的优势所在,因为它和一般的推荐系统的推荐算法不太一样,我的推荐算法是利用Hadoop技术写的,我们可以利用Hadoop集群的高吞吐量,一...

    基于大数据的餐饮推荐系统,整体采用Lambda架构,读取餐饮评分数据并通过Spark的MLlib中的ALS建立推荐模型后进行推荐

    基于大数据的餐饮推荐系统,整体采用Lambda架构,读取餐饮评分数据并通过Spark的MLlib中的ALS建立推荐模型之后进行推荐Food_Recommender.zip

    大数据架构师的岗位职责.docx

    大数据架构师的岗位职责全文共4页,当前为第1页。大数据架构师的岗位职责全文共4页,... 大数据架构师的岗位职责4 职责: 1)负责公司软件产品整体架构的设计和关键功能实现 2)负责公司架构长期看护以及优化; 3)负责软

    毕设&课设&项目&实训-基于hadoop生态搭建的电商数据仓库.zip

    毕设&课设&项目&实训-基于hadoop生态搭建的电商数据仓库,整体功能架构包含数据采集、数仓搭建、数据导出、数据可视化等. 【项目资源】: 包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、...

    五种大数据架构简介.pdf

    基于⾕歌有关海量数据处理所 发表的多篇论⽂与经验的Hadoop重新实现了相关算法和组件堆栈,让⼤规模批处理技术变得更易⽤。 新版Hadoop包含多个组件,即多个层,通过配合使⽤可处理批数据: · HDFS:HDFS是⼀种...

    【推荐】最强大数据学习与最佳实践资料合集(基础+架构+数仓+治理+案例)(100份).zip

    万振龙:数据治理与大数据平台设计 主数据管理实践白皮书(1.0版) Apache atlas使用说明文档 atlas安装 CDH启用kerberos身份认证和sentry权限管理 DAMA-部委级数据治理项目经验分享 GrowingIO 2020指标体系与数据...

    【推荐】数据仓库建设学习资料合集(38份).zip

    企业大数据平台数仓架构建设思路 商业银行数据仓库系统V2.0 数据仓库-数据集市-BI-数据分析 数据仓库工具箱 维度建模权威指南(第3版) 数据仓库技术架构及方案 数据仓库架构、模型、调度、指标建设方案 数据仓库建模...

    Hadoop实战(第2版)

    Hadoop是一个开源的MapReduce平台,设计运行在大型分布式集群环境中,提供查询和分析服务。尤其适用于大数据系统,Hadoop为苹果、eBay、LinkedIn、雅虎和Facebook等公司提供重要软件环境。它为开发者进行数据存储、...

    大数据市场前景分析报告.docx

    中国大数据产业发展现状分析 大数据产业链建设情况 目前,IT产业在发展过程中已经形成了一些层次分布,有做服务器和底层系统的,有做软件的,有做应用的,大数据也需要在原有的架构上加以发展。原来做基础设施的...

    大数据市场前景分析报告(1).docx

    大数据产业市场规模分析 据贵阳大数据交易所发布的《2019年中国大数据交易产业白皮书》数据显示,2014年,中国大数据产业规模大约为1038亿元,2015年产业整体规模达到1692亿元。随着大数据应用范围的不断扩大,...

    matlab代码做游戏-BigData:大数据学习方向

    负责数据平台产品的整体评估、设计、架构、及关键模块的开发; 负责产品大数据处理/架构设计; 负责架构优化及系统模块的设计开发,协助团队解决开发过程中的技术难题; 4.大数据算法/数据挖掘/数据分析 可以独立构建从...

    大数据离线计算.pdf

    离线计算架构 计算⼯具有 Hive、Pig、Spark SQL、Presto、MapReduce ,⽀持 Alluxio 的存储架构,形成了离线计算引擎 Hadoop集群 hadoop实现了⼀个分布式的基础框架,核⼼设计就是:hdfs和mapreduce hdfs分布式存储...

    云雾网络架构的大数据分析平台研究

    基于大数据信息储存平台为基础架构,结合雾计算的数据预处理能力,构建了以雾计算架构为基础的大数据分析平台,利用雾的特性计算近端设备的优点,将大多数的数据信息在送进MapReduce做分析前,先进行初步的整合和...

    数据仓库建设学习资料汇总合集44篇.zip

    企业大数据平台下数仓建设思路 浅谈数据仓库及数据挖掘技术及应用 商业银行数据仓库系统方案 数据仓库、数据挖掘在银行中的应用 数据仓库etl工具箱 数据仓库分析系统整体设计方案模板 数据仓库工具箱 维度建模权威...

    Hadoop硬实战 [(美)霍姆斯著][电子工业出版社][2015.01]_PDF电子书下载 带书签目录 高清完整版.rar )

    1 跳跃中的Hadoop 1.1 什么是Hadoop 1.1.1 Hadoop 的核心组件 1.1.2 Hadoop 生态圈 1.1.3 物理架构 1.1.4 谁在使用Hadoop 1.1.5 Hadoop 的局限性 1.2 运行Hadoop 1.2.1 下载并安装Hadoop ...

    大数据处理的关键技术.docx

    考虑到系统由大量廉价易损的硬件组成,为了保证文件整体可靠性,大数据通常对同一份数据在不同节点上存储多份副本,同时,为了保障海量数据的读写能力,大数据借助分布式存储架构提供高吐量的数据访问. 超人学院...

    OpenVMC:OpenVMC 视频检索框架

    整体架构 #2.功能图 #3.软硬件环境 1、集群环境推荐使用Windows 2008 server 64bit 2、所有节点安装独立的符合要求的操作系统(64位) 3、正确配置网络环境,所有节点可以正常Ping通(多个节时)。 4、所有节点需要...

    软件技术《行业标准-人工智能》.doc

    按技术架构来看,智能芯片可以分为通用类芯片(CPU、GPU、FPGA)、基于 FPGA的半定制化芯片、全定制化 ASIC 芯片、类脑计算芯片(IBM TrueNorth)。 另外,主要的人工智能处理器还有 DPU、BPU、NPU、EPU 等适用于不同...

Global site tag (gtag.js) - Google Analytics