分布式关系型数据库join表智能重分布关联数据的方法及系统与流程
- 国知局
- 2024-07-31 23:00:01
本发明涉及关系型数据库和时序数据库,具体地说是分布式关系型数据库join表智能重分布关联数据的方法及系统。
背景技术:
1、分布式数据库系统里面,数据表间的join是常见的操作。由于数据的分片,从两张表来join的数据可能分布在不同的物理节点上。跨物理节点频繁的数据查询和传输效率低下,在海量数据join的情形下,性能是很大的瓶颈。除了性能外,网络延迟,网络故障和节点宕机都对跨节点获取数据造成了极大的困难和挑战。
技术实现思路
1、本发明的技术任务是针对以上不足之处,提供分布式关系型数据库join表智能重分布关联数据的方法及系统,能够自动智能地分析定位关联数据,把关联数据重分布到同一个物理节点上;这样的话,当关联数据在join中需要互相查询的时候,就不需要跨物理节点查询传输数据了,大大提高了分布式关系型数据库join数据的获取效率和操作性能。
2、本发明解决其技术问题所采用的技术方案是:
3、分布式关系型数据库join表智能重分布关联数据的方法,该方法的实现包括:
4、所述分布式关系型数据库模型表包括主键和外键,分布式关系型数据库模型表通过外键来联络或者指向另外一张表的主键对应的数据行,该表的外键和另外一张表的主键是同一个键值;通过这个键值的共享,将不同表间的行数据关联起来;
5、智能检测关联数据,包括智能锁定显性主外键外键的关联数据、智能检测隐性关联数据、智能检测小而稳定的表;
6、关联数据重分布,在关联数据被智能检测到后,把关联数据的表存入关联连通图里。
7、本方法能够消除关联数据存放到物理节点的不可预测性,把它们存放到同一个物理节点。一旦关联数据都存放到同一个物理节点后,随机分布的问题就都解决了。
8、进一步的,所述智能锁定显性主键外键的关联数据,
9、用户在使用分布式系统关系型数据库的时候,通过sql语句显式地指定主键和外键;由于主键和外键在sql语句里显式地指定,系统可以智能地辨识出主键所在的数据表和外键所在的数据表;这两个数据表的数据就成为关联数据,写入就会被重分布到同一个物理节点。
10、进一步的,所述智能检测隐性关联数据,
11、通过监测算法智能来自动检测到一张表的数据频繁地从一个物理节点被传输到另外一个物理节点做join操作,则认为这些数据是关联数据;就依据重分布算法,自动地把这些隐性的关联数据重新分布到同一个物理节点上。
12、进一步的,所述智能检测隐性关联数据,监测算法的检测指标包括是join的对应列、数据join的负载;
13、当两张表join的列反复重现,以及join的负载够大的时候,系统智能地分析判断出这里面有大负载join数据的模式,并把这个模式记录下来;这个模式在后续的数据join以相同模式重现的时候,系统就会启动自动重分配算法,把关联数据重分配到同一个物理节点上。
14、进一步的,所述智能检测小而稳定的表,对小而稳定的表,复制到所有物理节点;具体为:
15、对join的成对表进行智能评估监测,识别出数据量小而且稳定的表,也就是长时间不怎么更新的数据表,比如说个人信息表;
16、对于具备这些特征的数据表,系统在智能检测到后,把这些表复制到所有的物理节点;一旦这些表的数据需要join操作,在本节点获取即可。
17、进一步的,所述关联数据重分布,
18、关联数据会关联多张表到同一个连通图;每当这两张表中任何一张表的数据有写入的时候,自动检索关联数据索引结构,找到祖先(root)数据所在的物理节点;这些关联数据就会自动地重分布和写入到这个祖先数据所在的物理节点。
19、优选的,所述关联数据重分布,采用union-find算法来找到共同的祖先数据,从而把所有关联数据都导向重分布到同一个物理节点。
20、本发明还要求保护分布式关系型数据库join表智能重分布关联数据的系统,包括智能检测关联数据模块和关联数据重分布模块,
21、所述分布式关系型数据库模型表包括主键和外键,分布式关系型数据库模型表通过外键来联络或者指向另外一张表的主键对应的数据行,该表的外键和另外一张表的主键是同一个键值;通过这个键值的共享,将不同表间的行数据关联起来;
22、智能检测关联数据模块包括智能锁定显性主外键外键的关联数据、智能检测隐性关联数据、智能检测小而稳定的表;
23、关联数据重分布模块,用于在关联数据被智能检测到后,把关联数据的表存入关联连通图里;
24、该系统能够实现上述的分布式关系型数据库join表智能重分布关联数据的方法。
25、本发明还要求保护分布式关系型数据库join表智能重分布关联数据的装置,其特征在于,包括:至少一个存储器和至少一个处理器;
26、所述至少一个存储器,用于存储机器可读程序;
27、所述至少一个处理器,用于调用所述机器可读程序,实现上述的方法。
28、本发明还要求保护一种计算机可读介质,其特征在于,所述计算机可读介质上存储有计算机指令,所述计算机指令在被处理器执行时,能够实现上述的方法。
29、本发明的分布式关系型数据库join表智能重分布关联数据的方法及系统与现有技术相比,具有以下有益效果:
30、通过智能重分布数据的策略,自动智能地分析定位关联数据,把关联数据重分布到同一个物理节点上。当关联数据在join中需要互相查询的时候,就不需要跨物理节点查询传输数据了,大大提高了分布式关系型数据库join数据的获取效率和操作性能以及稳定性。
技术特征:1.分布式关系型数据库join表智能重分布关联数据的方法,其特征在于,该方法的实现包括:
2.根据权利要求1所述的分布式关系型数据库join表智能重分布关联数据的方法,其特征在于,所述智能锁定显性主键外键的关联数据,
3.根据权利要求1所述的分布式关系型数据库join表智能重分布关联数据的方法,其特征在于,所述智能检测隐性关联数据,
4.根据权利要求3所述的分布式关系型数据库join表智能重分布关联数据的方法,其特征在于,所述智能检测隐性关联数据,监测算法的检测指标包括是join的对应列、数据join的负载;
5.根据权利要求1所述的分布式关系型数据库join表智能重分布关联数据的方法,其特征在于,所述智能检测小而稳定的表,对小而稳定的表,复制到所有物理节点;具体为:
6.根据权利要求1所述的分布式关系型数据库join表智能重分布关联数据的方法,其特征在于,所述关联数据重分布,
7.根据权利要求6所述的分布式关系型数据库join表智能重分布关联数据的方法,其特征在于,所述关联数据重分布,采用union-find算法来找到共同的祖先数据,从而把所有关联数据都导向重分布到同一个物理节点。
8.分布式关系型数据库join表智能重分布关联数据的系统,其特征在于,包括智能检测关联数据模块和关联数据重分布模块,
9.分布式关系型数据库join表智能重分布关联数据的装置,其特征在于,包括:至少一个存储器和至少一个处理器;
10.一种计算机可读介质,其特征在于,所述计算机可读介质上存储有计算机指令,所述计算机指令在被处理器执行时,能够实现权利要求1至7任一项所述的方法。
技术总结本发明公开了分布式关系型数据库join表智能重分布关联数据的方法及系统,属于关系型数据库和时序数据库技术领域,该方法的实现包括:所述分布式关系型数据库模型表包括主键和外键,分布式关系型数据库模型表通过外键来联络或者指向另外一张表的主键对应的数据行,该表的外键和另外一张表的主键是同一个键值;通过这个键值的共享,将不同表间的行数据关联起来;智能检测关联数据,包括智能锁定显性主外键外键的关联数据、智能检测隐性关联数据、智能检测小而稳定的表;关联数据重分布,在关联数据被智能检测到后,把关联数据的表存入关联连通图里。本发明能够大大提高分布式关系型数据库join数据的获取效率和操作性能。技术研发人员:任鲲鹏,蒋清春,于暄受保护的技术使用者:上海沄熹科技有限公司技术研发日:技术公布日:2024/7/29本文地址:https://www.jishuxx.com/zhuanli/20240730/195654.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。