1.3.2 大数据时代面临的新挑战
大数据时代的数据存在如下几个特点:多源异构、分布广泛、动态增长、先有数据后有模式。正是这些与传统数据管理迥然不同的特点,使得大数据时代的数据管理面临新的挑战。
1.数据集成的挑战
数据的广泛存在性使得数据越来越多地散布于不同的数据管理系统中,为了便于进行数据分析需要进行数据的集成。数据集成看起来并不是一个新的问题,但是大数据时代的数据集成却有了新的需求,因此也面临新的挑战。
(1)广泛的异构性。传统的数据集成中也会面对数据异构的问题,但是在大数据时代这种异构性出现了新的变化。主要体现在:①数据类型从以结构化数据为主转向结构化、半结构化、非结构化三者的融合。②数据产生方式的多样性带来的数据源变化。传统的数据主要产生于服务器或者是个人计算机,这些设备位置相对固定。随着移动终端的快速发展,手机、平板电脑、GPS等产生的数据量呈现爆炸式增长,且产生的数据带有很明显的时空特性。③数据存储方式的变化。传统数据主要存储在关系数据库中,但越来越多的数据开始采用新的数据存储方式来应对数据爆炸,比如存储在Hadoop的HDFS中。这就必然要求在集成的过程中进行数据转换,而这种转换的过程是非常复杂和难以管理的。
(2)数据质量。数据量大不一定就代表信息量或者数据价值的增大,相反很多时候意味着信息垃圾的泛滥。一方面单个系统很难容纳下从不同数据源集成的海量数据;另一方面如果在集成的过程中仅仅简单地将所有数据聚集在一起而不做任何数据清洗,会使得过多的无用数据干扰后续的数据分析过程。大数据时代的数据清洗过程必须更加谨慎,因为相对细微的有用信息混杂在庞大的数据量中。如果信息清洗的粒度过细,很容易将有用的信息过滤掉。清洗粒度过粗,又无法达到真正的清洗效果,因此在质与量之间需要进行仔细的考量和权衡。
2.数据分析的挑战
传统意义上的数据分析(Analysis)主要针对结构化数据展开,且已经形成了一整套行之有效的分析体系。首先利用数据库来存储结构化数据,在此基础上构建数据仓库,根据需要构建数据立方体进行联机分析处理(Online Analytical Processing,OLAP),可以进行多个维度的下钻(Drill-down)或上卷(Roll-up)操作。对于从数据中提炼更深层次的知识的需求促使产生了数据挖掘技术,并发明了聚类、关联分析等一系列在实践中行之有效的方法。这一整套处理流程在处理相对较少的结构化数据时极为高效。但是,随着大数据时代的到来,半结构化和非结构化数据量的迅猛增长,给传统的分析技术带来了巨大的冲击和挑战,主要体现在:
(1)数据处理的实时性(Timeliness)。随着时间的流逝,数据中所蕴含的知识价值往往也在衰减,因此很多领域对于数据的实时处理有需求。随着大数据时代的到来,更多应用场景的数据分析从离线(Offline)转向了在线(Online),开始出现实时处理的需求,比如KDD 2012最佳论文所探讨的实时广告竞价问题。大数据时代的数据实时处理也面临着新的挑战,主要体现在数据处理模式的选择及改进。在实时处理的模式选择中,主要有三种思路:即流处理模式、批处理模式以及二者的融合。虽然已有的研究成果很多,但是仍未有一个通用的大数据实时处理框架。各种工具实现实时处理的方法不一,支持的应用类型都相对有限,这导致实际应用中往往需要根据自己的业务需求和应用场景对现有的这些技术和工具进行改造才能满足要求。
(2)动态变化环境中索引的设计。关系数据库中的索引能够加速查询速率,但是传统数据管理中的模式基本不会发生变化,因此在其上构建索引主要考虑的是索引创建、更新的效率等。大数据时代的数据模式随着数据量的不断变化可能会处于不断的变化之中,这就要求索引结构的设计简单、高效,能够在数据模式发生变化时快速调整并适应。目前,存在一些通过在NoSQL数据库上构建索引来应对大数据挑战的一些方案,但总得来说,这些方案基本都有特定的应用场景,且这些场景的数据模式不太会发生变化。在数据模式变更的假设前提下设计新的索引方案将是大数据时代的主要挑战之一。
(3)先验知识的缺乏。传统分析主要针对结构化数据展开,这些数据在以关系模型进行存储的同时就隐含了这些数据内部关系的先验知识。比如我们知道所要分析的对象会有哪些属性,通过属性我们又能大致了解其可能的取值范围等。这些知识使得我们在数据分析之前就已经对数据有了一定的理解。而在面对大数据分析时,一方面是半结构化和非结构化数据的存在,这些数据很难以类似结构化数据的方式构建出其内部的正式关系;另一方面很多数据以流的形式源源不断的到来,这些需要实时处理的数据很难有足够的时间去建立先验知识。
3.数据隐私与安全的挑战
隐私问题由来已久,计算机的出现使得越来越多的数据以数字化的形式存储在硬盘中,互联网的发展则使数据更加容易产生和传播,数据隐私问题越来越严重。
(1)隐性的数据暴露。很多时候人们有意识地将自己的行为隐藏起来,试图达到隐私保护的目的。但是互联网,尤其是社交网络的出现,使得人们在不同的地点产生越来越多的数据足迹。这种数据具有累积性和关联性,单个地点的信息可能不会暴露用户的隐私,但是如果有办法将某个人的很多行为从不同的独立地点聚集在一起时,他的隐私就很可能会暴露,因为有关他的信息已经足够多了,这种隐性的数据暴露往往是个人无法预知和控制的。从技术层面来说,可以通过数据抽取和集成来实现用户隐私的获取。而在现实中通过所谓的“人肉搜索”的方式往往能更快速、准确地得到结果,这种“人肉搜索”的方式实质就是众包(Crowd Sourcing)。大数据时代的隐私保护面临着技术和人力层面的双重考验。
(2)数据公开与隐私保护的矛盾。如果仅仅为了保护隐私就将所有的数据都加以隐藏,那么数据的价值根本无法体现。数据公开是非常有必要的,政府可以通过公开的数据了解整个国民经济运行情况,以便更好地指导社会的运转。企业则可以通过公开的数据了解客户的行为,从而推出针对性的产品和服务,使其利益最大化。研究者则可以利用公开的数据,从社会、经济、技术等不同的角度进行研究。因此,大数据时代的隐私性主要体现在不暴露用户敏感信息的前提下进行有效的数据挖掘,这有别于传统的信息安全领域更加关注文件的私密性等安全属性。统计数据库数据研究中最早开展数据隐私性技术方面的研究,近年来逐渐成为相关领域的研究热点。很多学者开始致力于研究保护隐私的数据挖掘(Privacy Preserving Data Mining),主要集中于研究新型的数据发布技术,尝试在尽可能少损失数据信息的同时最大化地隐藏用户隐私。但是数据信息量和隐私之间是有矛盾的,因此,尚未出现非常好的解决办法。Dwork在2006年提出了新的差分隐私(Differential Privacy)方法。差分隐私保护技术可能是解决大数据中隐私保护问题的一个方向,但是这项技术离实际应用还很远。
(3)数据动态性。大数据时代数据的快速变化除了要求有新的数据处理技术应对之外,也给隐私保护带来了新的挑战。现有隐私保护技术主要基于静态数据集,而在现实中,数据模式和数据内容时刻都在发生着变化,因此在这种更加复杂的环境下实现对动态数据的利用和隐私保护将更具挑战。
4.大数据能耗的挑战
在能源价格上涨、数据中心存储规模不断扩大的今天,高能耗已逐渐成为制约大数据快速发展的瓶颈。从小型集群到大规模数据中心都面临着降低能耗的问题,但是尚未引起足够的重视,相关的研究成果也较少。在大数据管理系统中,能耗主要由两大部分组成:硬件能耗和软件能耗,二者之中又以硬件能耗为主。理想状态下,整个大数据管理系统的能耗应该和系统利用率成正比。但是实际情况并不像预期情况,系统利用率为0的时候仍然有能量消耗。针对这个问题,《纽约时报》和麦肯锡经过一年的联合调查,最终在《纽约时报》上发表文章Power,Pollution and the Internet。调查显示Google数据中心年耗电量约为300万度,而Facebook则在60万度左右。最令人惊讶的是在这些巨大的能耗中,只有6%~12%的能量被用来响应用户的查询并进行计算。绝大部分电能用以确保服务器处于闲置状态,以应对突如其来的网络流量高峰,这种类型的功耗最高可以占到数据中心所有能耗的80%。从已有的一些研究成果来看,可以从以下两个方面改善大数据能耗问题:
(1)采用新型低功耗硬件。从《纽约时报》的调查中可以知道绝大部分能量都耗费在磁盘上。在空闲状态下,传统的磁盘仍然具有很高的能耗,并且随着系统利用率的提高,能耗也在逐渐升高。新型非易失存储器件的出现,给大数据管理系统带来新的希望。闪存、PCM等新型存储硬件具有低能耗的特性。虽然随着系统利用率的提高,闪存、PCM等的能耗也有所升高,但是其总体能耗仍远远低于传统磁盘。
(2)引入可再生的新能源。数据中心所使用的电能绝大部分都是从不可再生的能源中产生的。如果能够在大数据存储和处理中引入诸如太阳能、风能之类的可再生能源,将在很大程度上缓解能耗问题。这方面的工作很少,有研究人员探讨了如何利用太阳能构建一个绿色环保的数据库。