一种基于持久性内存的列式存储方法、装置及设备制造方法及图纸

技术编号:26478600 阅读:29 留言:0更新日期:2020-11-25 19:22
本申请公开了一种基于持久性内存的列式存储方法,该方法将文件转换为哈希结构数据并存储在持久性内存上,由于持久性内存具备字节寻址及非易失性,因此能够在数据读写过程中避免经过文件系统栈,大幅地提升数据查询速度;相比传统列式存储,该存储方式更易于实现修改、删除等实时数据操作,扩大了列式存储的应用场景;此外,该方法了采用一种逻辑简单的且占用空间极小的位图索引数据描述列块上的数据分布情况,避免了记录粉碎和组装算法的复杂性,在保留列式存储优势的同时简化存储逻辑,进一步提升列式存储的数据读写性能。此外,本申请还公开了一种基于持久性内存的列式存储装置、设备及可读存储介质,其技术效果与上述方法的技术效果相对应。

【技术实现步骤摘要】
一种基于持久性内存的列式存储方法、装置及设备
本申请涉及存储
,特别涉及一种基于持久性内存的列式存储方法、装置、设备及可读存储介质。
技术介绍
当今的数据处理大致可以分为两类,即联机事务处理(OLTP)和联机分析处理(OLAP)。传统关系型数据库的主要面向OLTP,用来执行一些基本的、即时的事务处理,如数据库记录的增、删、改、查等;而分布式数据处理系统主要面向OLAP,它对实时性要求较低,但处理的数据量大,通常用于复杂的数据分析与批量报表上。传统的关系型数据库如Oracle、MySQL等采用行式存储法(Row-based),在基于行式存储的数据库中,数据是按照行数据为基础逻辑存储单元进行存储的,一行中的数据在存储介质中以连续存储形式存在。列式存储(Column-based)是相对于行式存储来说的,HBase、ORC、Parquet等均采用列式存储。在基于列式存储的数据库或文件存储中,数据是按照列为基础逻辑存储单元进行存储的,一列中的数据在存储介质中以连续存储形式存在。目前,列式存储都是基于普通的磁盘文件系统设计的,本文档来自技高网...

【技术保护点】
1.一种基于持久性内存的列式存储方法,其特征在于,包括:/n对待存储的格式化文件进行划分,每预设数量的行划分为一个行组;对所述行组进行划分,每一列作为一个列块;/n将所述列块转换为哈希结构数据,将所述哈希结构数据写入持久性内存中;/n根据文件划分情况生成所述格式化文件的元数据,其中所述元数据包括所述格式化文件中各个行组的标识信息、各个行组在所述格式化文件中的位置信息,还包括所述行组中各个列块的标识信息、各个列块在所述行组中的位置信息;/n根据列块的实际数据中各个元素是否为空,生成所述列块的位图索引数据。/n

【技术特征摘要】
1.一种基于持久性内存的列式存储方法,其特征在于,包括:
对待存储的格式化文件进行划分,每预设数量的行划分为一个行组;对所述行组进行划分,每一列作为一个列块;
将所述列块转换为哈希结构数据,将所述哈希结构数据写入持久性内存中;
根据文件划分情况生成所述格式化文件的元数据,其中所述元数据包括所述格式化文件中各个行组的标识信息、各个行组在所述格式化文件中的位置信息,还包括所述行组中各个列块的标识信息、各个列块在所述行组中的位置信息;
根据列块的实际数据中各个元素是否为空,生成所述列块的位图索引数据。


2.如权利要求1所述的基于持久性内存的列式存储方法,其特征在于,所述将所述列块转换为哈希结构数据,将所述哈希结构数据写入持久性内存中,包括:
以所述列块的列名和行组序号为键,以所述列块的实际数据为值,将所述列块转换为哈希结构数据,将所述哈希结构数据写入持久性内存中。


3.如权利要求2所述的基于持久性内存的列式存储方法,其特征在于,所述将所述哈希结构数据写入持久性内存中,包括:
对所述哈希结构数据中的值进行编码压缩,将编码压缩后的哈希结构数据写入持久性内存中。


4.如权利要求2所述的基于持久性内存的列式存储方法,其特征在于,所述将所述哈希结构数据写入持久性内存中,包括:
利用持久性内存开发套件中的操作函数,将所述哈希结构数据写入持久性内存中。


5.如权利要求2所述的基于持久性内存的列式存储方法,其特征在于,所述将所述列块转换为哈希结构数据,将所述哈希结构数据写入持久性内存中,包括:
将所述列块转换为并发哈希结构数据,将所述并发哈希结构数据写入持久性内存中。


6.如权利要求1-5任意一项所述的基于持久性内存的列式存储方法,其特征在于,所述根据文件划分情况生成所述格式化文件的元数据,包括:
根据文件划分情况生成所述格式化文件的元数据,其中所述元数据还包括所述列块的空值标志位,所述空值标志位用于表示列块的值全部为空。


7.如权利要求6所述的基于持久性内存的列式存储方法,其特征在于,在所述根据文件划分情况生成所述格式化文件的元数据之后,还包括:
将所述元数据存储至类二维数组中。


8.一种基于持久性内存的列式存储装置,其特征在于,包括:
行组键值化模块,包括:
文件划分单元:用于对待存储的格式化文件进行划分,每预...

【专利技术属性】
技术研发人员:秦朝阳
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:江苏;32

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

1