最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

Hadoop大数据技术简介

来源:动视网 责编:小OO 时间:2025-09-28 19:25:28
文档

Hadoop大数据技术简介

Hadoop大数据技术简介1传统数据库瓶颈传统数据库具有不错的性能,高稳定性,使用简单,功能强大,在过去的40年中很好的满足了用户对数据存储的需求,积累了大量的成功案例。但是随着数据量的增长,传统数据库在应付很多问题时已经开始力不从心,暴露了很多难以克服的问题,例如:1)HighPerformance–数据高并发读写例如,web2.0网站要根据用户个性化信息来实时生成动态页面和提供动态信息,所以基本上无法使用动态页面静态化技术,因此数据库并发负载非常高,往往要达到每秒上万次读写请求。关系数据库
推荐度:
导读Hadoop大数据技术简介1传统数据库瓶颈传统数据库具有不错的性能,高稳定性,使用简单,功能强大,在过去的40年中很好的满足了用户对数据存储的需求,积累了大量的成功案例。但是随着数据量的增长,传统数据库在应付很多问题时已经开始力不从心,暴露了很多难以克服的问题,例如:1)HighPerformance–数据高并发读写例如,web2.0网站要根据用户个性化信息来实时生成动态页面和提供动态信息,所以基本上无法使用动态页面静态化技术,因此数据库并发负载非常高,往往要达到每秒上万次读写请求。关系数据库
Hadoop大数据技术简介

1传统数据库瓶颈

传统数据库具有不错的性能,高稳定性,使用简单,功能强大,在过去的40年中很好的满足了用户对数据存储的需求,积累了大量的成功案例。但是随着数据量的增长,传统数据库在应付很多问题时已经开始力不从心,暴露了很多难以克服的问题,例如:

1)High Performance –数据高并发读写

例如,web2.0网站要根据用户个性化信息来实时生成动态页面和提供动态信息,所以基本上无法使用动态页面静态化技术,因此数据库并发负载非常高,往往要达到每秒上万次读写请求。关系数据库应付上万次SQL查询还勉强顶得住,但是应付上万次SQL写数据请求,硬盘IO就已经无法承受了。

2)Huge storage –海量数据的高效率存储和访问

对于大型的SNS网站,每天用户产生海量的用户动态,某些大型web网站的用户登录系统的记录往往能够达到上亿条,对于关系数据库来说,在上亿条记录的表里面进行SQL查询,效率是极其低下乃至不可忍受的。

3)High Scalabilty&& High Availabilty数据库高可扩展性和高可用性

在基于web的架构当中,数据库是最难进行横向扩展的,当一个应用系统的用户量和访问量与日俱增的时候,数据库却没有办法像web server和app server那样简单的通过添加更多的硬件和服务节点来扩展性能和负载能力。对于很多需要提供24小时不间断服务的网站来说,对数据库系统进行升级和扩展是非常痛苦的事情,往往需要停机维护和数据迁移,除了上述列举的3个问题,传统数据库本身的部分优势却在大数据情况下无用武之地。例如:

4)关系数据库事务一致性需求

很多实时系统并不要求严格的数据库事务,对读一致性要求很低,甚至有些场合对写一致性的要求也不高。

5)复杂SQL查询,多表关联查询

任何大数据量的系统,都非常忌讳多个大表的关联查询,以及复杂的数据分析类型的复杂SQL报表查询。往往更多的是单表的主键查询。

因此,传统数据库在大数据环境下,并不是那么合适。

2Hadoop大数据技术简介

目前大数据存储及处理公认最为主流的商用化技术为Hadoop。Hadoop是一个分布式系统基础架构,由Apache基金会开发。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力高速运算和存储。简单地说来,Hadoop是一个可以更容易开发和运行处理大规模数据的软件平台。该平台使用的是面向对象编程语言Java实现的,具有良好的可移植性。 

Hadoop 由 Apache Software Foundation 公司于 2005 年秋天作为 Lucene的子  hadoop logo项目 Nutch的一部分正式引入。它受到最先由 Google Lab 开发的 Map/Reduce 和 Google File System(GFS) 的启发。2006 年 3 月份,Map/Reduce 和 Nutch Distributed File System (NDFS) 分别被纳入称为 Hadoop 的项目中。

2.1Hadoop的关键技术

图2:Hadoop技术框图

1、HDFS

一个分布式文件系统,隐藏下层负载均衡,冗余复制等细节,对上层程序提供一个统一的文件系统API接口。HDFS针对海量数据特点做了特别优化,包括:超大文件的访问,读操作比例远超过写操作,PC机极易发生故障造成节点失效等。HDFS把文件分成MB的块,分布在集群的机器上,使用Linux的文件系统存放。同时每块文件至少有3份以上的冗余。中心是一个NameNode节点,根据文件索引,找寻文件块。

