基于云存储平台的数据存储方法和装置与流程

文档序号:12729748阅读:250来源:国知局
基于云存储平台的数据存储方法和装置与流程

本发明涉及数据存储领域,特别涉及一种基于云存储平台的数据存储方法和装置。



背景技术:

随着社会和信息技术的发展,越来越多的行业和领域均基于互联网开展工作和业务,相应的,其涉及的数据量也不断地增长。数据量的急剧增长不断对存储系统提出挑战,传统的存储方式已经无法满足使用者的需求,云环境下的大数据存储成为未来数据存储的发展趋势。云环境下的大数据存储适用于政务、大型企业等领域。然而现有的云存储平台数据读写过程中,安全性低、数据分布不均匀。



技术实现要素:

本发明的主要目的是提供一种基于云存储平台的数据存储方法和装置,旨在提高云存储平台数据存储的安全性和数据分布均匀程度。

为实现上述目的,本发明提出一种基于云存储平台的数据存储方法,所述云存储平台包括元数据服务器和多个存储节点,所述基于云存储平台的数据存储方法包括步骤:

获取待存储文件;

校验所述待存储文件的密钥;

将密钥通过校验的待存储文件分配并存储至所述存储节点。

优选的,所述校验所述待存储文件的密钥具体包括步骤:

判断所述待存储文件的MD5值是否合法;

若是,则获取所述待存储文件的对称密钥;

判断所述待存储文件的对称密钥是否合法;

若是,则依据所述对称密钥加密所述待存储文件并确认密钥通过校验。

优选的,所述将密钥通过校验的待存储文件分配并存储至所述存储节点具体包括步骤:

将所述待存储文件按预设模式分布保存至所述存储节点;

依据所述存储节点生成所述待存储文件的元数据并保存至所述元数据服务器。

优选的,所述将所述待存储文件按预设模式分布保存至所述存储节点之前还包括步骤:

依据存储节点的存储空间和待存储文件确定数据分布基数;

依据所述分布基数将所述待存储文件保存至各存储节点。

优选的,所述预设模式为:基于块状的程序接口模式、基于文件的程序接口模式或基于网络的应用服务模式。

此外,为实现上述目的,本发明还提出一种基于云存储平台的数据存储装置,所述云存储平台包括元数据服务器和多个存储节点,所述基于云存储平台的数据存储装置包括:

获取模块,用于获取待存储文件;

校验模块,用于校验所述待存储文件的密钥;

存储模块,用于将密钥通过校验的待存储文件分配并存储至所述存储节点。

优选的,所述校验模块具体包括:

第一判断单元,用于判断所述待存储文件的MD5值是否合法;

第一获取单元,用于在所述第一判断单元的判断结果为“是”时,获取所述待存储文件的对称密钥;

第二判断单元,用于判断所述待存储文件的对称密钥是否合法;

加密确认单元,用于在所述第二判断单元的判断结果为“是”时,依据所述对称密钥加密所述待存储文件并确认密钥通过校验。

优选的,所述存储模块具体包括:

第一保存单元,用于将所述待存储文件按预设模式分布保存至所述存储节点;

第二保存单元,用于依据所述存储节点生成所述待存储文件的元数据并保存至所述元数据服务器。

优选的,所述存储模块还包括:

确定单元,用于依据存储节点的存储空间和待存储文件确定数据分布基数;

存储单元,用于依据所述分布基数将所述待存储文件保存至各存储节点。

优选的,基于块状的程序接口模式、基于文件的程序接口模式或基于网络的应用服务模式。

本发明的技术方案中,云存储平台包括元数据服务器和多个存储节点,所述基于云存储平台的数据存储方法包括步骤:获取待存储文件;校验所述待存储文件的密钥;将密钥通过校验的待存储文件分配并存储至所述存储节点。本发明的技术方案提高了文件读写过程的安全性,也提高了文件存储过程中在各存储节点分布的均匀程度。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。

图1为本发明基于云存储平台的结构示意图;

图2为本发明基于云存储平台的数据存储方法第一实施例的方法流程图;

