基于HDFS文件系统的随机数密钥的存储与获取方法技术方案

技术编号:17363663 阅读:27 留言:0更新日期:2018-02-28 13:43
一种基于HDFS文件系统的随机数密钥的存储与获取方法,包括随机数存储以及随机数获取,该方法通过将随机数序列分为小的文件块,并将该些文件块从写入缓存模块存入HDFS分布式文件系统以及通过读取缓存模块获取随机数序列,在写入缓存模块可实时的进行随机数序列补充,摒弃了对HDFS分布式文件系统进行频繁写入的方式,在整体的时域内提高了系统的存储能力,同时,外界获取随机数密钥只需从读取缓存模块中获取即可,从读取缓存模块获取密钥的响应时间极短,仅为HDFS分布式文件系统以及传统的数据库的百分之一至千分之一,很大程度上提高了密钥获取的效率。

Storage and acquisition of random number key based on HDFS file system

With the method of obtaining a random key file system of HDFS based storage, including random number and random access storage, the random number sequence is divided into small blocks of the file, and the file blocks from the write cache module in HDFS distributed file system and the read cache module to obtain a random number sequence. In the write cache module can be real-time random number sequence, abandon frequently written on HDFS distributed file system, in the whole time domain improves the storage capacity, the system at the same time, the outside world for a random number key just to get to read from the cache module, the response time of the read cache module access key short, only HDFS distributed file system and traditional database from one percent to 1/1000, greatly improve the key acquisition Efficiency.