2、MapReduce

大多数分布式运算可以抽象为MapReduce操作。Map是把输入Input分解成中间的Key/Value对,Reduce把Key/Value合成最终输出Output。这两个函数由程序员提供给系统,下层设施把Map和Reduce操作分布在集群上运行,并把结果存储在HDFS上。

3、HBase

一个分布式的、按列存储的、表结构的实时分布式数据库。它可以提供大数据量结构化和非结构化数据的高速读写操作,为高速在线数据服务而设计。

4、Hive

基于Hadoop的大数据分布式数据仓库引擎。它可以将数据存放在分布式文件系统或分布式数据库中,并使用SQL语言进行海量数据统计、查询和分析操作。

5、Zookeeper

针对大型分布式系统的可靠协调系统,提供的功能包括:配置维护、名字服务、分布式同步、组服务等。它可以维护系统配置、群组用户和命名等信息。

2.2Hadoop的一些特点

1、扩容能力(Scalable):

能可靠地(reliably)存储和处理千兆字节(PB)数据。在不保证低延时的前提下,具有相当大的吞吐量,非常适合海量数据的运算。

2、成本低(Economical):

可以通过普通机器组成的服务器群来分发以及处理数据。这些服务器群总计可达数千个节点。而且每个节点都是运行在开源操作系统Linux上面的。

3、高效率(Efficient):

通过分发数据,hadoop可以在数据所在的节点上并行地(parallel)处理它们,这使得处理非常的快速。

4、可靠性(Reliable):

hadoop能自动地维护数据的多份复制,并且在任务失败后能自动地重新部署(redeploy)计算任务。

2.3Hadoop的商用化

Hadoop发展至今已经从一个主要由极客和互联网公司使用的系统变为一个被企业和广泛使用的海量数据平台。在企业据IDC的预测,全球大数据市场2015年将达170亿美元规模,市场发展前景很大。而所谓新一代的架构和技术,Hadoop的HDFS文件系统和MapReduce框架,因为有利于并行分布处理 “大数据”而受青睐。然而,开源的Hadoop在安装和部署方面存在难题,因此催生了商业化。很多厂商推出了完整的Hadoop发行版,提供给企业大数据应用一个成熟的平台。Hadoop商业化版本基于开源软件Apache Hadoop框架进行优化、整合和更正错误,增加了大量企业IT系统所需要的安装、部署、管理等功能,在Hadoop上的改进和功能增强为用户提供了一个高性能、高稳定性和可管理的大数据应用实施平台,并提供全面的专业支持。

3Hadoop在国内外的应用案例

●淘宝

淘宝有当下中国最大规模的单Master节点Hadoop集群。淘宝Hadoop集群拥有2860个节点,清一色基于英特尔处理器的x86服务器,其总存储容量50PB,实际使用容量超过40PB,为淘宝网的日常运营做出了关键支撑。

●优酷

优酷作为一家大型视频网站,拥有海量播放流畅的视频,也累积了海量数据。仅运营数据,每天收集到的网站各类访问日志总量已经达到TB级,经分析及压缩处理后留存下来的历史运营数据已达数百TB,很快将会达到PB级,5年后数据量将会达到几十PB级。优酷搭建了一个1000个Slot的Hadoop集群,并还在继续扩展。考虑到维护成本及扩展性,未来会将全部业务迁移到Hadoop平台上,以降低维护成本。

●中国联通

中国联通目前运营着世界上最大的CDMA网络,流量运营是中国联通一个重要特点。中国联通采用普通PC服务器来部署Hadoop系统,现在有178个数据存储节点,集群的监控节点有一台,入库服务节点24台,Web查询应用服务节点20台。目前每天入库条数超过42亿条用户上网数据记录,每天入库数据量超过1.2T,一个月可能超过1200亿条的数据。在这种情况下,在1200亿条数据当中检索一个用户数据会达到不超过一秒。在31个省上线之后,每个月用户上网记录超过1万亿条数据,保存6个月用户数据,原始数据量会超过6万亿条,Hadoop系统完全能够满足这个数据量的处理要求。

●eBay

eBay是全球最大的拍卖网站,8千万名用户每天产生的数据量就达到50TB,相当于五天就增加了1座美国国会图书馆的数据量。这些数据报括了结构化的数据,和非结构化的数据如照片、影片、电子邮件、用户的网站浏览Log记录等。eBay正是用Hadoop来解决同时要分析大量结构化数据和非结构化的难题。

●沃尔玛公司

全球最大连锁超市沃尔玛公司利用Hadoop来分析顾客搜寻商品的行为,以及用户透过搜索引擎寻找到Wal-Mart网站的关键词,利用这些关键词的分析结果发掘顾客需求,以规画下一季商品的促销策略,甚至打算分析顾客在、Twitter等社交网站上对商品的讨论,期望能比竞争对手提前一步发现顾客需求。

