Method and device for partitioning association table in distributed database

US10831737B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10831737-B2
Application numberUS-201715814141-A
CountryUS
Kind codeB2
Filing dateNov 15, 2017
Priority dateMay 31, 2015
Publication dateNov 10, 2020
Grant dateNov 10, 2020

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method for partitioning an association table in a distributed database, where a manager determines a first data table in data tables requiring partition and generates a colocation partition (CP) table set of the first data table, the CP table set of the first data table includes the first data table and at least one CP table of the first data table, and a CP table of the first data table includes a data table whose partition key includes a subset of a partition key of the first data table. The manager partitions the first data table according to the partition key and partitions each CP table in the CP table set, a partition range of a partition key of each CP table is the same as a partition range of a corresponding partition key in the first data table.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for partitioning an association table in a distributed database, comprising: obtaining a plurality of first partition keys of a plurality of data tables requiring partition; determining a first data table in the data tables, wherein the first data table comprises a plurality of second partition keys, wherein each of the second partition keys is not a foreign key of a second data table, wherein the second partition keys are a subset of the first partition keys, and wherein the second data table is in the data tables and is different from the first data table; generating a colocation partition (CP) table set of the first data table based on the second partition keys, wherein the CP table set comprises the first data table and at least one CP table of the first data table, wherein the at least one CP table comprises a plurality of third partition keys, and wherein the third partition keys are a subset of the second partition keys; partitioning the first data table according to each of the second partition keys; and partitioning each of the at least one CP table in the CP table set, wherein a partition range of a partition key in the third partition keys is the same as a partition range of a corresponding partition key in the first data table. 2. The method of claim 1 , wherein generating the CP table set of the first data table comprises: obtaining a first dimension table of the first data table, wherein the first dimension table comprises a plurality of fourth partition keys; determining whether each of the fourth partition keys is in the second partition keys; adding the first dimension table to the CP table set when each of the fourth partition keys is in the second partition keys; obtaining a second dimension table of the first dimension table, wherein the second dimension table comprises a plurality of fifth partition keys; determining whether each of the fifth partition keys is in the second partition keys; and adding the second dimension table to the CP table set when each of the fifth partition keys is in the second Partition keys. 3. The method of claim 2 , further comprising not adding the first dimension table to the CP table set when each of the fourth partition keys is not in the second partition keys. 4. The method of claim 2 , further comprising not adding the second dimension table to the CP table set when each of the fifth partition keys is not in the second partition keys. 5. The method of claim 1 , further comprising: receiving a load balancing request indicating that load balancing needs to be performed on a first node; determining, on the first node, a second CP table set on which the load balancing is to be performed; determining, in the second CP table set, a third data table on which load adjustment is to be performed; selecting, from the third data table, a second partition key for partition range adjustment; and performing, on all data tables in the second CP table set comprising the second partition key, the partition range adjustment that is the same as that of the third data table. 6. The method of claim 5 , wherein determining the second CP table set comprises determining, according to a data table record quantity, the second CP table set that is on the first node and on which the load balancing needs to be performed. 7. The method of claim 5 , wherein determining the second CP table set comprises determining, according to occupied space, the second CP table set that is on the first node and on which the load balancing needs to be performed. 8. The method of claim 1 , wherein a quantity of dimensions of partition ranges of each of the at least one CP data table is based on a quantity of partition keys of the at least one CP data table. 9. A database manager, comprising: a memory configured to store program instructions; and a processor coupled to the memory, wherein the program instructions cause the processor to be configured to: obtain a plurality of first partition keys of a plurality of data tables requiring partition; determine a first data table in the data tables, wherein the first data table comprises a plurality of second partition keys, wherein each of second partition keys is not a foreign key of a second data table, wherein the second partition keys are a subset of the first partition keys, and wherein the second data table is in the data tables and is different from the first data table; generate a colocation partition (CP) table set of the first data table based on the second partition keys, wherein the CP table set comprises the first data table and at least one CP table of the first data table, wherein the at least one CP table comprises a plurality of third partition keys, and wherein the third partition keys are a subset of the second partition keys; partition the first data table according to each of the second partition keys; and partition each of the at least one CP table in the CP table set, wherein a partition range of a partition key in the third partition keys is the same as a partition range of a corresponding partition key in the first data table. 10. The database manager of claim 9 , wherein the program instructions further cause the processor to be configured to: obtain a first dimension table of the first data table, wherein the first dimension table comprises a plurality of fourth partition keys; determine whether each of the fourth partition keys is in the second partition keys; add the first dimension table to the CP table set when each of the fourth partition keys is in the second partition keys; obtain a second dimension table of the first dimension table, wherein the second dimension table comprises a plurality of fifth partition keys; determine whether each of the fifth partition keys is in the second partition keys; and add the second dimension table to the CP table set when each of the fifth partition keys is in the second Partition keys. 11. The database manager of claim 10 , wherein the program instructions further cause the processor to be configured to not add the first dimension table to the CP table set when each of the fourth partition keys is not in the second partition keys. 12. The database manager of claim 10 , wherein the program instructions further cause the processor to be configured to not add the second dimension table to the CP table set when each of the fifth partition keys is not in the second partition keys. 13. The database manager of claim 9 , wherein the program instructions further cause the processor to be configured to: receive a load balancing request indicating that load balancing needs to be performed on a first node; determine, on the first node, a second CP table set on which the load balancing is to be performed; determine, in the second CP table set, a third data table on which load adjustment is to be performed; select, from the third data table, a second partition key for partition range adjustment; and perform, on all data tables in the second CP table set comprising the second partition key, the partition range adjustment that is the same as that of the third data table. 14. The database manager of claim 13 , wherein the program instructions further cause the processor to be configured to determine, according to a data table record quantity, the second CP table set that is on the first node and on which the load balancing needs to be performed. 15. The database manager of claim 13 , wherein the program instructions further cause the processor to be configured to determine, according to occupied space, the second CP table set that is on the

Assignees

Inventors

Classifications

  • Data partitioning, e.g. horizontal or vertical partitioning · CPC title

  • using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] · CPC title

  • Details of translation look-aside buffer [TLB] · CPC title

  • Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor · CPC title

  • Details of virtual memory and virtual address translation · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10831737B2 cover?
A method for partitioning an association table in a distributed database, where a manager determines a first data table in data tables requiring partition and generates a colocation partition (CP) table set of the first data table, the CP table set of the first data table includes the first data table and at least one CP table of the first data table, and a CP table of the first data table incl…
Who is the assignee on this patent?
Huawei Tech Co Ltd
What technology area does this patent fall under?
Primary CPC classification G06F16/2282. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Nov 10 2020 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).