一种基于KV的数据库逻辑计划缓存方法与装置

    公开(公告)号:CN114610724B

    公开(公告)日:2024-10-29

    申请号:CN202210382223.3

    申请日:2022-04-13

    发明人: 史大义 冯友旭

    摘要: 本发明特别涉及一种基于KV的数据库逻辑计划缓存方法与装置。该基于KV的数据库逻辑计划缓存方法与装置,解析用户SQL请求文本,提取用户输入变量编译并优化生成完整逻辑计划,生成索引和反向索引缓存,缓存逻辑计划;使用时解析后续收到的用户SQL请求文本,用新提取的用户输入变量重新计算KV常量表达式,并替换逻辑计划中对应的KV值,生成新的逻辑计划;当统计信息发生改变时,使用反向索引查找变化表相关的逻辑计划进行淘汰,清空对应得存储空间,更新逻辑计划缓存。该基于KV的数据库逻辑计划缓存方法与装置,不仅实现了分布式NEWSQL数据库管理系统下的逻辑计划缓存,还实现了用户请求SQL的逻辑计划复用,提高了数据库的访问性能,减少了系统资源损耗。

    分布式数据库场景下主备集群数据复制方法及系统

    公开(公告)号:CN118069746A

    公开(公告)日:2024-05-24

    申请号:CN202410218470.9

    申请日:2024-02-28

    发明人: 冯友旭 史大义

    IPC分类号: G06F16/27 G06F9/46

    摘要: 本发明公开了分布式数据库场景下主备集群数据复制方法及系统,属于分布式数据库技术领域,要解决的技术问题为分布式数据库场景下提高业务的高可用和灾备能力。应用于主库集群、备库集群以及Merge模块之间,Merge模块由备库集群节点充当,包括如下:通过主库集群进行事务操作时,在当前事务操作下每个KV操作的value记录内记录当前事务的事务ID,并在当前事务对应的事务记录内记录当前KV操作的次数,当前事务操作执行成功后形成具有成功标识的commit命令,将当前事务操作下对应的commit命令以及当前事务的KV操作量发送至Merge模块,Merge模块与备库集群配合,将事务操作对应的数据复制到备库集群。

    一种基于SST的Insert SQL语句实现方法

    公开(公告)号:CN116644086B

    公开(公告)日:2024-02-20

    申请号:CN202310587092.7

    申请日:2023-05-24

    IPC分类号: G06F16/242 G06F16/2455

    摘要: 本发明提供一种基于SST的Insert SQL语句实现方法,属于数据库技术领域,本发明主要解决insert语句小批量数据持续写入场景。通过预先分配固定数量的range数据分区,不同分区写入不同的数据节点,在数据节点上,接收到数据后,本地数据攒批,达到一定数量后,内存中生成SST文件,之后异步的将生成的SST直接调用本地的rocksdb接口,直接落入到rocksdb存储的L0层,减少了中间的数据拷贝和转换,提高insert语句的热点写入性能,同时也避免的rocksdb的flush写失速场景的出现。

    一种备库数据并发回放方法及装置

    公开(公告)号:CN116467386A

    公开(公告)日:2023-07-21

    申请号:CN202310391715.3

    申请日:2023-04-13

    摘要: 本发明涉及数据库数据处理技术领域,具体提供了一种备库数据并发回放方法及装置,具有如下步骤:S1、当备库接收到事务事件时,将事务数据加入到BUF中。S2、将执行并发回放的事务加入到线程池中TXNLIST;S3、线程池中worker数量根据处理器CPU数量和负载情况可配置。与现有技术相比,本发明提出在主备复制的场景下,在备库引入线程池,接受到到CHECKPOINT事件后,对BUF中的事务和数据做并发回放,提高了数据复制的效率,并保证了主备数据一致性。

    一种事务复制Checkpoint方法及装置
    6.
    发明公开

    公开(公告)号:CN117193970A

    公开(公告)日:2023-12-08

    申请号:CN202311086746.4

    申请日:2023-08-28

    发明人: 邱卓栋 冯友旭

    IPC分类号: G06F9/48

    摘要: 本发明涉及数据处理技术领域,具体提供了一种事务复制Checkpoint方法及装置,具有如下步骤:S1、按照range判断事务冲突,每个range设置自己的事务最大落盘水位线;S2、当备库启动后,扫描range 1发现已经落盘了hlc 6的事务;S3、水位线重新计算;S4、对于任何时刻,备库的水位线只有一条,对整张表的水位线定义;S5、推导出备库的库级复制的水位线定义;S6、主库需要分析收到备库的tableLevelFlushedMaxTxnCommitTs后的情况,进行分类讨论。与现有技术相比,本发明在面向主从的事务一致性复制场景下,通过定义主备复制的水位线,减少冗余数据的传输,并且无需在从节点持久化数据,降低数据存储的成本。

    一种数据库分片复制过程中聚合分裂的处理方法及系统

    公开(公告)号:CN117290440A

    公开(公告)日:2023-12-26

    申请号:CN202311170325.X

    申请日:2023-09-12

    发明人: 陈磊 李伟 冯友旭

    IPC分类号: G06F16/27

    摘要: 本发明公开了一种数据库分片复制过程中聚合分裂的处理方法及系统,属于数据复制处理技术领域,该方法的实现包括增加注册缓存preSpan,KV缓存rangeKVbuf,副本复制状态机splitMergeState,在复制断开和重新注册这段时间缓存主库发送的KV,在复制注册成功后,补足发送缓存的KV。本发明实现分布式数据库主备复制过程中分片的聚合、分裂情况下保持主备数据一致性,解决了主备数据丢失的问题。

    一种基于SST的Insert SQL语句实现方法

    公开(公告)号:CN116644086A

    公开(公告)日:2023-08-25

    申请号:CN202310587092.7

    申请日:2023-05-24

    IPC分类号: G06F16/242 G06F16/2455

    摘要: 本发明提供一种基于SST的Insert SQL语句实现方法,属于数据库技术领域,本发明主要解决insert语句小批量数据持续写入场景。通过预先分配固定数量的range数据分区,不同分区写入不同的数据节点,在数据节点上,接收到数据后,本地数据攒批,达到一定数量后,内存中生成SST文件,之后异步的将生成的SST直接调用本地的rocksdb接口,直接落入到rocksdb存储的L0层,减少了中间的数据拷贝和转换,提高insert语句的热点写入性能,同时也避免的rocksdb的flush写失速场景的出现。

    一种灵活高效的进程间数据传输方法及装置

    公开(公告)号:CN118051352A

    公开(公告)日:2024-05-17

    申请号:CN202410183654.6

    申请日:2024-02-19

    发明人: 王浩之 冯友旭

    IPC分类号: G06F9/54 G06F9/52

    摘要: 本发明公开了一种灵活高效的进程间数据传输方法及装置,属于分布式数据库技术领域,使用基于共享内存传输数据,并使用原子变量结合灵活的并发控制方法实现高效灵活的并发访问;所述并发控制方法采用原子变量实现多进程和多线程的并发安全;采用支持阻塞和非阻塞模式,超时时间,条件判断回调实现数据访问的灵活性。本发明可以提供对数据更灵活的访问控制,满足各种性能、资源要求的场景,数据访问效率较其它传统进程间通信方式大大提高。