CN109032499B - 一种分布式数据存储的数据存取方法、信息数据处理终端 - Google Patents

一种分布式数据存储的数据存取方法、信息数据处理终端 Download PDF

Info

Publication number
CN109032499B
CN109032499B CN201810590566.2A CN201810590566A CN109032499B CN 109032499 B CN109032499 B CN 109032499B CN 201810590566 A CN201810590566 A CN 201810590566A CN 109032499 B CN109032499 B CN 109032499B
Authority
CN
China
Prior art keywords
data
storage
node
distance
nodes
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810590566.2A
Other languages
English (en)
Other versions
CN109032499A (zh
Inventor
齐小刚
胡秋秋
刘立芳
冯海林
胡绍林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xidian University
Original Assignee
Xidian University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xidian University filed Critical Xidian University
Priority to CN201810590566.2A priority Critical patent/CN109032499B/zh
Publication of CN109032499A publication Critical patent/CN109032499A/zh
Application granted granted Critical
Publication of CN109032499B publication Critical patent/CN109032499B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/062Securing storage systems

Abstract

本发明属于计算机软件技术领域,公开了一种分布式数据存储的数据存取方法、信息数据处理终端,将用户数据分块,接着把这些数据块存放在不同的存储节点中,并满足任意两个数据块的存储距离大于某个给定的值;节点按照单位数据存取时间升序排列,在安全距离的约束下依次选择数据存储节点从而构成最优的K‑距离拓扑子图,在K‑距离拓扑子图上放置数据。由于数据被分散存储在各个地理位置不同的存储节点中,攻击者也无从得知数据的放置位置,保证了用户数据安全。通过Omnet++仿真平台和Matlab仿真平台在不同网络规模的拓扑下对比了K‑DDS算法和其他算法,并且在模拟实际网络Internet2拓扑中验证了算法的有效性。

Description

一种分布式数据存储的数据存取方法、信息数据处理终端
技术领域
本发明属于计算机软件技术领域,尤其涉及一种分布式数据存储的数据存取方法、信息数据处理终端。
背景技术
目前,业内常用的现有技术是这样的:随着信息技术的飞速发展,物联网以大规模的信息系统和庞大的数据产生量成为目前最吸引研究者的领域之一。日益增长的数据量对数据存储系统提出了挑战,为了解决传统的数据存储系统可扩展性差,存储效率低下、安全性低等问题;数据存储系统-云存储系统得到了前所未有的发展。云存储是在云计算(cloudcomputing)概念上延伸和发展出来的新的概念,是新兴的网络存储技术;通过集群应用、网络技术或分布式文件系统等功能,将网络中大量各种不同类型的存储设备通过应用软件集合起来协同工作,共同对外提供数据存储和业务访问功能的一个系统。云存储系统可以为用户提供巨大的数据存储空间和便捷的数据管理平台,并且有着花费低,按需使用等优点。对用户来说,数据的存取时间是衡量一个云存储系统服务质量的关键,然而,由于在云存储系统中存储节点在地理位置上分布不均匀,并且存储节点的存储能力,链路带宽等各有差异导致如何加速数据的存取时间对云服务运营商来说仍然是一个难点。随着“云”这个概念被提出之后,安全性就是人们首先关注的要点。安全已经成为处理数据的企业的头号关注问题。对用户来说,数据的机密性关乎自身利益,用户通常会关心云中的数据是否会被恶意泄露。为了解决这类问题,现有技术为用户提供了加密服务,用户可根据安全等级选择不同长度的密钥加密数据。在面对云中存储的庞大数据量时,加密数据会产生较长的加密时间并需要消耗大量的计算资源,而且需要用户自行保管自己的密钥。这些又会增加数据的存取时间,降低服务质量。随着云计算的兴起,云存储系统也得到了国内外许多学者的研究和讨论。现有技术一提出一个集中式的数据放置方法,旨在优化数据存取时间。现有技术二提出一个数据复制方法旨在考虑能量效率和带宽消耗的情况下保证数据可用性。现有技术三提出一个基于图分割的数据复制策略旨在最小化数据存取时间,有着充分的数学理论作为支撑,但图分割只从简单的拓扑层面考虑,并没有综合考虑节点性能和链路性能,所以并不能解决实际问题需求。也有基于遗传算法等智能算法来构建数据放置策略,现有技术四采用遗传算法放置数据,旨在减少数据存取时间和数据存取过程中的带宽消耗,但这种方法存在复杂度较高和局部最优问题,也不是十分适合作为较好的数据放置策略。在考虑云数据存储安全性方面,目前大多采用加密和认证的方法。现有技术五提出一个安全的且可扩展的数据接入控制机制来保证云中数据安全性。现有技术六提出一个多云存储的方法,可以极大的增强数据安全性,但多存储会产生较高的费用。以上方法均采用加密来保证数据安全性,但加密存在计算量过大,并且需要考虑密钥的安全保存等问题。
综合来看,现有技术存在的技术缺陷主要是:在选择数据存储节点时,仅仅从拓扑层面考虑了节点的地理位置,并没有综合考虑节点的其他性能信息,比如存储空间,安全性能等。从而当前的数据存储方法并不是一个优秀的方法。本方案与现有方案相比,在数据安全性方面与传统方案相当,但在数据存取时间方面大大小于现有方案,而数据存取时间是衡量一个数据存储策略最重要的指标之一。
综上所述,现有技术存在的问题是:现有技术采用加密保证数据安全性,而目前数据存储量通常过大,所以在数据存储时间方面,加密时间过长而导致数据存储和获取时间太长。
解决上述技术问题的难度和意义:上述问题为当前数据存储策略面临的普遍问题,解决上述问题可以极大的提高数据存储效率,减少数据存取时间,并保证一定的数据安全性,对用户来说,用户体验将会更好。
发明内容
针对现有技术存在的问题,本发明提供了一种分布式数据存储的数据存取方法、信息数据处理终端。
本发明是这样实现的,一种分布式数据存储的数据存取方法,所述分布式数据存储的数据存取方法将用户数据分块,接着把这些数据块存放在不同的存储节点中,并满足任意两个数据块的存储距离大于某个给定的值;节点按照单位数据存取时间升序排列,在安全距离的约束下依次选择数据存储节点从而构成最优的K-距离拓扑子图,在K-距离拓扑子图上放置数据。
进一步,所述安全距离用K表示,K=0,则表示用户对数据安全性没有要求,将所有数据存储在一个存储节点上;K=1,则表示任意两个数据块的存储距离大于1,存储距离即存储数据块的存储节点之间的最短距离;K=2,则表示任意两个数据块的存储距离大于2;
所述安全距离用fs计算,fs表示为:
fs=minfk(SDi,SDj),i≠j,i,j=1,2,...,|V|;
Figure BDA0001690544760000031
进一步,所述分布式数据存储的数据存取方法的安全参数的聚合值包括:入侵检测系统能力值、反病毒能力、防火墙能力、认证机制能力;
安全参数取值范围为[0,1],存储节点自身保护能力表示为:
SPC=I+AN+F+AU;
其中,I表示入侵检测系统能力值,AN表示反病毒能力值,F表示防火墙能力,AU表示认证机制能力值。
进一步,所述分布式数据存储的数据存取方法的安全距离为K的数据放置策略SD,满足fs>K;据接入节点为A,则对于每个数据存储节点SDi≠0,i=1,2,...,|V|,从节点i到节点A的数据存取速度为:
Figure BDA0001690544760000041
其中,Pi,A为节点i到节点A的最短路径;利用迪杰斯特拉等最短路径算法找出节点间的最短路径;ls,ld为链路l的两个端点;
Figure BDA0001690544760000048
为链路l的带宽;在某一时刻节点A只能传输一个数据块,则对于整个数据D,数据存取时间为:
Figure BDA0001690544760000042
进一步,所述分布式数据存储的数据存取方法的K-距离拓扑子图的图G(V,E)是一个无向连通简单图,存在节点集合
Figure BDA0001690544760000043
并且对于
Figure BDA0001690544760000044
v1≠v2,有dis(v1,v2)≥K,其中dis表示两点之间的最短跳数,则称V′为图G(V,E)的K-距离拓扑子集;
给定一个无向图G(V,E),选择一个节点v,寻找与此节点距离为K的节点vj,继续寻找与vj距离为K的节点,不断重复这个步骤直到遍历图G,最后找到的集合K-dis-Set为所求K距离拓扑子集。
进一步,所述分布式数据存储的数据存取方法具体包括:
(1)在无向图G中,数据接入点为节点A,则对于图中所有节点v,定义节点v到数据接入点A的单位数据存取速度为:
Figure BDA0001690544760000045
Pv,A表示从节点v到节点A的最短路径,
Figure BDA0001690544760000046
表示一段链路的带宽;
(2)数据存储节点选择;
输入:G(V,E),K,B,A;
输出:最优数据存储集合PriSet;
for i=1...|V|;
根据公式计算
Figure BDA0001690544760000047
end for;
将节点按照USP从大到小排序,排序后的集合为PV;
PriSet←PV1
delete PV1 from PV;
for i=1...|PV|;
dis=dijkstra(A,PVi);
if dis≥K;
PriSet←PVi
0 delete PVi from PV;
1 end if;
2 end for;
3 return PriSet;
数据存储节点选择过程:首先按照USP将所有节点从大到小排序,然后采用迪杰斯特拉算法依次选择节点,这样选择出来的节点一定是在保证安全性的前提下数据存取效率最好的节点集合。
本发明的另一目的在于提供一种应用所述分布式数据存储的数据存取方法的分布式数据存储的数据存取系统,所述分布式数据存储的数据存取系统包括:
数据块存放模块,用于将用户数据分块,数据块存放在不同的存储节点中,并且满足任意两个数据块的存储距离大于某个给定的值;
数据存取模块,用于节点按照单位数据存取时间升序排列,在安全距离的约束下依次选择数据存储节点从而构成最优的K-距离拓扑子图,在K-距离拓扑子图上放置数据。
本发明的另一目的在于提供一种实现所述分布式数据存储的数据存取方法的计算机程序。
本发明的另一目的在于提供一种实现所述分布式数据存储的数据存取方法的信息数据处理终端。
本发明的另一目的在于提供一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行所述的分布式数据存储的数据存取方法。
综上所述,本发明的优点及积极效果为:在保证一定的数据安全性的前提下减少数据存取时间;在数据安全性方面,考虑到加密算法会牺牲数据存取时间并且消耗大量资源,本发明选择合适的数据放置算法来达到安全性要求,首先将用户数据分块,接着把这些数据块存放在不同的存储节点中,并且满足任意两个数据块的存储距离大于某个给定的值。一旦某个存储节点中的数据遭到攻击,攻击者也不能从中得到有用的信息,与此同时,由于数据被分散存储在各个地理位置不同的存储节点中,攻击者也无从得知数据的放置位置,保证了用户数据安全。
本发明为了提高安全性,提出K-距离拓扑子图的概念,即在一个无向图中,如果存在一个子图,其任意两个节点在原图之间的距离都大于K,则称这个子图为原图的K-距离拓扑子图。本发明采用在原拓扑中寻找K-距离拓扑子图来放置数据从而达到安全性要求。为了最小化数据存取时间,本发明提出一个基于节点优先级的节点选择算法K-DDS,K-DDS算法将节点按照单位数据存取时间升序排列,然后在安全距离的约束下依次选择数据存储节点从而构成最优的K-距离拓扑子图,然后在这个K-距离拓扑子图上放置数据。最后,通过Omnet++仿真平台和Matlab仿真平台在不同网络规模的拓扑下对比了K-DDS算法和其他算法,并且在模拟实际网络Internet2拓扑中验证了算法的有效性。
附图说明
图1是本发明实施例提供的分布式数据存储的数据存取方法流程图。
图2是本发明实施例提供的同一拓扑中不同2-距离拓扑子集示意图;
图中:(a)原始拓扑;(b)4个节点的2-距离拓扑子集;(c)6个节点的2-距离拓扑子集。
图3是本发明实施例提供的随机拓扑下数据量对存取时间影响示意图。
图4是本发明实施例提供的随机拓扑下网络规模对存取时间影响示意图。
图5是本发明实施例提供的Internet2拓扑下数据量对存取时间影响示意图。
图6是本发明实施例提供的Internet2拓扑下安全距离对存取时间影响示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明针对分布式数据存储系统数据存储方法,考虑到数据泄露问题已经是目前数据存储系统面临的最大挑战,提出考虑数据存取效率和安全性的数据存储方法。本发明提出安全距离的概念不仅保证了数据的安全性,而且考虑不同用户群体对于数据安全的侧重性;为了最小化数据存取时间,提出数据存取节点选择算法,在保证数据安全性的同时最小化数据存取时间。仿真证明在数据存取时间方面,相比目前的几种数据存储算法,在保证数据安全性的同时,提出的算法在数据存取时间方面均小于目前算法。
如图1所示,本发明实施例提供的分布式数据存储的数据存取方法包括以下步骤:
S101:将用户数据分块,接着把这些数据块存放在不同的存储节点中,并且满足任意两个数据块的存储距离大于某个给定的值;
S102:节点按照单位数据存取时间升序排列,在安全距离的约束下依次选择数据存储节点从而构成最优的K-距离拓扑子图,在K-距离拓扑子图上放置数据。
下面结合附图对本发明的应用原理作进一步的描述。
1、系统模型
1.1模型假设
令图G(V,E)表示分布式云存储系统的网络拓扑图,其中V表示存储节点集合,E表示节点之间的链路。并且令SC表示节点的存储能力向量,即SCi表示节点i的存储能力大小;令B表示链路带宽矩阵,其中节点i和节点j之间的链路带宽用bij表示,并且对于任意的bij∈B有:
Figure BDA0001690544760000081
则任意一个分布式云存储系统可以用上述模型表示。本发明假定任何一个存储节点都可以作为存储请求提交的接入点,即用户可以在任意一个存储节点提交数据存储请求,如Amazon S3,其存储节点遍布全世界,用户可以在任意一个节点进行数据存储。
假定用户需要存储数据量大小为D的数据,为了保证数据安全性,本发明首先对数据分块,这样可以保证任何一块数据丢失都不会造成重要信息的泄露,即攻击者不能从某一块数据得知全部的数据信息。令SD表示存储向量,即SDi表示在节点i存放了SDi大小的数据,显然:
SDi≤SCi,i=1,2,...,|V|;
Figure BDA0001690544760000082
1.2安全性假设
为了保证数据安全性,本发明考虑两个方面,一是数据块放置位置的差异性,即不同数据块的存储位置的距离可以表示安全性高低,若数据块之间放置距离较大,则认为安全性较高,反之亦然。显然,数据块的存储距离越大,攻击者越难获取全部的数据,相应的安全性就会越高。考虑到不同用户对于数据的安全性需求不同,如财政、金融等数据通常对安全性要求较高,而音乐,电影等对安全性要求较低。本发明引入安全距离(security-distance)的概念,用K表示安全距离,若K=0,则表示用户对数据安全性没有要求,即可以将所有数据存储在一个存储节点上;若K=1,则表示任意两个数据块的存储距离必须大于1,存储距离即存储数据块的存储节点之间的最短距离;若K=2,则表示任意两个数据块的存储距离必须大于2;以此类推,本发明用fs来计算一个数据放置策略的安全距离,fs表示为:
fs=minfk(SDi,SDj),i≠j,i,j=1,2,...,|V|;
Figure BDA0001690544760000091
二是存储节点自身的保护能力,存储节点自身保护能力(SPC)定义为下面几个安全参数的聚合值:
入侵检测系统(IDS)能力值:即依照一定的安全策略,通过软、硬件,对网络、系统的运行状况进行监视,尽可能发现各种攻击企图、攻击行为或者攻击结果,以保证网络系统资源的机密性、完整性和可用性的能力。
反病毒(Anti-virus)能力:保护系统不受各种计算机病毒入侵和损坏的能力。
防火墙(Firewall)能力:控制外网接入,保护内网不受黑客入侵的能力。
认证(Authentication)机制能力:为了保护系统安全而验证身份的能力。
上述三个安全参数取值范围均为[0,1],则存储节点自身保护能力可以用下面的公式表示:
SPC=I+AN+F+AU;
其中,I表示入侵检测系统能力值,AN表示反病毒能力值,F表示防火墙能力,AU表示认证机制能力值。由于对以上三个能力值并没有一个统一的度量标准,并且在目前数据中心建设中这些安全措施都是必须考虑的,所以本发明假设所有的数据中心节点都具有上述四个安全措施。
1.3存取时间分析
在数据放置策略满足安全性条件之后,随之本发明考虑如何最小化数据存取时间。考虑一个满足安全距离为K的数据放置策略SD,即满足fs>K。且假设数据接入节点为A,则对于每个数据存储节点SDi≠0,i=1,2,...,|V|,从节点i到节点A的数据存取速度为:
Figure BDA0001690544760000101
其中,Pi,A为节点i到节点A的最短路径,这里的最短路径是用数据传输速率来体现的,即给链路带宽矩阵B的每个元素取倒数构成新的矩阵B',然后利用迪杰斯特拉等最短路径算法找出节点间的最短路径。ls,ld为链路l的两个端点。
Figure BDA0001690544760000102
为链路l的带宽。假设在某一时刻节点A只能传输一个数据块,则对于整个数据D,所需要的数据存取时间为:
Figure BDA0001690544760000103
1.4问题公式化
基于上述分析,分布式云存储系统数据放置问题可以表述为:给定大小为D的数据和接入点A,选择合理的数据放置方法SD,使得SD在满足安全距离大于K的前提下最小化数据存取时间。则这个问题可用公式表示为:
Figure BDA0001690544760000104
Figure BDA0001690544760000105
SDi≤SCi,i=1,2,...,|V| (3)
SDi≤SDmax i=1,2,...,|V| (4)
fs=minfk(SDi,SDj)>K,i≠j,i,j=1,2,...,|V| (5)
式(2)表示存储的所有数据块之和等于原始数据大小;式(3)表示每个存储节点存储的数据块不大于存储节点的存储能力;式(4)为每个存储节点存放的数据块的大小不大于用户指定的数据块最大值,SDmax和D的大小初步决定了数据块的分块数量;式(5)为安全距离限制,即任意两个数据块的存储距离不小于K。
2、本发明的方法
2.1 K-距离拓扑子图
由于数据存储有安全距离的限制,则需要在数据块放置之前找到一列满足安全距离要求的存储节点集,为了找到这样的节点集,本发明提出K-距离拓扑子图的概念。
定义1:(K-距离拓扑子集)设图G(V,E)是一个无向连通简单图,如果存在节点集合
Figure BDA0001690544760000111
并且对于
Figure BDA0001690544760000112
v1≠v2,有dis(v1,v2)≥K,其中dis表示两点之间的最短跳数,则称V′为图G(V,E)的K-距离拓扑子集。
通过K-距离拓扑子集的定义可知,图G(V,E)的K-距离拓扑子集V′即为满足安全距离限制的节点集合。为了找到图G(V,E)的K-距离拓扑子集,本发明提出了K-距离拓扑子集生成算法。
Figure BDA0001690544760000113
Figure BDA0001690544760000121
根据算法1可以看出,给定一个无向图G(V,E),首先选择一个节点v,然后寻找与此节点距离为K的节点vj,然后继续寻找与vj距离为K的节点,不断重复这个步骤直到遍历图G,最后找到的集合K-dis-Set即为所求K距离拓扑子集。
根据算法1的描述,易知图G(V,E)的K-距离拓扑子集V′不唯一,如图2,考虑一个10个顶点的简单图G(V,E),选择不同的初始节点和中间节点会得到不同的K-距离拓扑子集,图2(b)为一个2-距离拓扑子集的表示图,节点集合为{2,4,7,9};图2(c)也是图G(V,E)的一个2-距离拓扑子集,节点集合为{1,3,5,6,8,10}。
2.2数据放置算法
由上述分析可知,本发明可将满足一定安全性的数据放置问题转化为给定安全距离K,在网络拓扑中寻找满足数据存取时间最小的K-距离拓扑子集的问题。由于无向图G的K距离拓扑子集不唯一,本发明提出一个基于节点优先级的算法,将节点按照单位数据存取速度(USP)从大到小的顺序排列,如果两个节点存取速度相同,则按照节点自身保护能力SPC排列,在选择存储节点时,尽量选择优先级高的节点,可以保证高的数据存取速度。考虑到寻找K距离拓扑子集的算法复杂度为O(n2),本发明提出一个节点选择算法K-DDS算法,使得在满足安全距离K的基础上最小化数据存取速度,并且算法复杂度低。
(1)单位数据存取速度(USP)
假设在无向图G中,数据接入点为节点A,则对于图中所有节点v,定义节点v到数据接入点A的单位数据存取速度为:
Figure BDA0001690544760000131
这里Pv,A表示从节点v到节点A的最短路径,这个最短路径可以利用Dijkstra算法或者SPFA算法得到。
Figure BDA0001690544760000132
表示一段链路的带宽。
(2)数据存储节点选择算法
Figure BDA0001690544760000133
Figure BDA0001690544760000141
2.3复杂度分析
K-DDS算法分为两部分,第一部分将节点按照单位存取时间排列,这部分算法的复杂度为O(V),其中V为节点数量。第二部分是根据Dijkstra算法或者SPFA算法来选择最优的节点序列,在这部分中,算法复杂度为O(VO(Dijkstra))或者O(VO(SPFA))。其中Dijkstra算法的复杂度为O(E+VlgV),其中E为边的数量,SPFA算法的复杂度为O(kE),k为每个节点进入Queue的次数,这里k一般小于等于2。但SPFA算法的适用范围较小,所以在某些情况下还是需要用Dijkstra算法来取得节点之间的最短距离。所以k-DDS算法的复杂度分为两种:在最好的情况下(可以使用SPFA算法),算法复杂度为O(kVE);在最坏的情况下(使用Dijkstra算法),算法复杂度为O(VE+V2lgV)。
下面结合仿真对本发明的应用效果作详细的描述。
1、仿真环境
本发明通过Omnet++[ANDRAS V.Omnet++community site.Avalaible:http://www.omnetpp.org,2007]仿真平台和MATLAB仿真平台来验证K-DDS算法的有效性,网络拓扑图分为随机拓扑和Internet2[Internet2,“Internet2 Open Science,Scholarship,andServices Exchange,”www.internet2.edu/products-services/advanced-networking/layer-2-services,2016,[Online:accessed 20-Jan-2016]]拓扑两种网络拓扑结构,前者可以衡量数据存储算法在各种情况下的性能,后者可以衡量现实场景下各个数据存储算法的性能。仿真环境具体参数设定如下表:
Figure BDA0001690544760000142
Figure BDA0001690544760000151
Internet2拓扑由36个节点组成,且各个节点之间的带宽均为1GBps。
为了与K-DDS算法对比,本发明选择H.P.Sajjad[H.P.Sajjad,F.Rahimian,andV.Vlassov,"Smart Partitioning of Geo-Distributed Resources to Improve CloudNetwork Performance,"in IEEE International Conference on Cloud Networking(CloudNet'15),Niagara Falls,Canada,2015,pp.112-118]算法、FNF算法和Q.Xu[
Q.Xu,Z.Xu,and T.Wang,"A Data-Placement Strategy Based on GeneticAlgorithm in Cloud Computing,"International Journal of Intelligence Science,vol.5,2015,pp.145-157]算法在数据存取时间上与K-DDS算法做对比。其他三种算法介绍如下:
H.P.Sajjad算法基于图分割理论,旨在减小数据存取时延和带宽消耗。
FNF算法采取最远距离存储,其安全性能最好。
Q.Xu算法采用遗传算法来放置数据,从而减小数据存取时间,性能较好,但算法复杂度较大。
2、仿真结果
(1)随机拓扑
随机环境下主要衡量随着数据量的增大数据存取时间的增加情况和随着网络规模的增加(节点数量增加)数据存取时间的减少情况。图3表明,在和其他三种算法的对比中可以发现,随着数据量的增加,K-DDS算法的数据存取时间最小,相比其他算法数据存取时间减少了50%左右,并且数据存取时间增长缓慢,这是因为K-DDS在满足安全性的要求下充分选择了链路状况好的节点,从而最小化数据存取时间。图4表明,随着网络规模(节点数量)的增加,K-DDS相比其他算法数据存取时间仍然是最小的,相比其他算法,数据存取时间降低了60%~70%左右。这表明,K-DDS算法在满足安全距离限制的条件下可以选择性能最好的节点存储数据,从而最小化数据存取时间。
(2)Internet2拓扑
在Internet2拓扑下主要衡量随着数据量的增长和安全距离的增长数据存取时间的增长情况。图5可以看出,在Internet2拓扑中随着数据量大小的增加,数据存取速度均呈增长趋势,但K-DDS的数据存取时间仍然最小,并且相较其他算法的数据存取时间降低了50%左右。由于Internet2拓扑节点之间带宽均为1GBps,在数据量较小的时候Q.Xu算法和K-DDS均选择了较近的节点,所以数据存取时间相同,但随着数据量的增多,当某些较近的节点存储满了之后,K-DDS算法在寻找次最优节点上优于其他算法,所以随着数据量的越来越大,K-DDS算法的性能越来越好。从图6中可以看出,随着安全距离的增加,K-DDS的数据存取时间相比其他算法仍然会降低50%左右。
3、结果分析
从上面的仿真结果可以看出,在两种网络拓扑下,K-DDS在数据存取时间上均小于其他三种算法。由于K-DDS基于节点优先级寻找数据存储节点,所以在满足安全距离的约束下,K-DDS算法总能选到最优的数据存储节点序列,从而最小化数据存取时间。
本发明考虑数据存取效率和数据安全性的数据存储方法,考虑到数据安全性,提出安全距离的概念,使得用户可以根据自身需要选择合适的安全距离。为了寻找合适的存储节点,通过在网络拓扑中寻找K-距离拓扑子图的方式选择合适的存储节点集合。仿真验证了算法在保证数据安全性的同时减小了数据存取时间。算法复杂度较低,比较适合部署在大规模云存储系统中。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用全部或部分地以计算机程序产品的形式实现,所述计算机程序产品包括一个或多个计算机指令。在计算机上加载或执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输)。所述计算机可读取存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘SolidState Disk(SSD))等。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (5)

1.一种分布式数据存储的数据存取方法,其特征在于,所述分布式数据存储的数据存取方法将用户数据分块,接着把这些数据块存放在不同的存储节点中,并满足任意两个数据块的最短路径距离大于等于K;节点按照单位数据存取时间升序排列,在安全距离的约束下依次选择数据存储节点从而构成最优的K-距离拓扑子图,在K-距离拓扑子图上放置数据;
所述安全距离用K表示,K=0,则表示用户对数据安全性没有要求,将所有数据存储在一个存储节点上;K=1,则表示任意两个数据块的存储距离大于等于1,存储距离即存储数据块的存储节点之间的最短距离;K=2,则表示任意两个数据块的存储距离大于等于2;
所述安全距离用fs计算,fs表示为:
fs=minfk(SDi,SDj),i≠j,i,j=1,2,...,|V|;
Figure FDA0003506039330000011
V表示存储节点集合,SDi表示在节点i存放了SDi大小的数据,SDj表示在节点j存放了SDj大小的数据,数据接入节点为A,所述分布式数据存储的数据存取方法的安全参数的聚合值包括:入侵检测系统能力值、反病毒能力、防火墙能力、认证机制能力;
安全参数取值范围为[0,1],存储节点自身保护能力表示为:
SPC=I+AN+F+AU;
其中,I表示入侵检测系统能力值,AN表示反病毒能力值,F表示防火墙能力,AU表示认证机制能力值;
所述分布式数据存储的数据存取方法的K-距离拓扑子图的图G(V,E)是一个无向连通简单图,存在节点集合
Figure FDA0003506039330000014
并且对于
Figure FDA0003506039330000012
有dis(v1,v2)≥K,其中dis表示两点之间的最短跳数,则称V′为图G(V,E)的K-距离拓扑子集;
给定一个无向图G(V,E),选择一个节点v,并存入集合K-dis-Set,寻找与所述集合中所有节点距离大于等于K的节点vj,并将vj存入所述集合,继续寻找与所述集合中所有节点距离大于等于K的节点,并将其存入所述集合中,不断重复这个步骤直到遍历图G,最后找到的集合K-dis-Set为所求K距离拓扑子集;
所述分布式数据存储的数据存取方法具体包括:
(1)在无向图G中,数据接入点为节点A,则对于图中所有节点v,定义节点v到数据接入点A的单位数据存取速度为:
Figure FDA0003506039330000013
Pv,A表示从节点v到节点A的最短路径,
Figure FDA0003506039330000021
表示ls和ld之间的带宽;其中ls和ld属于Pv,A
Figure FDA0003506039330000022
属于B,B为无向图G(V,E)的带宽矩阵;
(2)数据存储节点选择;
输入:G(V,E),K,B,A;
输出:最优数据存储集合PriSet;
for i=1...|V|;
根据公式计算
Figure FDA0003506039330000026
end for;
将节点按照USPv从大到小排序,排序后的集合为PV;
PriSet←A
for i=1...|PV|;
dis=dijkstra(PriSet,PVi);
if dis≥K;
PriSet←PVi
deletePVifrom PV;
end if;
end for;
return PriSet;。
2.如权利要求1所述的分布式数据存储的数据存取方法,其特征在于,所述分布式数据存储的数据存取方法的安全距离为K的数据放置策略SD,满足fs≥K;数据接入节点为A,则对于每个数据存储节点SDi≠0,i=1,2,...,|V|,从节点i到节点A的数据存取速度为:
Figure FDA0003506039330000023
其中,Pi,A为节点i到节点A的最短路径;利用迪杰斯特拉找出节点间的最短路径;ls,ld为链路l的两个端点;
Figure FDA0003506039330000024
为链路l的带宽;在某一时刻节点A只能传输一个数据块,则对于整个数据D,数据存取时间为:
Figure FDA0003506039330000025
3.一种应用权利要求1所述分布式数据存储的数据存取方法的分布式数据存储的数据存取系统,其特征在于,所述分布式数据存储的数据存取系统包括:
数据块存放模块,用于将用户数据分块,数据块存放在不同的存储节点中,并且满足任意两个数据块的存储距离大于等于K;
数据存取模块,用于节点按照单位数据存取时间升序排列,在安全距离的约束下依次选择数据存储节点从而构成最优的K-距离拓扑子图,在K-距离拓扑子图上放置数据。
4.一种实现权利要求1~2任意一项所述分布式数据存储的数据存取方法的信息数据处理终端。
5.一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如权利要求1-2任意一项所述的分布式数据存储的数据存取方法。
CN201810590566.2A 2018-06-09 2018-06-09 一种分布式数据存储的数据存取方法、信息数据处理终端 Active CN109032499B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810590566.2A CN109032499B (zh) 2018-06-09 2018-06-09 一种分布式数据存储的数据存取方法、信息数据处理终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810590566.2A CN109032499B (zh) 2018-06-09 2018-06-09 一种分布式数据存储的数据存取方法、信息数据处理终端

Publications (2)

Publication Number Publication Date
CN109032499A CN109032499A (zh) 2018-12-18
CN109032499B true CN109032499B (zh) 2022-04-05

Family

ID=64612708

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810590566.2A Active CN109032499B (zh) 2018-06-09 2018-06-09 一种分布式数据存储的数据存取方法、信息数据处理终端

Country Status (1)

Country Link
CN (1) CN109032499B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110532804B (zh) * 2019-09-05 2020-06-05 上海威固信息技术股份有限公司 一种基于大数据的安全存储控制方法
CN115174591B (zh) * 2022-07-01 2023-10-13 深圳市玄羽科技有限公司 一种智能制造系统及其数据安全管理方法
CN115146318B (zh) * 2022-09-02 2022-11-29 麒麟软件有限公司 虚拟磁盘安全存储方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101645038A (zh) * 2009-05-20 2010-02-10 中国科学院声学研究所 基于彼特森的网络存储结构的数据存储方法
CN103327094A (zh) * 2013-06-19 2013-09-25 成都市欧冠信息技术有限责任公司 数据分布式存储方法与系统
CN108062419A (zh) * 2018-01-06 2018-05-22 深圳市网心科技有限公司 一种文件存储方法、电子设备、系统和介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101645038A (zh) * 2009-05-20 2010-02-10 中国科学院声学研究所 基于彼特森的网络存储结构的数据存储方法
CN103327094A (zh) * 2013-06-19 2013-09-25 成都市欧冠信息技术有限责任公司 数据分布式存储方法与系统
CN108062419A (zh) * 2018-01-06 2018-05-22 深圳市网心科技有限公司 一种文件存储方法、电子设备、系统和介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
A Security-Aware Data Placement Mechanism for Big Data Cloud Storage Systems;Seungmin Kang,Bharadwaj Veeravalli, Khin Mi Mi Aung;《IEEE》;20160704;第2-4节 *

Also Published As

Publication number Publication date
CN109032499A (zh) 2018-12-18

Similar Documents

Publication Publication Date Title
CN109032499B (zh) 一种分布式数据存储的数据存取方法、信息数据处理终端
CN102420771B (zh) 高速网络环境中提高tcp并发连接速度的方法
Zhao et al. Optimizing security and quality of service in a Real-time database system using Multi-objective genetic algorithm
Gupta et al. Data security and privacy in cloud computing: concepts and emerging trends
TWI426383B (zh) 雲端計算網路的系統可靠度之估計方法
Lee et al. Online optimization for low-latency computational caching in fog networks
Mansouri QDR: a QoS-aware data replication algorithm for Data Grids considering security factors
CN116488906A (zh) 一种安全高效的模型共建方法
Zhong et al. Data security storage method for power distribution internet of things in cyber-physical energy systems
CN107959593B (zh) 一种软件定义网络虚拟网络映射方法
Luo et al. A relationship matrix resolving model for identifying vital nodes based on community in opportunistic social networks
Chen et al. Distributed deep reinforcement learning-based content caching in edge computing-enabled blockchain networks
Jošilo et al. Distributed algorithms for content placement in hierarchical cache networks
El Gaily et al. Constrained quantum optimization for resource distribution management
Ji et al. Network utility maximization with unknown utility functions: A distributed, data-driven bilevel optimization approach
CN111324429B (zh) 一种基于多代血统参考距离的微服务组合调度方法
Guo et al. Blockchain-assisted caching optimization and data storage methods in edge environment
Lei et al. Federated learning over coupled graphs
WO2023159812A1 (zh) 一种ami网络入侵检测的方法、装置及介质
Almajed et al. Improving the perfoamnce of Fog-assisted Internet of Things Networks using Bipolar Trapezoidal Neutrosophic sets.
Yuan et al. An optimal fair resource allocation strategy for a lightweight content-centric networking architecture
Nikbazm et al. Agent-based resource discovery in cloud computing using bloom filters
Xiao et al. Max-fus caching replacement algorithm for edge computing
Fang et al. Distributed online adaptive subgradient optimization with dynamic bound of learning rate over time‐varying networks
Zhai et al. A security-aware service function chain deployment method for load balance and delay optimization

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant