IP Library Granted Patent US 11,550,791
Granted Patent B2
US 11,550,791 · App. 17/207,512 · Granted Jan 10, 2023

Table placement in distributed databases

Inventors: Hans-Joerg Leu (Dossenheim, DE); Christian Bensberg (Heidelberg, DE); Johannes Beigel (Rauenberg, DE); Jochen Becker (Haseluenne, DE); Carsten Mueller (Bruchsal, DE)
Assignee: SAP SE
G06F16/24554G06F16/2365G06F16/27
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,550,791
App. No.
17/207,512
Granted
Jan 10, 2023
Kind
B2
Abstract

A node type of a plurality of distributed nodes to which a table to be added to a distributed database should be assigned can be identified by applying a set of placement rules defined for the table. The set of placement rules can also be applied to determine whether the table should be partitioned into more than one partition. A table group name associated with the table can be obtained and used in conjunction with the node type and determination of whether to partition the table to store the table in the distributed database on at least one node of the plurality of nodes as one or more partitions.

Claims (33)

1. A system comprising:

at least one programmable processor; and

at least one memory including program code which when executed by the at least one programmable processor causes operations comprising:

in response to a number of records in a first partition reaching a re-partitioning threshold defined by table classification information including a table placement rale, dividing, based on the table classification information for a table stored across a plurality of partitions in a distributed database, the first partition for the table stored across the plurality of partitions to repartition the first partition by creating one or more new partitions for the first partition, the distributed database comprising the plurality of tables located on a plurality of distributed nodes; and

placing, based on the table classification information, the one or more new partitions onto at least one available distributed node of the plurality of distributed nodes.

2. The system of claim 1 , wherein the table classification information further includes a location rule defining a type of server for the placing of the one or more new partitions, wherein the type of server comprises a master server or a slave server.

3. The system of claim 1 , wherein the table classification information comprises a table name and a schema name.

4. The system of claim 1 , wherein the table classification information comprises an application type.

5. The system of claim 1 , wherein the dividing and/or the placing is further based on a table placement rule defined for the table.

6. The system of claim 1 further comprising:

collecting information about the distributed database, the information including the table classification information and a table placement rule.

7. The system of claim 6 , wherein the table placement rule defines how the table is partitioned.

8. The system of claim 6 , wherein the table placement rule defines where the new partition is to be placed.

9. The system of claim 6 , wherein the table placement rule includes a partition threshold defined for the table.

10. A method comprising:

in response to a number of records in a first partition reaching a re-partitioning threshold defined by table classification information including a table placement rule, dividing, based on the table classification information for a table stored across a plurality of partitions in a distributed database, the first partition for the table stored across the plurality of partitions to repartition the first partition by creating one or more new partitions for the first partition, the distributed database comprising the plurality of tables located on a plurality of distributed nodes; and

placing, based on the table classification information, the new partition onto at least one available distributed node of the plurality of distributed nodes.

11. The method of claim 10 , wherein the table classification information further includes a location rule defining a type of server for the placing of the one or more new partitions, wherein the type of server comprises a master server or a slave server.

12. The method of claim 10 , wherein the table classification information comprises a table name and a schema name.

13. The method of claim 10 , wherein the table classification information comprises an application type.

14. The method of claim 10 , wherein the dividing and/or the placing is further based on a table placement rule defined for the table.

15. The method of claim 10 further comprising:

collecting information about the distributed database, the information including the table classification information and a table placement rule.

16. The method of claim 15 , wherein the table placement rule defines how the table is partitioned.

17. The method of claim 15 , wherein the table placement rule defines where the new partition is to be placed.

18. The method of claim 15 , wherein the table placement rule includes a partition threshold defined for the table.

19. A computer program product comprising a non-transitory machine-readable medium storing instructions that, when executed by at least one programmable processor, cause the at least one programmable processor to perform operations comprising:

in response to a number of records in a, first partition reaching a re-partitioning threshold defined by table classification information including a table placement rule, dividing, based on the table classification information for a table stored across a plurality of partitions in a distributed database, the first partition for the table stored across the plurality of partitions to repartition the first partition by creating one or more new partitions for the first partition, the distributed database comprising the plurality of tables located on a plurality of distributed nodes; and

placing, based on the table classification information, the new partition onto at least one available distributed node of the plurality of distributed nodes.

20. The computer program product of claim 19 , wherein the table classification information further includes a location rule defining a type of server for the placing of the one or more new partitions, wherein the type of server comprises a master server or a slave server.

21. The computer program product of claim 19 , wherein the dividing and/or the placing is further based on a table placement rule defined for the table.

22. The computer program product of claim 19 further comprising:

collecting information about the distributed database, the information including the table classification information and a table placement rule.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 19, 2021
From: LEU, HANS-JOERG; BENSBERG, CHRISTIAN; BEIGEL, JOHANNES; BECKER, JOCHEN; MUELLER, CARSTEN
To: SAP AG
Reel/Frame 055657/0771 →
CHANGE OF NAME Recorded Mar 19, 2021
From: SAP AG
To: SAP SE
Reel/Frame 055666/0369 →
Continuity (4)
Continuation 16245520 · Jan 11, 2019
Continuation 15160771 · May 20, 2016
Continuation 14090799 · Nov 26, 2013
Related Publication 20210232586A1 · Jul 29, 2021