1.1 大数据概念谈
1.1.1 大数据的定义
什么是大数据?似乎一夜之间各行各业都开始提大数据。对于铺天盖地的大数据概念,也许你最常听到的是关于大数据的4个V的特点定义:Volume(体量大)、Variety(模态多)、Velocity(变化快)、Value(价值高)。这4个V的定义听起来是不是依旧觉得有些抽象?
事实上,自人类开化以来便有了数字(Numbers),而计算机技术多年的发展也一直在研究如何对数据(Data)进行记录和处理,为何今天我们再来讨论数据,并且冠以“大数据”这一新概念?实际上,随着技术的发展和普及,爆发出多方面的数据来源(例如智能手机的普及就产生了海量的手机用户数据等),今日人类产生的数据量之大、数据形式之多变的特点变得愈发突出,与此同时,当今计算机的算法、硬件处理能力的增加,也给数据的处理带来了更丰富的可能性。由此,引发了人们对数据中所蕴藏的价值的探究兴趣,而这一系列的探究就被归纳到了“大数据”的范畴内。
在此形势下,如果要给大数据做一个明确的定义,可以从狭义、广义、泛义、伪义4个维度来进行。
狭义大数据:狭义大数据仅关注大数据的技术层面,即对大量、多格式的数据进行并行处理,以及实现对大规模数据的分块处理的技术。狭义大数据范畴内,所谓的“大”其实是相对的,并不能明确地界定出多大的数据量就是大数据,而是要由计算机的处理能力来判定所面对的数据是否为大数据。当数据量超出了当前的常规处理能力所能应付的水平时,就可称之为“大”。作者常说,做成一件事有三种方法:①Work Hard; ②Work Smart; ③Getting Help。其实,狭义大数据的概念又何尝不正是符合这三种方法呢。首先,为了处理大数据,对当前的计算系统进行优化和发展,采用拥有更快、更多的处理器和更大内存的计算机,提升其数据处理能力,这就是Work Hard。值得注意的是,提升处理能力终将遭遇到物理极限,例如42U的机柜也就那么大。一味地提升处理能力,也伴随着成本的大幅增加,做大数据并不是一定要搞超算,而应当对成本和性能进行平衡,以使得经济效益最大化。第二,对数据的处理需要研究和改进各种算法,在算法上下功夫,就是Work Smart。并非有足够的Hard和Smart就能解决所有问题,有时还是会遇到瓶颈,在这种情况下就得借助外部的、集体的力量才行,这体现在大数据中就成了集群(Cluster)的概念。对于超大规模数据集的运算,可聚集群体的力量来分开、并行处理,即为Getting Help。
广义大数据:广义的大数据实际上就是信息技术。它是指一种服务的交付和使用模式,指从底层的网络,到物理服务器、存储、集群、操作系统、运营商,直到整个数据中心,由这各个环节串联起来,最终提供的数据服务。并且,当数据服务所涉及的数据量变大后,就被冠以了“大数据”的概念。广义大数据可以被视为和数据相关的所有的产品以及服务的集合,并且这里的数据服务通常需要有数据分析引擎做支撑。
泛义大数据:由于数据的重要性遍及各个行业,随之出现了司法大数据、政务大数据、教育大数据等,这些各行各业的大数据服务就成了泛义上的大数据。
以上的三项定义具有同等的重要性,对大数据而言,每一个定义范围内的内容都有研究的必要,并且三项定义合并起来就构成了大数据生态系统(Ecosystem)。
伪义(Pseudo)大数据:一个传播甚广的大数据应用例子是,当我们看到一个国外的小伙,一手抱着尿不湿、一手提着啤酒,我们就得出了这样的结论——这是沃尔玛对大数据分析的结果,因此商家特意将啤酒同尿不湿的货架紧挨在一块儿,以提高啤酒的销量。事实上,这恰恰就是一个伪义大数据的典型例子,现实中的沃尔玛从未有将这两种商品摆放在一起的策略。而介绍大数据的材料往往会借用不少这样的例子,起到一种炒作的效果,形成了一种伪义大数据的概念。并不是说伪义大数据一定不好,它体现了市场对大数据的追捧。一个新的事物,无论是大数据还是云计算,要形成气候,市场的追捧其实是必要的,但对于这些新事物的从业者而言,就需要格外清楚要做的究竟是什么,否则就会变成Blind leads the blind。
除上述4个层面的大数据定义外,可以说,大数据的内涵是多方面的,不是给“数据”前面加个“大”字就成了大数据,它有很具体的特征。图1-1列出了大数据的16个特征。其中,量大,含大量可执行代码,研发需要的人才结构复杂,这是现在的技术完全有能力处理的。至于结构、类型众多,显示媒体介质多,来源多、标准不一,动态性强,社会性强,时空依赖关系大这6个特征,以现有的技术可以处理,但有一定的难度。当然还有很多数据特征是现有技术能力无法处理的,需要进一步研究与探索。大数据所需要研究的内容如图1-2所示。
图1-1 大数据的特征
图1-2 大数据需要研究的内容
值得注意的是大数据与云计算的关系,狭义的虚拟化云计算和大数据代表了计算的两个极端。云计算是指单台机器的硬件处理能力太强了,通常的应用一般用不完,所以将其“分”为多台小机器来用。大数据则是指计算任务太大了,一台机器搞不定,需要多台来共同完成。也就是说,云计算是把大“化”小,而大数据则是把大“合”为更大(见图1-3)。
图1-3 狭义大数据与狭义云计算的关系
数字来源于生活。大数据的这个“大”是相对的,并且离开了上下文是毫无意义的。TB级是一个大型图书馆所记载的信息量等级,或相当于一座有百万人口的县城全体居民一年活动的信息量级,而相比于金融、气象、军事、航空航天、医学等领域,这可能就算不上大了。计算处理能力按照摩尔定律迅速增长,带宽按照基尔德定律在变宽,今天听起来很大的数据量,若干年以后可能就不大了。“软(头脑)”件、硬件总是手拉手地前进,好比安迪比尔定律:英特尔能提供多大的硬件处理能力,微软的软件都能给它消耗殆尽。某种意义上来讲,软件总是超前于硬件。下一个轮回,当数据量超出了发展中的硬件的处理能力时,就会有新的“大”数据,也就是硬件又一次处理不了的数据。
特别要说明的是,大数据也好,云计算也好,都是当下这个时间点所特有的名词,是当前IT技术发展水平及业务需求的反映。随着技术的飞速提升,这些技术将会逐渐融入日常生活,成为常态,届时,可能不再有人专门提及今天很火的名词——“云计算”和“大数据”,而是将其视为常规的、必不可少的基础技术,“云计算”就成了“计算”,“大数据”则成了“数据”。
1.1.2 大数据发展现状
从宏观政策方面来看,美、英、日、澳等世界发达国家高度重视大数据产业,当前正通过战略引领、政府投入、企业推进、应用建设和政策保障等措施大力推动大数据技术和产业的发展,意图抢占战略主动权和发展先机。与此同时,我国政府也在陆续出台政策,使得国内的大数据发展环境得到持续完善,诸如《关于促进大数据发展的行动纲要》等文件的出台,也标志着我国已经进入大数据全面、高速的发展阶段。不过当前对于各家打算进军大数据领域的公司而言,却存在着虽有较明确的进军意图,但还缺乏成体系的大数据发展战略布局,整体尚处在初期阶段的现状。
在大数据技术方面,目前主要的技术体制和技术标准都由国外的技术联盟和大型公司控制着,例如,Apache基金会的Hadoop、UC Berkeley的Spark等系列软件在某种程度上已经成为了大数据计算处理方面的事实标准。国内的研究则以技术吸收、消化再创新为主。目前,国内的大型企业虽在大数据应用技术创新方面进行了较多的布局,但在基础性、共性的大数据技术研究上的投入还较少,且研究力量较为分散,未能形成优势。
在大数据产品方面,国内以借用为主,对国外的研究成果及开源产品有较高的依赖程度。一方面,国内相关行业的企业化发展脚步很快,涌现了BAT等与大数据业务有关联的优秀的企业级产品,但另一方面,面向工业的自主可控的大数据平台技术的研发仍为空白。同时,不少相关的大数据产品存在重复研发问题,市场未形成优势互补,反而造成了人才和资源的浪费。
在大数据应用方面,国内以互联网、电子商务为代表的行业大数据应用正迅猛发展,并在逐步向传统行业渗透,行业大数据分析及应用创新也正处于涌现阶段。面向“互联网+”的大数据应用链及其相关的传统产业正面临着激烈的市场竞争,各家大公司都希望能在对于数据资源的获取与掌控方面占据优势。
1.1.3 大数据建设需求分析
对大数据而言,其建设需求并不单一,已经逐步渗透到了国家建设的各个分支企业和部门之中,主要可分为以下几个方面。
首先,从战略意义的角度来讲,各企业对自己的大数据业务技术及应用发展进行规划的意义重大。随着网络、传感器技术的发展,人类社会进入大数据时代的步伐已不可阻挡,大数据甚至将成为国家层面的一种重要战略资源,是国家之间继海、陆、空、天、网之后的另一个博弈空间,一个国家拥有数据的规模、活性及解释运用能力将成为综合国力的重要组成部分,因此,布局大数据发展关乎国家安全和国家发展,具有重要的战略意义。
然后,传统的大型企业对自主可控的大数据技术的需求十分迫切,往往需要抢先布局核心领域的大数据技术,积极推动大数据处理平台的研发,为大数据系统的安全、可靠运行提供根本保障,并结合主要业务的发展趋势,做好应用与转化,不断提高从数据到决策的能力,实现由数据优势开始逐步向决策优势的转化,以确保在新一轮信息化浪潮中赢得主动,占得先机。
接着,以大数据技术发展来支撑各企业大数据产业发展的需求迫切。对于承担城市综合管理、公共服务、电子商务、交通运输、企业管理等领域大量的信息系统研制任务的公司而言,其面临着产业升级的激烈竞争。大数据技术作为当前处理海量数据的唯一有效方法,为新型民用信息系统在实时、高效、安全、扩展能力方面提供了强有力的支撑。因此,这些企业需要结合既有产业与新兴规划产业,推进产业布局,积极规划大数据在智能交通、智慧城市、公共安全、物联网等相关产业的发展,形成它们的新的经济增长点。
最后,大数据技术本身涉及多个技术层面,会串联起一系列不同的理论和应用,因此,企业间对技术进行协作开放,共建新IT的需求也是同大数据的建设步调相一致的。各家企业在大数据领域内的优势各不相同,有机结合可以形成丰富的大数据技术产品与应用服务,势必能为发展自己的业务带来优势,也同时能推动大数据行业整体的进步。因此,依托各个大数据企业所长,建立大数据资源平台,整合共性的大数据成果、产品、工具,通过开放的机制实现共享,接轨先进的技术,配套相关机制,形成合力来打造良性的生态,这同样是大数据建设的需求。
1.1.4 大数据建设目标
对于想要使用大数据技术的各家企业而言,其对大数据进行研究和建设的目标应当是:统筹企业内的数据及技术资源,并借助外部资源,以打造企业自身的大数据平台及应用为目标,开展企业大数据技术共享平台建设,实现数据资源与共性技术产品的发布、共享、管理和激励。在打造自主的大数据处理平台的同时,结合企业的特点,可打造相应的领域应用模型以及软件工具,形成具备自主知识产权的大数据生态系统。同时,建立起企业的大数据技术及产品规范,并培养起大数据技术和产品的维护、应用和服务团队,以保障大数据业务的开展。最终应当形成技术理论和应用实践相结合的自主、创新的大数据平台。总的来说,“了解数据,管理数据,共享数据,使用数据”是大数据建设的目标。
1.1.5 机器学习与人工智能
谈及大数据,很容易想到更深一层的人工智能及机器学习的话题上。本书虽不会大量涉及这一领域的内容,但是有必要让读者对这些概念有一个正确的印象。在此,仅简单举一示例,以形象地说明机器学习为何物。
想要在学习上取得成功,你可以借助下面这个演示所揭示的一个简单原则。首先,请用几秒钟迅速记忆下面的这一串字符(来自津巴多的心理学书籍):
IBMUFOFBICIA
现在请不要看书,尽可能地将你记住的字母按顺序写在纸上。
许多人能正确记忆5~7个字母,然而有些人却能够按顺序正确记忆所有字母。这些不寻常的人是如何做到的呢?原来他们在看似杂乱的字母序列中找到了便于记忆的模块(如果仔细观察,你可以在这一串字母中找到一些熟悉的字母组合,比如IBM、UFO、FBI和CIA)。找出这些模块能够有效地提高记忆的效果,因为你可以利用那些已经存储在大脑里的信息。这样,你需要记忆的只是4个整块信息,而不是12个不相关的字母。
上述做法不仅记住了字串,同时也节省了脑力,这就是MapReduce的工作机制。该原则同样可以被运用到大数据处理上,尤其是机器学习和人工智能中。计算机是一个对数据进行编码、存储和读取的处理系统。对于计算机而言,如果把所有知识划分为彼此没有联系的部分进行单独记忆、机械式的学习,那要学好是很困难的。但是,如果在各种知识之中寻找联系,那么学习就会变得简单高效许多,这正是人工智能和机器学习所要研究的内容所在。