大数据管理:概念、技术与挑战孟小峰慈祥(中国人民大学信息学院北京100872)BigDataManagement:Concepts,TechniquesandChallengesMengXiaofengandCiXiang(SchoolofInformation,RenminUniversityofChina,Beijing100872)Abstract:Datatypeandamountinhumansocietyisgrowinginamazingspeedwhichcausedbyemergingnewservicesuchascloudcomputing,internetofthingsandsocialnetwork,theeraofBigDatahascome.Datahasbeenfundamentalresourcefromsimpledealingobject,andhowtomanageandutilizebigdatabetterhasattractedmuchattention.Evolutionorrevolutionondatabaseresearchforbigdataisaproblem.Thispaperdiscussestheconceptofbigdata,andsurveysitsstateoftheart.Theframeworkofbigdataisdescribedandkeytechniquesarestudied.Finallysomenewchallengesinthefuturearesummarized.KeywordsBigData;DataAnalysis;CloudComputing摘要云计算、物联网、社交网络等新兴服务促使人类社会的数据种类和规模正以前所未有的速度增长,大数据时代正式到来。数据从简单的处理对象开始转变为一种基础性资源,如何更好的管理和利用大数据已经成为普遍关注的话题。大数据的规模效应给数据存储、管理以及数据分析带来了极大的挑战,数据管理方式上的变革正在酝酿和发生。本文对大数据的基本概念进行剖析,并对大数据的主要应用做简单对比。在此基础上,阐述大数据处理的基本框架,并就云计算技术对于大数据时代数据管理所产生的作用进行分析。最后归纳总结大数据时代所面临的新挑战。关键字大数据;数据分析;云计算中图法分类号TP3111、、、、引言引言引言引言随着以博客、社交网络、基于位置的服务LBS为代表的新型信息发布方式的不断涌现,以及云计算、物联网等技术的兴起,数据正以前所未有的速度在不断的增长和累积,大数据时代已经来到。学术界、工业界甚至于政府机构都已经开始密切关注大数据问题,并对其产生浓厚的兴趣。就学术界而言,Nature早在2008年就推出了BigData专刊[1]。计算社区联盟(ComputingCommunityConsortium)在2008年发表了报告《Big-DataComputing:Creatingrevolutionarybreakthroughsincommerce,science,andsociety》[2],阐述了在数据驱动的研究背景下,解决大数据问题所需的技术以及面临的一些挑战。Science在2011年2月推出专刊《DealingwithData》[3],主要围绕着科学研究中大数据的问题展开讨论,说明大数据对于科学研究的重要性。美国一些知名的数据管理领域的专家学者则从专业的研究角度出发,联合发布了一份白皮书《ChallengesandOpportunitieswithBigData》[4]。该白皮书从学术的角度出发,介绍了大数据的产生,分析了大数据的处理流程,并提出大数据所面临的若干挑战。全球知名的咨询公司麦肯锡(McKinsey)去年6月份发布了一份关于大数据的详尽报告《Bigdata:Thenextfrontierforinnovation,competition,andproductivity》[5],对大数据的影响、关键技术和应用领域等都进行了详尽的分析。进入2012年以来,大数据的关注度与日俱增。1月份的达沃斯世界经济论坛上,大数据是主题之一,该次会议还特别针对大数据发布了报告《BigData,BigImpact:NewPossibilitiesforInternationalDevelopment》[6],探讨了新的数据产生方式下,如何更好的利用数据来产生良好的社会效益。该报告重点关注了个人产生的移动数据与其他数据的融合与利用。3月份美国奥巴马政府发布了《大数据研究和发展倡议》[7](BigDataResearchandDevelopmentInitiative),投资2亿以上美元,正式启动“大数据发展计划”。计划在科学研究、环境、生物医学等领域利用大数据技术进行突破。奥巴马政府的这一计划被视为美国政府继信息高速公路(InformationHighway)计划之后在信息科学领域的又一重大举措。与此同时,联合国一个名为GlobalPulse的倡议项目在今年5月发布报告《BigDataforDevelopment:Challenges&Opportunities》[8],该报告主要阐述大数据时代各国特别是发展中国家在面临数据洪流(DataDeluge)的情况下所遇到的机遇与挑战,同时还对大数据的应用进行了初步的解读。《纽约时报》的文章《TheAgeofBigData》[9]则通过主流媒体的宣传使普通民众开始意识到大数据的存在,以及大数据对于人们日常生活的影响。大数据的火热并不意味着对于大数据的了解深入,反而表明大数据存在过度炒作的危险。大数据的基本概念、关键技术以及对其的利用上均存在很多的疑问和争议。本文从大数据问题背后的本质出发,对现有的大数据研究资料进行全面的归纳和总结。首先简要介绍大数据的基本概念,阐述其同传统数据库的区别。在此基础上,对大数据处理框架进行详细解析。我们认为大数据的发展离不开云计算技术,云计算支撑着大数据存储、管理以及数据分析等。因此本文展开介绍了大数据时代不可或缺的云计算技术和工具。最后全面阐述大数据时代面临的新挑战。2、、、、大数据的大数据的大数据的大数据的基本概念基本概念基本概念基本概念、、、、来源与应用来源与应用来源与应用来源与应用2.12.12.12.1大数据的基本概念大数据的基本概念大数据的基本概念大数据的基本概念大数据本身是一个比较抽象的概念,单从字面来看,它表示数据规模的庞大。但是仅仅数量上的庞大显然无法看出大数据这一概念和以往的“海量数据”(MassiveData)、“超大规模数据”(VeryLargeData)等概念之间有何区别。对于大数据尚未有一个公认的定义,不同的定义基本是从大数据的特征出发,通过这些特征的阐述和归纳,试图给出其定义。在这些定义中,比较有代表性的是3V定义[10],即认为大数据需满足3个特点:规模性(Volume)、多样性(Variety)和高速性(Velocity)。除此之外,还有提出4V定义的,即尝试在3V的基础上增加一个新的特性。关于第四个V的说法并不统一,IDC认为大数据还应当具有价值性(Value)[11],大数据的价值往往呈现出稀疏性的特点。而IBM认为大数据必然具有真实性(Veracity)[12]。维基百科对大数据的定义[13]则简单明了:大数据是指利用常用软件工具捕获、管理和处理数据所耗时间超过可容忍时间的数据集。眼下在大数据定义问题上很难达成一个完全的共识,这点和云计算的概念刚提出时的情况是相似的。在面对实际问题时,不必过度的拘泥于具体的定义之中,把握3V定义的基础上,适当的考虑4V特性即可。2.2从数据库从数据库从数据库从数据库(Database,DB)到大数据到大数据到大数据到大数据(BigData,BD)从数据库(DB)到大数据(BD),看似只是一个简单的技术演进,但细细考究不难发现两者有着本质上的差别。大数据的出现,必将颠覆传统的数据管理方式。在数据来源、数据处理方式和数据思维等方面都会对其带来革命性的变化。如果要用简单的方式来比较传统的数据库和大数据的区别的话,我们认为“池塘捕鱼”和“大海捕鱼”是个很好的类比。“池塘捕鱼”代表着传统数据库时代的数据管理方式,而“大海捕鱼”则对应着大数据时代的数据管理方式,“鱼”是待处理的数据。“捕鱼”环境条件的变化导致了“捕鱼”方式的根本性差异。这些差异主要体现在如下几个方面:1、数据规模:“池塘”和“大海”最容易发现的区别就是规模。“池塘”规模相对较小,即便是先前认为比较大的“池塘”,譬如VLDB(VeryLargeDatabase),和“大海”XLDB(ExtremelyLargeDatabase)相比仍旧偏小。“池塘”的处理对象通常以MB为基本单位,而“大海”则常常以GB,甚至是TB、PB为基本处理单位。2、数据类型:过去的“池塘”中,数据的种类单一,往往仅仅有一种或少数几种,这些数据又以结构化数据为主。而在“大海”中,数据的种类繁多,数以千计,而这些数据又包含着结构化、半结构化以及非结构化的数据,并且半结构化和非结构化数据所占份额越来越大。3、模式(Schema)和数据的关系:传统的数据库都是先有模式,然后才会产生数据。这就好比是先选好合适的“池塘”,然后才会向其中投放适合在该“池塘”环境生长的“鱼”。而大数据时代很多情况下难以预先确定模式,模式只有在数据出现之后才能确定,且模式随着数据量的增长处于不断的演变之中。这就好比先有少量的鱼类,随着时间推移,鱼的种类和数量都在不断的增长。鱼的变化会使大海的成分和环境处于不断的变化之中。4、处理对象:在“池塘”中捕鱼,“鱼”仅仅是其捕捞对象。而在“大海”中,“鱼”除了是捕捞对象之外,还可以通过某些“鱼”的存在来判断其他种类的“鱼”是否存在。也就是说传统数据库中数据仅作为处理对象。而在大数据时代,要将数据作为一种资源来辅助解决其他诸多领域的问题。5、处理工具:捕捞“池塘”中的“鱼”,一种渔网或少数几种基本就可以应对,也就是所谓的OneSizeFitsAll。但是在“大海”中,不可能存在一种渔网能够捕获所有的鱼类,也就是说NoSizeFitsAll。从“池塘”到“大海”,不仅仅是规模的变大。传统的数据库代表着数据工程(DataEngineering)的处理方式,大数据时代的数据已不仅仅只是工程处理的对象,需要采取新的数据思维来应对。图灵奖获得者、著名数据库专家JimGray博士观察并总结人类自古以来,在科学研究上,先后历经了实验、理论和计算三种范式。当数据量不断增长和累积到今天,传统的三种范式在科学研究,特别是一些新的研究领域已经无法很好的发挥作用,需要有一种全新的第四种范式来指导新形势下的科学研究。基于这种考虑,JimGray提出了一种新的数据探索型研究方式,被他自己称之为科学研究的“第四种范式”(TheFourthParadigm)[14]。Table1FourScienceParadigms表1科学发现的四种范式ScienceParadigmsTimeMethodologyEmpiricalThousandyearsagoDescribingnaturalphenomenaTheoreticalLastfewhundredyearsUsingmodels,generalizationsComputationalLastfewdecadesSimulatingcomplexphenomenaDataExploration(eScience)TodayDatacapturedbyinstrumentsorgeneratedbysimulator;Processedbysoftware;Informationstoredincomputer;Scientistanalyzesdatabase四种范式的比较如表1[14]所示。第四种范式的实质就是从以计算为中心,转变到以数据处理为中心,也就是我们所说的数据思维。这种方式需要我们从根本上转变思维。