随着高新技术的发展,人们对海洋的探索和利用也由传统的人工观测转换为通过监测设备来进行实时检查,这个过程产生了大量数据,这些数据主要包括:卫星遥感对海洋进行远距离观测、通过航空摄影设备实现的多数据的航空遥感、采用海洋站来获取要素数据、采用超声波来获得海底数据的观测系统。由于多方位和多渠道的海洋观测数据,使得海洋数据呈现爆炸性增加,对海洋信息进行处理的系统在每时所要处理的数据也呈现指数增加。
传统的海洋数据处理方式主要采用集中式方式,海洋数据获取方式的多样性导致采集数据量向多源、多类和多维方向发展。
云计算[1]是一种随着计算机应用对计算和存储能力的更高需求而产生的一种新计算模式,将所有分布式资源整合为资源池而对资源进行统一的调度和管理。
本文基于云计算设计了一种基于云的海洋大数据迁移算法,将一部分数据存储在公有云中,以节省数据存储空间,并提高数据访问效率和存储资源利用率;同时由于本文立足于海洋大数据的分析和处理,因此,综合考虑海洋环境的敏感性、空间性和实效性等因素,同时对存储空间、数据访问效率以及数据大小等因素进行考虑,力求在较小的数据管理成本前提下,实现访问速度和利用效率的最大化。
目前云计算环境已有的迁移算法主要有:文献[2]在云计算环境下建立与宿主机与任务需求向量的距离密切相关的虚拟机动态部署模型。文献[3]提出了一种虚拟机负载预测的启发式迁移算法,通过分析虚拟机负载波动,对虚拟机的负载进行启发式预测。文献[4]设计了一种新的负载均衡算法来克服传统负载均衡算法的任务请求时延问题,从而实现虚拟机动态增加或删除。文献[5]采用最佳适应算法来寻求虚拟机迁移的目标主机,对资源利用率通过上下限值进行约束,实现负载和节能目标的统一。文献[6]结合物理节点负载与迁移损耗评估、多次触发控制和目标定位,对虚拟机调度算法,实现负载均衡。文献[7]建立了一种基于模糊推理机制和蚁群算法的迁移算法,基于蚂蚁搜索半径的服务器自动迁移。文献[8]提出了一种基于海洋大数据的迁移算法,在算法中综合考虑数据存储容量、海洋数据的属性特征和数据访问的动态变化。
上述算法研究云环境下的动态迁移算法,但均未考虑海洋大数据环境,本文则是基于灰色模型[9-11]对各虚拟机上的数据进行动态预测,从而实现负载均衡。
1 海洋大数据的表示海洋数据是一种典型大数据,包含海洋数据模式、海洋岸线数据模式和海洋数据集。海洋数据在每次被创建后,数据被访问的时间可以表示为一个集合
灰色模型作为一种适合于不确定性环境的预测模型,在历史信息的辅助下,能有效对下一时刻服务器上的数据量进行预测[15]。本文采用灰色模型对虚拟机负载进行预测.
算法1 基于灰色模型的海洋大数据节点负载预测算法.
1) 假设某节点在前n个周期历史信息可以表示为
| ${X^{(0)}} = \{ {X^{(0)}}(1),{X^{(0)}}(2),\cdots,{X^{(0)}}(n)\}. $ | (1) |
2) 对这n个周期历史信息
| ${X^{(1)}} = \{ {X^{(1)}}(1),{X^{(1)}}(2),\cdots,{X^{(1)}}(n)\}. $ | (2) |
式(2)中,第k个周期的历史信息
| ${X^{(1)}}(k) = \sum\limits_{i = 1}^k {{X^{(0)}}(k)} ,\;\;\;k = 1,2,\cdots,n.$ | (3) |
3) 计算比值
| $\rho (k) = \frac{{{X^{(0)}}(k)}}{{{X^{(1)}}(k - 1)}}.$ | (4) |
4) 计算比值
| ${\sigma ^{(1)}}(k) = \frac{{{X^{(1)}}(k)}}{{{X^{(1)}}(k - 1)}}.$ | (5) |
5) 生成
| ${Z^{(1)}}(k) = 0.5{X^{(1)}}(k) + 0.5{X^{(1)}}(k - 1).$ | (6) |
6) 建立灰色微分方程.
| $\frac{{{\rm{d}}{X^{(1)}}}}{{{\rm{d}}t}} + a{X^{(1)}} = u.$ | (7) |
6) 采用最小二乘方法对参数
| $\left[ {\frac{u}{a}} \right] = {({{{B}}^{\rm{T}}}{{B}})^{ - 1}}{{{B}}^{\rm{T}}}{{{X}}_N}.$ | (8) |
式(8)中,矩阵
| ${{B}} = \left[ \begin{gathered} - {Z^{(1)}}(2)\;\;\;\;1 \hfill \\ - {Z^{(1)}}(2)\;\;\;\;1 \hfill \\ \;\;\;\;\; \cdots \hfill \\ - {Z^{(1)}}(n)\;\;\;\;1 \hfill \\ \end{gathered} \right].$ | (9) |
| ${{{X}}_N} = \left[ \begin{gathered} {X^{(0)}}(2) \hfill \\ \;\;\;\;\; \cdots \hfill \\ {X^{(0)}}(n) \hfill \\ \end{gathered} \right].$ | (10) |
7) 采用累减法预测下一个周期的数据序列
| $\overline {{X^{(0)}}} (k + 1) = \overline {{X^{(1)}}} (k + 1) - \overline {{X^{(1)}}} (k).$ | (11) |
由式(11)可知,对于任意存储海洋大数据的服务器节点,可以通过预测每个服务器节点的负载,来确定是否对该服务器上的数据进行迁移。
3 海洋大数据服务器数据迁移策略 3.1 负载均衡因子负载均衡算法可以较好地衡量各服务器的节点负载情况,假设时刻
| $\phi = \sqrt {\frac{{\sum\limits_{j = 1}^m {{{({\rm{L}}{{\rm{B}}_k} - {{\mathop {{\rm{LB}}}\limits^ - }_{jk}})}^2}} }}{{m - 1}}} . $ | (11) |
负载均衡效率是反映单位时间服务器负载均衡的效率,其值越大则算法越能更好地实现服务器的负载均衡。
| ${\rm{E}}{{\rm{T}}_k} = \frac{{{\rm{load}}{_0} - {\rm{load}}{_k}}}{{{T_k}}}.$ | (13) |
式(13)中,
在海洋大数据服务器存储中,有一个服务器池
算法2 基于服务器预测的数据迁移.
服务器预测的数据迁移框架如图1所示。算法如下:
1) 当有新数据时,对于当前数据分配的服务器
2) 取出服务器
3) 采用算法1基于灰色模型对所有服务器上的数据进行预测,得到所有服务器下一个时刻的负载,并基于此负载计算预测的平均负载.
4) 如果预测的负载大于预设的负载最大阈值
5) 如果其预测的负载大于预设的
6) 如果其预测的负载
7) 重复步骤 1) ~ 6) ,直到当前服务器池中的所有服务器都已实现负载均衡。
|
图 1 服务器预测的数据迁移框架 Figure 1 Framework of data migration in server prediction |
为了验证文中方法的可行性,在云计算环境CloudSim中对本文的负载均衡算法进行仿真。服务器数量为50,CPU计算能力/(MI.s–1)为1 000、2 000和3 000,内存/(GB)为4、6和8,网络带宽/(MI.s–1)为80、120、160,海洋大数据的种类主要包括遥感数据、浮标数据、观测数据和模拟数据等,通常都已达到PB级,某海洋信息中心得到的数据如表1所示。
4.1 负载均衡因子为了避免算法的震荡,每隔5 s对算法的平均负载进行计算,共运行50次,得到的实验结果如图2所示。
| 表 1 信息中心存储的海洋大数据 Table 1 Ocean big data stored in information center |
|
图 2 负载均衡效果比较 Figure 2 Comparison for the load balance effect |
从图2可以看出,文献[7]方法的负载均衡能力较差,在整个仿真期间均高于文中方法和文献[8]方法,在仿真末期的负载值达到0.5。文献[8]和本文方法作为两种专门对海洋大数据的进行数据迁移的算法,在整个仿真期间,其负载均衡因子一直保持不断下降的趋势,这表明了各服务器的负载均衡程度越来越好。相比之下,文中方法的负载均衡表现更好。这是因为本文对服务器的负载进行定量地设定,即设定了最大负载阈值和最小负载阈值等,使得本文的负载均衡算法更能满足海洋环境实时动态变化的数据存储需求。
4.2 负载均衡效率将文献[7]、文献[8]以及本文方法的负载均衡效率进行比较,结果如图3所示。
|
图 3 负载均衡效率比较 Figure 3 Comparison for load balance rate |
从图3可以看出,本文方法的负载均衡程度远远高于文献[7]和文献[8]方法,后两者对应的负载均衡效率分别为0.028和0.013,而文中方法的平均负载均衡效率则高达0.04,因此,本文方法具有最好的负载均衡效率。同时与图2的比较中可以看出,文献[8]方法虽然在负载均衡因子上优于文献[7],但是在负载均衡效率上并不比文献[7]更强。本文方法表现最好是因为通过数据的迁移,平衡了各服务器的负载,尤其是对服务器负载的实时预测,更好地满足了动态变化的需求,具有更好的负载均衡效率。
5 总结为了实现海洋大数据的负载均衡,提出了一种基于云计算和灰色模型的服务器数据迁移算法。首先分析了海洋大数据的数据格式,然后提出了基于灰色模型对各服务器的数据进行实时预测的预测算法。基于该预测算法提出一个对服务器的负载进行均衡的数据迁移算法。仿真实验表明本文所提的负载均衡算法,能很好地满足海洋大数据环境的需要。在下一步的工作中,将具体研究本文所提出算法的参数敏感性及其对数据迁移性能的影响,制定更合理的迁移方案。
| [1] | ARMBRUST M, FOX A, GRIFFITH R, et al. Above the clouds: a Berkeley view of cloud computing, UCB/EECS-2009-28[R]. Springfield, USA: University of California, Berkely. Electrical Engineering and Computing Science Department, 2009. |
| [2] |
李鹏伟, 葛文英. 云计算环境下虚拟机动态部署研究[J].
计算机测量与控制, 2013, 21(5): 1374-1376.
LI P W, GE W Y. Research on dynamic deployment for virtual machine in cloud computing[J]. Computer Measurement & Control, 2013, 21(5): 1374-1376. |
| [3] |
黄昊晶,崔志明. 基于负载波动预测的虚拟机自主迁移启发式方法[J].
计算机应用与软件, 2014, 8(31): 20-24.
HUANG H J, CUI Z M. Heuricstic method of independent virtual machine migration based on load fluctuaion forecasting[J]. Computer Application and Software, 2014, 8(31): 20-24. |
| [4] |
吴和生, 王崇骏, 谢俊元. TeraPELB: 云计算中基于预测的弹性负载均衡算法[J].
系统仿真学报, 2013, 8(25): 1751-1765.
WU H S, WANG C J, XIE J Y. TeraPELB-an algorithm of prediction-based elastic load balancing in cloud computing[J]. Journal of System Simulantion, 2013, 8(25): 1751-1765. |
| [5] |
周文煜, 陈华平, 杨寿, 等. 基于虚拟机迁移的虚拟机集群资源调度[J].
华中科技大学学报:自然科学版, 2011, 39(1): 130-133.
ZHOU W Y, CHEN H P, YANG S,et al. Resource scheduling in virtual machine cluster based on live migration of virtual machine[J]. Journal of Huazhong University of Science & Technology(Natural Science Edition), 2011, 39(1): 130-133. |
| [6] |
龚素文, 艾浩军, 袁远明. 基于迁移技术的云资源动态调度策略研究[J].
计算机工程与应用, 2014, 50(5): 51-54.
GONG S W, AI H J, YUAN Y M. Research of cloud resource dynamic scheduling strategy on migration technology[J]. Computer Engineering and Applications, 2014, 50(5): 51-54. |
| [7] |
孙冬冬,柳青,武旖旎. 面向负载均衡的自主式虚拟机动态迁移框架[J].
计算机科学, 2014, 4(41): 80-85.
SUN D D, LIU Q, WU Y N. Load balancing-oriented autonomous live migration framework for virtual machine[J]. Computer Science, 2014, 4(41): 80-85. |
| [8] |
黄冬梅, 杜艳玲, 贺琪. 混合运存储中海洋大数据迁移算法的研究[J].
计算机研究与发展, 2014, 51(1): 199-205.
HUANG D M, DU Y L, HE Q. Migration algorithm for big marine data in hybrid cloud storage[J]. Journal of Computer Research and Development, 2014, 51(1): 199-205. DOI: 10.7544/issn1000-1239.2014.20130696. |
| [9] |
张俊丽, 宋家友, 姚淼. 基于改进灰色模型的ATS测试仪器校准周期确定[J].
计算机工程与科学, 2016, 38(3): 603-608.
ZHANG J L, SONG J Y, YAO M. Determination of calibration interval for ATS test instruments based on the improved grey model[J]. Computer Engineering and Science, 2016, 38(3): 603-608. |
| [10] | PUDDU P E, AMADUZZI P L, RICCI B. Coronary heart disease incidence and competing risks: an important issue[J]. Journal of Geriatric Cardiology, 2017, 14(7): 425. |
| [11] | MENOTTI A, PUDDU P E, MAIANI G, et al. Age at death as a useful indicator of healthy aging at population level: a 50-year follow-up of the Italian rural areas of the seven countries study[J]. Aging Clinical and Experimental Research, 2017, 1: 1-11. |
| [12] | YANG J, WANG H, LYU Z, et al. Multimedia recommendation and transmission system based on cloud platform[J]. Future Generation Computer Systems, 2017, 70: 94-103. DOI: 10.1016/j.future.2016.06.015. |
| [13] | LIU C, GUO Z, FENG Y, et al. CPCA: The cloud platform of complex virtual instruments system architecture[J]. IEEE Access, 2017, 5: 4350-4360. DOI: 10.1109/ACCESS.2017.2682258. |
| [14] | RANJAN S, JHA V K, PAL P. Application of emerging technologies in ERP implementation in Indian manufacturing enterprises: an exploratory analysis of strategic benefits[J]. The International Journal of Advanced Manufacturing Technology, 2017, 88(1-4): 369-380. DOI: 10.1007/s00170-016-8770-6. |
| [15] |
张侃, 刘宝平, 黄栋. 基于EGA算法的小样本非线性残差灰色Verhulst计量组合预测模型[J].
系统工程理论与实践, 2017, 37(10): 2630-2639.
ZHANG K, LIU B P, HUANG D. Study on nonlinear residual grey Verhulst metering combination forecasting model of small sample based on EGA algorithm[J]. Systems Engineering Theory & Practice, 2017, 37(10): 2630-2639. DOI: 10.12011/1000-6788(2017)10-2630-10. |
2018, Vol. 35