【技术实现步骤摘要】
基于HDFS文件系统的随机数密钥的存储与获取方法
本专利技术涉及密钥存储
,特别涉及一种基于HDFS文件系统的随机数密钥的存储与获取方法。
技术介绍
随着互联网的大范围普及,人类之间的信息传递达到了前所未有的数量和频率,各种隐私信息越来越多地暴露在互联网上,因此,人类对保密通信的需求也到了前所未有的高度,目前,数据信息采用随机数密钥加密是最常规保证通信安全的手段,所以对随机数密钥的需求量是很大的,在大量随机数密钥存储方面就存在着许多问题。一般而言,随机数密钥是被拆分成固定长度的大小,存储在传统数据库中,获取随机数密钥时,在传统数据库里获取指定个数的密钥。但这种存储方式存在的问题是:密钥的长度被固定,需要把整个固定长度的密钥获取完,才能补充新的随机数密钥,这样就导致了实时存储密钥的数量受到限制,无法存储TB级别的随机数密钥数量;另外,在密钥获取时直接从数据库获取,其获取的响应时间较慢。
技术实现思路
本专利技术目的在于提供一种基于HDFS文件系统的随机数密钥的存储与获取方法,以解决现有技术中密钥存储中的密钥的长度被固定,需要把整个固定长度的密钥获取完,才能补充新的随机数密钥,导致实时存储密钥的数量受到限制,无法存储TB级别的随机数密钥数量;以及在密钥获取时直接从数据库获取,其获取的响应时间较慢的技术性缺陷。本专利技术的技术方案是这样实现的:一种基于HDFS文件系统的随机数密钥的存储与获取方法,包括可产生随机数的随机数发生器、写入缓存模块、HDFS分布式文件系统、文件名索引数据库、读取缓存模块以及获取任意长度随机数节点,所述随机数发生器依次连接写入缓存模块、HDFS分布式文件系统、文件名索引数据库,所述文件名索引数据库分别连接写入缓存模块与读取缓存模块,所述获取随机数节点连接读取缓存模块,所述存储与分发包括以下步骤:随机数存储a)随机数发生器产生随机数,该些随机数写入到固定大小的写入缓存模块中;b)当写入的随机数到达一定的阈值M大小时,写入到HDFS文件系统并以文件块的形式进行存储;c)对写入随机数的文件块进行保存,同时将该文件块对应的文件名保存在文件名索引数据库中;获取随机数d)获取随机数节点从读取缓存模块中获取指定长度的随机数;e)如果读取缓存模块为空或者长度小于一定阈值M,则从文件名索引数据库中选出一条,根据对应文件名,从HDFS分布式文件系统中读出一个文件块到读取缓存模块中;f)在读取缓存模块设置有一个指针,每次要获取多少长度的密钥,就将该指针移动相应位数;g)读取缓存模块大小为可容纳若干文件块,文件块之间设置有临界区,当指针移动跨越N个文件块的临界区时,就证明N个文件块中的所有密钥已经被获取完,则在文件名索引数据库中删除该N个文件块的文件名记录,并从文件名索引数据库中取出一条文件记录,从HDFS分布式文件系统中获取一个新的文件块到读取缓存模块中;h)HDFS分布式文件系统中被读取出的文件块位置通过写入缓存模块内的随机数补充,进而写入缓存模块内的空余位置通过随机数发生器产生随机数补充。优选地,所述获取随机数节点每次要获取的随机数小于或等于N个文件块内所存储的随机数。优选地,所述读取缓存模块大小只容纳两个文件块,当指针移动跨越两个文件块的临界区时,就证明一个文件块中的所有随机数已经被获取完。优选地,步骤g)中,若指针移动没有跨越文件块的临界区时,就证明一个文件块中的密钥没被获取完,则不需要从HDFS分布式文件系统中获取一个新的文件块到读取缓存模块中。与现有技术相比,本专利技术有以下有益效果:本专利技术的基于HDFS文件系统的随机数密钥的存储与获取方法,通过将随机数序列分为小的文件块,并将该些文件块从写入缓存模块存入HDFS分布式文件系统以及通过读取缓存模块获取随机数序列,在写入缓存模块可实时的进行随机数序列补充,摒弃了对HDFS分布式文件系统进行频繁写入的方式,在整体的时域内提高了系统的存储能力,同时,外界获取随机数密钥只需从读取缓存模块中获取即可,从读取缓存模块获取密钥的响应时间极短,仅为HDFS分布式文件系统以及传统的数据库的百分之一至千分之一,很大程度上提高了密钥获取的效率。附图说明图1为本专利技术基于HDFS文件系统的随机数密钥的存储与获取方法的原理图。图中:随机数发生器100、写入缓存模块200、HDFS分布式文件系统300、文件名索引数据库400、读取缓存模块500、获取任意长度随机数节点600。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术进行清楚、完整地描述。如图1所示,一种基于HDFS文件系统的随机数密钥的存储与获取方法,包括可产生随机数的随机数发生器100、写入缓存模块200、HDFS分布式文件系统300、文件名索引数据库400、读取缓存模块500以及获取任意长度随机数节点600,所述随机数发生器100依次连接写入缓存模块200、HDFS分布式文件系统300、文件名索引数据库400,所述文件名索引数据库400分别连接写入缓存模块200与读取缓存模块500,所述获取随机数节点600连接读取缓存模块500,其中,运行在HDFS分布式文件系统300上的应用具有很大的数据集,系统上的一个典型文件大小一般都在G字节至T字节。因此,HDFS被调节以支持大文件存储。它应该能提供整体上高的数据传输带宽,能在一个集群里扩展到数百个节点来支持文件块。一个单一的HDFS实例能支撑数以千万计的文件块。所述存储与分发包括以下步骤:随机数存储a)随机数发生器产生随机数,该些随机数写入到固定大小的写入缓存模块中;b)当写入的随机数到达一定的阈值M大小时,写入到HDFS文件系统并以文件块的形式进行存储,该些文件块的大小一般需要由获取随机数节点决定,需要获取的随机数密钥长度一般要小于一至两个文件块的大小;c)对写入随机数的文件块进行保存,同时将该文件块对应的文件名保存在文件名索引数据库中,随机数密钥采用文件块的形式存储在HDFS文件系统中,可有效的降低了文件名字节数,为文件名索引数据库节省了大量的存储空间;获取随机数d)获取随机数节点从读取缓存模块中获取指定长度的随机数;e)如果读取缓存模块为空或者长度小于一定阈值M,则从文件名索引数据库中选出一条,根据对应文件名,从HDFS分布式文件系统中读出一个文件块到读取缓存模块中,读取缓存模块可实时的补充内部的随机数密钥,其补充随机数密钥所需的响应时间不影响获取随机数节点从读取缓存模块获取密钥的时间;f)在读取缓存模块设置有一个指针,每次要获取多少长度的密钥,就将该指针移动相应位数,该指针起到了书签的作用;g)读取缓存模块大小为可容纳若干文件块,文件块之间设置有临界区,当指针移动跨越N个文件块的临界区时,就证明N个文件块中的所有密钥已经被获取完,则在文件名索引数据库中删除该N个文件块的文件名记录,并从文件名索引数据库中取出一条文件记录,从HDFS分布式文件系统中获取一个新的文件块到读取缓存模块中;h)HDFS分布式文件系统中被读取出的文件块位置通过写入缓存模块内的随机数补充,进而写入缓存模块内的空余位置通过随机数发生器产生随机数补充。所述获取随机数节点每次要获取的随机数小于或等于N个文件块内所存储的随机数,保证了获取随机数节点能一次性获取足够多的随机数密钥,避免了多次获取影本文档来自技高网...
基于HDFS文件系统的随机数密钥的存储与获取方法

