[发明专利]分布式数据库表连接方法、装置、系统、服务器及介质有效
申请号: | 201910769332.9 | 申请日: | 2019-08-20 |
公开(公告)号: | CN110597808B | 公开(公告)日: | 2021-05-18 |
发明(设计)人: | 刘彬;潘毅;张博;余璜 | 申请(专利权)人: | 蚂蚁金服(杭州)网络技术有限公司 |
主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/27 |
代理公司: | 北京博思佳知识产权代理有限公司 11415 | 代理人: | 林祥 |
地址: | 310000 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分布式 数据库 连接 方法 装置 系统 服务器 介质 | ||
1.一种分布式数据库表连接方法,应用于分布式数据库系统中,用于连接外表数据和内表数据,所述分布式数据库系统中包括至少一个外表节点以及多个内表节点,所述内表数据分片存储在多个内表节点上;所述方法包括:
所述外表节点将外表数据通过广播消息发送给存储有内部数据的各个内表节点;
所述内表节点的外表数据划分单元按照随机或轮询的方式,将本机接收的外表数据划分为多份外表子数据;
所述内表节点中具有与划分出的多份外表子数据对应的多个表连接线程或进程,每个表连接线程或进程按照预置数据读取策略,读取对应的该份外表子数据;所述预置数据读取策略包括:每个表连接线程或进程按照顺序读取每份数据;
每个所述表连接线程或进程将读取的外表子数据与所在节点的内表数据进行匹配,输出满足连接条件的数据。
2.根据权利要求1所述的方法,所述将外表数据通过广播消息发送给各个内表节点,包括:
确定内表节点数;
将外表数据拷贝为内表节点数份,并将每份外表数据通过广播消息,发送给各个内表节点。
3.根据权利要求1所述的方法,所述内表节点的表连接线程或进程,按照预置数据读取策略,读取外表数据,包括:
将广播到内表节点的外表数据形成统一的数据集合;
内表节点的各个表连接线程或进程,从所述数据集合中逐行或批量读取数据,直至数据集合被读取完。
4.根据权利要求1所述的方法,内表节点的内表数据携带有主键索引或局部索引;
所述表连接线程或进程将外表数据与所在节点的内表数据进行匹配,包括:
所述表连接线程或进程根据内表数据的主键索引或局部索引,查找内表数据,将读取的外表数据与查找到的内表数据进行匹配。
5.根据权利要求1-4任一项所述的方法,所述外表数据以分片的形式保存在多个外表节点上,或者,以非分片的形式保存在一个外表节点上。
6.一种分布式数据库表连接装置,所述装置位于各个内表节点,所述各个内表节点用于分片存储内表数据;所述装置包括:
广播接收单元,用于通过广播消息接收外表数据;
外表数据划分单元,用于按照随机或轮询的方式,将外表数据划分为多份外表子数据;
与划分出的多份外表子数据对应的多个表连接线程或进程,每个所述表连接线程或进程用于按照预置数据读取策略,读取对应的该份外表子数据;以及,将读取的外表子数据与所在节点的内表数据进行匹配,输出满足连接条件的数据;其中,所述表连接线程或进程具体用于:按照顺序读取所述多份数据中的每份外表子数据。
7.根据权利要求6所述的装置,还包括:外表数据集合单元,用于将广播到内表节点的外表数据形成统一的数据集合;
所述表连接线程或进程具体用于:从所述数据集合中逐行或批量读取数据,直至数据集合被读取完。
8.根据权利要求6所述的装置,内表节点的内表数据携带有主键索引或局部索引;
所述表连接线程或进程具体用于:根据内表数据的主键索引或局部索引,查找内表数据,将读取的外表数据与查找到的内表数据进行匹配。
9.一种分布式数据库系统,包括至少一个外表节点以及多个内表节点;内表数据分片存储在多个内表节点上;
所述外表节点,用于通过广播消息将外表数据发送给各个内表节点;
所述内表节点,具有与划分出的多份外表子数据对应的多个表连接线程或进程,每个表连接线程或进程按照预置数据读取策略,读取对应的该份外表子数据;所述预置数据读取策略包括:每个表连接线程或进程按照顺序读取每份数据;每个所述表连接线程或进程将读取的外表子数据与所在节点的内表数据进行匹配,输出满足连接条件的数据。
10.一种服务器,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现权利要求1-5任一项所述方法的步骤。
11.一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现权利要求1-5任一项所述方法的步骤。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于蚂蚁金服(杭州)网络技术有限公司,未经蚂蚁金服(杭州)网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910769332.9/1.html,转载请声明来源钻瓜专利网。