王连备,范永弘,贲 进
(信息工程大学测绘学院,河南郑州 450052)
空间数据服务效率优化策略
王连备,范永弘,贲 进
(信息工程大学测绘学院,河南郑州 450052)
分析了空间数据服务的特点和现状,探讨了提高数据传输效率的技术途径,提出了基于Grid FTP集群的空间数据服务效率优化策略,设计了基于动态数据分块和服务性能加权的负载均衡算法并开展了相关实验。实验结果表明,提出的优化策略是可行、有效的,能够显著的改善大数据量空间数据集的传输效率。
空间数据;数据服务;传输效率;负载均衡;Grid FTP
空间数据具有海量的特征,这决定了空间数据是一种数据密集型和计算密集型的服务,具有服务处理时间长,易形成并发等特点。在网络环境下,如何提高海量空间数据的传输效率是构建高效空间数据服务必须要研究解决的问题[1,2]。
1.1 空间数据服务的技术实现形式
当前,空间数据服务主要有 2种具体的技术实现形式:
一种是基于OGC标准建立的Web服务,如WCS服务、WMS服务等。这类服务基于Web Service技术实现,采用 XML对空间数据进行编码和封装,通过HTTP协议进行数据传输。众所周知,基于XML的数据编码会导致实际需要传输的数据量增大[3],而且对XML的编解码操作还需要耗费大量的时间。因此,在传输遥感影像等大数据量数据集时,这类服务的数据传输效率较低。
另一种是采用FTP服务,以文件下载的方式为用户提供空间数据集。FTP(File Transfer Protocol,文件传输协议)是专门用于在网络上不同节点之间传输数据文件的协议,具有简单、易于实现的特点。但标准FTP协议缺乏健壮的容错机制,在传输遥感影像等大数据量数据集时,因所需时间较长而极易产生由网络故障导致的传输中断,而数据集重传将严重的降低传输效率。
1.2 优化海量数据传输效率的技术途径
Grid FTP协议是在标准FTP协议的基础上,为实现海量数据集的高效交换扩展而来的一种新型数据传输协议。该协议提供了并行传输、带状传输及可重启传输等新型数据传输机制[4,5]。
并行传输机制:该机制通过建立多个并行TCP流的方式来提高数据传输的总带宽。这种方式能够充分提高服务节点的资源利用率,从而提高数据传输效率。
带状传输机制:该机制将同一个文件的不同部分分别存放在不同的Grid FTP服务器上,从而突破单台服务器传输性能的限制,提高数据传输的效率。
可重启传输机制:该机制将标准FTP的重传协议扩展到数据通道协议中,当传输中断时,可重新建立连接并从数据中断的位置开始数据传输。
不难看出,相对于HTTP、标准FTP等经典传输协议而言,Grid FTP协议在构建高效数据传输服务方面具有较大的技术优势。
此外,多用户并发访问将大大增加对数据服务节点处理能力的要求。集群服务技术则是应对这一问题的有效举措[6,7]。
基于以上讨论,本文根据空间数据服务的特点和要求,综合Grid FTP协议和负载均衡技术,提出了一种基于Grid FTP集群的空间数据服务效率优化策略。
该策略的基本思想是利用Grid FTP协议带状数据传输的特性构建Grid FTP服务集群,将待传输的数据分配到集群内所有尚未满载的Grid FTP服务器上,让当前所有服务节点上的空闲资源都参与服务,且由当前传输性能优良的节点负责传输较多的数据。
1)动态数据分块和服务性能加权的负载均衡算法。基于上述策略,本文将服务节点选择、数据分块和分配等问题统一起来考虑,设计了动态数据分块和服务性能加权的负载均衡算法。该算法主要包括以下步骤:
(1)评估集群中各服务节点的性能,计算各节点的性能权值。服务节点的性能可以采用最大并发数、最高传输速率及当前负载等多个指标进行综合评价。而对于本文所研究的问题而言,需重点关注是反映各节点当前数据传输性能的指标。因此,本文采用当前可提供数据传输速率作为反映节点性能的评价指标,并依据这一指标来计算各节点的性能权值。
记节点 I当前可提供数据传输速率为Vi,最大数据传输速率为MVi,当前数据传输速率为CVi,则有:
即节点当前可提供数据传输速率的取值为该节点最大数据传输速率与当前数据传输速率之差。其中MVi反映了服务节点固有的网络传输性能,可通过理论计算或实测得到;CVi可通过动态检测服务节点的网络流量而得到。
本文基于“占比”的规则将节点当前可提供数据传输速率量化为其性能权值,记节点I当前性能权值为Pi,则有:
式中,n为服务集群中参与本次数据传输的节点个数(也即服务集群中未满载的节点个数)。
(2)根据各服务节点性能权值的大小比例来动态分配待传输的数据块。设待传输的数据大小为 M,集群中有 n个节点参与传输,分配给该节点的数据块大小为Mi,则Mi按如下公式计算:
2)动态数据分块和服务性能加权的负载均衡算法特点分析。传统的负载均衡算法是将任务整体分配给当前负载最轻的服务节点,在多用户并发时,形成一台服务器对多个客户端的格局[8],如图1(a)所示;而本文设计的负载均衡算法利用了Grid FTP带状数据传输机制提供多个服务节点同时为一个客户端提供数据服务。在多用户并发时,形成多台服务器对多个客户端进行并行数据传输的格局,如图 1(b)所示;而且算法通过性能加权的数据分块策略为传输性能好的节点分配了较多的数据,从而能够在整体上提高集群资源的利用率,缩短传输大数据量数据所需的时间,提高数据传输效率。
3)基于Grid FTP集群的空间数据服务实现模式。基于上述优化策略,本文设计了基于Grid FTP集群的空间数据服务网关,其构成如图2所示。
图1 动态数据分块和服务性能加权的负载调度算法与传统算法的对比
图2 基于Grid FTP集群的数据网关架构
网关的核心构成是数据传输服务集群和负载调度模块。数据传输服务集群提供了构建高速数据传输服务的基础设施,而负载调度模块则实现了动态数据分块和服务性能加权的负载均衡算法。基于该数据网关的数据服务实现机制为:
(1)客户端向数据网关的接口模块发送数据请求;
(2)接口模块解析数据请求参数并将参数传递给数据提取模块;
(3)数据提取模块根据数据请求参数从本地数据管理系统中提取数据,并将数据直接传递给数据封装模块;同时将数据量大小信息传送给负载调度模块;
(4)负载调度模块根据待传输的数据大小和集群中各服务节点的当前性能运用负载均衡算法生成并行数据传输方案;并将传输方案编码为XML文档,随响应消息返回给客户端;
(5)客户端根据传输方案向数据传输服务节点发起数据请求,基于Grid FTP协议获取数据。
为验证基于动态数据分块和服务性能加权的负载均衡算法在优化数据传输效率方面的实际效果,本文采用传统的动态性能加权轮转算法和本文所设计算法分别进行数据传输实验,对比分析 2种算法的实际传输效率。
3.1 实验环境
实验在互联网环境下进行,采用1台PC机作为客户端,百兆接入互联网;3台数据服务器配置为服务集群,千兆接入互联网;各节点计算机的软硬件配置如表1所示。
表1 节点计算机的软硬件配置
实验采用的数据为大小不同的6个 TIF格式的影像数据文件,如表 2所示。实验前所有文件均已部署至各数据服务节点。
表2 实验数据说明
3.2 实验过程及结果分析
本文首先采用传统的性能加权轮转算法和本文所设计的基于动态数据分块和服务性能加权的负载均衡算法分别进行了从客户端向服务集群请求 Datafile3的实验,对比观察 2种算法在节点数据分配和传输耗时方面的情况。
实验时采用工具软件将2号和3号服务节点的当前可用带宽限定为其总带宽的50%,即模拟其当前负载为50%,1号服务节点为空载。采用2种算法分别进行10次实验取平均值,结果如表3和图3所示。
表3 实验结果
从实验结果可知,本文所设计算法的传输效率要优于传统的算法,原因是该算法利用了集群中所有可以利用的服务节点资源,因而具有较高的传输效率。可以推论,集群中未达到满载的服务节点数越多,则算法的优势越明显;并发用户数越多,集群中各节点负载越大(各节点负载相对较均衡,但均未达到满载的情况下),算法的优势就越明显。
图3 数据传输效率对比
此外,为比对分析不同大小数据量情况下 2种算法的传输效率,本文利用表 2所列的其他实验数据分别重复进行了上述实验,实验结果如表4和图4所示。
表4 实验结果
图4 传输不同大小数据时的效率对比
实验结果表明,传输的数据量越大,算法在数据传输效率方面的优势就越明显。
实验结果表明,本文所提出的基于Grid FTP集群的空间数据服务效率优化策略是可行和有效的。相对于传统的算法而言,该算法能够显著改善传输大数据量数据时的传输效率。
实验中也发现了算法的不足,其缺陷在于该算法仅在传输前计算各服务节点的当前性能权重并一次性分配数据块大小,分配后在传输的过程中不再改变,因此不能适应数据传输过程中各节点性能动态变化的情况。
一种改进的策略是将待传输的数据分为若干个等大小的数据块,分多次动态地将数据块分配至集群中未满载的服务节点。但对于所划分数据块的大小、服务节点性能参数的采集周期等问题都需要开展进一步的研究,这将是本文下一步的研究方向。
[1] 朱欣焰.面向网络的海量影像空间数据在线分发技术[J].武汉大学学报:信息科学版,2003, 28(3):288-293
[2] 朱江,张立立,曾志明,等.海量影像数据的发布集群系统与应用[J].地球信息科学,2006(2).
[3] 王立,邸瑞华.应用Web服务实现远程教育平台间数据传输[J].通讯和计算机,2006,3(4):57-60
[4] 汪萌.基于Globus存储网格传输服务的研究与实现[D].北京:北京交通大学,2008
[5] Ian Foster.The Grid:A New Infrastructure for 21stCentury Science[J].Physics Today,2002,55(2):42-47
[6] V Carclellini,M Colajanni,PSYu.Dynamic Load Balancing on Web-Server Systems[J].IEEE InternetComputing 1999,28-39
[7] 陈登伟,鲁智勇.网络动态负载均衡算法分析[J].现代电子技术.2003(21):81-84
[8] 古俐明.集群服务器负载均衡技术研究[J].微计算机信息, 2007,23(12):112-113
Research on Efficiency Improving for Spatial Data Service
by WANG Lianbei
Based on the present situation and characteristic of spatial data service technologies,technological approaches for efficiency improving were discussed in this paper.The efficiency improving strategy was presented based on Grid FTP Services.A load balancing algorithms which distributed data block onto nodes in data service cluster according to their current performance was designed and applied on spatial data service experiment.The result demonstrated that the efficiency improving strategy presented in this paper can improve the efficiency of data distributing.
spatial data,data service,distributing efficiency,load balancing,Grid FTP (Page:32)
P208
B
1672-4623(2011)02-0032-03
2010-03-25
项目来源:国家863计划资助项目(2009AA12Z218)。
王连备,博士,研究方向为影像空间信息系统。