Logging system using persistent memory

US10949415B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10949415-B2
Application numberUS-201113077574-A
CountryUS
Kind codeB2
Filing dateMar 31, 2011
Priority dateMar 31, 2011
Publication dateMar 16, 2021
Grant dateMar 16, 2021

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 computer program product, including: a computer readable storage device to store a computer readable program, wherein the computer readable program, when executed by a processor within a computer, causes the computer to perform operations for logging. The operations include: receiving a transaction including data and a log record corresponding to the data; writing the data to a data storage device; and writing the log record to a log space on a persistent memory device coupled to the data storage device.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer program product, comprising: a computer readable storage device to store a computer readable program, wherein the computer readable program, when executed by a processor within a computer, causes the computer to perform operations for logging, the operations comprising: receiving a transaction comprising data and a log record corresponding to the data; separating the data and the log record corresponding to the data; writing the data to a memory buffer on a main memory device for at least temporary storage in the main memory device; writing the log record directly to a log space on a persistent memory device that is separate from the main memory device for at least temporary storage in the persistent memory device, wherein the persistent memory device is a storage class memory device comprising phase change memory, wherein the log record is written to the persistent memory device without any intervening cache of the log record in the memory buffer storing the data, a log buffer, and/or other volatile memory device; storing the data from the memory buffer to a data file on a data storage device via a first write operation; and archiving the log record to a log file on the data storage device via a second write operation that is separate from the first write operation in response to a predetermined condition of the log space, wherein the second write operation is asynchronous with respect to the first write operation, and wherein the data storage device, the main memory device, and the persistent memory device are different devices. 2. The computer program product of claim 1 , wherein the predetermined condition of the log space comprises a determination that a size of log records and other data within the log space is above a watermark, the watermark comprising a configurable parameter used to specify a level of log space used before starting a log archival process. 3. The computer program product of claim 1 , wherein the computer program product, when executed on the computer, causes the computer to perform additional operations, comprising: managing a plurality of log records in the log space using a log space manager on the persistent memory device according to the log records received by the persistent memory device. 4. The computer program product of claim 3 , wherein the log space manager is further configured to: communicate with an operating system corresponding to the logging system to initialize and remove the log space on the persistent memory device according to the log records received by the persistent memory device; and allocate chunks on the log space for subsystems within the logging system to write the log records. 5. The computer program product of claim 1 , wherein the computer program product, when executed on the computer, causes the computer to perform additional operations, comprising: acquiring an address of the log space on the persistent memory device; locating a most recent checkpoint log record; reading each log record after the checkpoint log record; and restoring a system state. 6. A method for logging, comprising: receiving a transaction comprising data and a log record corresponding to the data; separating the data and the log record corresponding to the data; writing the data to a memory buffer on a main memory device for at least temporary storage in the main memory device; writing the log record directly to a log space on a persistent memory device that is separate from the main memory device for at least temporary storage in the persistent memory device, wherein the persistent memory device is a storage class memory device comprising phase change memory, wherein the log record is written to the persistent memory device without any intervening cache of the log record in the memory buffer storing the data, a log buffer, and/or other volatile memory device; storing the data from the memory buffer to a data file on a data storage device via a first write operation; and archiving the log record to a log file on the data storage device via a second write operation that is separate from the first write operation in response to a predetermined condition of the log space, wherein the second write operation is asynchronous with respect to the first write operation, and wherein the data storage device, the main memory device, and the persistent memory device are different devices. 7. The method of claim 6 , wherein the predetermined condition of the log space comprises a determination that a size of log records and other data within the log space is above a watermark, the watermark comprising a configurable parameter used to specify a level of log space used before starting a log archival process. 8. The method of claim 6 , further comprising managing a plurality of log records in the log space using a log space manager on the persistent memory device according to the log records received by the persistent memory device. 9. The method of claim 8 , wherein the log space manager is further configured to: communicate with an operating system corresponding to the logging system to initialize and remove the log space on the persistent memory device according to the log records received by the persistent memory device; and allocate chunks on the log space for subsystems within the logging system to write the log records. 10. The method of claim 6 , further comprising: acquiring an address of the log space on the persistent memory device; locating a most recent checkpoint log record; reading each log record after the checkpoint log record; and restoring a system state. 11. A logging system, comprising: a processor configured to: receive a transaction comprising data and a log record corresponding to the data; and separate the data and the log record corresponding to the data; a main memory device comprising a data buffer configured to at least temporarily store the data corresponding to the transaction; a persistent memory device comprising a log space configured to directly and at least temporarily store the log record corresponding to the transaction without any intervening cache of the log record in a log buffer, the memory buffer and/or other volatile memory device, wherein the persistent memory device is a storage class memory device comprising phase change memory; a data storage device coupled to the persistent memory device and the main memory device, wherein the data storage device comprises: a data file configured to store the data from the memory buffer on the main memory device in a first operation; and a log file configured to archive the log record from the log space on the persistent memory device in a second write operation file and in response to a predetermined condition of the log space, wherein the second write operation is asynchronous with respect to the first write operation. 12. The system of claim 11 , wherein the persistent memory device further comprises a log space manager configured to manage a plurality of log records in the log space on the persistent memory device according to the log records received by the persistent memory device. 13. The system of claim 12 , wherein the log space manager is further configured to: communicate with an operating system corresponding to the logging system to initialize and remove the log space on the persistent memory device according to the log records received by the persistent memory device; and allocate chunks on the log space for subsystems within the logging system to write the log records. 14. The system of claim 11 , further comprising a recovery subs

Assignees

Inventors

Classifications

  • Updates performed during online database operations; commit processing · 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 US10949415B2 cover?
A computer program product, including: a computer readable storage device to store a computer readable program, wherein the computer readable program, when executed by a processor within a computer, causes the computer to perform operations for logging. The operations include: receiving a transaction including data and a log record corresponding to the data; writing the data to a data storage d…
Who is the assignee on this patent?
Fang Ru, He Bin, Hsiao Hui I, and 3 more
What technology area does this patent fall under?
Primary CPC classification G06F16/2379. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Mar 16 2021 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).