1、大数据应用及其解决方案(完整版)目录1. 大数据概述1.1. 概述1.2. 大数据定义1.3. 大数据技术发展2. 大数据应用2.1.大数据应用阐述2.2. 大数据应用架构2.3.大数据行业应用3. 大数据解决方案3.1. 大数据技术组成3.2. 大数据处理过程3.3. 大数据处理的核心技术-Hadoop3.4. 大数据处理技术发展前景4. 基于基站大数据应用及案例4.1. 气象灾害应急短信发布平台4.2. 旅游客源分析1大数据概述1.1. 概述大数据,IT行业的又一次技术变革,大数据的浪潮汹涌而至,对国家治理、企业决策和个人生活都在产生深远的影响,并将成为云计算、物联网之后信息技术产业领域又
2、一重大创新变革。未来的十年将是一个“大数据”引领的智慧科技的时代、随着社交网络的逐渐成熟,移动带宽迅速提升、云计算、物联网应用更加丰富、更多的传感设备、移动终端接入到网络,由此而产生的数据及增长速度将比历史上的任何时期都要多、都要快。数据技术发展历史如图一所示:图一1.2. 大数据定义“大数据”是一个涵盖多种技术的概念,简单地说,是指无法在一定时间内用常规软件工具对其内容进行抓取、管理和处理的数据集合。IBM将“大数据”理念定义为4个V,即大量化(Volume)、多样化(Variety)、快速化(Velocity)及由此产生的价值(Value)。如图二;图二要理解大数据这一概念,首先要从大入手
3、,大是指数据规模,大数据一般指在10TB(1TB=1024GB)规模以上的数据量。大数据同过去的海量数据有所区别,其基本特征可以用4个V来总结(Vol-ume、Variety、Value和Veloc-ity),即体量大、多样性、价值密度低、速度快。 数据体量巨大。从TB级别,跃升到PB级别。 数据类型繁多,如前文提到的网络日志、视频、图片、地理位置信息,等等。 价值密度低。以视频为例,连续不间断监控过程中,可能有用的数据仅仅有一两秒。 处理速度快。1秒定律。最后这一点也是和传统的数据挖掘技术有着本质的不同。物联网、云计算、移动互联网、车联网、手机、平板电脑、PC以及遍布地球各个角落的各种各样的
4、传感器,无一不是数据来源或者承载的方式。大数据技术是指从各种各样类型的巨量数据中,快速获得有价值信息的技术。解决大数据问题的核心是大数据技术。目前所说的大数据不仅指数据本身的规模,也包括采集数据的工具、平台和数据分析系统。大数据研发目的是发展大数据技术并将其应用到相关领域,通过解决巨量数据处理问题促进其突破性发展。因此,大数据时代带来的挑战不仅体现在如何处理巨量数据从中获取有价值的信息,也体现在如何加强大数据技术研发,抢占时代发展的前沿。1.3. 大数据技术发展大数据技术描述了一种新一代技术和构架,用于以很经济的方式、以高速的捕获、发现和分析技术,从各种超大规模的数据中提取价值,而且未来急剧增
5、长的数据迫切需要寻求新的处理技术手段。如图三所示:图三在“大数据”(Big data)时代,通过互联网、社交网络、物联网,人们能够及时全面地获得大信息。同时,信息自身存在形式的变化与演进,也使得作为信息载体的数据以远超人们想象的速度迅速膨胀。云时代的到来使得数据创造的主体由企业逐渐转向个体,而个体所产生的绝大部分数据为图片、文档、视频等非结构化数据。信息化技术的普及使得企业更多的办公流程通过网络得以实现,由此产生的数据也以非结构化数据为主。预计到2012年,非结构化数据将达到互联网整个数据量的75%以上。用于提取智慧的“大数据”,往往是这些非结构化数据。传统的数据仓库系统、BI、链路挖掘等应用
6、对数据处理的时间要求往往以小时或天为单位。但“大数据”应用突出强调数据处理的实时性。在线个性化推荐、股票交易处理、实时路况信息等数据处理时间要求在分钟甚至秒级。全球技术研究和咨询公司Gartner将“大数据”技术列入2012年对众多公司和组织机构具有战略意义的十大技术与趋势之一,而其他领域的研究,如云计算、下一代分析、内存计算等也都与“大数据”的研究相辅相成。Gartner在其新兴技术成熟度曲线中将“大数据”技术视为转型技术,这意味着“大数据”技术将在未来35年内进入主流。而 “大数据”的多样性决定了数据采集来源的复杂性,从智能传感器到社交网络数据,从声音图片到在线交易数据,可能性是无穷无尽的
7、。选择正确的数据来源并进行交叉分析可以为企业创造最显著的利益。随着数据源的爆发式增长,数据的多样性成为“大数据”应用亟待解决的问题。例如如何实时地及通过各种数据库管理系统来安全地访问数据,如何通过优化存储策略,评估当前的数据存储技术并改进、加强数据存储能力,最大限度地利用现有的存储投资。从某种意义上说,数据将成为企业的核心资产。“大数据”不仅是一场技术变革,更是一场商业模式变革。在“大数据”概念提出之前,尽管互联网为传统企业提供了一个新的销售渠道,但总体来看,二者平行发展,鲜有交集。我们可以看到,无论是Google通过分析用户个人信息,根据用户偏好提供精准广告,还是Facebook将用户的线下
8、社会关系迁移在线上,构造一个半真实的实名帝国,但这些商业和消费模式仍不能脱离互联网,传统企业仍无法嫁接到互联网中。同时,传统企业通过传统的用户分析工具却很难获得大范围用户的真实需求。企业从大规模制造过渡到大规模定制,必须掌握用户的需求特点。在互联网时代,这些需求特征往往是在用户不经意的行为中透露出来的。通过对信息进行关联、参照、聚类、分类等方法分析,才能得到答案。“大数据”在互联网与传统企业间建立一个交集。它推动互联网企业融合进传统企业的供应链,并在传统企业种下互联网基因。传统企业与互联网企业的结合,网民和消费者的融合,必将引发消费模式、制造模式、管理模式的巨大变革。大数据正成为IT行业全新的
9、制高点,各企业和组织纷纷助推大数据的发展,相关技术呈现百花齐放局面,并在互联网应用领域崭露头角,具体情况如下图四所示:图四大数据将带来巨大的技术和商业机遇,大数据分析挖掘和利用将为企业带来巨大的商业价值,而随着应用数据规模急剧增加,传统计算面临严重挑战,大规模数据处理和行业应用需求日益增加和迫切出现越来越多的大规模数据处理应用需求,传统系统难以提供足够的存储和计算资源进行处理,云计算技术是最理想的解决方案。调查显示:目前,IT专业人员对云计算中诸多关键技术最为关心的是大规模数据并行处理技术大数据并行处理没有通用和现成的解决方案对于应用行业来说,云计算平台软件、虚拟化软件都不需要自己开发,但行业
10、的大规模数据处理应用没有现成和通用的软件,需要针对特定的应用需求专门开发,涉及到诸多并行化算法、索引查询优化技术研究、以及系统的设计实现,这些都为大数据处理技术的发展提供了巨大的驱动力。2大数据应用2.1. 大数据应用阐述大数据能做什么?我们那么多地方探讨大数据,无非总结下来就做三件事:第一,对信息的理解。你发的每一张图片、每一个新闻、每一个广告,这些都是信息,你对这个信息的理解是大数据重要的领域。第二,用户的理解,每个人的基本特征,你的潜在的特征,每个用户上网的习惯等等,这些都是对用户的理解。第三,关系。关系才是我们的核心,信息与信息之间的关系,一条微博和另外一条微博之间的关系,一个广告和另
11、外一个广告的关系。一条微博和一个视频之间的关系,这些在我们肉眼去看的时候是相对简单的。比如有条微博说这两天朝鲜绑架我们船的事,那条微博也大概是谈这件事的。人眼一眼就能看出来。但是用机器怎么能看出来这是一件事,以及他们之间的因果关 系,这是很有难度的。然后就是用户与用户之间的关系。哪些人你愿意收听,是你的朋友,哪些是你感兴趣的领域,你是一个音乐达人,你是一个吃货,那个用户也 是一个吃货,你愿意收听他。这就是用户与用户之间的关系理解。还有用户与信息之间的理解,就是你对哪一类型的微博感兴趣,你对哪一类型的信息感兴趣,如果 牵扯到商业化,你对哪一类的广告或者商品感兴趣。其实就是用户与信息之间的关系,他
12、无非是做这件事。大数据说的那么悬,其实主要是做三件事:对用户的理解、对信息的理解、对关系的理解。如果我们在这三件事之间还要提一件事的话,一个叫趋势。 他也是关系的一种变种,只是关系稍微远一点,情感之间的分析,还有我们政府部门做的舆情监控。他可以监控大规模的数据,可以分析出人的动向。在美国的好莱 坞,这两年也是基于FACEBOOK和TIWTTER的数据来预测即将上映的电影的票房。他也是一个趋势的分析,只是我们把这个趋势提前来。核心就是这三件事。2.2. 大数据应用架构2.3. 大数据行业应用2.3.1. 医疗行业1. Seton Healthcare是采用IBM最新沃森技术医疗保健内容分析预测的
13、首个客户。该技术允许企业找到大量病人相关的临床医疗信息,通过大数据处理,更好地分析病人的信息。2. 在加拿大多伦多的一家医院,针对早产婴儿,每秒钟有超过3000次的数据读取。通过这些数据分析,医院能够提前知道哪些早产儿出现问题并且有针对性地采取措施,避免早产婴儿夭折。3. 它让更多的创业者更方便地开发产品,比如通过社交网络来收集数据的健康类App。也许未来数年后,它们搜集的数据能让医生给你的诊断变得更为精确,比方说不是通用的成人每日三次一次一片,而是检测到你的血液中药剂已经代谢完成会自动提醒你再次服药。2.3.2. 能源行业1. 智能电网现在欧洲已经做到了终端,也就是所谓的智能电表。在德国,为
14、了鼓励利用太阳能,会在家庭安装太阳能,除了卖电给你,当你的太阳能有多余电的时候还可以买回来。通过电网收集每隔五分钟或十分钟收集一次数据,收集来的这些数据可以用来预测客户的用电习惯等,从而推断出在未来23个月时间里,整个电网大概需要多少电。有了这个预测后,就可以向发电或者供电企业购买一定数量的电。因为电有点像期货一样,如果提前买就会比较便宜,买现货就比较贵。通过这个预测后,可以降低采购成本。2. 维斯塔斯风力系统,依靠的是BigInsights软件和IBM超级计算机,然后对气象数据进行分析,找出安装风力涡轮机和整个风电场最佳的地点。利用大数据,以往需要数周的分析工作,现在仅需要不足1小时便可完成
15、。2.3.3. 通信行业1. XO Communications通过使用IBM SPSS预测分析软件,减少了将近一半的客户流失率。XO现在可以预测客户的行为,发现行为趋势,并找出存在缺陷的环节,从而帮助公司及时采取措施,保留客户。此外,IBM新的Netezza网络分析加速器,将通过提供单个端到端网络、服务、客户分析视图的可扩展平台,帮助通信企业制定更科学、合理决策。2. 电信业者透过数以千万计的客户资料,能分析出多种使用者行为和趋势,卖给需要的企业,这是全新的资料经济。3. 中国移动通过大数据分析,对企业运营的全业务进行针对性的监控、预警、跟踪。系统在第一时间自动捕捉市场变化,再以最快捷的方式
16、推送给指定负责人,使他在最短时间内获知市场行情。4. NTT docomo把手机位置信息和互联网上的信息结合起来,为顾客提供附近的餐饮店信息,接近末班车时间时,提供末班车信息服务。2.3.4. 零售业1. 我们的某个客户,是一家领先的专业时装零售商,通过当地的百货商店、网络及其邮购目录业务为客户提供服务。公司希望向客户提供差异化服务,如何定位公司的差异化,他们通过从 Twitter 和 Facebook 上收集社交信息,更深入的理解化妆品的营销模式,随后他们认识到必须保留两类有价值的客户:高消费者和高影响者。希望通过接受免费化妆服务,让用户进行口碑宣传,这是交易数据与交互数据的完美结合,为业务
17、挑战提供了解决方案。Informatica的技术帮助这家零售商用社交平台上的数据充实了客户主数据,使他的业务服务更具有目标性。2. 零售企业也监控客户的店内走动情况以及与商品的互动。它们将这些数据与交易记录相结合来展开分析,从而在销售哪些商品、如何摆放货品以及何时调整售价上给出意见,此类方法已经帮助某领先零售企业减少了17%的存货,同时在保持市场份额的前提下,增加了高利润率自有品牌商品的比例。3大数据解决方案3.1. 大数据技术组成大数据技术由四种技术构成,它们包括:3.1.1. 分析技术分析技术意味着对海量数据进行分析以实时得出答案,由于大数据的特殊性,大数据分析技术还处于发展阶段,老技术会
18、日趋完善,新技术会更多出现。大数据分析技术涵盖了以下的的五个方面3.1.1.1. 可视化分析数据可视化无论对于普通用户或是数据分析专家,都是最基本的功能。数据图像化可以让数据自己说话,让用户直观的感受到结果。3.1.1.2. 数据挖掘算法图像化是将机器语言翻译给人看,而数据挖掘就是机器的母语。分割、集群、孤立点分析还有各种各样五花八门的算法让我们精炼数据,挖掘价值。这些算法一定要能够应付大数据的量,同时还具有很高的处理速度。3.1.1.3. 预测分析能力数据挖掘可以让分析师对数据承载信息更快更好地消化理解,进而提升判断的准确性,而预测性分析可以让分析师根据图像化分析和数据挖掘的结果做出一些前瞻
19、性判断。3.1.1.4. 语义引擎非结构化数据的多元化给数据分析带来新的挑战,我们需要一套工具系统的去分析,提炼数据。语义引擎需要设计到有足够的人工智能以足以从数据中主动地提取信息。3.1.1.5. 数据质量和数据管理数据质量与管理是管理的最佳实践,透过标准化流程和机器对数据进行处理可以确保获得一个预设质量的分析结果。我们知道大数据分析技术最初起源于互联网行业。网页存档、用户点击、商品信息、用户关系等数据形成了持续增长的海量数据集。这些大数据中蕴藏着大量可以用于增强用户体验、提高服务质量和开发新型应用的知识,而如何高效和准确的发现这些知识就基本决定了各大互联网公司在激烈竞争环境中的位置。首先,
20、以Google为首的技术型互联网公司提出了MapReduce的技术框架,利用廉价的PC服务器集群,大规模并发处理批量事务。利用文件系统存放非结构化数据,加上完善的备份和容灾策略,这套经济实惠的大数据解决方案与之前昂贵的企业小型机集群+商业数据库方案相比,不仅没有丢失性能,而且还赢在了可扩展性上。之前,我们在设计一个数据中心解决方案的前期,就要考虑到方案实施后的可扩展性。通常的方法是预估今后一段时期内的业务量和数据量,加入多余的计算单元(CPU)和存储,以备不时只需。这样的方式直接导致了前期一次性投资的巨大,并且即使这样也依然无法保证计算需求和存储超出设计量时的系统性能。而一旦需要扩容,问题就会
21、接踵而来。首先是商业并行数据库通常需要各节点物理同构,也就是具有近似的计算和存储能力。而随着硬件的更新,我们通常加入的新硬件都会强于已有的硬件。这样,旧硬件就成为了系统的瓶颈。为了保证系统性能,我们不得不把旧硬件逐步替换掉,经济成本损失巨大。其次,即使是当前最强的商业并行数据库,其所能管理的数据节点也只是在几十或上百这个数量级,这主要是由于架构上的设计问题,所以其可扩展性必然有限。而MapReduce+GFS框架,不受上述问题的困扰。需要扩容了,只需增加个机柜,加入适当的计算单元和存储,集群系统会自动分配和调度这些资源,丝毫不影响现有系统的运行3.1.2. 存储数据库存储数据库(In-Memo
22、ry Databases)让信息快速流通,大数据分析经常会用到存储数据库来快速处理大量记录的数据流通。比方说,它可以对某个全国性的连锁店某天的销售记录进行分析,得出某些特征进而根据某种规则及时为消费者提供奖励回馈。但传统的关系型数据库严格的设计定式、为保证强一致性而放弃性能、可扩展性差等问题在大数据分析中被逐渐暴露。随之而来,NoSQL数据存储模型开始风行。NoSQL,也有人理解为Not Only SQL,并不是一种特定的数据存储模型,它是一类非关系型数据库的统称。其特点是:没有固定的数据表模式、可以分布式和水平扩展。NoSQL并不是单纯的反对关系型数据库,而是针对其缺点的一种补充和扩展。典型
23、的NoSQL数据存储模型有文档存储、键-值存储、图存储、对象数据库、列存储等NoSQL数据库是一种建立在云平台的新型数据处理模式,NoSQL在很多情况下又叫做云数据库。由于其处理数据的模式完全是分布于各种低成本服务器和存储磁盘,因此它可以帮助网页和各种交互性应用快速处理过程中的海量数据。它为Zynga、AOL、Cisco以及其它一些企业提供网页应用支持。正常的数据库需要将数据进行归类组织,类似于姓名和帐号这些数据需要进行结构化和标签化。但是NoSQL数据库则完全不关心这些,它能处理各种类型的文档。在处理海量数据同时请求时,它也不会有任何问题。比方说,如果有1000万人同时登录某个Zynga游戏
24、,它会将这些数据分布于全世界的服务器并通过它们来进行数据处理,结果与1万人同时在线没什么两样。现今有多种不同类型的NoSQL模式。商业化的模式如Couchbase、10gen的mongoDB以及Oracle的NoSQL;开源免费的模式如CouchDB和Cassandra;还有亚马逊最新推出的NoSQL云服务。3.1.3. 分布式计算技术分布式计算结合了NoSQL与实时分析技术,如果想要同时处理实时分析与NoSQL数据功能,那么你就需要分布式计算技术。分布式技术结合了一系列技术,可以对海量数据进行实时分析。更重要的是,它所使用的硬件非常便宜,因而让这种技术的普及变成可能。SGI的Sunny Su
25、ndstrom解释说,通过对那些看起来没什么关联和组织的数据进行分析,我们可以获得很多有价值的结果。比如说可以分发现一些新的模式或者新的行为。运用分布式计算技术,银行可以从消费者的一些消费行为和模式中识别网上交易的欺诈行为。分布式计算技术让不可能变成可能,分布式计算技术正引领着将不可能变为可能。Skybox Imaging就是一个很好的例子。这家公司通过对卫星图片的分析得出一些实时结果,比如说某个城市有多少可用停车空间,或者某个港口目前有多少船只。它们将这些实时结果卖给需要的客户。没有这个技术,要想快速便宜的分析这么大量卫星图片数据将是不可能的。如图五所示:分布式计算技术是Google的核心,
26、也是Yahoo的基础,目前分布式计算技术是基于Google创建的技术,但是却最新由Yahoo所建立。Google总共发表了两篇论文,2004年发表的叫做MapReduce的论文介绍了如何在多计算机之间进行数据处理;另一篇于2003年发表,主要是关于如何在多服务器上存储数据。来自于Yahoo的工程师Doug Cutting在读了这两篇论文后建立了分布式计算平台,以他儿子的玩具大象命名。如图六所示图六而Hadoop作为一个重量级的分布式处理开源框架已经在大数据处理领域有所作为3.2. 大数据处理过程3.2.1. 采集大数据的采集是指利用多个数据库来接收发自客户端(Web、App或者传感器形式等)的
27、数据,并且用户可以通过这些数据库来进行简单的查询和处理工作。比如,电商会使用传统的关系型数据库MySQL和Oracle等来存储每一笔事务数据,除此之外,Redis和MongoDB这样的NoSQL数据库也常用于数据的采集。在大数据的采集过程中,其主要特点和挑战是并发数高,因为同时有可能会有成千上万的用户来进行访问和操作,比如火车票售票网站和淘宝,它们并发的访问量在峰值时达到上百万,所以需要在采集端部署大量数据库才能支撑。并且如何在这些数据库之间进行负载均衡和分片的确是需要深入的思考和设计。3.2.2. 导入/预处理虽然采集端本身会有很多数据库,但是如果要对这些海量数据进行有效的分析,还是应该将这
28、些来自前端的数据导入到一个集中的大型分布式数据库,或者分布式存储集群,并且可以在导入基础上做一些简单的清洗和预处理工作。也有一些用户会在导入时使用来自Twitter的Storm来对数据进行流式计算,来满足部分业务的实时计算需求。导入与预处理过程的特点和挑战主要是导入的数据量大,每秒钟的导入量经常会达到百兆,甚至千兆级别。3.2.3. 统计/分析统计与分析主要利用分布式数据库,或者分布式计算集群来对存储于其内的海量数据进行普通的分析和分类汇总等,以满足大多数常见的分析需求,在这方面,一些实时性需求会用到EMC的GreenPlum、Oracle的Exadata,以及基于MySQL的列式存储Info
29、bright等,而一些批处理,或者基于半结构化数据的需求可以使用Hadoop。统计与分析这部分的主要特点和挑战是分析涉及的数据量大,其对系统资源,特别是I/O会有极大的占用。3.2.4. 挖掘与前面统计和分析过程不同的是,数据挖掘一般没有什么预先设定好的主题,主要是在现有数据上面进行基于各种算法的计算,从而起到预测(Predict)的效果,从而实现一些高级别数据分析的需求。比较典型算法有用于聚类的Kmeans、用于统计学习的SVM和用于分类的NaiveBayes,主要使用的工具有Hadoop的Mahout等。该过程的特点和挑战主要是用于挖掘的算法很复杂,并且计算涉及的数据量和计算量都很大,常用
30、数据挖掘算法都以单线程为主。整个大数据处理的普遍流程至少应该满足这四个方面的步骤,才能算得上是一个比较完整的大数据处理3.3. 大数据处理的核心技术-Hadoop大数据技术涵盖了硬软件多个方面的技术,目前各种技术基本都独立存在于存储、开发、平台架构、数据分析挖掘的各个相对独立的领域。这一部分主要介绍和分析大数据处理的核心技术Hadoop。3.3.1. Hadoop的组成大数据不同于传统类型的数据,它可能由TB甚至PB级信息组成,既包括结构化数据,也包括文本、多媒体等非结构化数据。这些数据类型缺乏一致性,使得标准存储技术无法对大数据进行有效存储,而且我们也难以使用传统的服务器和SAN方法来有效地
31、存储和处理庞大的数据量。这些都决定了“大数据”需要不同的处理方法,而Hadoop目前正是广泛应用的大数据处理技术。Hadoop是一个基于Java的分布式密集数据处理和数据分析的软件框架。该框架在很大程度上受Google在2004年白皮书中阐述的MapReduce的技术启发。Hadoop主要组件包含如图七:图七Hadoop Common:通用模块, 支持其他Hadoop模块 Ha d o o p Di s t r i b u t e d Fi l eSystem(HDFS):分布式文件系统,用以提供高流量的应用数据访问 Hadoop YARN:支持工作调度和集群资源管理的框架 HadoopMap
32、Reduce:针对大数据的、灵活的并行数据处理框架其他相关的模块还有: ZooKeeper:高可靠性分布式协调系统 Oozie:负责MapReduce作业调度 HBase:可扩展的分布式数据库,可以将结构性数据存储为大表 Hive:构建在MapRudece之上的数据仓库软件包 Pig:架构在Hadoop之上的高级数据处理层在Hadoop框架中,最底层的HDFS存储Hadoop集群中所有存储节点上的文件。HDFS的架构是基于一组特定的节点构建的(如图八),图八这些节点包括一个NameNode和大量的DataNode。存储在HDFS中的文件被分成块,然后将这些块复制到多个计算机中(DataNode
33、)。这与传统的RAID架构大不相同。块的大小(通常为64MB)和复制的块数量在创建文件时由客户机决定。NameNode可以控制所有文件操作。HDFS内部的所有通信都基于标准的TCP/IP协议。NameNode在HDFS内部提供元数据服务,负责管理文件系统名称空间和控制外部客户机的访问。它决定是否将文件映射到DataNode上的复制块上。DataNode通常以机架的形式组织,机架通过一个交换机将所有系统连接起来。H a d o o p M a p R e d u c e 是Google MapReduce的开源实现。MapReduce技术是一种简洁的并行计算模型,它在系统层面解决了扩展性、容错性
34、等问题,通过接受用户编写的Map函数和Reduce函数,自动地在可伸缩的大规模集群上并行执行,从而可以处理和分析大规模的数据6。Hadoop提供了大量的接口和抽象类,从而为Hadoop应用程序开发人员提供许多工具,可用于调试和性能度量等。在H a d o o p 应用实例中,一个代表客户机在单个主系统上启动Ma pRe d u c e的应用程序称为JobTracker。类似于NameNode,它是Ha d o o p 集群中唯一负责控制MapReduce应用程序的系统。在应用程序提交之后,将提供包含在HDFS中的输入和输出目录。JobTr a cke r使用文件块信息(物理量和位置)确定如何创
35、建其他TaskTracker从属任务。MapReduce应用程序被复制到每个出现输入文件块的节点,将为特定节点上的每个文件块创建一个唯一的从属任务。每个TaskTracker将状态和完成信息报告给JobTracker。如图显示一个示例集群中的工作分布,如图九:图九3.3.2. Hadoop的优点:Hadoop能够使用户轻松开发和运行处理大数据的应用程序。它主要有以下几个优点:3.3.2.1. 高可靠性。Hadoop按位存储和处理数据的能力值得人们信赖。3.3.2.2. 高扩展性。Hadoop是在可用的计算机集簇间分配数据并完成计算任务的,这些集簇可以方便地扩展到数以千计的节点中。3.3.2.3
36、. 高效性。Hadoop能够在节点之间动态地移动数据,并保证各个节点的动态平衡,因此处理速度非常快。3.3.2.4. 高容错性。Hadoop能够自动保存数据的多个副本,并且能够自动将失败的任务重新分配。Hadoop带有用Java语言编写的框架,因此运行在Linux生产平台上是非常理想的。Hadoop上的应用程序也可以使用其他语言编写,比如C+。3.3.3. Hadoop的不足Hadoop作为一个处理大数据的软件框架,虽然受到众多商业公司的青睐,但是其自身的技术特点也决定了它不能完全解决大数据问题。在当前Hadoop的设计中,所有的metadata操作都要通过集中式的NameNode来进行,Na
37、meNode有可能是性能的瓶颈。当前Hadoop单一NameNode、单一Jobtracker的设计严重制约了整个Hadoop可扩展性和可靠性。首先,NameNode和JobTracker是整个系统中明显的单点故障源。再次,单一NameNode的内存容量有限,使得Hadoop集群的节点数量被限制到2000个左右,能支持的文件系统大小被限制在10-50PB,最多能支持的文件数量大约为1.5亿左右。实际上,有用户抱怨其集群的NameNode重启需要数小时,这大大降低了系统的可用性。随着Hadoop被广泛使用,面对各式各样的需求,人们期望Hadoop能提供更多特性,比如完全可读写的文件系统、Snap
38、shot、Mirror等等。这些都是当前版本的Hadoop不支持,但是用户又有强烈需求的。3.3.4. 主要商业性“大数据”处理方案“大数据”被科技企业看作是云计算之后的另一个巨大商机,包括IBM、谷歌、亚马逊和微软在内的一大批知名企业纷纷掘金这一市场。此外,很多初创企业也开始加入到大数据的淘金队伍中。Hadoop是非结构数据库的代表,低成本、高扩展性和灵活性等优势使其成为各种面向大数据处理分析的商业服务方案的首选。Oracle、IBM、Microsoft三大商业数据提供商是Hadoop的主要支持者。很多知名企业都以Hadoop技术为基础提供自己的商业性大数据解决方案。这一部分主要介绍以Had
39、oop为基础的典型商业性大数据解决方案。3.3.2.5. IBM InfoSphere大数据分析平台I B M于2 0 1 1 年5 月推出的InfoSphere大数据分析平台是一款定位为企业级的大数据分析产品。该产品包括BigInsight s和Streams,二者互补,Biglnsights基于Hadoop,对大规模的静态数据进行分析,它提供多节点的分布式计算,可以随时增加节点,提升数据处理能力。St reams采用内存计算方式分析实时数据。它们将包括HadoopMapReduce在内的开源技术紧密地与IBM系统集成起来。研究Hadoop这样开源技术的人很多,但是IBM这次是真正将其变成了
40、企业级的应用,针对不同的人员增加不同的价值。InfoSphereBigInsight s 1.3的存储和运算框架采用了开源的Ha d o o pMa pRe d u c e,同时针对Ha d o o p 框架进行了改造,采用了IBM特有的通用并行文件系统GPFS。利用GPFS的目的是为了避免单点故障,保证可用性。BigInsights中还有两个分析产品Cognos和SPSS,这两个分析产品在传统功能上加强了文本分析的功能,提供了一系列文本分析工具,并使用高级语言进行自定义规则,如文本格式转换等。目前BigInsights提供两种版本,一种是企业版(Enterprise Edition),用于企
41、业级的大数据分析解决方案。另一种是基础版(Basic Edition),去掉了企业版中的大部分功能,用户可以免费下载,主要提供给开发人员和合作伙伴试用。St r e ams 最大的特点就是内存分析,利用多节点PC服务器的内存来处理大批量的数据分析请求。St reams的特点就是“小快灵”,数据是实时流动的,其分析反应速度可以控制在毫秒级别,而BigInsights的分析是批处理,反应速度无法同St reams相比。总体来说,二者的设计架构不同,也用于处理不同的大数据分析需求,并可以形成良好的互补。InfoSphere平台仅仅是IBM大数据解决方案中的一部分。IBM大数据平台包括4大部分:信息整
42、合与治理组件、基于开源Apache Hadoop的框架而实现的Bi g I n s i g h t s 平台、加速器,以及包含可视化与发现、应用程序开发、系统管理的上层应用。通过IBM的解决方案可以看出,解决大数据问题不能仅仅依靠Hadoop。3.3.2.6. Or a c l e Bi g Da t aAppliancOracle Big Data Appliance准确地说是一款硬件产品,添加了Hadoop装载器、应用适配器以及Or acle新的NoSQL数据库,主要目的是为了将非结构化数据加载到关系型数据库中去,并对软硬件的集成做了一些优化。Oracle BigData机包括开源Apac
43、he Hadoop、Oracle NoSQL数据库、Oracle数据集成Hadoop应用适配器、OracleHa d o o p 装载器、Op e n So u r c eDistribution of R、Oracle Linux和Oracle Java HotSpot虚拟机。它能够快速、便捷地与Oracle数据库11g、Oracle Exadata数据库云服务器和Oracle Exalytics商务智能云服务器集成。分析师和统计人员可以运行现有的R应用,并利用R客户端直接处理存储在Oracle数据库11g中的数据,从而极大地提高可扩展性、性能和安全性。3.3.2.7. Mi c r o s
44、 o f t S QLServer微软已经发布Hadoop Connectorfor SQL Se r ve r Pa r a l lel Dat aWarehouse和Hadoop Connectorfor SQL Ser ver社区技术预览版本的连接器。该连接器是双向的,用户可以在Hadoop和微软数据库服务器之间向前或者向后迁移数据。微软的SQL Server 2012将并入Hadoop分布式计算平台,微软还将把Hadoop引入Windows Server和Azure(微软的云服务)。3.3.2.8. Sybase IQSybase IQ是Sybase公司推出的特别为数据仓库设计的关系型
45、数据库,添加了Hadoop的集成,并提供了MapReduce的API。相比于传统的“行式存储”的关系型数据库,Sybase IQ使用了独特的列式存储方式,在进行分析查询时,仅需读取查询所需的列,其垂直分区策略不仅能够支持大量的用户、大规模数据,还可以提交对商业信息的高速访问,其速度可达到传统的关系型数据库的百倍甚至千倍。3.3.5. 其他“大数据”解决方案“大数据”解决方案并非只有Hadoop一种,许多知名企业还提供了其他的解决方案。3.3.2.9. EMCEMC 提供了两种大数据存储方案,即Isilon和Atmos。Isilon能够提供无限的横向扩展能力,Atmos是一款云存储基础架构,在内
46、容服务方面,Atmos是很好的解决方案。在数据分析方面,EMC提供的解决方案、提供的产品是Greenplum,Greenplum有两个产品,第一是GreenplumDatabase,GreenplumDatabase是大规模的并行成立的数据库,它可以管理、存储、分析PB量级的一些结构性数据,它下载的速度非常高,最高可以达到每小时10 T B,速度非常惊人。这是EMC可以提供给企业、政府,用来分析海量的数据。但是Gr e e n p l umDa t a b a s e面对的是结构化数据。很多数据超过9 0 % 是非结构化数据,E M C 有另外一个产品是GreenplumHD,Greenplu
47、mHD可以把非结构化的数据或者是半结构化的数据转换成结构化数据,然后让GreenplumDatabase去处理。3.3.2.10. BigQueryBigQu e r y是Go og l e 推出的一项We b服务,用来在云端处理大数据。该服务让开发者可以使用Go o g l e 的架构来运行SQL语句对超级大的数据库进行操作。BigQuery允许用户上传他们的超大量数据并通过其直接进行交互式分析,从而不必投资建立自己的数据中心。Google曾表示BigQuery引擎可以快速扫描高达70TB未经压缩处理的数据,并且可马上得到分析结果。大数据在云端模型具备很多优势,BigQuery服务无需组织提
48、供或建立数据仓库。而BigQuery在安全性和数据备份服务方面也相当完善。免费帐号可以让用户每月访问高达100GB的数据,用户也可以付费使用额外查询和存储空间。3.3.6. 大数据”与科技文献信息处理“大数据”目前主要指医学、天文、地理、Web日志、多媒体信息等数据,鲜有提及文献信息。事实上,现在的科技文献信息日益凸显出“大数据”的特征,主要表现在以下几个方面:更新周期缩短;数量庞大;文献的类型多样;文献载体数字化;文献语种多样化;文献内容交叉;文献信息密度大。科技文献中所含的信息类型多样,既有结构性数据,也有非结构性文本和公式,如何利用“大数据”技术对文献内容进行分析,挖掘用户访问日志、评价反馈等数据的价值,为用户提供服务成为科技信息服务业急需思考和解决的问题。在科技文献信息处理中,文本分析技术、语义计算技术、数据安全需要与“大数据”解决方案结合起来考虑实施,这样才能更有效地提供知识服务。3.4. 大数据处理技术发展前景随着大数据时代的来临,应用越来越广,其发