Data storage method and system

US2022207025A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2022207025-A1
Application numberUS-202117521481-A
CountryUS
Kind codeA1
Filing dateNov 8, 2021
Priority dateOct 16, 2018
Publication dateJun 30, 2022
Grant date

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.

An apparatus and method are disclosed. The method, which may be performed by one or more processors, may comprise receiving timestamp data representing a plurality of database transactions and dividing the timestamp data into a plurality of partitioning quanta (nPQ), each partitioning quantum (PQ) of the plurality of partitioning quanta representing a range of timestamps. Further, for each partitioning quantum (PQ) of the plurality of partitioning quanta (nPQ), the method may comprise allocating the timestamp data, such that sequentially adjacent timestamps are allocated to different partitions of a physical storage system for subsequent storage at the allocated partitions.

First claim

Opening claim text (preview).

1 . A method, performed by one or more processors, the method comprising: receiving timestamp data representing a plurality of database transactions; dividing the timestamp data into a plurality of partitioning quanta (nPQ), each partitioning quantum (PQ) of the plurality of partitioning quanta representing a range of timestamps; and for each partitioning quantum (PQ) of the plurality of partitioning quanta (nPQ), allocating the timestamp data, such that sequentially adjacent timestamps are allocated to different partitions of a physical storage system for subsequent storage at the allocated partitions. 2 . The method of claim 1 , further comprising: storing values representing the timestamp data, or data associated with the timestamp data, in the allocated partitions of one or more physical storage media; and providing keys to enable access to the timestamp data, or data derived from the timestamp data, for access by means of a database management system. 3 . The method of claim 2 , wherein the values allocated to the respective partitions of the one or more physical storage media represent a difference between database transaction commit time (Tc) and the database transaction start time (Ts). 4 . The method of claim 2 , wherein the values allocated to the respective partitions of the one or more physical storage media represent database transaction commit times (Tc) corresponding to the same transaction as the database transaction start times (Ts). 5 . The method of claim 4 , wherein the values are encoded using variable-length encoding. 6 . The method of claim 1 , wherein timestamps within the range of timestamps are sequential timestamps. 7 . The method of claim 1 , wherein the allocating comprises defining a plurality of partitions (NP) over which the timestamp data for each partitioning quantum (PQ) is to be allocated, wherein a number of partitions is less than a number of timestamps within each partitioning quantum (PQ). 8 . The method of claim 1 , wherein the allocating comprises generating a data structure for each partitioning quantum (PQ) comprising N rows and M columns, each of the N rows corresponding to a respective one of the partitions (NP) and each of the M columns corresponding to a subset range of timestamps within each partitioning quantum (PQ), each of the N rows and M columns having respective row and column keys to enable access to the timestamp data. 9 . The method of claim 8 , wherein the row keys are represented using little endian binary format. 10 . The method of claim 8 , wherein the row keys are provided as: LITTLE_ENDIAN((Ts/PQ)*NP+(Ts% PQ)% NP), where LITTLE_ENDIAN means little endian binary format, Ts is a timestamp value and % means modulus. 11 . The method of claim 8 , wherein the column keys are provided as: ((Ts% PQ)/NP), where Ts is a timestamp value and % means modulus. 12 . The method of claim 8 , wherein the row or column keys are encoded using variable-length encoding. 13 . The method of claim 1 , wherein the timestamp data represents database transaction start times (Ts). 14 . A computer program, optionally stored on a non-transitory computer readable medium program which, when executed by one or more processors of a data processing apparatus, causes the data processing apparatus to carry out a method comprising: receiving timestamp data representing a plurality of database transactions; dividing the timestamp data into a plurality of partitioning quanta (nPQ), each partitioning quantum (PQ) of the plurality of partitioning quanta representing a range of timestamps; and for each partitioning quantum (PQ) of the plurality of partitioning quanta (nPQ), allocating the timestamp data, such that sequentially adjacent timestamps are allocated to different partitions of a physical storage system for subsequent storage at the allocated partitions. 15 . Apparatus comprising one or more processors or special-purpose computing hardware, the apparatus configured to carry out a method comprising: receiving timestamp data representing a plurality of database transactions; dividing the timestamp data into a plurality of partitioning quanta (nPQ), each partitioning quantum (PQ) of the plurality of partitioning quanta representing a range of timestamps; for each partitioning quantum (PQ) of the plurality of partitioning quanta (nPQ), allocating the timestamp data, such that sequentially adjacent timestamps are allocated to different partitions of a physical storage system for subsequent storage at the allocated partitions; storing values representing the timestamp data, or data associated with the timestamp data, in the allocated partitions of one or more physical storage media; and providing keys to enable access to the timestamp data, or data derived from the timestamp data, for access by means of a database management system.

Assignees

Inventors

Classifications

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

  • using timestamps · CPC title

  • Updates performed during online database operations; commit processing · CPC title

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

  • Column-oriented storage; Management thereof · 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 US2022207025A1 cover?
An apparatus and method are disclosed. The method, which may be performed by one or more processors, may comprise receiving timestamp data representing a plurality of database transactions and dividing the timestamp data into a plurality of partitioning quanta (nPQ), each partitioning quantum (PQ) of the plurality of partitioning quanta representing a range of timestamps. Further, for each part…
Who is the assignee on this patent?
Palantir Technologies Inc
What technology area does this patent fall under?
Primary CPC classification G06F16/2322. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Jun 30 2022 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). 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).