Dynamic data partitioning extension

US9916373B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9916373-B2
Application numberUS-201514669106-A
CountryUS
Kind codeB2
Filing dateMar 26, 2015
Priority dateMar 26, 2015
Publication dateMar 13, 2018
Grant dateMar 13, 2018

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.

Methods, systems, and computer program products are included for defining a partitioning strategy corresponding to an attribute, creating tables and inserting data into the tables according to the partitioning strategy, detecting triggering events, and responsive to the triggering events, dynamically activating tables for storing data.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer-implemented method for dynamically partitioning and storing data, the method comprising: creating a first table in a database, the first table corresponding to data values that are members of a first subset of a plurality of subsets corresponding to an attribute; receiving a first insert statement including a first data value that is a member of the first subset; transforming the first insert statement to insert the first data value into the first table; receiving a second insert statement including a second data value that is a member of the first subset; based on detecting a trigger event corresponding to the first table, creating a second table in the database, the second table corresponding to data values that are members of the first subset; and transforming the second insert statement, the transforming comprising: parsing the second insert statement to identify the attribute and the second data value; determining that the second data value is a member of the first subset; identifying the second table as an active table corresponding to the first subset; and modifying the second insert statement to insert the second data value into the second table. 2. The method of claim 1 , wherein transforming the first insert statement comprises: parsing the first insert statement to identify the attribute and the first data value; determining that the first data value is a member of the first subset; identifying an active table corresponding to the first subset, wherein the first table is the active table; and modifying the first insert statement to indicate that the first data value is to be inserted into the first table. 3. The method of claim 1 , wherein the trigger event corresponds to the first table having or exceeding at least one of the following: a pre-configured number of records; a pre-configured table size; or a pre-configured index size. 4. The method of claim 1 , wherein creating the second table in the database further comprises: placing the first table on hold; and marking the second table as active. 5. The method of claim 1 , wherein the first table includes a first vertical partition corresponding to the first subset and the second table includes a second vertical partition corresponding to the first subset. 6. The method of claim 1 , wherein each subset of the plurality of subsets includes a horizontal partition corresponding to the attribute, wherein the first subset includes a first horizontal partition, and wherein the first table and the second table are members of the first horizontal partition. 7. The method of claim 1 , further comprising: defining the attribute as a key attribute. 8. The method of claim 1 , further comprising: deleting one or more data values from the first table; determining a first closeness between the first table and an original table; determining a second closeness between the second table and the original table; determining that the first closeness is less than the second closeness; detecting that the first table is less than or equal to a pre-configured minimum table size, number of records, or index size; placing the second table on hold; and marking the first table as active. 9. The method of claim 1 , further comprising: creating a table corresponding to each subset of the plurality of subsets, wherein a hash table identifies tables that correspond to each subset of the plurality of subsets. 10. A non-transitory computer-readable medium having stored thereon computer-readable instructions executable to cause a machine to perform operations comprising: receiving a first insert statement including a first data value that is a member of a first subset; transforming the first insert statement to insert the first data value into a first table; detecting a trigger event corresponding to the first table; creating a second table corresponding to data values that are members of the first subset; receiving a second insert statement including a second data value that is a member of the first subset; and transforming the second insert statement, the transforming comprising: parsing the second insert statement to identify the attribute and the second data value; determining that the second data value is a member of the first subset; identifying the second table as an active table corresponding to the first subset; and modifying the second insert statement to insert the second data value into the second table. 11. The non-transitory computer-readable medium of claim 10 , wherein the trigger event includes at least one of the following: meeting or exceeding a pre-configured number of records; meeting or exceeding a pre-configured table size; or meeting or exceeding a pre-configured index size. 12. The non-transitory computer-readable medium of 10 , wherein creating the second table further comprises: marking in a hash table that the first table is on hold; and marking in the hash table that the second table is active. 13. The non-transitory computer-readable medium of claim 10 , wherein the first table includes a first vertical partition corresponding to the first subset and the second table includes a second vertical partition corresponding to the first subset. 14. The non-transitory computer-readable medium of claim 10 , wherein the first subset includes a horizontal partition corresponding to the attribute, and wherein the first table and the second table are members of the horizontal partition. 15. A system including a non-transitory memory and one or more hardware processors coupled to the non-transitory memory to execute instructions to perform operations comprising: storing, in a first table of a database, data values that are members of a first subset of a plurality of subsets corresponding to an attribute; receiving a first insert statement, the first insert statement including a first data value that is a member of the first subset; transforming the first insert statement; detecting a trigger event corresponding to the first table; receiving a second insert statement, the second insert statement including a second data value that is a member of the first subset; and transforming the second insert statement, the transforming comprising: parsing the second insert statement to identify the attribute and the second data value; determining that the second data value is a member of the first subset; identifying a second table of the database as an active table corresponding to the first subset; and modifying the second insert statement to insert the second data value into the second table. 16. The system of claim 15 , wherein the trigger event includes at least one of the following: meeting or exceeding a pre-configured number of records; meeting or exceeding a pre-configured table size; or meeting or exceeding a pre-configured index size. 17. The system of claim 15 , wherein the first table includes a first vertical partition corresponding to the first subset and the second table includes a second vertical partition corresponding to the first subset. 18. The system of claim 15 , wherein each subset of the plurality of subsets includes a horizontal partition corresponding to the attribute, wherein the first subset includes a first horizontal partition, and wherein the first table and the second table are members of the first horizontal partition. 19. The system of claim 15 , wherein the operations further comprise providing a cache of partitioning data associated with a business key functionalit

Assignees

Inventors

Classifications

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 US9916373B2 cover?
Methods, systems, and computer program products are included for defining a partitioning strategy corresponding to an attribute, creating tables and inserting data into the tables according to the partitioning strategy, detecting triggering events, and responsive to the triggering events, dynamically activating tables for storing data.
Who is the assignee on this patent?
Red Hat Inc
What technology area does this patent fall under?
Primary CPC classification G06F16/278. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Mar 13 2018 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).