想给中小型客户提供存储和灾备服务,研究一下hadoop。根据网上的一些文档,我已经成功搭建起了hadoop集群的环境,一个namenode节点 三个datanode几点 搭建好后,通过web也能正常访问。用wordcount.java上传数据到hdfs中也正常。但是我现在有点迷茫的是,这个已经搭建好的hadoop 环境到底能做些什么?如何使用呢?因为我事先了解的情况时hadoop只是一个底层的架构,要实现我所说的提供存储和灾备服务,是否还要进行二次开发?
1、hadoop的强项在于对海量数据的分析以及复杂的业务逻辑的处理。在做到这个工作之前,首先是需要将数据上传到HDFS中。如果你仅仅是只存不分析数据,我觉得还不如放在本地硬盘或是做一个磁盘阵列存放合适。完全没必要使用hadoop。
2、对于容灾和抗灾,最近我也在考虑这个,应为数据多了,存放的地方也大,所以必须要求数据的备份机制比较晚上。对于hadoop而言,默认的是 3份备份(可参看配置文件),个人觉得好算是完善,但是前提是你必须把你的网络拓扑图抽象的告诉hadoop集群(默认情况下,所有的集群都在一个水平位 置)。建议可以看看hadoop提供的机架感知的备份机制。感觉还可以以,不仅能提升数据分析速度,也能做到异地容灾。
HDFS的存储功能主要是2个。
一个是容错能力,默认有3个备份,各种资料上说提供海量存储能力,事实上我觉得存储容量并没有增加,磁盘硬件存储能力是多少,HDFS的总存储能力就是所有磁盘的能力相加。和普通的系统没有区别。
第二个是存储大型文件,比如一个文件100G,但假如你的廉价PC的硬盘只有80G,那么用普通系统是无法存储的,这时你需要去买更贵的磁盘来存储此类文件。而HDFS提供的就是将许多廉价存储器集合起来,能够存储大型文件的能力。
所以我个人觉得,如果要用HDFS来作存储演示,只能从容错和存储大型文件角度来展示功能。不然和普通FS没有明显区别。
hadoop的机架感知功能,通过配置可以通知集群机器的网络位置。如果不配置,默认所有的集群都在同一水平位置上
国内外著名的互联网公司使用hadoop都做了什么?谈HADOOP在大规模数据处理领域的具体应用。
------------
二月 18th, 2011
hadoop在淘宝应用很多,淘宝网是国内最大的Hadoop应用商之一。
2010年九月三号的数据显示:
淘宝集群的规模是
1.总容量为9.3PB,利用率77.09%。
2.共有1100台机器。
3.每天处理约18000道hadoop作业
4. 用户数474人,用户组38个
5.约18000道作业/天,扫描数据:约500TB/天用户数474人,用户组38个
其他:
HADOOP在阿里巴巴:
用于处理商业数据的排序,并将其应用于阿里巴巴的ISEARCH搜索引擎,垂直商业搜索引擎。
节点数: 15台机器的构成的服务器集群
服务器配置: 8核CPU,16G内存,1.4T硬盘容量。
HADOOP在百度:
HADOOP主要应用日志分析,同时使用它做一些网页数据库的数据挖掘工作。
节点数:10 - 500个节点。
周数据量: 3000TB
HADOOP在Facebook:
主要用于存储内部日志的拷贝,作为一个源用于处理数据挖掘和日志统计。
主要使用了2个集群:
一个由1100台节点组成的集群,包括8800核CPU(即每台机器8核),和12000TB的原始存储(即每台机器12T硬盘)
一个有300台节点组成的集群,包括2400核CPU(即每台机器8核),和3000TB的原始存储(即每台机器12T硬盘)
由此基础上开发了基于SQL语法的项目:HIVE
HADOOP在HULU
主要用于日志存储和分析
13台机器构成的集群 (8核PUC,单台机器:4TB硬盘)
基于HBASE数据库
HADOOP在TWITTER
使用HADOOP用于存储微博数据,日志文件和许多中间数据
使用基于HADOOP构件的Cloudera's CDH2系统,存储压缩后的数据文件(LZO格式)
HADOOP在雅虎:
主要用于支持广告系统及网页搜索
机器数:25000,CPU:8核
集群机器数: 4000 个节点 (2*4cpu boxes w 4*1TB disk & 16GB RAM)