一种提高列存储引擎读性能的方法及系统技术方案

技术编号:33127006 阅读:15 留言:0更新日期:2022-04-17 00:38
本发明专利技术提供了一种提高列存储引擎读性能的方法,包括如下步骤:S1、将数据单元DC存储至文件对象PCFile中,并对文件对象PCFile建立文件索引,将该文件索引进行存储;S2、设置对象存储缓存模块读取模式,用以列存储引擎在不同情况下调用对象存储缓存模块;S3、设置热度值,并根据热度值对对象存储缓存模块设置淘汰方法。本发明专利技术所述的一种提高列存储引擎读性能的方法满足了计算任务运行的数据资源需求,有效的增强了列存储引擎在读取对象存储数据的速度,解决了传统方法中列存储引擎读取对象存储数据缓慢的问题,为传统数据库与对象存储的结合提供了新的方法。提供了新的方法。提供了新的方法。

【技术实现步骤摘要】
一种提高列存储引擎读性能的方法及系统


[0001]本专利技术属于云上数据仓库
,尤其是涉及一种提高列存储引擎读性能的方法及系统。

技术介绍

[0002]在云数仓中,存储是一种非常关键的抽象,简单的存储接口是有用且极其通用的,所以构建云数仓首要解决的问题就是如何构建符合需求的存储系统,我们非常关注简单而且易用的存储接口,云数仓对存储的需求是需要一个快速的,大型的,并且全局有效的存储系统,这样,计算节点都是无状态的,只专注于对数据的计算与处理,而且各个用户都可以从中读取数据,从而不需要为每个用户构建单独的存储系统,每个用户都可以操作其权限内的数据,这样既能简化数据管理又能提升整体性能;
[0003]对象存储是符合上述需求的不二选择,通过操作对象存储提供的接口,云数仓可以轻松的完成对数据的读取与写入,与块存储和文件存储相比,对象存储有成本低、成熟度高、操作简便、可动态调整容量、快速读取大文件等优点,有了对象存储提供的统一的接口,计算节点在每次执行任务时只需要从对象存储中获取数据,专注于数据的计算;
[0004]虽然对象存储有上述优势,可是对象存储对小文件读取支持不友好,每次计算都从对象存储获取数据,会造成高延迟,并且会降低云数仓的计算性能,为了同时保证存储系统的通用性与性能,本技术方案提出一种提高列存储引擎读性能的方法及系统。

技术实现思路

[0005]有鉴于此,本专利技术旨在提出一种提高列存储引擎读性能的方法及系统,以解决传统方法中列存储引擎读取对象存储数据缓慢、造成高延迟,并且会降低云数仓的计算性能的问题。
[0006]为达到上述目的,本专利技术的技术方案是这样实现的:
[0007]一方面,本专利技术提供了一种提高列存储引擎读性能的方法,包括如下步骤:
[0008]S1、将数据单元DC存储至文件对象PCFile中,并对文件对象PCFile建立文件索引,将该文件索引进行存储;
[0009]S2、设置对象存储缓存模块读取模式,以使列存储引擎在不同情况下调用对象存储缓存模块;
[0010]S3、设置热度值,并根据热度值对对象存储缓存模块设置淘汰方法。
[0011]进一步的,步骤S1具体包括如下步骤:
[0012]S11、将数据单元DC存入至文件对象PCFile中,并将数据单元DC中的元数据信息BSI存入至元数据文件PFile中,建立文件对象PCFile与元数据文件PFile之间的对应关系;
[0013]S12、将文件对象PCFile和元数据文件PFile之间的对应关系存储在元数据服务中。
[0014]进一步的,步骤S11中,建立文件对象PCFile与元数据文件PFile之间的对应关系
是将元数据文件PFile作为文件对象PCFile的索引,将元数据文件PFile作为对象存储缓存模块内部查找文件对象PCFile的信息。
[0015]进一步的,步骤S2具体步骤包括如下步骤:
[0016]S21、列存储引擎将索引传入至对象存储缓存模块内;
[0017]S22、对象存储缓存模块通过遍历对象存储缓存模块内的索引判断文件对象PCFile是否传入至对象存储缓存模块内;若列存储引擎请求的数据是对象存储缓存模块内的数据,则调用同步读接口,并从对象存储缓存模块内直接返回数据;若列存储引擎请求的数据不是对象存储缓存模块内的数据,则调用预读取接口,通过多线程的并发下载从对象存储缓存模块下载元数据文件PFile,并将其加入至对象存储缓存模块,然后返回数据。
[0018]进一步的,步骤S3中设置热度值的指标包括:
[0019]元数据文件PFile的容量、对象存储缓存模块的内存和固定硬盘的剩余容量、元数据文件PFile的最近使用时间、元数据文件PFile的使用次数、列存储引擎当前进行的操作、当前用户的历史操作习惯和当前的网络可用带宽。
[0020]进一步的,步骤S3具体包括如下步骤:
[0021]S31、对存储至对象存储缓存模块中的元数据文件PFile设置热度值;
[0022]S32、根据热度值大小确定元数据文件PFile的存储位置;热度值排名靠前的元数据文件PFile存储至内存中;当内存达到设定的上限时,将内存中热度值低的元数据文件PCFile置换到固态硬盘中;当固态硬盘达到设定的上限时,将固态硬盘中热度值最低的元数据文件PCFile淘汰,并将内存中热度值最低的元数据文件PCFile置换到固态硬盘中。
[0023]另一方面,本专利技术提供了一种提高列存储引擎读性能的系统,包括元数据服务模块和对象存储缓存模块;
[0024]元数据服务模块用于将数据单元DC存储至文件对象PCFile中,并对文件对象PCFile建立文件索引,将该文件索引进行存储;
[0025]对象存储缓存模块用于设置对象存储缓存模块读取模式和热度值,并根据热度值大小对对象存储缓存模块设置淘汰方法。
[0026]进一步的,元数据服务模块包括:
[0027]文件对象PCFile单元,包括一列或多列的数据单元DC信息;
[0028]元数据文件PFile单元,包括数据单元DC存储至文件对象PCFile的地址、数据单元DC的元数据信息、数据单元DC行的删除位图信息;
[0029]K