【技术保护点】
一种基于HDFS文件系统的随机数密钥的存储与获取方法,其特征在于,包括可产生随机数的随机数发生器、写入缓存模块、HDFS分布式文件系统、文件名索引数据库、读取缓存模块以及获取任意长度随机数节点,所述随机数发生器依次连接写入缓存模块、HDFS分布式文件系统、文件名索引数据库,所述文件名索引数据库分别连接写入缓存模块与读取缓存模块,所述获取随机数节点连接读取缓存模块,所述存储与分发包括以下步骤:随机数存储a)随机数发生器产生随机数,该些随机数写入到固定大小的写入缓存模块中;b)当写入的随机数到达一定的阈值M大小时,写入到HDFS文件系统并以文件块的形式进行存储;c)对写入随机数的文件块进行保存,同时将该文件块对应的文件名保存在文件名索引数据库中;获取随机数d)获取随机数节点从读取缓存模块中获取指定长度的随机数;e)如果读取缓存模块为空或者长度小于一定阈值M,则从文件名索引数据库中选出一条,根据对应文件名,从HDFS分布式文件系统中读出一个文件块到读取缓存模块中;f)在读取缓存模块设置有一个指针,每次要获取多少长度的密钥,就将该指针移动相应位数;g)读取缓存模块大小为可容纳若干文件块,文件块之间设置有临界区,当指针移动跨越N个文件块的临界区时,就证明N个文件块中的所有密钥已经被获取完,则在文件名索引数据库中删除该N个文件块的文件名记录,并从文件名索引数据库中取出一条文件记录,从HDFS分布式文件系统中获取该文件块到读取缓存模块中;h)HDFS分布式文件系统中被读取出的文件块位置通过写入缓存模块内的随机数补充,进而写入缓存模块内的空余位置通过随机数发生器产生随机数补充。...

【技术特征摘要】
1.一种基于HDFS文件系统的随机数密钥的存储与获取方法,其特征在于,包括可产生随机数的随机数发生器、写入缓存模块、HDFS分布式文件系统、文件名索引数据库、读取缓存模块以及获取任意长度随机数节点,所述随机数发生器依次连接写入缓存模块、HDFS分布式文件系统、文件名索引数据库,所述文件名索引数据库分别连接写入缓存模块与读取缓存模块,所述获取随机数节点连接读取缓存模块,所述存储与分发包括以下步骤:随机数存储a)随机数发生器产生随机数,该些随机数写入到固定大小的写入缓存模块中;b)当写入的随机数到达一定的阈值M大小时,写入到HDFS文件系统并以文件块的形式进行存储;c)对写入随机数的文件块进行保存,同时将该文件块对应的文件名保存在文件名索引数据库中;获取随机数d)获取随机数节点从读取缓存模块中获取指定长度的随机数;e)如果读取缓存模块为空或者长度小于一定阈值M,则从文件名索引数据库中选出一条,根据对应文件名,从HDFS分布式文件系统中读出一个文件块到读取缓存模块中;f)在读取缓存模块设置有一个指针,每次要获取多少长度的密钥,就将该指针移动相应位数;g)读取缓存模块大小为可容纳若干文...

【专利技术属性】
技术研发人员:赵一鸣曹文钊赵义博
申请(专利权)人:浙江九州量子信息技术股份有限公司
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1