4Hadoop大数据技术优势

4.1弹性扩展

多年来,数据库一直依赖于向上扩展-随着数据库负载的增加购买更大的数据库服务器―而不是向外扩展-随着负载的增加将数据库分不到多个不同的主机上。然而,随着每秒事务数与可用性需求的提高,以及数据库往云或虚拟环境的迁移,向外扩展到廉价硬件的经济优势越来越难以抵挡。RDBMS或许比较难以在廉价的集群上进行向外扩展,但是,HBase数据库的新品从设计之初就是为了利用新节点的优势进行透明扩展,他们通常在设计时就考虑使用低成本的廉价硬件。

4.2数据量,高性能

在过去10年,存储的数据的规模出现了极大的增长,传统数据库的容量也在增长以匹配这些数据的增长,但是,单个传统数据库可有效管理的数据规模让部分企业越来越难以忍受。今天,大规模数据量可以交由HBase系统来处理,超过目前最大的RDBMS可以管理的数据规模。

4.3低维护要求

这些年,虽然RDBMS的提供商宣称推出了很多的可管理性方面的改进,高端的RDBMS系统还是只能交由昂贵的、高度受训的DBA来进行维护。高端RDBMS系统从设计到安装以及后续的调优,都需要DBA们深度介入。

从理论上,通常,HBase数据库的最初的设计目标就是更少的管理介入:自动修复、数据分布以及更简单的数据模型,从而更少的管理与调优需求。

4.4经济性

HBase数据库通常使用普通服务器集群来管理暴增的数据与事务规模,而RDBMS倾向于依赖昂贵的专有服务器与存储系统。其结果是,HBase数据库的每GB数据或每秒事务数的成本要远远低于RDBMS,使得你可以以更低的价格来存储与处理更多的数据。

4.5灵活的数据模型

在大量的生产环境数据库中,变更管理是一个非常棘手的问题。哪怕是对数据模型的很小的变更,在RDBMS中也需要进行小心的管理,甚至还需要停机或降低服务级别。

在数据模型的这一点上,HBase数据库要宽松的多,或者完全不存在。HBase的键值存储(Key value Store)与文档数据库(Document Database)允许应用在一个数据单元中存入它想要的任何结构。即使是定义更加严格的基于BigTable的HBase数据库,通常也允许创建新的字段而不致带来麻烦。其结果是,应用的变更与数据库结构的变更不需要绑定在一个变更单元中进行管理。

5传统数据库与大数据技术比对

传统数据库,通常指的是关系型数据库(RDBMS),比较典型的如Oracle,Mysql,DB2等等。关系型数据库基于二维模式的表,由行列组成,强调ACID特性【指数据库事务正确执行的四个基本要素的缩写。包含:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)】。支持表的复杂管理查询,适合复杂逻辑关系,结构化数据。一般运行在高性能,价格高昂的服务器上,很难进行水平扩展。

Hadoop大数据解决方案提供了HBase分布式数据库,使用key-value对来存储数据,采用分布式存储结构,将数据拆分成小块分布在不同的机器上,当用户检索式,进行归纳。HBase强调数据批处理,快速处理,非常适合结构化数据和非结构化数据,而且数据与数据之间是一种松散的关系,低ACID。HBase的分布式架构,决定了其优秀的水平扩展能力,倡导普通PC server搭建大规模的分布式存储系统。

下表是关系数据库和HBase的对比。

表1 关系数据库和HBase的比较表

关系数据库HBase
数据大小GBPB
访问交互型和批处理批处理
更新多次读写一次写入多次读写
结构静态模式动态模式
集成度
伸缩性非线性线性
6关键技术总结

综上所述,随着数据容量的不断提升以及数据分析需求的提高,数据存储,处理变得越发复杂。传统数据库,在高性能并发,海量数据存取,可扩展性,可用性等方面都存在难以克服的问题,而相对的大数据解决方案,利用Hadoop分布式的存储计算架构,基于相对普通的PC server能够带来高性能,高并发,以及满足可扩展性,可用性等优势。可见,基于Hadoop的大数据解决方案在大数据的环境下,相对于传统数据库将是一个更好的选择。

文档

Hadoop大数据技术简介

Hadoop大数据技术简介1传统数据库瓶颈传统数据库具有不错的性能,高稳定性,使用简单,功能强大,在过去的40年中很好的满足了用户对数据存储的需求,积累了大量的成功案例。但是随着数据量的增长,传统数据库在应付很多问题时已经开始力不从心,暴露了很多难以克服的问题,例如:1)HighPerformance–数据高并发读写例如,web2.0网站要根据用户个性化信息来实时生成动态页面和提供动态信息,所以基本上无法使用动态页面静态化技术,因此数据库并发负载非常高,往往要达到每秒上万次读写请求。关系数据库
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top