【技术实现步骤摘要】
本专利技术涉及计算机软件
,具体涉及一种分布式内存列式数据库的缓存管理方法。
技术介绍
随着信息时代的发展,数据规模呈现爆炸性增长,如何从这些海量数据中提取有价值的信息,是当前社会面临的巨大挑战。而联机分析处理(OLAP,On-LineAnalyticalProcessing)系统表现了其强大的数据分析能力,它已广泛应用于银行、电信、证券交易所等商业领域。支持OLAP系统的分布式内存列式数据库允许用户以多个维度从海量数据中提取和分析有价值的信息,这些信息可能是一个简单的报表,也可能是一个复杂的分析结果。随着查询语句复杂度的提升,查询操作所需要的时间也会越长,而高复杂度的查询语句在支持OLAP系统的分布式内存列式数据库中出现的频率很高。数据库中查询请求在语义方面具有很强的相关性,因此部分查询结果很可能在历史查询中出现过。分布式内存列式数据库引入缓存管理系统来保存某些历史查询信息,从而减少重复查询的执行次数。图1是分布式内存列式数据库的缓存管理系统的结构示意图,所述缓存管理系统包括查询执行引擎(QueryEngine)11、缓存主控节点(CacheMaster ...
【技术保护点】
一种分布式内存列式数据库的缓存管理方法,所述分布式内存列式数据库的缓存管理系统包括查询执行引擎、缓存主控节点以及至少一个缓存从节点,其特征在于,所述缓存管理方法包括:在缓存主控节点中建立缓存队列,所述缓存队列中每项元素对应为一个物理任务的缓存元数据;以每个物理任务为根节点切割其所在的物理执行计划以获得每个物理任务对应的缓存计算轨迹;根据每个物理任务对应的缓存计算轨迹在缓存主控节点中构建缓存特征树;在查询请求到来时,查询执行引擎将SQL语句解析成物理执行计划;从物理执行计划的根节点开始层次遍历物理执行计划中每个节点,判断每个物理任务对应的缓存计算轨迹是否与所述缓存特征树匹配; ...
【技术特征摘要】
1.一种分布式内存列式数据库的缓存管理方法,所述分布式内存列式数据库的缓存管理系统包括查询执行引擎、缓存主控节点以及至少一个缓存从节点,其特征在于,所述缓存管理方法包括:在缓存主控节点中建立缓存队列,所述缓存队列中每项元素对应为一个物理任务的缓存元数据;以每个物理任务为根节点切割其所在的物理执行计划以获得每个物理任务对应的缓存计算轨迹;根据每个物理任务对应的缓存计算轨迹在缓存主控节点中构建缓存特征树;在查询请求到来时,查询执行引擎将SQL语句解析成物理执行计划;从物理执行计划的根节点开始层次遍历物理执行计划中每个节点,判断每个物理任务对应的缓存计算轨迹是否与所述缓存特征树匹配;若匹配,直接从缓存从节点中读取该物理任务的缓存实际数据,否则计算该物理任务。2.根据权利要求1所述的分布式内存列式数据库的缓存管理方法,其特征在于,所述缓存队列中每项元素按权重从大到小的顺序排列。3.根据权利要求2所述的分布式内存列式数据库的缓存管理方法,其特征在于,所述缓存队列中每项元素的权重根据Wi=qi×(a×Si+b×Pi)获得,其中,Wi为第i项元素的权重,qi为第i项元素对应的物理任务的权重因子,Si为第i项元素的时空比且ti为第i项元素对应的缓存计算轨迹中到根节点最长路径的时间,ki为第i项元素对应的存储策略常量,mi为第i项元素实际所占的系统存储空间,Pi为第i项元素的命中频率且ni为第i项元素的历史命中次数,di为第i项元素距离上一次命中的时间间隔,vi为第i项元素平均命中时间间隔,a为时空比对权重的影响因子,b为命中频率对权重的影响因子,i为正整数。4.根据权利要求3所述的分布式内存列式数据库的缓存管理方法,其特征在于,还包括当所述缓存管理系统收到新缓存的存储请求时进行如下步骤:步骤S1,更新所述缓存队列中每项元素的权重;步骤S2,判断所述缓存管理系统当前剩余空间是否足以存储新缓存;若所述缓存管理系统当前剩余空间足以存储新缓存,执行步骤S3...
【专利技术属性】
技术研发人员:段翰聪,闵革勇,张建,郑松,詹文翰,
申请(专利权)人:电子科技大学,
类型:发明
国别省市:四川;51
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。