



下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、计算平台概要设计说明书文件编号受控编号版次1.0密级内部公开总页数42附录作者:日期:2013-01-28批准:日期:审核:日期:(版权所有,翻版必究)1文件修改记录修改日期修改状态修改页码及条款修改人审核人批准人2目录1.引言 .51.1编写目的 .51.2术语与缩略词 .61.3对象及范围 .81.4参考资料 .92.系统总体设计 .92.1需求规定 .92.1.1数据导入 .错误!未定义书签。2.1.2数据运算 .错误!未定义书签。2.1.3运算结果导出 .错误!未定义书签。2.1.4系统监控 .错误!未定义书签。2.1.5调度功能 .错误!未定义书签。2.1.6自动化安装部署与维护 .
2、错误!未定义书签。2.2运行环境 .92.3基本设计思路和处理流程 .92.4系统结构 .102.4.1大数据运算系统架构图 .102.4.2hadoop 体系各组件之间关系图 .错误!未定义书签。2.4.3计算平台系统功能图 .112.4.4系统功能图逻辑说明 .112.4.5计算平台业务流程图 .错误!未定义书签。2.5尚未解决的问题 .123.模块 / 功能设计 .123.1计算驱动模块 .153.1.1设计思路 .153.1.2流程图 .173.1.3处理逻辑 .183.2调度模块 .133.2.1设计思路 .133.2.2流程图 .143.2.3处理逻辑 .143.3自动化安装部署模
3、块 .错误!未定义书签。3.3.1设计思路 .错误!未定义书签。3.3.2处理逻辑 .错误!未定义书签。3.4调度模块与计算驱动模块交互流程.错误!未定义书签。3.4.1处理流程图 .错误!未定义书签。3.4.2处理逻辑 .错误!未定义书签。3.4.3hadoop 驱动模块调用驱动接口 .错误!未定义书签。3.4.4调度模块接收 hadoop 执行状态接口 .错误!未定义书签。33.5调度模块与 kettle 交互流程 .错误!未定义书签。3.5.1处理流程图 .错误!未定义书签。3.5.2处理逻辑 .错误!未定义书签。3.6对调度任务运行过程进行监控流程.错误!未定义书签。3.6.1处理流程
4、图 .错误!未定义书签。3.6.2处理逻辑 .错误!未定义书签。3.7对 hadoop 驱动任务运行过程进行监控流程.错误!未定义书签。3.7.1处理流程图 .错误!未定义书签。3.7.2处理逻辑 .错误!未定义书签。3.8对操作系统 /应用程序监控流程 .193.8.1处理流程图 .193.8.2处理逻辑 .193.9监控报警模块 .203.9.1设计思路 .203.9.2流程图 .213.9.3处理逻辑 .214. 系统数据结构设计 .224.1数据实体关系图 .224.2数据逻辑结构 .224.2.1驱动任务设置表 .错误!未定义书签。4.2.2驱动设置表 .错误!未定义书签。4.2.3
5、驱动任务执行明细表 .错误!未定义书签。4.2.4调度任务表 .错误!未定义书签。4.2.5调度步骤表 .234.2.6调度步骤执行记录表 .244.2.7操作系统监控数据表 .错误!未定义书签。4.2.8应用程序监控数据表 .错误!未定义书签。4.2.9监控系统配置表 .错误!未定义书签。4.2.10业务数据记录表 .错误!未定义书签。4.3数据物理结构. 315.安全设计 .316.容错设计 .316.1挽救措施 .316.2系统维护设计. 317.日志设计 .311.4引言1.1 编写目的大数据泛指巨量的数据集,因可从中挖掘出有价值的信息而受到重视。华尔街日报将大数据时代、 智能化生产和
6、无线网络革命称为引领未来繁荣的三大技术变革。麦肯锡公司的报告指出数据是一种生产资料,大数据是下一个创新、竞争、生产力提高的前沿。世界经济论坛的报告认定大数据为新财富,价值堪比石油。 因此, 发达国家纷纷将开发利用大数据作为夺取新一轮竞争制高点的重要抓手。互联网特别是移动互联网的发展,加快了信息化向社会经济各方面、大众日常生活的渗透。有资料显示, 1998 年全球网民平均每月使用流量是1MB(兆字节),2000 年是 10MB ,2003 年是 100MB ,2008 年是 1GB ( 1GB 等于 1024MB ), 2014 年将是 10GB 。全网流量累计达到 1EB (即 10 亿 GB
7、 或 1000PB )的时间在2001 年是一年,在 2004 年是一个月,在2007 年是一周,而 2013 年仅需一天,即一天产生的信息量可刻满1.88亿张 DVD 光盘。我国网民数居世界之首, 每天产生的数据量也位于世界前列。淘宝网站每天有超过数千万笔交易,单日数据产生量超过50TB ( 1TB 等于 1000GB ),存储量 40PB(1PB 等于 1000TB) 。百度公司目前数据总量接近1000PB,存储网页数量接近 1 万亿页, 每天大约要处理60 亿次搜索请求,几十 PB 数据。一个 8Mbps(兆比特每秒)的摄像头一小时能产生3.6GB 数据,一个城市若安装几十万个交通和安防
8、摄像头,每月产生的数据量将达几十PB 。医院也是数据产生集中的地方。现在,一个病人的CT 影像数据量达几十GB ,而全国每年门诊人数以数十亿计,并且他们的信息需要长时间保存。总之,大数据存在于各行各业, 一个大数据时代正在到来。信息爆炸不自今日起,但近年来人们更加感受到大数据的来势迅猛。一方面, 网民数量不断增加,另一方面,以物联网和家电为代表的联网设备数量增长更快。2007 年全球有 5亿个设备联网,人均 0.1 个; 2013 年全球将有 500 亿个设备联网,人均70 个。随着宽带化的发展,人均网络接入带宽和流量也迅速提升。全球新产生数据年增40% ,即信息总量每两年就可以翻番,这一趋势
9、还将持续。目前,单一数据集容量超过几十TB 甚至数 PB 已不罕见,其规模大到无法在容许的时间内用常规软件工具对其内容进行抓取、管理和处理。数据规模越大, 处理的难度也越大, 但对其进行挖掘可能得到的价值更大,这就是大数据热的原因。鉴于越来越大的数据规模,采用常规基于DBMS 的数据分析工具和方法已经5无法满足大规模数据分析的需求,目前一些大型互联网公司采用hadoop 体系进行大规模数据的运算,结合hadoop 体系结构与实际的运算需求结合,采用hadoop 体系结构的分布式运算模型,通过集群的方式实现大数据运算,为企业提供大数据的价值。为适应大数据计算的要求,同时提供大数据运算平台的系统设
10、计的依据,特制定计算平台的系统概要设计文档,为后期的系统详细设计和实现提供依据。1.2 术语与缩略词下列术语、定义和缩略语适用于本标准:术语与缩略词解释备注NamenodeHDFS采用master/slave架构。一个HDFS集群是由一个Namenode和一定数目的Datanodes组成。Namenode是一个中心服务器,负责管理文件系统的名字空间(namespace)以及客户端对文件的访问。Namenode执行文件系统的名字空间操作,比如打开、关闭、重命名文件或目录。它也负责确定数据块到具体Datanode节点的映射Datanode集群中的Datanode 一般是一个节点一个,负责管理它所在
11、节点上的存储。 HDFS暴露了文件系统的名字空间,用户能够以文件的形式在上面存储数据。从内部看,一个文件其实被分成一个或多个数据块, 这些块存储在一组Datanode 上。Datanode 负责处理文件系统客户端的读写请求。在 Namenode的统一调度下进行数据块的创建、删除和复制Secondnamenode光从字面上来理解,很容易让一些初学者先入为主的认为:SecondaryNameNode( snn )就是NameNode( nn)的热备进程。其实不是。 snn 是 HDFS架构中的一个组成部分,但是经常由于名字而被人误解它真正的用途,其实它真正的用途,是用来保存 namenode 中对
12、 HDFS metadata 的信 息的 备份, 并减 少namenode重启的时间6JobtrackerJobTracker是 MapReduce框架中最主要的类之一,所有job 的执行都由它来调度, 而且 Hadoop系统中只配置一个JobTracker应用。它们都是由一个master 服务 JobTracker和多个运行于多个节点的slaver服务 TaskTracker两个类提供的服务调度的。 master负责调度job 的每一个子任务task运行于 slave上,并监控它们, 如果发现有失败的task 就重新运行它, slave则负责直接执行每一个taskTaskTrackerTas
13、kTracker 都需要运行在HDFS的 DataNode上,而 JobTracker 则不需要,一般情况应该把JobTracker部署在单独的机器上HBaseHBase 是一个分布式的、 面向列的开源数据库, 该技术来源于 Chang etal 所撰写的 Google 论文 “ Bigtable:一个结构化数据的分布式存储系统”。就像 Bigtable 利用了 Google 文件系统( File System)所提供的分布式数据存储一样, HBase 在 Hadoop 之上提供了类似于Bigtable 的能力。 HBase 是 Apache 的 Hadoop 项目的子项目。 HBase 不同
14、于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。另一个不同的是 HBase基于列的而不是基于行的模式。Hivehive 是基于 Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的sql 查询功能,可以将 sql 语句转换为 MapReduce任务进行运行。其优点是学习成本低, 可以通过类SQL语句快速实现简单的 MapReduce统计,不必开发专门的 MapReduce应用,十分适合数据仓库的统计分析。StormStorm 为分布式实时计算提供了一组通用原语,可被用于 “流处理 ”之中,实时处理消息并更新数据库。这是管理队列及工作者集群的另一种方
15、式。Storm也可被用于“连续计算”( continuous computation ),对数据流做连续查询,在计算时就将结果以流的形式输出给用户。它还可被用于“分布式RPC”,以并行的方式运行昂贵的运算。FlumeFlume 是 Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,7Flume 支持在日志系统中定制各类数据发送方,用于收集数据;同时, Flume 提供对数据进行简单处理,并写到各种数据接受方(可定制)的能力。ETLETL 是 数据 抽取 ( Extract )、 清洗 ( Cleaning )、转 换( Transform )、装载( Loa
16、d )的过程。是构建数据仓库的重要一环,用户从数据源抽取出所需的数据,经过数据清洗,最终按照预先定义好的数据仓库模型,将数据加载到数据仓库中去。KettleKettle 是一款国外开源的ETL 工具,纯 java 编写,可以在Window 、 Linux 、Unix上运行,绿色无需安装,数据抽取高效稳定。MySQLMySQL 是 一 个开 放 源码 的小型 关 联式 数 据库管 理 系统,开发者为瑞典MySQL AB 公司。 目前 MySQL被广泛地应用在 Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选
17、择了MySQL 作为网站数据库。MongoDBMongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似json 的 bson 格式,因此可以存储比较复杂的数据类型。Mongo 最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。1.3 对象及范围1、开发人员、 DBA 、测试人员;2、研发主管领导、产品人员;81.4 参考资料1、大数据处理体系架构2、 HBase The Definitive Guide 3、4
18、、 Programming_Hive 2. 系统总体设计2.1 需求规定2.2 运行环境操作系统: RedHad Enterprise 5.5软件环境: Java 1.6Kettle 4.3MySQL 5.1硬件环境: 8 核 16G内存 PC服务器 8 台2.3 基本设计思路和处理流程1、按照数据分析的实时性,分为在线数据分析和离线数据分析。2、在线数据分析:往往要求系统在数秒内返回上亿行数据的分析,从而才能达到不影响用户体验的目的。3、离线数据分析:对大多数反馈时间要求不高的应用,比如离线统计分析、机器学习等,应采用离线分析的方式,通过数据采集工具将日志数据导入专门的分析平台进行分析。94
19、、系统主要以离线数据分析为主,采用目前在互联网业界流行的hadoop 体系结构对大批量的数据进行运算,采用hadoop 集群的方式对大数据进行运算。5、数据运算平台以调度为主线,作为运算平台的核心控制系统,对运算平台的各个环节进行控制, 且对运算过程中的步骤依赖关系进行控制,同时对各个环节进行监控,通过监控异常报警来提高系统的稳定性和异常响应速度。2.4 系统结构大数据运算系统架构图数据应用数据服务数据提取,报表展现,统计、分析数据存储,数据接口MongoDB、 MySql统计分析在线计算:离线计算:Storm流计算框架Hadoop(Map/Reduce 、 Hive 、 pig)日志存储Ha
20、doop(HDFS、HBASE)日志采集日志采集系统Flume10大数据平台系统功能图监控系统个性化推荐数据应用应用模版PigHiveMahout离MapReduce驱动线MapRedcueHBaseZooke计eperHDFS驱动算调Hive 驱动HDFS驱度HBase驱动动系代Storm 驱动统理Sqoop驱动Kafka 驱动实StormZooke.时计eperKafka算SqoopFlaumeKettle源数据系统管理系统功能图逻辑说明1) 生产系统的源数据通过sqoop, flume , Kettle 等获取后保存在Kafka 消息队列中或者保存到 hadoop 的 hdfs 系统中。
21、2) 调度系统负责自身的控制功能,通过读取调度控制的配置信息调用驱动代理程序处理相关的运算功能。3) 驱动代理程序负责所有基于运算平台的相关组件的驱动任务,读取调度系统传递过来的模版信息,读取模版信息,并执行相应的驱动操作。4) 系统管理功能部分完成系统相关配置,管理等相关信息的维护操作。5) 监控系统对整个系统的运行状况进行监控,由各个业务子系统按照监控系统的要求实现相应的监控功能。11大数据平台功能结构图业务个性化推荐数据服务系统管理应用用户管理权限管理服务器管理资源管理系统扫描任务执行步骤依赖检查异常报警集群管理组件管理调度任务管理模版管理Hive 驱动MapReuce驱动HBase驱动
22、Stome驱动系统配置驱动业务配置监控配置代理Sqoop驱动HDFS驱动Kafka 驱动.参数配置规则配置系统监控模版业务模版计算模版功能模版服务器监控资源监控管理任务监控功能监控数据监控异常监控运PigHiveMahout程序运行统计行Storm环实异常统计运行统计离MapRedcueHBase境Zooke时线Kakfa超时统计执行监控计eper计HDFS算Flume算元数据管理调度元数据监控元数据SqoopKettle计算元数据文件元数据大数据平台功能结构图说明:1)大数据平台功能结构主要划分为计算平台,应用平台,系统管理以及监控,配置等相关应用功能。2)计算平台分为基础运算部分,模版管理
23、部分,驱动代理部分,系统调度部分。3)计算平台分为离线计算与实时计算两种形式。4)计算平台基于模版的功能开发,实际应用中做到模版的热插拔,对于功能需求只需要开发相应的模版,并部署上计算平台即可应用。5)驱动代理程序管理所有的基于大数据运算的相关组件的代理功能,对外提供给调度系统应用,调用模版设置的相应的类型,进行相应类型的驱动操作。6)调度系统只关心其自身的系统控制能力,不参与具体的业务以及计算功能组件的调用。2.5 尚未解决的问题无3. 模块 / 功能设计123.1调度模块设计思路一:调度模块实现功能思路定时提取任务判断依赖关系执行任务有步骤执行是调用驱动代理初始化模版否执行具体应用标识任务
24、完成二:流程说明以及注意事项:1、 任务与步骤采用配置表的方式保存在 mysql 中,调度程序定时扫描任务表,判断是否有启动的任务,如果有启动的任务,则启动任务。2、 调度任务需要判断任务中步骤之间的依赖关系,根据依赖关系判断是否可以执行下一步的执行步骤。3、 一个任务中可以包含多个步骤,每个步骤为一个具体的任务,步骤与步骤直接存在依赖关系。4、 对于具体的执行任务将由驱动代理自动完成。13流程图定时扫描查询任务列表生成数据日期检查任务依赖获取符合条件的任务获取任务 (1.N)查询步骤列表获取步骤 (1.N)关联模板实例查询实例参数初始化参数判断模板类型kettlehadoop写入任务日志表处
25、理逻辑1、调度任务启动后扫描任务配置表,看任务配置表是否存在需要处理的任务信息,如果不存在需要处理的任务信息,则线程执行休眠,否则执行步骤2;2、生成数据日期,并检查任务依赖关系,如果依赖关系未执行完,则现成等待操作,等待依赖的任务执行完成,如果依赖关系都执行完,则获取符合条件的任务,执行步骤3:143、读取任务信息表,获取任务信息,根据任务信息读取步骤信息,执行相应的步骤操作,执行步骤4;4、根据步骤信息的配置获取需要执行的相应的模版信息,调用驱动代理程序执行相应的功能,执行步骤5;5、驱动代理程序执行模版初始化,初始化完成后获取相应的参数数据,并根据模版类型选择具体的驱动程序,执行相应的操
26、作。6、判断该任务的下步骤是否执行完成,如果未执行完成,则执行步骤3,继续下一个步骤的执行,否则执行步骤7;7、写步骤完成信息表,判断是否还存在要执行的任务,如果没有等待,存在需要执行的任务则执行步骤3.3.2驱动代理模块设计思路一:计算驱动模块实现功能思路读取配置信息删除数据文件加载数据文件执行计算操作导出结果文件二:流程说明以及注意事项:1、计算平台的驱动提供针对Hive , MapReduce, Hbase 等相关的驱动应用。2、基于业务模版的设置操作,调度执行业务模版,不关心模版具体业务形态。3、一个驱动应用包含四个步骤:1)删除不用的数据;2)加载数据;3)运算; 4)导出结果文件。4、提供监控需要的相应信息。155、对于文件的操作,会涉及到多个文件或者目录操作,多个文件或者目录以逗号分隔,对文件操作中涉及到一些按照小时,天,月份的文件命名的操作,配置中以特殊字符进行替换。16流程图调度启动查询模版信息模版不才存在否存在模版是结束初始化模版删除临时文件删除 hive 表数
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年智能制造业的技术前沿考试试卷及答案
- 健康与社会工作专业考试题及答案2025年
- 2025年信息经济学基本理论考试卷及答案
- 2025年文化创意产品开发与管理考试试题及答案
- 2025年师范生教育理论考试试卷及答案
- 2025年石油工程师考试试卷及答案
- 2025年民族文化研究考试试卷及答案
- 2025年农村教育与发展政策分析考试试题及答案
- 2025年技术经济与管理研究生入学考试试卷及答案
- 2025年口腔医学专业研究生入学考试题及答案
- 修脚师劳动合同(新标准版)6篇
- TCHSA-012-2023-儿童口腔疾病治疗中静脉镇静技术规范
- 三方合伙开店协议合同
- 2025年新疆中考第一次模拟化学试题(含答案)
- 2025年危险品水路运输从业资格考试复习题库-上(单选题)
- 2025年-河北建筑安全员B证考试题库附答案
- 《2024年版煤矿安全生产化标准化管理体系基本要求及评分方法》
- 2025-2030中国床垫行业市场深度调研及投资前与投资策略景研究报告
- 码头安全隐患
- 《FTA分析案例》课件 - 深入解析自由贸易协定对经济发展的影响
- 深圳医药产业政策研究-深度研究
评论
0/150
提交评论