图3为本发明基于云存储平台的数据存储方法第二实施例的方法流程图;

图4为本发明基于云存储平台的数据存储装置第一实施例的模块示意图;

图5为本发明基于云存储平台的数据存储装置第二实施例的模块示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明提出一种基于云存储平台的数据存储方法。

如图1所示,在一实施例中,所述云存储平台包括元数据服务器300和多个存储节点100。外部客户端200可以通过相应的外部设备接口400访问该元数据服务器300,具体的,所述外部客户端200可以是桌面客户端,例如台式电脑、笔记本电脑、平板电脑或智能手机等客户端设备;所述外部设备还可以是FTP(File Transfer Protocol文件传输协议)客户端等。本实施例中,提供的外部设备接口400可以是一个门户网站,外部使用者通过访问该网站进而访问该云存储平台中的数据和资源;本实施例中,外部设备接口400还可以是与所述FTP客户端相应的FTP服务器。

在本实施例中,所述云存储平台包括元数据服务器300和多个存储节点100,其中所述多个存储节点100指的是多个公知的存储服务器,通常包括ARM处理器和磁盘阵列;元数据服务器300为公知的元数据服务器300,其主要用于记录每个存储节点100中存储的数据的元数据信息,每个存储节点100中的数据在写入相应的存储节点100中时,将相应的元数据记录于所述元数据服务器300中,在所述元数据服务器300接收到对某数据的访问请求时,将检索并调用相应的元数据信息,继而获取目标数据的路径信息。

如图2所示,在该实施例中,所述基于云存储平台的数据存储方法包括步骤:

S100、获取待存储文件;

S200、校验所述待存储文件的密钥;

S300、将密钥通过校验的待存储文件分配并存储至所述存储节点100。

应当理解的是,本实施例中,先获取待存储的文件,本实施例中对文件的类型、大小等均不做限制。进一步的,本实施例中对待存储文件的密钥进行校验,若待存储文件的密钥校验通过,则证明该文件未遭到篡改,保证了其真实性和安全性。一般来说,如果文件内容遭到篡改,例如有人在文件中植入木马程序,则文件的数字指纹会发生变化,不同于原始文件,则在被篡改的文件的密钥进行校验过程中,必然得到否定的结果,进一步本实施例通过丢弃该文件确保文件的安全性。当文件通过校验后,则将待存储文件按照预设方式分配存储至云存储平台的各个存储节点100,完成对待存储文件的校验和存储。

本实施例的技术方案通过对文件的密钥进行校验,保证了文件存储过程的安全性。

进一步的,如图3所示,在本发明基于云存储平台的数据存储方法的又一优选实施例中,所述步骤S200包括步骤:

S210、判断所述待存储文件的MD5值是否合法,若是,则执行步骤S220。

S220、获取所述待存储文件的对称密钥。

S230、判断所述待存储文件的对称密钥是否合法,若是,则执行步骤S240。

S240、依据所述对称密钥加密所述待存储文件并确认密钥通过校验。

在本实施例中,先校验待存储文件的MD5值,MD5值是根据文件内容按照指定函数计算生成的与每个文件相一一对应的散列函数。每个文件的MD5值具有其唯一性,两个文件即使只有细微差别,其MD5值也可能千差外别。本实施例中,先校验待存储文件的MD5值,以判断待存储文件是否满足预设条件,是否合法。

当待存储文件的MD5值合法时,本实施例中,进一步判断待存储文件的对称密钥是否合法,对称密钥指发送和接收数据的双方必须使用相同的密钥对明文进行加密和解密运算,通过校验对称密钥,可以保证文件在传输和存储过程中不会发生变化,杜绝了文件在传输过程中文件丢失或遭到篡改。进一步提高了文件读写过程中的安全性。

优选的,所述步骤S300具体包括步骤:

S310、将所述待存储文件按预设模式分布保存至所述存储节点100;

S320、依据所述存储节点100生成所述待存储文件的元数据并保存至所述元数据服务器300。

