为什么要谈大数据?

来源:互联网 发布:apache ant 1.8.4 bin 编辑:程序博客网 时间:2024/06/04 17:59
所谓大数据,是一个综合性概念,它包括因具备3V(Volume/Variety/Velocity)特征而难以进行管理的数据,对这些数据进行存储、处理、分析的技术,以及能够通过分析这些数据获得实用意义和观点的人才和组织。”

所谓“存储、处理、分析的技术”,指的是用于大规模数据分布式处理的框架Hadoop、具备良好扩展性的NoSQL数据库,以及机器学习和统计分析等。所谓“能够通过分析这些数据获得实用意义和观点的人才和组织”,指的是目前在欧美十分紧俏的“数据科学家”这类人才,以及能够对大数据进行有效运用的组织。

大数据的民主化

大数据本身并不是一个新的概念。特别是仅仅从数据量的角度来看的话,大数据在过去就已经存在了。例如,波音的喷气发动机每30分钟就会产生10TB的运行信息数据,这样计算的话,安装了4台发动机的大型客机,每次飞越大西洋就会产生640TB的数据。世界各地每天有超过2.5万架的飞机在工作,可见其数据量是何等庞大。生物技术领域中的基因组分析,以及以NASA(美国国家航空航天局)为中心的太空开发领域,从很早就开始使用十分昂贵的高端超级计算机来对庞大的数据进行分析和处理了。

现在和过去的区别之一,就是大数据已经不仅产生于特定领域中,而且还产生于我们每天的日常生活中,Facebook、Twitter等社交媒体上的文本数据就是最好的例子。而且,尽管我们无法得到全部数据,但大部分数据可以通过公开的API(应用程序编程接口)相对容易地进行采集。在B2C企业中,使用文本挖掘(text mining)和情感分析等技术,就可以分析消费者对于自家产品的评价。

硬件性价比的提高以及软件技术的进步

另一个原因在于,计算机性价比的提高,磁盘价格的下降,利用通用服务器对大量数据进行高速处理的软件技术Hadoop的诞生,以及随着云计算的兴起,甚至已经无需自行搭建这样的大规模环境。上述这些因素,大幅降低了大数据存储和处理的门槛。因此,过去只有像NASA这样的研究机构以及屈指可数的几家特大企业才能做到的对大量数据的深入分析,现在只要极小的成本和时间就可以完成,无论是刚刚创业的企业,还是中小企业或是大企业,都可以对大数据进行充分的利用。

(1)计算机性价比的提高

承担数据处理任务的计算机,其处理能力遵循摩尔定律一直在不断进化。所谓摩尔定律,是美国英特尔公司共同创始人之一的高登•摩尔(Gordon Moore,1929~)于1965年提出的一个观点,即“半导体芯片的集成度,大约每18个月会翻一番”。从家电卖场中所陈列的电脑规格指标就可以一目了然地看出,现在以同样的价格能够买到的计算机,其处理能力已经和过去不可同日而语了。

(2)磁盘价格的下降

除了CPU性能的提高,硬盘等存储器(数据的存储装置)的价格也明显下降。2000年的硬盘驱动器平均每GB容量的单价约为16美元到19美元,而现在却只有7美分,相当于下降到了10年前的230~270分之一(图表1-4)。换算成人民币的话,就相当于4~5毛钱的样子。

变化的不仅仅是价格,存储器在重量方面也产生了巨大的进步。1982年日立最早开发的超1GB级硬盘驱动器(容量为1.2GB),重量约为250磅(约合113千克)。而现在,32GB的微型SD卡重量却只有0.5克左右,技术进步的速度真是相当惊人。

enter image description here[+]查看原图P31图】图表1-4:硬盘驱动器平均每GB价格的演变

(3)大规模数据分布式处理技术Hadoop的诞生

Hadoop是一种可以在通用服务器上运行的开源分布式处理技术(详细说明见第2章),它的诞生成为了目前大数据浪潮的第一推动力。如果只是结构化数据不断增长,用传统的关系型数据库和数据仓库,或者是其衍生技术,就可以进行存储和处理了,但这样的技术无法对非结构化数据进行处理。Hadoop的最大特征,就是能够对大量非结构化数据进行高速的处理。

云计算的普及

上述①~③所提到的这种大数据的处理环境,现在在很多情况下也并不一定要自行搭建了。例如,使用Amazon的云计算服务EC2(Elastic Compute Cloud)和S3(Simple Storage Service),就可以在无需自行搭建大规模数据处理环境的前提下,以按用量付费的方式,来使用由计算机集群组成的计算处理环境和大规模数据存储环境了。此外,在EC2和S3上还利用预先配置的Hadoop工作环境提供了“EMR”(Elastic MapReduce)服务。利用这样的云计算环境,即使是资金不太充裕的创业型公司,也可以进行大数据的分析了。

实际上,在美国,新的IT创业公司如雨后春笋般不断出现,它们通过利用Amazon的云计算环境,对大数据进行处理,从而催生出新型的服务。这些公司包括网络广告公司Razorfish、提供预测航班起飞晚点等“航班预报”服务的FlightCaster、对消费电子产品价格走势进行预测的Decide.com等。下面我们来介绍一下Decide.com和FightCaster这两家公司的案例。

