购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

3.1 大数据问题分类

我们把大数据问题归纳为以下几类,如表3-1所示。

表3-1 大数据问题

续表

3.1.1 速度方面的问题

传统的关系型数据库管理系统(RDBMS)一般都是集中式的存储和处理,没有采用分布式架构,在很多大型企业中的配置往往都是基于IOE架构。在这种典型配置中,单台服务器的配置通常都很高,可以达几十个CPU,内存也能达到上百GB,数据库的存储放在高速大容量的磁阵上,存储空间可达TB级。这种配置可以满足传统的管理信息系统(MIS)需求,然而面对不断增长的数据量和动态数据应用场景,这种集中式的处理方式就会成为瓶颈,尤其是在速度响应方面捉襟见肘。在面对大数据量的导入/导出、统计分析、检索查询方面,由于依赖于集中式的数据存储和索引,性能随着数据量的增长而急速下降,对于需要实时响应的统计及查询场景更是无能为力。比如在物联网中,传感器的数据可以达几十亿条,对这些数据需要进行实时入库、查询及分析,传统的RDBMS就不再适合了。在面临海量数据的压力时,基于传统数据存储和处理的企业就只能选择丢掉数据,或者只处理一小部分的热数据,对于需要及时响应的紧急事件、应急情形处理都只能依靠大量的人工,这样大数据的价值就无从发挥了。

3.1.2 种类及架构问题

RDBMS对于结构化的、固定模式的数据,已经形成相当成熟的存储、查询、统计和分析处理方式。随着物联网、互联网以及移动通信网络的飞速发展,数据的格式及种类在不断变化和发展。在智能交通领域,所涉及的数据可能包含文本、日志、图片、视频、矢量地图等来自不同数据采集监控源的、不同种类的数据。这些数据的格式通常都不是固定的,如果采用结构化的存储模式将很难满足不断变化的需求。基于固定模式、固定数据库字段的信息系统架构,一方面是无法存储和处理非结构化的数据,如图片和视频;另一方面对于任意数据字段的调整都需要从数据库层面、中间件和应用层面进行调整,耗费相当大的时间和精力。对于这些种类各异的多源异构数据,需要采用不同的数据和存储处理模式,结合结构化和非结构化数据存储方式。在整体的数据管理模式和架构上,也需要作出调整,采用新型的分布式文件系统及分布式NoSQL数据库架构,才能适应大数据量及变化的结构。

3.1.3 体量及灵活性问题

如前所述,大数据由于体量巨大,采用集中式的存储,在速度、响应方面都存在问题。当数据量越来越大、并发读/写量也越来越大时,集中式的文件系统或单数据库操作将成为致命的性能瓶颈,毕竟单台机器的承受压力是有限的。我们可以采用线性扩展的架构和方式,把数据的压力分散到很多台机器上,直到可以承受,这样就可以根据数据量和并发量来动态增加和减少文件或数据库服务器,实现线性扩展。

在数据的存储方面,需要采用分布式可扩展的架构,比如大家所熟知的Hadoop文件系统和HBase数据库,它们能够把数据分发到上千台甚至上万台服务器上进行存储和索引。同时在数据的处理方面,也需要采用分布式的架构,把数据处理任务分配到很多计算节点上,同时还需考虑数据存放节点和计算节点之间的位置相关性。在计算领域中,资源分配、任务分配实际上是一个任务调度问题,其主要功能是根据当前集群中各个节点上面的资源(包括CPU、内存、存储空间和网络资源等)的占用情况和各个用户作业服务质量要求,在资源和作业或任务之间作出最优的匹配。由于用户对作业服务质量的要求是多样化的,同时资源的状态也在不断变化,因此,为分布式数据处理找到合适的资源是一个动态调度问题,既要保证任务的响应时间,又要照顾到资源的均衡使用,在拥有大量服务器的数据中心里,还要考虑整体数据中心的能源消耗,采用节能调度。

3.1.4 成本问题

集中式的数据存储和处理,在硬件/软件选型时,采用的方式基本都是配置相当高的大型机或小型机服务器,以及访问速度快、保障性高的磁盘阵列,来保障数据处理性能。这些硬件设备都非常昂贵,动辄高达数百万元,同时软件也经常是国外大厂商如Oracle、IBM、SAP、微软等的产品,对于服务器及数据库的维护也需要专业技术人员,投入及运维成本很高。在面对海量数据处理的挑战时,这些厂商也推出了形似庞然大物的“一体机”解决方案,如Oracle的Exadata、SAP的Hana等,通过把多服务器、大规模内存、闪存、高速网络等硬件进行堆叠来缓解数据压力,然而在硬件成本上更是大幅跳高,比如一台Exadata一体机在满配时需要近2000万元人民币,一般的企业很难承受。