当通过校验的待存储文件被分布保存至所述存储节点100后,本实施例中,进一步依据待存储文件所在的存储节点100信息,生成该文件的元数据。元数据指的是数据的数据,即诸如某数据文件的路径信息、修改信息等关于该数据文件的相关数据信息称为该数据文件的元数据。本实施例中,通过生成待存储文件的元数据,继而可以通过访问该元数据获取该文件的相关信息,并进一步访问或调用该文件。应当理解的是,云存储平台中存储的所有文件的元数据均存储于元数据服务器300中,当接收到来自外部设备的访问请求时,先访问元数据服务器300,获得待访问文件的元数据,进一步通过获取待访问文件的路径信息等获取存储该文件的存储节点100,并访问及调用相应的文件。

优选的,所述步骤S310之前还包括步骤:

S301、依据存储节点100的存储空间和待存储文件确定数据分布基数;

S302、依据所述分布基数将所述待存储文件保存至各存储节点。

应当理解的是,分布基数作为云存储平台系统数据流过程的中间层,它的数量决定了多少分布基数会拿来存放数据,也就是说并不是所有创建出来的分布基数都会存放数据。理论上来说,用于存放数据的分布基数的数量越多,数据分布越均匀,但也同时意味着消耗更多的资源比如内存,所以生成环境中,分布基数的值不是随意设置的。本实施例中,给出一种计算方式为待存储文件的所占的空间大小乘以设定的系数,并将得到的乘积除以存储节点100的存储空间以获得一分布基数的优选值,经过验证,本实施例中的系数以100为佳。本实施例的技术方案可以平衡提高数据分布的均匀程度与资源的消耗程度之间的关系。即保证了数据的分布均匀,也减少了内存等资源的消耗。

优选的,所述预设模式为:基于块状的程序接口模式、基于文件的程序接口模式或基于网络的应用服务模式。

本实施例中进一步提供了预设的文件保存模式,包括基于块状的程序接口模式、基于文件的程序接口模式或基于网络的应用服务模式。具体使用过程中,应当根据文件的类型选取相应合适的文件保存模式,并将文件保存至云存储平台的各个存储节点100中。

此外,为实现上述目的,本发明还提出一种基于云存储平台的数据存储装置,所述云存储平台包括元数据服务器300和多个存储节点100。

如图1所示,在一实施例中,所述云存储平台包括元数据服务器300和多个存储节点100。外部客户端200可以通过相应的外部设备接口400访问该元数据服务器300,具体的,所述外部客户端200可以是桌面客户端,例如台式电脑、笔记本电脑、平板电脑或智能手机等客户端设备;所述外部设备还可以是FTP(File Transfer Protocol文件传输协议)客户端等。本实施例中,提供的外部设备接口400可以是一个门户网站,外部使用者通过访问该网站进而访问该云存储平台中的数据和资源;本实施例中,外部设备接口400还可以是与所述FTP客户端相应的FTP服务器。

在本实施例中,所述云存储平台包括元数据服务器300和多个存储节点100,其中所述多个存储节点100指的是多个公知的存储服务器,通常包括ARM处理器和磁盘阵列;元数据服务器300为公知的元数据服务器300,其主要用于记录每个存储节点100中存储的数据的元数据信息,每个存储节点100中的数据在写入相应的存储节点100中时,将相应的元数据记录于所述元数据服务器300中,在所述元数据服务器300接收到对某数据的访问请求时,将检索并调用相应的元数据信息,继而获取目标数据的路径信息。

如图4所示,在一实施例中,所述基于云存储平台的数据存储装置包括:

获取模块10,用于获取待存储文件;

校验模块20,用于校验所述待存储文件的密钥;

存储模块30,用于将密钥通过校验的待存储文件分配并存储至所述存储节点100。

应当理解的是,本实施例中,先获取待存储的文件,本实施例中对文件的类型、大小等均不做限制。进一步的,本实施例中对待存储文件的密钥进行校验,若待存储文件的密钥校验通过,则证明该文件未遭到篡改,保证了其真实性和安全性。一般来说,如果文件内容遭到篡改,例如有人在文件中植入木马程序,则文件的数字指纹会发生变化,不同于原始文件,则在被篡改的文件的密钥进行校验过程中,必然得到否定的结果,进一步本实施例通过丢弃该文件确保文件的安全性。当文件通过校验后,则将待存储文件按照预设方式分配存储至云存储平台的各个存储节点100,完成对待存储文件的校验和存储。