(1)   Decide.com

Decide.com是一家成立于2010年的创业型公司,它提供的服务主要是告诉大家数码相机、电脑、智能手机、电视机等数码产品什么时候购买最划算。

也许大家都有这样的经历,刚刚买的数码相机和电视机,马上就降价了,真是后悔不已。利用Decide.com所提供的服务,就可以知道价格上涨和下降的时机,再买这些产品时就不会让自己后悔了。

Decide.com每天要从数百家网上商城中收集超过10万条家电和数码产品的价格数据,同时还会搜索关于这些产品的博客和新闻报道,以获取是否会有新型号准备发售等信息。这些数据的数据量每天超过25GB,整体用于分析的数据量则高达约100TB。这些收集到的数据会被发送到Amazon的云计算平台,并通过Hadoop来进行统计和分析工作。

Decide.com竞争力的源泉,来自公司中4位计算机科学博士所开发的算法,这种算法可以对家电和数码产品价格的上涨或下降走势做出高精度的预测。

我们输入了几种产品进行测试,得到的结果如下。

  • Amazon平板电脑Kindle Fire

Kindle Fire是2011年11月14日发售的,我们询问发售两周后是否值得购买,得到的回答是: “可以购买,价格不太可能会下降。”(Buy Prices not likely to drop)(图表1-5)。

enter image description here[+]查看原图

  • 三星Galaxy Tab 10.1

三星Galaxy Tab(10.1英寸版)是2011年6月发售的,在发售半年之后的12月1日,是否值得购买呢?得到的结果是:“在涨价之前购买。”(Buy Before prices rise)如果相信Decide.com给出的建议,则该产品有86%的概率会在两周之内涨价(图表1-6)。

enter image description here[+]查看原图

【P35图】图表1-6:在Decide.com查询三星平板电脑Galaxy Tab购买时机的结果

  • 索尼46英寸液晶电视Bravia(KDL-46BX420)

这款索尼46英寸液晶电视是2011年1月发售的,在发售约11个月之后的2011年12月是否值得购买呢?得到的结果是: “等待价格下降”(Wait for prices to drop)根据Decide.com的预测,该产品有84%的概率会在两周内降价(图表1-7)。 遗憾的是,该服务还不支持日本市场,不过它依然是一项十分有意思的服务。

enter image description here[+]查看原图

(2)FlightCaster

FlightCaster创立于2009年,它所提供的服务,是在航空公司发出正式通知6个小时之前,就能够对航班晚点做出预报。 FlightCaster的预报是基于交通统计局的数据、联邦航空局航空交通管制系统指令中心的警报、FlightStats(一个发布航班运营状况信息的网站)的数据、美国气象局的天气预报等所发布的。这些数据都是公开数据,有需要的话,任何人都可以获得。 基于这些数据,FlightCaster可以做出类似“正点概率为3%,轻微晚点(60分钟以内)概率为14%,晚点60分钟以上概率为83%”这样的预测。如果预报显示该航班有很大概率会晚点,还会给出相应的理由,如“目的地因暴雨天气风力较强”、“(往返飞行的)到达航班已经晚点72分钟”等(图表1-8)。

enter image description here[+]查看原图

该公司服务的强项在于,可以对过去10年的统计数据加上实时数据所构成的庞大数据,通过其拥有专利的人工智能算法进行分析,做出准确率高达85~90%的航班晚点预测。

既然能够产生如此准确的预测结果,我们不禁要关心其所运用的技术和硬件架构。FlightCaster是一家创业型公司,并没有丰厚的资金,为了控制初期投资,其庞大的数据处理都是在Amazon的云计算平台(EC2和S3)上搭建的Hadoop集群中完成的。这个Hadoop集群是Cloudera公司提供的一项名为AMI(Amazon Machine Image)的服务,而FlightCaster正是利用了这个集群上的机器学习功能来进行数据挖掘的。

另一方面,其前端部分是在Heroku公司(被Salesforce.com收购)的云计算平台上开发的,Heroku提供了Ruby on Rails(开发框架)的PaaS(Platform as a Service)服务。顺便说一下,Heroku的PaaS是部署在EC2、S3等Amazon云平台上的。 此外,该公司还运用了大量的新技术,如将Hadoop进行抽象化的高级工作流语言Cascading,以及用Java编写的Lisp方言动态语言Clojure等,对于技术极客们来说还是相当有吸引力的。

FlightCaster上还发布了一组到达航班晚点可能性最高和最低的机场排名,这里列出来供大家参考。

  • 到达航班晚点可能性最高的机场

第1名:纽瓦克机场(新泽西州)

第2名:拉瓜迪亚机场(纽约州)

第3名:JFK机场(纽约州)

第4名:芝加哥奥黑尔机场(伊利诺伊州)

第5名:费城机场(宾夕法尼亚州)

  • 到达航班晚点可能性最低的机场

第1名:檀香山机场(夏威夷州)

第2名:盐湖城机场(犹他州)

第3名:达拉斯机场(德克萨斯州)

第4名:辛辛那提机场(肯塔基州)

第5名:约翰•韦恩机场(加利福尼亚州)

本文摘自即将在6月10号左右上市的《大数据的冲击》