新型的分布式存储架构、分布式数据库如HDFS、HBase、Cassandra、MongoDB等由于大多采用去中心化的、MPP海量并行处理架构,在数据处理上不存在集中处理和汇总的瓶颈,同时具备线性扩展能力,能有效地应对大数据的存储和处理问题。在软件架构上也都实现了一些自管理、自恢复的机制,以面对大规模节点中容易出现的偶发故障,保障系统整体的健壮性,因此对每个节点的硬件配置要求并不高,甚至可以使用普通的PC作为服务器,所以在服务器成本及运营维护上可以大大节省。在软件方面开源软件也占据非常大的价格优势,基于开源的解决方案成本往往不到基于大型机/小型机的1/5。

当然,在谈及成本问题时,我们不能简单地进行硬件/软件的成本对比。要把原有的系统及应用迁移到新的分布式架构上,从底层平台到上层应用都需要做很大的调整。尤其是在数据库模式以及应用编程接口方面,新型的NoSQL数据库与原来的RDBMS存在较大的差别,企业需要评估迁移及开发成本、周期及风险。除此之外,还需考虑服务、培训、运维方面的成本。但在总体趋势上,随着这些新型数据架构及产品的逐渐成熟与完善,以及一些商业运营公司基于开源技术为企业提供专业的数据库开发及咨询服务,新型的分布式、可扩展数据库模式必将在大数据浪潮中胜出,从成本到性能方面完胜传统的集中式大型机模式。

3.1.5 价值挖掘问题

大数据由于体量巨大,同时又在不断增长,因此单位数据的价值密度在不断降低。但同时大数据的整体价值却在不断提高,大数据在当今时代被类比为“石油”和“黄金”,因为从中可以发掘巨大的商业价值。要从海量数据中找到潜藏的模式,需要进行深度的数据挖掘和分析。大数据挖掘与传统的数据挖掘模式也有较大的区别:传统的数据挖掘一般数据量较小,算法相对复杂,收敛速度慢。然而大数据的数据量巨大,在对数据的存储、清洗、ETL(抽取、转换、加载)方面都需要能够应对大数据量的需求和挑战,在很大程度上需要采用分布式并行处理的方式。比如谷歌、微软的搜索引擎,在对用户的搜索日志进行归档存储时,就需要达几百台甚至上千台服务器同步工作,才能应对全球上亿用户的搜索行为。同时,在对数据进行挖掘时,也需要改造传统数据挖掘算法以及底层处理架构,同样采用并行处理的方式才能对海量数据进行快速计算分析。Apache的Mahout项目就提供了一系列数据挖掘算法的并行实现。在很多应用场景中,甚至需要将挖掘的结果实时反馈回来,这对系统的性能提出了很大的挑战。因为数据挖掘算法通常需要较长的时间,尤其是在大数据量的情况下,可能需要结合大批量的离线处理和实时计算才可能满足需求。

数据挖掘的实际增效也是我们在进行大数据价值挖掘之前需要仔细评估的问题,并不见得所有的数据挖掘计划都能得到理想的结果。首先需要保障数据本身的真实性和全面性,如果所采集的信息本身噪声较大,或者一些关键性的数据没有包含进来,那么所挖掘出来的价值规律也就大打折扣。其次也要考虑价值挖掘的成本和收益,如果对挖掘项目投入的人力/物力、硬件/软件平台耗资巨大,项目周期也较长,而挖掘出来的信息对于企业生产决策、成本效益等方面的贡献并不大,那么片面地相信和依赖数据挖掘的潜力也是不切实际和得不偿失的。

3.1.6 安全及隐私问题

