Granular creation and refresh of columnar data

US9606921B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9606921-B2
Application numberUS-201414337045-A
CountryUS
Kind codeB2
Filing dateJul 21, 2014
Priority dateSep 21, 2013
Publication dateMar 28, 2017
Grant dateMar 28, 2017

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.

Techniques are provided for granular load and refresh of columnar data. In an embodiment, a particular data object that contains particular data formatted different from column-major format is maintained, the particular data including first data and second data. First and second data objects contain the first and second data, respectively, organized in the column-major format. In response to changes being committed to the first data in the particular data object, invalidating one or more rows of the first data object. In response to a number of invalidated rows of the first data object exceeding a threshold, automatically performing a refresh operation on the first data object independent of any refresh operation on the second data object.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: maintaining a particular data object that contains particular data formatted different from column-major format, wherein the particular data includes first data and second data; maintaining a first data object that contains the first data organized in the column-major format; maintaining a second data object that contains the second data organized in the column-major format; in response to changes being committed to the first data in the particular data object, invalidating one or more rows of the first data object; in response to refresh criteria being satisfied relative to the first data object, automatically performing a refresh operation on the first data object independent of any refresh operation on the second data object; in response to changes being committed to the second data in the particular data object, invalidating one or more rows of the second data object; and in response to refresh criteria being satisfied relative to the second data object, automatically performing a refresh operation on the second data object independent of any refresh operation on the first data object. 2. The method of claim 1 , wherein a single set of journal extents is used to maintain an indication of which rows are invalid for both the first data object and the second data object. 3. The method of claim 1 , wherein maintaining the particular data object comprises maintaining the particular data object formatted in row-major format in a persistent storage, and wherein maintaining the first data object comprises maintaining the first data object in a volatile memory. 4. The method of claim 1 , wherein the particular data object comprises at least one of a table, a table partition, a table sub-partition, one or more segments, a set of segments, one or more extents, a set of extents, a set of block of data, one or more columns of a table, one or more on-disk extents, or a set of data. 5. The method of claim 1 , wherein automatically performing the refresh operation on the first data object comprises automatically performing the refresh operation on the first data object in response to a number of invalidated rows of the first data object exceeding an invalidated row count threshold. 6. The method of claim 1 , wherein automatically performing the refresh operation on the first data object comprises automatically performing the refresh operation on the first data object in response to a number of invalidated rows of the first data object exceeding a percentage threshold. 7. The method of claim 1 , wherein automatically performing the refresh operation on the first data object comprises automatically performing the refresh operation on the first data object in response to a number of new rows within a block range of the first data object added to the particular data object after creation of the first data object exceeding a new row count threshold. 8. The method of claim 1 , wherein automatically performing the refresh operation on the first data object comprises automatically creating a replacement data object for the first data object, the replacement data object containing a more current version of the first data than a version of the first data contained in the first data object, the first data in the replacement data object organized in the column-major format, and further comprising deleting the first data object after automatically creating the replacement data object. 9. The method of claim 1 , wherein automatically performing the refresh operation on the first data object comprises automatically creating a replacement data object for the first data object using the first data included in the first data object and at least one of the particular data or a journal associated with the first data object, the journal including a record of each change to one or more portions of the first data after creation of the first data object, each change to the one or more portions of the first data mirroring each respective change to corresponding one or more portions of the particular data. 10. The method of claim 1 , wherein automatically performing the refresh operation on the first data object comprises automatically creating a replacement data object for the first data object using the particular data or a journal associated with the first data object, the journal including a record of each change to one or more portions of the first data after creation of the first data object, each change to the one or more portions of the first data mirroring each respective change to corresponding one or more portions of the particular data. 11. The method of claim 1 , wherein a record file is associated with the first data object and the second data object, the record file including a record of changes to one or more portions of the first data after creation of the first data object and changes to one or more portions of the second data after creation of the second data object, the changes to the one or more portions of the first and second data mirroring each respective change to corresponding one or more portions of the first and second data in the particular data object. 12. The method of claim 1 , wherein the refresh operation comprises one or more background processes of a database server having access to the particular data object, first data object, and second data object. 13. The method of claim 1 , wherein the refresh criteria is satisfied relative to the first data object when a number of invalid rows of the first data object exceeds a threshold. 14. One or more non-transitory storage media storing instructions which, when executed by one or more processors, cause: maintaining a particular data object that contains particular data formatted different from column-major format, wherein the particular data includes first data and second data; maintaining a first data object that contains the first data organized in the column-major format; maintaining a second data object that contains the second data organized in the column-major format; in response to changes being committed to the first data in the particular data object, invalidating one or more rows of the first data object; in response to refresh criteria being satisfied relative to the first data object, automatically performing a refresh operation on the first data object independent of any refresh operation on the second data object; in response to changes being committed to the second data in the particular data object, invalidating one or more rows of the second data object; and in response to refresh criteria being satisfied relative to the second data object, automatically performing a refresh operation on the second data object independent of any refresh operation on the first data object. 15. The one or more non-transitory storage media of claim 14 , wherein a single set of journal extents is used to maintain an indication of which rows are invalid for both the first data object and the second data object. 16. The one or more non-transitory storage media of claim 14 , wherein maintaining the particular data object comprises maintaining the particular data object formatted in row-major format in a persistent storage, and wherein maintaining the first data object comprises maintaining the first data object in a volatile memory. 17. The one or more non-transitory storage media of claim 14 , wherein the particular data object comprises at least one of a table, a table partition, a table sub-partition, one or more segments, a set of segments, one or more extents, a set of extents, a set of block

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 US9606921B2 cover?
Techniques are provided for granular load and refresh of columnar data. In an embodiment, a particular data object that contains particular data formatted different from column-major format is maintained, the particular data including first data and second data. First and second data objects contain the first and second data, respectively, organized in the column-major format. In response to ch…
Who is the assignee on this patent?
Oracle Int Corp
What technology area does this patent fall under?
Primary CPC classification G06F12/0815. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Mar 28 2017 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 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).