[发明专利]用于分布式大规模并行处理数据库的方法及系统有效
申请号: | 201811146623.4 | 申请日: | 2013-10-29 |
公开(公告)号: | CN109388638B | 公开(公告)日: | 2022-04-05 |
发明(设计)人: | 卡米尼·杰格缇雅尼;杰森·扬·孙;沈秀棠;甘嘎瓦拉·普拉萨德·瓦拉库汝 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F16/22 | 分类号: | G06F16/22 |
代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 熊永强;李稷芳 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 分布式 大规模 并行 处理 数据库 方法 系统 | ||
本发明实施例提供一种大规模并行处理的方法,包括:将主键分配给数据库中的第一数据表、将外键分配给所述数据库中的第二数据表,所述第二数据表的外键与所述第一数据表的主键完全相同;确定所述数据库需要的分区组数;基于分配的所述主键和需要的分区组数将所述第一数据表划分成多个第一分区,基于分配的所述外键和需要的分区组数将所述第二数据表划分成多个第二分区;根据分区情况将所述第一分区和第二分区分发到所述分区组。
技术领域
本发明涉及一种大规模并行处理(MPP)数据库管理系统,以及在特定实施例中,涉及一种能将数据库分区数与固定处理器数分离的管理系统。
背景技术
大规模并行处理(MPP)的概念是指多个处理器对一个程序的协调处理,其中每个处理器处理所述程序的不同部分。每个处理器使用自身的操作系统与内存资源,各处理器之间互相通信以完成任务。
MPP数据库系统基于无共享架构,数据库表划分成多个部分,并分配至不同的处理节点。处理节点间无数据共享。当数据库查询到达时,每条查询的任务会进行划分,并根据数据分配计划与优化的执行计划将其分配给其中的一个处理节点。每个处理节点中的处理实体只管理各自的一部分数据。但是,这些处理实体在执行工作时可互相通信以交换必要的信息。每条查询可拆分成多个子查询,这些子查询可以在部分或所有处理节点上并行执行或以最佳顺序执行。子查询结果可以汇聚以进行进一步的处理,其后可根据该结果执行更多的子查询。
建立分布式系统及分发数据一直是MPP数据库系统面临的一个挑战。数据如何分发以及分发在多大程度上与业务逻辑保持一致在很大程度上决定了系统的整体性能。
发明内容
一种大规模并行处理数据库中管理数据的方法,包括:将主键分配给数据库中的第一数据表、将外键分配给所述数据库中的第二数据表,所述第二数据表的外键与所述第一数据表的主键完全相同;确定所述数据库需要的分区组数;基于分配的所述主键和需要的分区组数将所述第一数据表划分成多个第一分区;基于分配的所述外键和需要的分区组数将所述第二数据表划分成多个第二分区;根据分区情况将所述第一分区和第二分区分发到所述分区组。
一个用来在逻辑上将数据库拆分为多个独立运行的小数据库的实施例,包括:确定数据库需要的分区组数;基于第一属性与需要的分区组数将第一数据表划分成多个第一分区;基于第二属性与需要的分区组数将第二数据表划分成多个第二分区;根据分区情况将所述第一分区和第二分区分发到所述分区组。
一种大规模并行处理数据库系统,包括:处理器、以及数据库建立模块,当数据库建立模块被处理器执行时,用于分配主键给数据库中的第一数据表,分配外键给所述数据库中的第二数据表,其中所述第二数据表的外键与所述第一数据表的主键完全相同;确定数据库需要的分区组数;基于分配的所述主键和需要的分区组数将所述第一数据表划分成多个第一分区;基于分配的所述外键和需要的分区组数将所述第二数据表划分成多个第二分区;根据分区情况将所述第一分区和第二分区分发到所述分区组。
一种大规模并行处理数据库系统,包括:至少一个内存,以及存储在至少一个内存上的数据库,所述数据库包括第一数据表和第二数据表,其中所述第一数据表和第二数据表通过以下建立:分配主键给所述数据库中的所述第一数据表和外键给所述数据库中的第二数据表,其中所述第二数据表的外键与所述第一数据表的主键完全相同;确定数据库需要的分区组数;基于分配的所述主键和需要的分区组数将所述第一数据表划分成多个第一分区;基于分配的所述外键和需要的分区组数将所述第二数据表划分成多个第二分区;根据分区情况将所述第一分区和所述第二分区分发到所述分区组。
附图说明
为了更全面地理解本发明及其优点,请参考下文结合附图进行的描述,其中:
图1示出了具有无分区的数据表(例如,t1至t4)的传统数据库;
图2示出了具有已分区数据表(例如,t1至t3)和无分区数据表(例如t4)的传统数据库;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811146623.4/2.html,转载请声明来源钻瓜专利网。