大数据解决方案之权变因素及其矩阵研究
2015-03-10尹晓锋辛伯宇
尹晓锋,辛伯宇
(1.山西省贸易学校计算机科学系,山西太原,030012;2.山西交通职业技术学院信息工程系,山西太原,030031)
大数据解决方案之权变因素及其矩阵研究
尹晓锋1,辛伯宇2
(1.山西省贸易学校计算机科学系,山西太原,030012;2.山西交通职业技术学院信息工程系,山西太原,030031)
[摘要]随着互联网、物联网和云计算等技术的发展,大数据逐渐引起各种组织的关注及应用。然而,如何制定或组织大数据解决方案,还尚未有统一的标准可循。为了解决该问题,本文对现有的大数据解决方案进行了比较性研究和归类分析,重点研究了大数据解决方案的权变因素,并提出了大数据解决方案权变因素矩阵,为相关组织或技术人员组织和选择大数据解决方案提供了一种可行的权衡策略。
[关键词]大数据;特性;权变因素;矩阵
辛伯宇(1978-),男,山西交通职业技术学院讲师,研究方向:数据库,软件工程,物联网。
Contingency Factors and Matrix Study of Big Data Solution
YIN Xiaofeng1, XIN Boyu2
(1.Department of Computer Science, Shanxi Trade School, Taiyuan 030012, Shanxi; 2.Department of Information Engineering, Shanxi Traffic Vocational and Technical College, Taiyuan 030031,Shanxi)
[Abstract]With the development of the internet, IOT and cloud computing technology etc., big data have gradually attract attention and application of various organizations. However, there is no unified standard for how to make or organize big data solution. To solve this problem, this paper conducted a comparative study and the classified analysis for the existing big data solutions,focusing on the contingency of big data solutions, and proposes the contingency factor matrix of big data solutions, which provides an effective strategy for technical staffs or organizations to organize and choose big data solution.
[Key words]big data; features; contingency factors; matrix
1 引言
在信息充分发达和发展的时代,随着物联网等技术应用的不断深入,数据量几乎成指数级增长。每天从RFID、传感器、控制器、智能设备等都会产生海量数据。据统计,在2000年,全球存储了800,000PB的数据;预计到2020年,这一数字会达到35ZB[1]。如此庞大的数据是一种重要的资源,其中蕴含着很多有用的信息和模式。
2001年Laney[2]等首次从类型(variety)、数量(volume)和速度(velocity)三个方面对大数据进行描述和讨论,后来这3个方面被定义为大数据的特性;2012年,IBM大数据增加了另外一个特性——真实性(veracity)[3],以度量大数据的质量。当前,大数据的类型主要包括结构化、非结构化、半结构化、混合四种数据类型;数量是指大数据数量级,大多数专业人士认为TB或PB级是目前大数据的基准,但今天的“大”有可能是明天的“正常”;速度是指数据产生和处理的速率;真实性是指数据依赖于其来源的可靠程度。基于上述分析,本文认为大数据是一种以持续增长的数据数量及数据的种类、速度和真实性为特征的现象,其需要先进的工艺和技术来捕获、存储、分发、管理和分析,其模型如图1所示。
图1 大数据模型
目前,随着数据采集、存取、处理、应用(主要指统计分析、数据挖掘、模型预测、结果呈现)以及基础架构(云存储、分布式文件存储)等研究的深入发展,使得大数据的应用逐渐成为现实,其在通信、医疗、能源、电子商务等行业率先应用和发展。对于大数据的应用研究,基本上可以归结为“基于感知、存储与应用(计算)融合的大数据解决方案”。
然而,如何制定或组织大数据解决方案,到目前为止还没用有统一的标准可循。针对该问题,本文对现有的大数据解决方案进行了比较性研究,对现有方案进行归类分析,从大数据特性和应用角度分析大数据解决方案的权变因素,在此基础上进一步提出大数据解决方案权变因素矩阵,为组织或技术人员组织和选择大数据解决方案提供一种指导性技术选择工具。
2 大数据解决方案类型的比较
根据应用相关大数据特定技术集成度的高低,现有的大数据解决方案归纳分为四种基本类型,如图2所示,其中
图2 大数据解决方案的相关特定技术集成度
以基于RDBMS的数据仓库架构所用的相关大数据特定技术基础集成度最低,其次为BDAaas,第三为MapReduce and DFS,Hybrid approach最高。关于这四种大数据解决具体描述及分析如下:
2.1基于RDBMS的数据仓库架构
基于RDBMS的数据仓库架构是将据从各种内部和外部资源中提取、选取、汇总并加载到数据仓库中;数据存储在多个机器上,表分布在集群的节点上,应用层允许访问不同节点的不同数据部分。这种结构可以实现线性的加速及规模扩大[4],这意味着在相同的时间内,双倍的硬件允许执行双倍的任务。但数据的加载变得麻烦和耗时。例如,Pavlo et al等使用简单的纯文本文件向RDBMS中加载数据时比向基于MapReduce解决方案加载数据时长11倍[5]。因此,RDBMS即便可以处理非结构化数据,也效率不高,即有可能进行频繁加载,这将使得RDBMS的性能急剧下降。
总之,当不涉及频繁地加载新数据到系统中、任务涉及较少的非结构化数据时,基于RDBMS的数据仓库架构是解决大数据问题的一个较为适合的解决方案。
2.2BDAaaS解决方案
BDAaaS(Big Data Analytics as a Service,大数据分析作为服务)与云联系在一起,而云一般分为三类:私有云将数据部署在专用(私有)网络,由网络的拥有者进行管理或第三方托管,能够较好地保证数据的隐私性和安全性;公共云布置在互联网的分散节点上,数据隐私性、安全性只能通过与BDAaaS解决方案的供应商的合同进行约束;混合云将公共云中的有意义数据提供给私有云,并在私有环境下进行数据处理,较好地解决了私有数据的隐私性和安全性。
BDAaaS的基础设施托管云中,对于中小企业或组织来讲,这种方式远比在内部推行大数据解决方案更灵活,且更具吸引力,但是基于云服务的数据隐私和安全性。当敏感数据在云中等待分析处理时,数据在传输过程中的加密就再所难免,然而,使用加密的数据进行操作对大多数BDAaaS解决方案来讲,仍旧面临诸多挑战;此外,云服务提供商和组织内部的基础设施之间数据交换亦无明确的解决方式。
BDAaaS解决方案适合于没有组织内部数据的大数据分析或只能基于特定的平台的数据分析。
2.3MapReduce and DFS解决方案
MapReduce and DFS解决方案在分析大数据时引入了使用DFS(Distributed File System,分布式文件系统)和MapReduce引擎的新系统,其典型的代表便是Hadoop其原理是使用MapReduce引擎对分布式文件系统的数据进行处理,结果再次被存储于分布式文件系统或直接于用智能应用。MapReduce方法不同于RDBMS,要实现查询,必须书写一些小程序,即“用户指定一个映射函数处理一个‘键-值’对来生成一组中间的‘键-值’对,并且用一个函数合并与同一中间键相关联的所有中间值”[6]。这些小程序被注入到分布式处理架构,这决定了哪些映射函数和推理函数在必须在哪些结点上运行。
进行非结构化数据高级分析时,MapReduce系统和RDBMS相比具有加载时间短,但执行查询任务耗时,秩序复杂等特点。
MapReduce为解决向RDBMS环境中加载大量的传感、通信等数据到数据仓库中的昂贵代价提供了一种新的组织方式;然而,其在潜在的频繁地改变查询模式的环境中显得力不从心,此外,后期的迁移、咨询和培训有可能迅速增加整体成本。
2.4Hybrid approach解决方案
Hybrid approach解决方案是一种混合策略,它集中了基于RDBMS的数据仓库架构和MapReduce and DFS解决方案优势,有三种形式:
1、MapReduce主导混合系统。用基于RDBMS策略的优势技术的组件扩充MapReduce技术。但在查询处理性能方面的提高很有限,因为关系型组件仅被典型地集成在几个节点[8]。
2、RDBMS主导混合系统。在RDBMS中集成MapReduce优势能力以提高非结构化数据处理能力,其尽管已经被证明在特定的环境中会导致错误,但仍被商业供应商经常采用[9]。
3、MapReduce和RDBMS松耦合系统[10]。其在理论上可以连接任何MapReduce和RDBMS系统,但标准接口的缺乏会引起一系列问题(如两个系统之间复杂数据的传输和优化)[8]。
到目前为止,Hybrid approach解决方案的性能表现还未超越单纯基于RDBMS的数据仓库架构或MapReduce and DFS解决方案,但从经济的角度来看,Hybrid approach解决方案较其他解决方案要昂贵许多。
3 影响大数据解决方案的权变要素
基于以上大数据及其现有解决方案的分析,在现有应用基础的条件下,技术人员如何组织或选择大数据的解决方案是一个复杂的斟酌过程。影响大数据解决方案相关大数据特定技术集成度权变因素如图3所示。
图3 影响大数据解决方案相关大数据特定技术集成度权变因素
从图3可知,大数据特性技术因素、应用技术因素、应用基础因素从不同侧面共同影响大数据解决方案的组织或制定。
3.1大数据特性技术因素
3.1.1大数据种类及存储策略
大数据的种类即数据类型主要分为结构化、非结构化、半结构化和混合四种。据统计,可结构化数据——即可以存储在数据库等传统系统(主要是指关系型数据库产品)中的数据占数据总量的20%左右[1][11];其他的80%数据不能至少是不便于存储于传统的系统中,因为其结构形式是非结构化的或者是半结构化的(如文本、传感器数据、音频、视频、事务及地震模型类的动态数据等非关系型数据)。
若企业数据多为结构化数据,建议采用基于RDBMS的数据仓库架构解决方案;若包含大量使用来自互联网的非结构化数据,则建议采用BDAaaS解决方案;在忽略资金约束的情况下,根据组织规模,可以考虑MapReduce and DFS和Hybrid approach解决方案以解决组织对半结构化数据和混合数据的应用。
3.1.2大数据计算速度
正常大数据的计算以数据密集型为主要特征,CPU的处理速度对大数据计算速度影响不大,大数据的计算速度与数据到达速度密切相关,而影响数据到达速度的主要是通信系统的性能。在通信性能明显改善之前,合理动态数据管理或许是解决大数据计算瓶颈的明智选择。如C. Wang等提出了基于DCG(Distributed Computation Graphs分布式计算图)的架构以实现所需的分析功能[14],初始用例包括了从监测设备和服务收集来的信息,一旦发现潜在问题,系统就开始实例化DCGs收集进一步的信息以供分析,这种即时发现即时处理的架构在一定程序缓解了大数据到达速度的压力。
从数据到达速度考虑应首先考虑较少需要数据传输的RDBMS解决方案;其次考虑MapReduce and DFS和Hybrid approach解决方案;受其他因素影响,在前述解决方案不能满足要求的情况下,才考虑BDAaaS解决方案。
3.1.3大数据真实性
除故意的数据欺骗外,大数据的真实性不能得到保证的主要原因还与数据的不一致性、不完整性和二义性,数据延时,模型近似等相关。RDBMS的范式可以通过建模解决数据的不一致性、不完整性和二义性;MapReduce and DFS解决方案的某些架构可以减少数据延时。
基于此,为了从数据的一致性、完整性、无二义性方面来保证数据的真实性,则建议采用基于RDBMS的数据仓库架构的大数据解决方案;若从降低数据延时引起的数据失真,则建议采用MapReduce and DFS解决方案;而从模型近似这个原因来讲的话,则应该尽量避免基于RDBMS的数据仓库架构解决方案的选择,尽量选择MapReduce and DFS或Hybrid approach解决方案;此外,除非有足够的措施或体系保证避免数据欺骗,否则不建议采用MapReduce and DFS解决方案。
3.2大数据应用技术因素
3.2.1大数据分析策略
一旦选择大数据解决方案,其主要目的是通过大数据分析以满足应用需求。大数据分析策略主要分为描述性、预测性、规范性三种类型描述性分析关心的主要是建模过去行为,主要采用的是历史数据,建议采用RDBMS和BDAaaS(除非组织的需求非常低端,否则不建议采用RDBMS)解决方案;预测性分析和规范性分析关心的是对未来的预测和引导决策,需要访问组织内、外部的数据并进行经常性地调整,MapReduce and DFS和Hybrid approach则能更好地为其提供支持。
3.2.2数据隐私和安全性
如果组织十分重视数据隐私和安全控制水平,那么应该选择基于组织自身管理和控制的私有网络的解决方案——基于RDBMS的数据仓库架构或Hybrid approaches解决方案;此外,基于私有云或混合云的BDAaaS解决方案也是不错的替代方案,而由于MapReduce and DFS解决方案的分布式系统的各种安全隐患,不建议选择。
3.2.3常规任务数
常规任务是重复的结构化的任务;非常规化任务是指在特定情况下,需要独特解决方案的任务。一个组织的常规任务越多,对数据分析的处理能力需求越少。
例如,就查询而言,如果是常规任务,需要经常地运行同样的查询并频繁加载新数据,则基于RDBMS的数据仓库架构或Hybrid approaches解决方案在此种情况下更有价值。
3.3大数据应用基础因素
3.3.1资源可用性
资源可用性主要从资金和人力资源方面来考虑,可用资源量足以影响大数据解决方案的选择。组织的规模往往与可用资源量休戚相关,对于规模大的组织而言,其可以负担更复杂和全面的大数据解决方案(如Hybrid approach)费用,亦可能拥有或更容易得到愿意实施既定解决方案的人力资源。
3.3.2IT人员能力
IT人员能力的高低往往决定着技术先进的复杂解决方案(如MapReduce或Hybrid approaches)的成功与否。内部组织如果不具有能够实施复杂系统的经验丰富且熟练的团队,亦不具备培训或引入相应IT人员的资金力量,那么,基于RDBMS的数据仓库架构和BDAaaS解决方案不失为一种有明智的选择。
3.3.3内化能力
内化能力是指关键组织成员利用现有或早已存在知识的能力,这是组织创新的关键驱动力。如果组织成员对于新布署的系统的价值不理解或了解不多,那么,也可能不会使用它。从这个意义上来讲,选择基于RDBMS的数据仓库架构或BDAaaS解决方案或许比选择MapReduce and DFS和Hybrid approaches解决方案现实。
4 大数据解决方案权变矩阵
组织对大数据应用基础和需求不同,其对大数据解决方案的要求不同。为明确组织需求,权变因素对大数据解决方案的影响,建立如图4的大数据解决方案权变因素矩阵。
图4 大数据解决方案权变因素矩阵
技术人员在组织或选择大数据解决方案的过程中,可首先根据具体的需求,结合图3影响大数据解决方案的权变因素,制定大数据解决方案的主要考虑因素(集);在此基础上,结合图4大数据解决方案权变因素矩阵中给出的基于四种主要大数据解决方案类型给出的权重,对欲组织或制定具体的大数据解决方案进行具体分析和权衡,从而组织或选择具体的大数据解决方案策略;最后根据具体组织或选择的大数据解决方案(策略)来具体组织实施。如图5所示。
图5 大数据解决方案权变因素及矩阵应用流程
5 结论
本文在分析大数据解决方案类型、大数据解决方案权变要素的基础上提出了大数据解决方案权变因素矩阵;最后说明了应用该研究成果的流程,为技术人员组织或选择大数据解决方案提供了一种具有指导意义的大数据技术选择工具和策略。
[参考文献]
[1] Paul C. Zikopoulous, Chris Eaton, Dirk deRoos, Thomas Deutsch, George Lapis.《Uderstanding Big Data》[M]. NewYork: Mc Graw Hill, 2012.8
[2] Laney, D., 3d Data Management: Controlling Data Volume, Velocity, and Variety [J]. Application Delivery Strategies, 2001 [2013-03-18]. http://blogs.gartner.com/doug-laney/files/2012/01/ad 949-3D-Data-Management-Controlling-Data-Volume-Velocityand-Variety.pdf.
[3] P. S. Yu, On mining big data [J]. in:. Wang, H. Xiong, Y. Ishikawa, J. Xu, J. Zhou (Eds.), Web-AgeInformation Management, Vol. 7923 of Lecture Notes in Computer Science, Springer-Verlag, Berlin, Heidelberg,2013, pp16.
[4]Dewitt, D., and Gray, J., Parallel Database Systems: The Future of High Performance Database Systems [J]. Commun. ACM, 35(6), 1992, pp. 85-98.
[5] Pavlo, A., Paulson, E., Rasin, A., Abadi, D.J., Dewitt, D.J., Madden, S., and Stonebraker, M., A Comparison of Approaches to Large-Scale Data Analysis [C]. Proceedings of the 2009 ACM SIGMOD International Conference on Management of Data, 2009, pp. 165-178.
[6] Dean, J., and Ghemawat, S., Mapreduce: Simplified Data Processing on Large Clusters [J]. Commun. ACM, 51 (1), 2008, pp. 107-113.
[7]Chen, H., Chiang, R.H.L., and Storey, V.C., Business Intelligence and Analytics: From Big Data to Big Impact[J]. MIS Quarterly, 36(4), 2012, pp. 1165-1188.
[8] Gruska, N., and Martin, P., Integrating Mapreduce and Rdbmss [C]. Proceedings of the 2010 Conference of the Center for Advanced Studies on Collaborative Research, 2010, pp. 212-223.
[9] Xu, Y., Kostamaa, P., and Gao, L., Integrating Hadoop and Parallel Dbms [C]. Proceedings of the 2010 ACM SIGMOD International Conference on Management of data, 2010, pp. 969-974.
[10] Stonebraker, M., Abadi, D., Dewitt, D.J., Madden, S., Paulson, E., Pavlo, A., and Rasin, A., Mapreduce and Parallel Dbmss: Friends or Foes?[J]. Commun. ACM, 53(1), 2010, pp. 64-71.
[11]Ariyachandra, T., and Watson, H., Key Organizational Factors in Data Warehouse Architecture Selection [J]. Decis. Support Syst., 49(2), 2010, pp. 200-212.
[12]S. Ghemawat, H. Gobioff, S.-T. Leung, The google file system [R]. in: 9th ACM Symposium on Operating Systems Principles (SOSP 2003), ACM, New York, USA, 2003, pp. 29-43.
[13] A. Thusoo, Z. Shao, S. Anthony, D. Borthakur, N. Jain, J. S. Sarma, R. Murthy, H. Liu, Data warehousing and analytics infrastructure at Facebook [C]. in: Proceedings of the 2010 international conference on Management of data, SIGMOD '10, ACM, New York, NY, USA, 2010, pp.1013-1020.
[14]C. Wang, K. Schwan, V. Talwar, G. Eisenhauer, L. Hu, M. Wolf, A flexible architecture integrating monitoring and analytics for managing large-scale data centers[C]. in: 8th ACM International Conference on Autonomic Computing, ICAC '11, ACM, New York, USA, 2011, pp.141-150.
[作者简介]尹晓峰(1982-),男,山东太原人,山西省贸易学校助理讲师,研究方向:计算机应用。
[收稿日期]2015-10-28
[中图分类号]TP311.13
[文献标识码]A
[文章编号]1671-5004(2015)06-0001-03