The invention discloses an unstructured data storage method, device, device and computer readable storage medium. An unstructured data storage method includes: integrating multiple unstructured data into kvd files, the kvd files include headers and multiple kV pairs, the headers include storage address information, each kV pair includes a key storage area and a value storage area, and reading the place. The header of the kvd file is described, and the storage address of the kvd file is determined. Each kV pair in the kvd file is read and verified in turn. If each kV pair in the kvd file is verified, the kvd file is stored in the storage address. The invention discloses an unstructured data storage method, device, device and computer readable storage medium for improving the storage efficiency of unstructured data.
【技术实现步骤摘要】
非结构化数据存储方法、装置、设备和计算机可读存储介质
本专利技术实施例涉及计算机技术,尤其涉及一种非结构化数据存储方法、装置、设备和计算机可读存储介质。
技术介绍
在大数据存储领域,具有海量的非结构化数据需要进行存储,而这些数据的大小不一,直接存储会占用过多的系统资源,增加系统的复杂度。对于大数据存储中常用的分布式文件系统(HadoopDistributedFileSystem,HDFS)而言,也并不适合大量小文件的存储。另外,在存储大量非结构化数据的过程中,对数据的验证也存在困难,传统的验证方式采用流式处理的方式进行处理,存在着占用系统资源过多,时间开销过大的问题,很有可能造成数据挤压,从而引发一系列的巨大风险。
技术实现思路
本专利技术提供一种非结构化数据存储方法、装置、设备和计算机可读存储介质,以提高非结构化数据的存储效率。第一方面,本专利技术实施例提供一种非结构化数据存储方法,包括:将多个非结构化数据整合为kvd文件,所述kvd文件包括头部和多个kv对,所述头部包括存储地址信息,每个kv对包括一个键存储区和一个值存储区;读取所述kvd文件头部,确定所述kvd文件的存储地址;依次读取所述kvd文件中的每个kv对并进行验证;若所述kvd文件中的每个kv对均通过验证,则将所述kvd文件存储于所述存储地址中。在第一方面一种可能的实现方式中,所述kvd文件中的每个kv对还包括键大小字节和值大小字节;所述依次读取所述kvd文件中的每个kv对并进行验证,包括:依次读取每个kv对;对于每个kv对,读取键大小字节,确定键的长度;根据键的长度从键存储区读取键数据;读取值大 ...
【技术保护点】
1.一种非结构化数据存储方法,其特征在于,包括:将多个非结构化数据整合为kvd文件,所述kvd文件包括头部和多个kv对,所述头部包括存储地址信息,每个kv对包括一个键存储区和一个值存储区;读取所述kvd文件头部,确定所述kvd文件的存储地址;依次读取所述kvd文件中的每个kv对并进行验证;若所述kvd文件中的每个kv对均通过验证,则将所述kvd文件存储于所述存储地址中。
【技术特征摘要】
1.一种非结构化数据存储方法,其特征在于,包括:将多个非结构化数据整合为kvd文件,所述kvd文件包括头部和多个kv对,所述头部包括存储地址信息,每个kv对包括一个键存储区和一个值存储区;读取所述kvd文件头部,确定所述kvd文件的存储地址;依次读取所述kvd文件中的每个kv对并进行验证;若所述kvd文件中的每个kv对均通过验证,则将所述kvd文件存储于所述存储地址中。2.根据权利要求1所述的方法,其特征在于,所述kvd文件中的每个kv对还包括键大小字节和值大小字节;所述依次读取所述kvd文件中的每个kv对并进行验证,包括:依次读取每个kv对;对于每个kv对,读取键大小字节,确定键的长度;根据键的长度从键存储区读取键数据;读取值大小字节,确定值的长度;根据值的长度从值存储区读取值数据;若所述键数据和所述值数据读取成功,则确定kv对通过验证。3.根据权利要求2所述的方法,其特征在于,所述依次读取所述kvd文件中的每个kv对并进行验证,还包括:在确定键的长度和值的长度后,判断所述键的长度值和所述值的长度值是否在预设长度区间内;若所述键的长度值和所述值的长度值不在预设长度区间内,则抛弃所述kvd文件。4.根据权利要求2或3所述的方法,其特征在于,所述依次读取所述kvd文件中的每个kv对并进行验证,包括:若根据键的长度从键存储区读取键数据或根据值的长度从值存储区读取值数据不成功,则抛弃所述kvd文件。5.一种非结构化数据存储装置,其特征在于,包括:文件整合模块,用于将多个非结构化数据整合为kvd文件,所述kvd文件包括头部和多个kv对,所述头部包括存储地址信息,每个k...
【专利技术属性】
技术研发人员:火一莽,刘子豪,石志中,张俊杰,
申请(专利权)人:北京锐安科技有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。