大数据背景的IT平台架构探索
2015-10-22陈佶弘
陈佶弘
【摘 要】传统IT平台架构无法应对大数据井喷式的数据管理和存储压力。本文站在更好地服务大数据采集和分析的角度,设计了大数据背景下的IT平台架构,同时还比较了并行计算、网格计算等几种重要的架构承载技术,比较了其各自的优势和不足。
【关键词】大数据;软件架构;并行计算、网格计算;索引
【Abstract】The traditional IT platform can not deal with the data management and storage pressure of big data blowout type. This article stands in the better service data acquisition and analysis angle design under the background of big data it platform architecture, the parallel computing, grid computing and so on several important architecture bearing technology, compared with their respective advantages and shortcomings.
【Key words】Big data; Software architecture; Parallel computing; Grid computing; Index
0 引言
大数据的概念已经是如今IT界炙手可热的话题之一。如何使用大数据,如何在大数据背景下更新现有的技术架构,已经成为人们研究的热点。许多IT人士都在收集和分析这些新的数据源,期望通过这些新数据源,通过挖掘技术,分析其所带来的海量信息。
大数据(Big Data)是由互联网蓬勃发展而带来的一种特有的现象。一般定义,数据量的大小超出了一定限制,需要对其进行非常规的抓取、分析、处理工作的数据就是“大数据”,这样的大数据包括了日常我们使用的网页数据、网站上的交互数据以及在物联网模式下产生的部分活动。大数据除了具有大容量、多类型和高时效等基本特征外,还具有一些区别于传统数据源的重要特征[1]。
a.大数据并非是通过人产生的,而是计算机生成的。在产生这些数据的过程之中,人工参与是极少量的;
b.大数据通常是一种全新的数据源。它与传统数据源不同,它可能来自于网络的各个端的隐型数据。
c.很多大数据的设计并不友好。数据的获取很容易,但是处理却不那么容易。
d.大数据可能并不蕴含大量的价值。需要不断的提炼和分析才可以找到其中有价值的部分。
1 大数据背景下IT平台架构的设计
1.1 传统IT平台架构
IT平台的传统体系架构普遍使用的设计模式是层次式架构。一般分为三层,从上至下分别为:表示层、业务逻辑层、数据访问层,图1为传统IT平台体系架构图。
其中,表示层实现用户与软件系统的交互,该层主要的构成元素是文本框、标签、表单的UI元素,后台的业务操作流程是从表示层的提交操作开始的;业务逻辑层是整个软件体系架构的主旨部分,实现系统的业务流程,通过分析用户提交的请求确定业务逻辑、操作函数以及对数据层的操作类型,它是实现系统功能的主要环节;数据访问层主要实现数据库的访问,实现对底层数据库的增、删、改、查操作;安全服务层是确保系统信息安全的主要功能层。
1.2 大数据下的IT平台架构
大数据信息系统体系架构分为五层[2],从上而下分别为:用户界面层、可配置层、应用服务层、业务逻辑层、数据访问层,如图2所示:
(1)用户界面层
大数据信息体系架构中的用户界面层与传统IT平台架构中的表示层同样作为用户与服务器之间的接口,但是二者存在着很大的不同,其主要表现在表示层页面的可定制性、面向的数据群的大小和表示层的展现方式等方面。其根本实现是基于大数据可定制的特性,较传统的IT平台架构存在较大的优势。
(2)可配置层
大数据模式中的可配置层是相对于传统IT平台架构新增的设计层次。可配置功能主要包括数据的配置、功能的配置、界面的配置和流程的配置等。在大数据模式下,数据差异性较大,实际数据使用需求也各不相同,因此大数据平台应支持对不同级别服务的定制功能。
(3)业务逻辑层
大数据架构中的业务逻辑层是整个IT平台架构的主旨部分。业务逻辑层除了具有传统层所具有的特点,同时具有对可配置层业务整合功能,它为可配置层提供服务,构成用户的业务可配置流程,在结构上它封装了数据访问层的相关操作,该层主要由具体业务逻辑的类组成。
(4)应用服务层
应用服务层是大数据软件架构中新增的设计层次,传统的IT平台设计面向的是数量较少的应用,功能较为单一,但是大数据模式可定制性决定了大数据应用的多样性,同时大数据模式采用应用即服务的设计模式,应用通用层提供了大数据设计中所有应用均以服务的方式向用户提供的功能,是大数据服务实现的基础。
(5)数据访问层
大数据模式的数据访问层和传统IT平台架构的数据访问层一样,具有对数据库物理数据进行增、删、改、查等操作的功能,同时维护数据访问控制。大数据数据存储模型不同于传统软件数据存储模型,其数据访问层包括数据逻辑存储层和数据操作控制。数据逻辑存储模型实现了数据库物理数据的逻辑存储,数据操作控制的功能同传统设计模式中数据访问相同。
(6)安全服务
大数据安全在传统软件架构安全问题的基础上表现了新的特点,其面临的安全威胁主要体现在数据的安全上,主要包括数据访问控制、数据恢复和数据隔离等多个方面。
通过对传统软件架构和大数据模式软件架构的描述,我们可以看到,两种架构之间存在很大的差异,这主要是由大数据多租户、可配置特性所决定的,但是当前大数据体系架构的设计仍然存在缺陷,本文将主要研究大数据体系架构的数据访问层和安全服务层方面的设计思想,以达到改进大数据体系结构,提高体系架构可用性、健壮性和稳定性的目的。
2 大数据背景下架构处理技术
2.1 云计算
通过对硬件的虚拟化,云计算可以对大数据进行较快的提取、存储、处理、管理以及分析。
目前较多运用云计算平台Hadoop架构和Mapreduce模式组合应用处理海量数据,Hadoop是云计算平台的架构,Mapreduce是一种处理海量数据的模式方法,在Hadoop架构体系中运用了Mapreduce并行编程计算模式处理海量的数据,提高了大数据分析的性能。
2.2 网格计算
某些计算过程与算法无法全部转换成SQL,或者难以嵌入数据库的某个自定义函数中。在这种情况下,必须把数据从传统的分析环境中抽取出来,然后用传统的分析工具和软件进行分析,随着分析师越来越多,以及分析任务越来越繁重,必须对这些服务器进行扩容或者增加更多的服务器,这些都是相当昂贵的,网格配置可以降低系统成本并提高性能,它使用大量的低成本计算机,而不是一台或几台高性能的服务器。
网格计算还包括高性能的分析架构,在这个架构中,网格计算环境下的不同计算机都知道其他计算机的存在,并且不同计算机可以共享信息。这种协作方式,在同一时间充分使用了网格计算环境下的所有计算资源,使得某些大型任务可以更快地完成。
2.3 MapReduce
MapReduce是谷歌提出的一个使用简易的软件框架,用于大规模数据集的并行运算,基于它写出来的应用程序能够运行在由上千个普通机器组成的大型集群上,并以一种可靠容错的方式并行处理上太级别的数据集。分析师可以创建一个映射程序来搜索并分析文本记录中的每一个词语,然后将这些词语从段落中解析出来;许多大型的数据流都包含了大量没有长期价值的信息,部署在云端的弹性MapReduce可以根据需求实时地按需配置和访问服务器集群,实现对大量和密集型数据任务的处理,比如日志文件分析、数据挖掘等。
3 结语
大数据背景下,各类平台架构及处理技术都应该结合起来进行协同工作,这样才能最大程度将数据进行提炼。例如,数据库可以运行在云里;数据库可以内置MapReduce功能,MapReduce也可以直接处理云计算环境内的数据,MapReduce还可以对部署在云内的数据库的库内数据进行处理。这些技术的综合运用,互相补强,在统一的分析环境中可以是数据被高效利用,使得大数据的每一项技术都变得实用和高效。
【参考文献】
[1]Bill Franks.驾驭大数据[M].北京:人民邮电出版社,2013.
[2]曾巧文.大数据平台的若干关键技术研究[D].广东:广东工业大学,2010.
[责任编辑:杨玉洁]