在大数据的安全及隐私保障方面,大数据由于存在格式多变、体量巨大的特点,也带来了很多挑战。针对结构化数据,关系型数据库管理系统RDBMS经过几十年的发展,已经形成了一套完善的存储、访问、安全与备份控制体系。由于大数据的巨大体量,也对传统RDBMS造成了冲击,如前所述,集中式的数据存储和处理也在转向分布式并行处理。大数据更多的时候是非结构化数据,因此也产生了许多分布式文件存储系统、分布式NoSQL数据库等来应对这类数据。然而这些新兴系统在用户管理、数据访问权限、备份机制、安全控制等各方面还需进一步完善。安全问题,如果简而言之,一是要保障数据不丢失,对海量的结构、非结构化数据,需要有合理的备份冗余机制,在任何情况下数据不能丢。二是要保障数据不被非法访问和窃取,只有对数据有访问权限的用户,才能看得到数据,拿得到数据。由于大量的非结构化数据可能需要不同的存储和访问机制,因此要形成对多源、多类型数据的统一安全访问控制机制,这还是亟待解决的问题。大数据由于将更多更敏感的数据汇集在一起,对潜在攻击者的吸引力更大。若攻击者成功实施一次攻击,将能得到更多的信息,“性价比”更高,这些都使得大数据更易成为被攻击的目标。比如,2011年12月CSDN的安全系统遭到黑客攻击,600万名用户的登录名、密码及邮箱被泄露;LinkedIn在2012年被曝650万名用户账户密码泄露;雅虎遭到网络攻击后,致使45万用户ID泄露。

与大数据紧密相关的还有隐私问题。由于物联网技术和互联网技术的飞速发展,与我们工作生活相关的各类信息都被采集和存储下来,我们随时暴露在“第三只眼”下面。不管我们是在上网、打电话、发微博、微信,还是在购物、旅游,我们的行为都在随时被监控分析。对用户行为的深入分析和建模,可以更好地服务用户,实施精准营销。然而如果信息泄露或被滥用,则会直接侵犯到用户的隐私,给用户造成恶劣的影响,甚至带来生命财产的损失。2006年,美国DVD租赁商Netflix公司举办了一个算法竞赛。该公司公布了大约来自50万用户的一亿条租赁记录,并且公开悬赏100万美元,举办一个软件设计大赛来提高他们的电影推荐系统的准确度,胜利的条件是把准确度提高10%。尽管该公司对数据进行了精心的匿名化处理,还是被一个用户认出来了,一个化名“无名氏”的未表明身份的同性恋母亲起诉了Netflix公司,她来自保守的美国中西部。在美国的微博网站Twitter.com上面,很多用户习惯随时发布他们的位置和动态信息,结果有几家网站,如“PleaseRobMe.com”——请来抢劫我,“WeKnowYourHouse.com”——我知道你的家,能够根据用户所发的信息,推测出用户不在家的时间,找到用户的准确家庭住址,甚至把房子的照片都能找出来。他们的做法旨在提醒大家我们随时暴露在公众视线下,如果不培养安全和隐私意识,将会给自身带来灾难。目前世界上很多国家,包括中国,都在完善与数据使用及隐私相关的法律,来保护隐私信息不被滥用。

3.1.7 互联互通与数据共享问题

在我国的企业信息化建设过程中,普遍存在条块分割和信息孤岛的现象。不同行业之间的系统与数据几乎没有交集,同一行业,比如交通、社保系统内部等,也是按行政领域进行划分建设,跨区域的信息交互和协同非常困难。更甚者,同一单位内,比如一些医院的信息系统建设,病历管理、病床信息、药品管理等子系统都是分立建设的,没有实现信息共享和互通。“智慧城市”是我国“十二五”信息化建设的重点,而智慧城市的根本是要实现信息的互联互通和数据共享,基于数据融合实现智能化的电子政务、社会化管理和民生改善。因此在城市数字化的基础上,还需实现互联化,打通各行各业的数据接口,实现互联互通,在此之上才能实现智慧化。比如在城市应急管理方面,就需要交通、人口、公安、消防、医疗卫生等各个方面的数据和协助。美国联邦政府建立的数据共享平台(www.data.gov)和我国北京市政府数据资源网(www.bjdata.gov.cn)等都是数据开放、数据共享的大胆尝试。

为实现跨行业的数据整合,需要制定统一的数据标准、交换接口以及共享协议,这样不同行业、不同部门、不同格式的数据才能基于一个统一的基础进行访问、交换和共享。对于数据访问,还需制定细致的访问权限,规定什么样的用户在什么样的场景下,可以访问什么类型的数据。在大数据及云计算时代,不同行业、企业的数据可能存放在统一的平台和数据中心之上,我们需要对一些敏感信息进行保护,比如涉及企业商业机密及交易信息方面的数据,虽然是依托平台来进行处理,但是除了企业自身的授权人员之外,要保证平台管理员以及其他企业都不能访问此类数据。 n/PsPaTaHGwLFNPFl6JKKRf0Soac3iOJ5uHb2C6SVFAHb2Fv/7aX2k078Q+rjXHa

点击中间区域
呼出菜单
上一章
目录
下一章
×