一种基于ClickHouse数据库的MVCC多版本折叠树实现系统及方法技术方案

技术编号:33130121 阅读:28 留言:0更新日期:2022-04-17 00:45
本发明专利技术公开了一种基于ClickHouse数据库的MVCC多版本折叠树实现系统及方法,属于数据库数据存储处理技术领域。本发明专利技术的基于ClickHouse数据库的MVCC多版本折叠树实现系统包括多版本折叠树定义声明模块、多版本折叠树合并模块和多版本折叠树查询模块;多版本折叠树定义声明模块:增加一个新的折叠树,设置一个整型列为删除标记列,设置wall_time列和logic_time列为版本号列;多版本折叠树合并模块:对折叠树保存的数据分区进行合并。该发明专利技术的基于ClickHouse数据库的MVCC多版本折叠树实现系统能够有效降低硬盘中的数据的读取,具有很好的推广应用价值。有很好的推广应用价值。有很好的推广应用价值。

【技术实现步骤摘要】
一种基于ClickHouse数据库的MVCC多版本折叠树实现系统及方法


[0001]本专利技术涉及数据库数据存储处理
,具体提供一种基于ClickHouse数据库的MVCC多版本折叠树实现系统及方法。

技术介绍

[0002]ClickHouse是一款MPP架构的列式存储数据库,主要用于在线分析处理查询(OLAP),分析性能超过市场上大部分的列式存储数据库,尤其是对单表的分析性能极好。
[0003]MVCC(多版本并发控制)数据,包含一个HLC时间戳,它是由两个整型值组成,分别是wall_time和logic_time,用来控制数据的版本信息。当wall_time和logic_time不同时为0时,这条数据便是业务数据,当wall_time和logic_time同时为0时,即为写意图数据。
[0004]我们在使用ClickHouse自带多版本折叠树进行MVCC数据存储时,发现当我们存储多版本数据的情况下,由于我们的版本号列需要进行两种不同的情况的计算,所以ClickHouse自带的多版本折叠树无法满足我们的需求(它只会根据版本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种基于ClickHouse数据库的MVCC多版本折叠树实现系统,其特征在于:包括多版本折叠树定义声明模块、多版本折叠树合并模块和多版本折叠树查询模块;多版本折叠树定义声明模块:增加一个新的折叠树,设置一个整型列为删除标记列,设置wall_time列和logic_time列为版本号列;多版本折叠树合并模块:对折叠树保存的数据分区进行合并;多版本折叠树查询模块:对多版本折叠树的使用与执行流程进行说明。2.根据权利要求1所述的基于ClickHouse数据库的MVCC多版本折叠树实现系统,其特征在于:所述删除标记列为选取建表语句中的一整型值列,其值为1表示该条数据插入,等于

1表示删除该条数据。3.根据权利要求2所述的基于ClickHouse数据库的MVCC多版本折叠树实现系统,其特征在于:版本号列为元组列,包含wall_time和logic_time两个值,排序规则为首先对wall_time进行比较,若值相等再比较logic_time,该列用于对多版本数据进行标记。4.根据权利要求3所述的基于ClickHouse数据库的MVCC多版本折叠树实现系统,其特征在于:ClickHouse后台进行不同数据分区合并时,数据分区之间根据该模块中的合并算法进行合并。5.根据权利要求4所述的基于ClickHouse数据库的MVCC多版本折叠树实现系统,其特征在于:用户执行手动合并语句时,对折叠树中所有数据进行合并,用户执行查询语句时增加final标识时,对读取到的数据进行合并处理。6.根据权利要求5所述的基于ClickHouse数据库的MVCC多版本折叠树实现系统,其特征在于:多版本折叠树查...

【专利技术属性】
技术研发人员:李盟贾德星
申请(专利权)人:山东浪潮科学研究院有限公司
类型:发明
国别省市:

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

1