基于Hadoop生态的企业数据中心考虑

一.面临的问题
如今的大数据已经炒得妇孺皆知但实际上真正在企业实践中能够发挥其优点并从中获益的很少。大数据的挑战与机遇并存,大数据的发展将从预期膨胀、炒作阶段转入将逐渐理性发展、落地应用阶段,不可否认大数据是必然趋势,未来的大数据发展依然存在诸多挑战。
目前大数据的发展依然存在诸多挑战,如:
1.各业务部门没有清晰的大数据需求导致数据资产流失;
2.内部数据孤岛严重,数据价值不能充分挖掘;
3.数据可用性低,质量差,利用效率低;
4.数据管理技术和架构无法满足大数据要求;
5.没有明确的大数据构想;
大数据现阶段仍在起步阶段,存在诸多挑战,但未来的发展依然非常乐观。大数据的发展呈现的趋势也逐渐清晰:
1.数据资源化,将成为企业主要资产;
2.将全面落地于企业业务各个方面;
3.与传统数据分析融合,定制分析方案;
4.数据安全的重要性更加明显;
二. 为何选择Hadoop生态
1.成本低;
2.生态圈成熟,社区活跃;
3.能解决大多数大数据需求。

三.实施步骤
1.讨论确定数据分析的应用方向
A.数据支持的业务优化(如:根据用户行为热点调整用户界面)
B.独立数据分析应用(如:投资组合推荐TOP100)
C.大数据精准运营(如:用户流失预警模型)
D.决策支持(如:用户来源细分)
E.。。。
2.统计各产品现有统计需求
明确当前公司的数据分析环境。。。
3.召集各部门产品负责人讨论,协助明确大数据需求
明确大数据能做什么不能做什么
4.确定分析数据源
A.业务数据
B.SDK收集数据
C.日志文件
D.网络爬虫
5.选择确定技术方案
以Hadoop为基础,利用Hive/HBase/Sqoop/Flume/MR/Mahout/Spark/Storm/MQ/Mysql/ 技术整体实现
6.设计实施技术架构
A.数据收集(ETL)
以Sqoop/MR 从业务数据库拉取数据到数据中心(定期)
SDK收集数据直接推送至数据消息队列随后持久化到数据中心(统一开发各平台数据收集SDK,保证收集数据一致性)
爬虫数据保存至数据中心()
各种数据融合消除数据孤岛()
B.数据中心设计
数据中心以HDFS为基础
Hive构建历史数据仓库
Hive数据存储设计:
数据只添加不更新/删除,数据以大表的形式存储? Hive数据仓库设计?
HBase存储近期数据满足准实时分析需求
分析数据以MySQL形式形成满足不同业务部需求的数据集市
C.数据分析处理
以自定义Map/Reduce作为主要数据处理工具,对数据仓库数据进行分析处理,结果推送至MySQL,形成数据集市。
以Spark/Storm 流式计算处理近实时分析需求
以Mahout作为主要数据挖掘分析工具,对数据进行进一步的分析利用
D.结果数据存储(数据集市)
以MySQL为数据库构建数据集市,面向不同业务方向提供不同主题的数据。各集市数据规模控制在千万级以内
E.数据深度处理
基于Mahout/?实现数据的深度挖掘。
F.。。。
7.开发具体分析
整体架构:

大数据的能力可以分为四层:
第一层是骨骼,硬件和存储的计算能力.
第二层是血液,数据建模和管理能力,包括数据如何进行采集、如何进行建模,以及如何最快的计算和最高效的存储等等;
第三层是思想,业务理解和算法能力,很多算法工程师、科学家用大数据的时候可以作出很多关于用户的标签画像,其实这一部分正是他们对于业务的理解和算法能力的体现,但是仅仅这样还不够,大数据应用过 程中需要一个系统、体系完整的解决方案。
第四层是大脑,告诉你今天的数据表现是什么样,问题是什么,未来你可以做一些什么,做完之后的效果会是怎么样,因为这个效果可以 做什么样的改善,这本身就是一个非常复杂完整的体系,产品设计和服务能力,大脑进行产品的设计以及很好的服务能力。 
这四者结合起来,分别表示着大数据的基础建设能力和数据产品能力。  
大数据能力背后意味着非常巨大的挑战,大数据挑战本身也是一个非常完整的闭环。  

基础建设方面,包括如何进行很好的数据采 集,如果你的数据只有几百个T或1PB左右,采集起来不那么难,如果面临几百个PB的数据如何采集,在无线时代已经到来的时候,无线的采集应该如何做?采 集之后非常重要的是计算,如果把数据采集、计算都做得很好,可是上面的应用根本没有很好的方法,快速和有效拿到这些数据来使用,其实前面所有的工作都是白费的。  

关于采集、计算、服务是大数据基础建设方面的挑战,所有这些工作最终都要在上面浮现出来,就是我们所理解的数据产品,我们希望数据产品给到大家真的不只是一个报表,而是希望我们真的用数据产品去理解 商业,理解它的目标,并且把数据不是枯燥的以一个表格的方式呈现给用户,而是告诉你这个数据的含义是什么,如何解读它,在这个过程中去追求数据价值的最大化。关于基础建设和数据产品价值两大块挑战的关键词就是质量、效率和价值。  

关于大数据的能力看起来非常具有想象空间,挑战也是巨大的,这是非常复杂的事情,复杂的事情一定要用复杂的方法去解决,所以我们需要有简单、清晰、明确的顶层设计。过去两年,阿里巴巴大数据实战过程 中的一个顶层设计,下面我们做好数据的基础建设,包括数据采集计算以及服务,上面我们面临的客户数据方面首先是阿里自己的小二,要有能力用好数据做数据化营运,第二块是我们非常紧密的伙伴,即商家。我们在做这件事情顶层设计时,同步考虑阿里的小二和商家如何同时用好数据。数据基础建设方面做好one data和one service,数据上面一块做好对内和对外能够共享的one Platform。解决的是关于大数据本身背后的挑战,基础建设和价值两块的挑战。