转自:http://blog.sina.com.cn/s/blog_687194cd01017lgu.html
调研Hadoop颇久,就是想知道hadoop是什么?hadoop能做什么?怎么用hadoop?最主要是这三块,至于投入和风险也会随之出来(浓缩了我几十页的调研方案啊!!!)
- hadoop是什么?
Hadoop是一个开源的框架,可编写和运行分布式应用,处理大规模数据,是专为离线和大规模数据分析而设计的,并不适合那种对几个记录随机读写的在线事务处理模式。Hadoop=HDFS(文件系统,数据存储技术相关)+ Mapreduce(数据处理),Hadoop的数据来源可以是任何形式,在处理半结构化和非结构化数据上与关系型数据库相比有更好的性能,具有更灵活的处理能力,不管任何数据形式最终会转化为key/value,key/value是基本数据单元。用函数式变成Mapreduce代替SQL,SQL是查询语句,而Mapreduce则是使用脚本和代码,而对于适用于关系型数据库,习惯SQL的Hadoop有开源工具hive代替。 - hadoop能做什么?
hadoop擅长日志分析,facebook就用Hive来进行日志分析,2009年时facebook就有非编程人员的30%的人使用HiveQL进行数据分析;淘宝搜索中的自定义筛选也使用的Hive;利用Pig还可以做高级的数据处理,包括Twitter、LinkedIn 上用于发现您可能认识的人,可以实现类似Amazon.com的协同过滤的推荐效果。淘宝的商品推荐也是!在Yahoo!的40%的Hadoop作业是用pig运行的,包括垃圾邮件的识别和过滤,还有用户特征建模。(2012年8月25新更新,天猫的推荐系统是hive,少量尝试mahout!) - hadoop能为我司做什么?
零数据基础,零数据平台,一切起点都是0。
- 日志处理
- 用户细分特征建模
- 个性化广告推荐
- 智能仪器推荐
一切以增加企业的商业价值为核心目的、最终目的
4.怎么用hadoop?
- hadoop的应用的在我司还属于研发型项目,拟用日志的分析来走通一次流程,因为此阶段目前来说还不需要数据挖掘的专业人员,在数据分析阶段即可,而系统有数据库工程师,Mapreduce有java开发工程师,而分析由我本人介入,而可视化暂时可由前端JS实现,本来我的调研方案,针对大数据的解决方案是hadoop+R的,但是对于R我们是完全不懂,在公司还没有大量投入人员的情况下,只有日志分析目前看来是最容易出成果的,也是可以通过较少人员能出一定成果的,所以选取了这个方向作为试点。
首先要进行数据的存储,一是要协调上游的服务厂商,关于日志的抓取,二是hadoop系统的搭建,目前已经在紧张的筹备中了。