V存储服务单元,包括K

V数据库集群,用于统一管理文件对象PCFile与元数据文件PFile的对应关系。
[0030]进一步的,对象存储缓存模块包括:同步读取接口和预读取接口;
[0031]当缓存命中时调用同步读取接口,直接在本地返回需要的数据;当缓存未命中时调用预读取接口,通过从对象存储缓存模块上并发下载返回数据。
[0032]相对于现有技术,本专利技术所述的一种提高列存储引擎读性能的方法及系统具有以下有益效果:
[0033]本专利技术所述的一种提高列存储引擎读性能的方法及系统满足了计算任务运行的数据资源需求,有效的增强了列存储引擎在读取对象存储数据的速度,解决了传统方法中列存储引擎读取对象存储数据缓慢的问题,为传统数据库与对象存储的结合提供了新的方
法。
附图说明
[0034]构成本专利技术的一部分的附图用来提供对本专利技术的进一步理解,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。在附图中:
[0035]图1为本专利技术实施例所述的对象存储缓存模块的整体架构示意图。
具体实施方式
[0036]需要说明的是,在不冲突的情况下,本专利技术中的实施例及实施例中的特征可以相互组合。
[0037]下面将参考附图并结合实施例来详细说明本专利技术。
[0038]第一实施例,本专利技术实施例提供了一种提高列存储引擎读性能的方法,包括如下步骤:
[0039]S1、将数据单元DC存储至文件对象PCFile中,并对文件对象PCFile建立文件索引,将该文件索引进行持久化存储;
[0040]S2、设置数据对象存储本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种提高列存储引擎读性能的方法,其特征在于,包括如下步骤:S1、将数据单元DC存储至文件对象PCFile中,并对文件对象PCFile建立文件索引,将该文件索引进行存储;S2、设置对象存储缓存模块读取模式,以使列存储引擎在不同情况下调用对象存储缓存模块;S3、设置热度值,并根据热度值对对象存储缓存模块设置淘汰方法。2.根据权利要求1所述的一种提高列存储引擎读性能的方法,其特征在于:步骤S1具体包括如下步骤:S11、将数据单元DC存入至文件对象PCFile中,并将数据单元DC中的元数据信息BSI存入至元数据文件PFile中,建立文件对象PCFile与元数据文件PFile之间的对应关系;S12、将文件对象PCFile和元数据文件PFile之间的对应关系存储在元数据服务中。3.根据权利要求2所述的一种提高列存储引擎读性能的方法,其特征在于:步骤S11中,建立文件对象PCFile与元数据文件PFile之间的对应关系是将元数据文件PFile作为文件对象PCFile的索引,将元数据文件PFile作为对象存储缓存模块内部查找文件对象PCFile的信息。4.根据权利要求3所述的一种提高列存储引擎读性能的方法,其特征在于:步骤S2具体步骤包括如下步骤:S21、列存储引擎将索引传入至对象存储缓存模块内;S22、对象存储缓存模块通过遍历对象存储缓存模块内的索引判断文件对象PCFile是否传入至对象存储缓存模块内;若列存储引擎请求的数据是对象存储缓存模块内的数据,则调用同步读接口,并从对象存储缓存模块内直接返回数据;若列存储引擎请求的数据不是对象存储缓存模块内的数据,则调用预读取接口,通过多线程的并发下载从对象存储缓存模块下载元数据文件PFile,并将其加入至对象存储缓存模块,然后返回数据。5.根据权利要求4所述的一种提高列存储引擎读性能的方法,其特征在于:步骤S3中设置热度值的指标包括:元数据文件PFile的容量、对象存储缓存模块的内存和固定硬盘的剩余容量...

【专利技术属性】
技术研发人员:赵伟李宇豪宋秋实
申请(专利权)人:天津南大通用数据技术股份有限公司
类型:发明
国别省市:

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

1