1.1 大数据时代的新挑战:实时流计算
社会需求和科技进步是螺旋式相互促进和提升的。“大数据”一词最早由Roger Mougalas在2005年提出,所以我们姑且认为2005年是大数据时代的元年吧。大数据技术之所以出现,是因为社会发展的程度已经开始要求我们具备处理海量数据的能力。之后,大数据技术逐渐发展和日趋完善的过程又反过来进一步促进社会产生更多、更丰富的数据。随着大数据技术的普及,IBM公司为我们总结了大数据的五大特点(也称为5V特点),即Volume(大量)、Velocity(快速)、Variety(多样)、Veracity(真实)和Value(价值),如图1-1所示。
图1-1 大数据的五大特点
大数据时代为人们带来了丰富多彩的生活方式,让人们充分享受着从大数据中挖掘而来的价值。但也正因为大数据产生得太多太快,让我们开始疲于对正在发生的事情做出及时反应。就像火灾已经爆发后才知道救火,交通已经阻塞后才知道疏通,羊毛已经被“羊毛党”薅光后才知道堵上漏洞,股价已经拉升后才知道后悔……为什么我们不能在这些事情发生之前,或者至少是刚刚发生的时候就提前收到预警和通知,并且及时采取应对措施呢?
是的,面对无穷无尽的数据洪流,我们急需一种手段来帮助我们抓住并思考那些一闪而逝的瞬间。在这样的背景下,实时流计算技术应运而生。虽然不能像电影《超体》中女主角直接用手抓住并分析电磁波信息那样,但至少实时流计算技术能够帮助我们抓住数据流的瞬间,分析并挖掘出数据的实时价值。千万不要小瞧了数据的实时价值。据说在很久以前的欧洲战场上,每次最先知道战争结果的不是后方的政府机构,而是股票交易所里的那些股票投资者。俗话说,时间就是金钱,效率就是生命。所有实时流计算的目的都是为了获得数据的实时价值。如果数据没有实时价值,那么实时流计算也就失去了它存在的意义。