本实施例的技术方案通过对文件的密钥进行校验,保证了文件存储过程的安全性。

请参阅图5,在本发明的又一优选实施例中,所述校验模块20具体包括:

第一判断单元21,用于判断所述待存储文件的MD5值是否合法;

第一获取单元22,用于在所述第一判断单元21的判断结果为“是”时,获取所述待存储文件的对称密钥;

第二判断单元23,用于判断所述待存储文件的对称密钥是否合法;

加密确认单元24,用于在所述第二判断单元23的判断结果为“是”时,依据所述对称密钥加密所述待存储文件并确认密钥通过校验。

在本实施例中,先校验待存储文件的MD5值,MD5值是根据文件内容按照指定函数计算生成的与每个文件相一一对应的散列函数。每个文件的MD5值具有其唯一性,两个文件即使只有细微差别,其MD5值也可能千差外别。本实施例中,先校验待存储文件的MD5值,以判断待存储文件是否满足预设条件,是否合法。

当待存储文件的MD5值合法时,本实施例中,进一步判断待存储文件的对称密钥是否合法,对称密钥指发送和接收数据的双方必须使用相同的密钥对明文进行加密和解密运算,通过校验对称密钥,可以保证文件在传输和存储过程中不会发生变化,杜绝了文件在传输过程中文件丢失或遭到篡改。进一步提高了文件读写过程中的安全性。

优选的,所述存储模块30具体包括:

第一保存单元,用于将所述待存储文件按预设模式分布保存至所述存储节点100;

第二保存单元,用于依据所述存储节点100生成所述待存储文件的元数据并保存至所述元数据服务器300。

当通过校验的待存储文件被分布保存至所述存储节点100后,本实施例中,进一步依据待存储文件所在的存储节点100信息,生成该文件的元数据。元数据指的是数据的数据,即诸如某数据文件的路径信息、修改信息等关于该数据文件的相关数据信息称为该数据文件的元数据。本实施例中,通过生成待存储文件的元数据,继而可以通过访问该元数据获取该文件的相关信息,并进一步访问或调用该文件。应当理解的是,云存储平台中存储的所有文件的元数据均存储于元数据服务器300中,当接收到来自外部设备的访问请求时,先访问元数据服务器300,获得待访问文件的元数据,进一步通过获取待访问文件的路径信息等获取存储该文件的存储节点100,并访问及调用相应的文件。

优选的,所述存储模块30还包括:

确定单元,用于依据存储节点100的存储空间和待存储文件确定数据分布基数;

存储单元,用于依据所述分布基数将所述待存储文件保存至各存储节点100。

应当理解的是,分布基数作为云存储平台系统数据流过程的中间层,它的数量决定了多少分布基数会拿来存放数据,也就是说并不是所有创建出来的分布基数都会存放数据。理论上来说,用于存放数据的分布基数的数量越多,数据分布越均匀,但也同时意味着消耗更多的资源比如内存,所以生成环境中,分布基数的值不是随意设置的。本实施例中,给出一种计算方式为待存储文件的所占的空间大小乘以设定的系数,再将得到的乘积除以存储节点100的存储空间以获得一分布基数的优选值,经过验证,本实施例中的系数以100为佳。本实施例的技术方案可以平衡提高数据分布的均匀程度与资源的消耗程度。即保证了数据的分布均匀,也减少了内存等资源的消耗。

优选的,基于块状的程序接口模式、基于文件的程序接口模式或基于网络的应用服务模式。

本实施例中进一步提供了预设的文件保存模式,包括基于块状的程序接口模式、基于文件的程序接口模式或基于网络的应用服务模式。具体使用过程中,应当根据文件的类型选取相应合适的文件保存模式,并将文件保存至云存储平台的各个存储节点100中。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1