项目计划书version10Word文件下载.docx
《项目计划书version10Word文件下载.docx》由会员分享,可在线阅读,更多相关《项目计划书version10Word文件下载.docx(11页珍藏版)》请在冰豆网上搜索。
New
项目前期准备、技术路线以、人员安排及总体规划
内容范围
本文档的目的是为了健康大数据项目。
适用的对象
本文档仅适用健康大数据项目。
1术语表2
2项目架构设计3
2.1总体架构3
2.2阶段目标分解4
3技术路线5
3.12.离线计算Hadoop5
3.2Hadoop家族学习路线图7
1术语表
对本文档中所使用的各种术语进行说明。
如果一些术语在需求规格说明书中已经说明过了,此处不用再重复,可以指引读者参考需求说明。
2项目架构设计
2.1总体架构
2.2阶段目标分解
了解开发技术-开发应用-通过应用开发总结平台功能-完成平台搭建及工具开发-开发示范应用
时间范围
技术目标
应用目标
2014.11-2015.3
1.搭建基础运行环境
2.研究大数据处理技术
3.调试demo程序
1.调研应用需求、业务模式
2.系统功能初步设计
2015.3-2015.7
2.设计应用场景
3.开发典型应用
1.总结开发技术
2.完善功能设计
2015.8-2015.12
1.平台关键功能技术攻关
1.总结应用开发过程
2.凝聚平台模块功能
3.确定技术难点
2016.1-2016.9
1.平台功能模块开发
4.调研应用需求、业务模式
5.调研荣科示范模式,完善设计
2016.9-2016-12
2.平台功能模块开发
3.基于平台开发应用
4.平台模块完善
5.调研应用需求、业务模式
2017.1-2017.12
6.完善功能
7.开发示范应用
8.协助应用示范
9.
3技术路线
目前大数据处理的基本路线较为清晰,两类计算框架
1.在线计算(strom/spark)
2.离线计算(hadoop/MapReduce)
3.12.离线计算Hadoop
Hadoop家族产品
∙Apache
Hadoop:
是Apache开源组织的一个分布式计算开源框架,提供了一个分布式文件系统子项目(HDFS)和支持MapReduce分布式计算的软件架构。
Hive:
是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析。
Pig:
是一个基于Hadoop的大规模数据分析工具,它提供的SQL-LIKE语言叫PigLatin,该语言的编译器会把类SQL的数据分析请求转换为一系列经过优化处理的MapReduce运算。
∙ApacheHBase:
是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,利用HBase技术可在廉价PCServer上搭建起大规模结构化存储集群。
∙ApacheSqoop:
是一个用来将Hadoop和关系型数据库中的数据相互转移的工具,可以将一个关系型数据库(MySQL,Oracle,Postgres等)中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。
∙ApacheZookeeper:
是一个为分布式应用所设计的分布的、开源的协调服务,它主要是用来解决分布式应用中经常遇到的一些数据管理问题,简化分布式应用协调及其管理的难度,提供高性能的分布式服务
Mahout:
是基于Hadoop的机器学习和数据挖掘的一个分布式框架。
Mahout用MapReduce实现了部分数据挖掘算法,解决了并行挖掘的问题。
Cassandra:
是一套开源分布式NoSQL数据库系统。
它最初由Facebook开发,用于储存简单格式数据,集GoogleBigTable的数据模型与AmazonDynamo的完全分布式的架构于一身
Avro:
是一个数据序列化系统,设计用于支持数据密集型,大批量数据交换的应用。
Avro是新的数据序列化格式与传输工具,将逐步取代Hadoop原有的IPC机制
Ambari:
是一种基于Web的工具,支持Hadoop集群的供应、管理和监控。
Chukwa:
是一个开源的用于监控大型分布式系统的数据收集系统,它可以将各种各样类型的数据收集成适合Hadoop处理的文件保存在HDFS中供Hadoop进行各种MapReduce操作。
Hama:
是一个基于HDFS的BSP(BulkSynchronousParallel)并行计算框架,Hama可用于包括图、矩阵和网络算法在内的大规模、大数据计算。
∙ApacheFlume:
是一个分布的、可靠的、高可用的海量日志聚合的系统,可用于日志数据收集,日志数据处理,日志数据传输。
Giraph:
是一个可伸缩的分布式迭代图处理系统,基于Hadoop平台,灵感来自BSP(bulksynchronousparallel)和Google的Pregel。
Oozie:
是一个工作流引擎服务器,用于管理和协调运行在Hadoop平台上(HDFS、Pig和MapReduce)的任务。
Crunch:
是基于Google的FlumeJava库编写的Java库,用于创建MapReduce程序。
与Hive,Pig类似,Crunch提供了用于实现如连接数据、执行聚合和排序记录等常见任务的模式库
Whirr:
是一套运行于云服务的类库(包括Hadoop),可提供高度的互补性。
Whirr学支持AmazonEC2和Rackspace的服务。
Bigtop:
是一个对Hadoop及其周边生态进行打包,分发和测试的工具。
HCatalog:
是基于Hadoop的数据表和存储管理,实现中央的元数据和模式管理,跨越Hadoop和RDBMS,利用Pig和Hive提供关系视图。
∙Cloudera
Hue:
是一个基于WEB的监控和管理系统,实现对HDFS,MapReduce/YARN,HBase,Hive,Pig的web化操作和管理。
3.2Hadoop家族学习路线图
下面我将分别介绍各个产品的安装和使用,以我经验总结我的学习路线。
Hadoop
∙Hadoop学习路线图
∙Yarn学习路线图
∙用Maven构建Hadoop项目
∙Hadoop历史版本安装
∙Hadoop编程调用HDFS
∙海量Web日志分析用Hadoop提取KPI统计指标
∙用Hadoop构建电影推荐系统
∙创建Hadoop母体虚拟机
∙克隆虚拟机增加Hadoop节点
∙R语言为Hadoop注入统计血脉
∙RHadoop实践系列之一Hadoop环境搭建
Hive
∙Hive学习路线图
∙Hive安装及使用攻略
∙Hive导入10G数据的测试
∙R利剑NoSQL系列文章之Hive
∙用RHive从历史数据中提取逆回购信息
Pig
∙Pig学习路线图
Zookeeper
∙Zookeeper学习路线图
∙ZooKeeper伪分步式集群安装及使用
∙ZooKeeper实现分布式队列Queue
∙ZooKeeper实现分布式FIFO队列
HBase
∙HBase学习路线图
∙RHadoop实践系列之四
rhbase安装与使用
Mahout
∙Mahout学习路线图
∙用R解析Mahout用户推荐协同过滤算法(UserCF)
∙RHadoop实践系列之三R实现MapReduce的协同过滤算法
∙用Maven构建Mahout项目
∙Mahout推荐算法API详解
∙从源代码剖析Mahout推荐引擎
∙Mahout分步式程序开发基于物品的协同过滤ItemCF
∙Mahout分步式程序开发聚类Kmeans
∙用Mahout构建职位推荐引擎
Sqoop
∙Sqoop学习路线图
Cassandra
∙Cassandra学习路线图
∙Cassandra单集群实验2个节点
∙R利剑NoSQL系列文章之Cassandra
参考资料
1.《Hadoop实战》作者陆嘉恒
2.《Hadoop权威指南》作者:
(美)TomWhite
3.《Hadoop云计算实战》作者:
周品
4.《Hadoop技术内幕:
深入解析MapReduce架构设计与实现原理》作者:
董西成
5.《Hadoop实战(揭开云计算的神秘面纱海量数据分布式处理框架)》作者:
(美)ChuckLam
6.《Hadoop技术详解》作者:
(美)萨默|译者:
刘敏//麦耀锋//李冀蕾
Hive参考书:
1.《Hive编程指南》作者:
卡普廖洛(EdwardCapriolo)/万普勒(DeanWampler)/卢森格林(JasonRutherglen)
2《Hive编程》
Spark参考书:
1.《Spark快速数据处理[FastDataProcessingwithSpark]》作者:
[美]HoldenKarau
2.《Netty权威指南》作者:
李林锋
3.1<
<
.Mahoutinaction>
>
SeanOwen,RobinAnil,TedDunning,EllenFriedman著
4.2.<
Mahout算法解析与案例实战>
樊哲著
5.3.<
Mahout实践指南>
[美]PieroGiacomelli著;
靳小波译
6.
7.Pig
8.1.<
Pig编程指南>
[美]AlanGates著
Hbase
9.1.<
HBase实战>
10.[美]NickDimiduk,[美]AmandeepKhurana著;
谢磊译
11.2.<
HBase企业应用开发实战>
马延辉,孟鑫,李立松著
Storm
12.1.<
Storm实时数据处理>
[澳]安德森(QuintonAnderson)著;
卢誉声译
13.2.<
Storm实战:
构建大数据实时计算>
阿里巴巴集团数据平台事业部商家数据业务部编
14.3.<
从零开始学Storm>
赵必厦,程丽明著
网上文章
15.
1、M.TimJones的三篇文章:
用Hadoop进行分布式数据处理第1部分(入门):
16.
用Hadoop进行分布式数据处理第2部分(进阶):
17.
用Hadoop进行分布式数据处理第3部分(应用程序开发):
18.
2、“银河里的星星”的博客,其中的Google论文系列(就包括开创性论文“MapReduce:
简化大集群上的数据处理”)、搜索与分布式方面的介绍
[google论文三]MapReduce简化大集群上的数据处理:
19.
词频统计的Map/Reduce程序可以从这里找到:
20.
Google论文系列:
按照Hadoop各组件来串联:
21.
3、IBMdeveloperWorks上的其他Hadoop文章,在dw上用Hadoop关键字进行搜索,可以找到大量Hadoop的文章
下面一些需要看:
HadoopDistributed简介:
22.
使用ApachePig处理数据:
23.
4、《开源软件架构》中的介绍
(卷1第8章)HDFS--Hadoop分布式文件系统:
英文原文:
(其中的卷1第8章)
5、阿里集团数据平台的官方博客,包含大量Hadoop研究和应用经验
6、XX搜索研发部的官方博客,主要包含分布式系统(Hadoop)、搜索技术、数据挖掘、大型网站架构等方面的经验
24.
25.
7、董的博客,关于Hadoop、分布式系统的研究
26.
8、官方文档当然更不能少了,主要包括Hadoop集群的搭建,MapReduce的使用,HDFS架构方面的介绍
优先看稳定版:
最新版(包括下一代MapReduce即YARN的介绍):
9、caibinbupt的博客,Hadoop源代码分析系列
千与的专栏,Hadoop-0.20.0源码分析
10、spork的博客,其中关于Hadoop的系列
11、chinacloud的博客,其中的Hadoop架构、分布式系统设计方面的一些经验
12、beanmoon的博客,其中的Hadoop系列