1 .一种分布式数据库日志处理方法,其特征在于,包括:
获取所述分布式数据库下多个数据节点中每个数据节点的日志文件;
根据所述日志文件中每个节点事务的事务提交信息,确定出与每个分布式事务对应的
所述节点事务,其中,所述每个节点事务的事务提交信息用于指示所述每个节点事务开始
写操作的次序以及所述每个节点事务所属的分布式事务提交时的全局顺序;
按照所述与每个分布式事务对应的所述节点事务,对各个所述节点事务进行组合,得
到用于指示每个分布式事务的全局日志。
2.根据权利要求1所述的方法,其特征在于,所述获取所述分布式数据库下多个数据节
点中每个数据节点的日志文件,包括:
获取分布式数据库下多个数据节点中的每个数据节点的二进制日志;
将所有所述二进制日志复制至目标备机,得到所述每个数据节点的日志文件。
3 .根据权利要求2所述的方法,其特征在于,所述根据所述日志文件中每个节点事务的
事务提交信息,确定出与每个分布式事务对应的所述节点事务,包括:
将每个日志文件中的节点事务,读取至所述每个日志文件对应的事务队列中;
按照所述每个节点事务的事务提交信息,并通过对各个所述事务队列中的节点事务进
行读取,得到所述每个分布式事务对应的所述节点事务。
4 .根据权利要求3所述的方法,其特征在于,所述将每个日志文件中的节点事务,读取
至所述每个日志文件对应的事务队列中,包括:
启动与所述数据节点对应的FETCH线程,并创建与每个FETCH线程对应的所述事务队
列;
按照与所述每个数据节点对应的FETCH线程,通过所述每个FETCH线程对所述目标备机
中的每个日志文件进行读取,得到与所述每个数据节点对应的中继日志;
将所述中继日志中的所述节点事务读取至所述事务队列中。
5 .根据权利要求4所述的方法,其特征在于,所述按照所述每个节点事务的事务提交信
息,并通过对各个所述事务队列中的节点事务进行读取,得到所述每个分布式事务对应的
所述节点事务,包括:
启动一个目标线程,打开用于存储所述分布式数据库的全局日志信息的全局日志文
件,并创建所述目标线程对应的完整队列;
通过所述目标线程读取得到每个FETCH线程对应的事务队列中位于第一的首位事务;
通过解析每个首位事务的事务提交信息中的首位分布式事务ID以及首位分片信息后,
在所有首位事务中确定出指定分布式节点事务,其中,分布式事务ID用于指示唯一的分布
式事务,分片信息用于指示所对应的分布式事务中的每个节点事务所分布于的数据节点,
分布式节点事务所对应的分片信息涉及多个数据节点,对于任一个所述指定分布式节点事
务,所述指定分布式节点事务的首位分片信息指示包含所述指定分布式节点事务的指定分
布式事务分布于多个数据节点;
按照每个指定分布式节点事务的首位分布式事务ID,依次确定出与每个首位分布式事
务ID对应的节点事务组,并将所述节点事务组放入所述完整队列中,其中,与每个首位分布
式事务ID对应的节点事务组中包括:所有指定分布式节点事务中与所述每个首位分布式事
务ID对应的第一目标分布式节点事务,以及通过所述第一目标分布式节点事务的所述首位
权 利 要 求 书
1/2 页
2
评论