Patents by Inventor Dirk Thomsen

Dirk Thomsen has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 10360111
    Abstract: Execution of a page flusher is initiated in an in-memory database system in which pages are loaded into memory and having associated physical disk storage by a resource flush thread using a queue. Thereafter, pages are identified that have been loaded into the memory of the database system and which have been modified. These identified pages are to be flushed to the physical disk storage. Each page is assigned with a different ordered physical page number. These identified pages are added to the queue. Subsequently, asynchronous write I/O is triggered causing the identified pages to be flushed to the physical disk storage and stored in the physical disk storage according to their assigned physical page numbers such that, if at least one predetermined performance condition is met, a subset of the identified pages in the queue are flushed to physical disk storage.
    Type: Grant
    Filed: May 3, 2017
    Date of Patent: July 23, 2019
    Assignee: SAP SE
    Inventor: Dirk Thomsen
  • Patent number: 10310946
    Abstract: Execution of a page flusher is initiated in an in-memory database system in which pages are loaded into memory and having associated physical disk storage. Thereafter, pages are identified that have been loaded into the memory of the database system and which have been modified. These identified pages are to be flushed to the physical disk storage. Each page is assigned with a different ordered physical page number. Asynchronous write I/O is later triggered causing the identified pages to be flushed to the physical disk storage and stored in the physical disk storage according to their assigned physical page numbers.
    Type: Grant
    Filed: April 7, 2017
    Date of Patent: June 4, 2019
    Assignee: SAP SE
    Inventor: Dirk Thomsen
  • Publication number: 20190026302
    Abstract: Disclosed herein are embodiments for free-space handling in pages and in-memory containers allowing variable-size data entries. An example system may determine expanses of unallocated space, within a page loaded in memory and configured to allocate a first data entry of a first size within the page that may also allocate at least one subsequent data entry of a second size different from the first size; save, into memory, transient free-space information corresponding to the page, including first position information for a first number of expanses of contiguous unallocated space within the page; evict the page from memory, writing allocated data entries contained therein to persistent storage; store, into persistent storage, persistent free-space information corresponding to the page, including second position information for a second number of expanses of unallocated space within the page, the second number being less than the first number; and discard the transient free-space information.
    Type: Application
    Filed: July 19, 2017
    Publication date: January 24, 2019
    Inventors: Dirk THOMSEN, Thorsten Glebe
  • Publication number: 20190018740
    Abstract: A savepoint is initiated in an in-memory database system that is associated with a plurality of modified pages and comprises a pre-critical phase, a critical phase, and a post-critical phase. Thereafter, as part of the critical phase, a physical page number is assigned to each page in the critical phase. Further, as part of the critical phase, each page assigned a physical page number is individually locked. Subsequently, each page is handed over from a corresponding first thread to a corresponding second thread to copy such page into a corresponding shadow page as part of the post-critical phase.
    Type: Application
    Filed: July 11, 2017
    Publication date: January 17, 2019
    Inventors: Dirk Thomsen, Werner Thesing
  • Publication number: 20190018742
    Abstract: Recovery of a database system by taking the database system offline is initiated. Thereafter, recovery operations specified by a redo log of the database system are replayed. A cleanup log is generated that identifies cleanup operations occurring during the replay of the recovery operations for garbage collection. Concurrent with the startup of the database, garbage collection of the cleanup operations as specified in the database savepoint is initiated. In addition, concurrent with the replay of the recovery operations, garbage collection of the cleanup operations specified by the cleanup log is initiated. The amount of parallelization of the garbage collection can be varied based on utilized processor resources. The database system is later brought online after all of the recovery operations are replayed.
    Type: Application
    Filed: July 11, 2017
    Publication date: January 17, 2019
    Inventors: Dirk Thomsen, Christoph Roterring, Thorsten Glebe
  • Publication number: 20190004937
    Abstract: Loading of a page into memory of an in-memory database system is initiated. Thereafter, a new page size for the page in memory is allocated corresponding to a greater of a current page size and an intended page size. Later, the page is loaded into the allocated memory so that a consistent change can be opened. Content within the page is reorganized according to the new page size followed by the consistent change being closed.
    Type: Application
    Filed: June 29, 2017
    Publication date: January 3, 2019
    Inventors: Dirk Thomsen, Thorsten Glebe
  • Publication number: 20180335949
    Abstract: Allocation of an entry in a variable size entry container is initiated in an in-memory database system. The variable size entry container includes a plurality of pages forming a chain. Thereafter, it is determined whether free space is found within the pre-existing pages. If free space is found, the entry is allocated in the free space. Otherwise, a new page is created and appended to the chain so that the entry can be allocated on such new page.
    Type: Application
    Filed: May 19, 2017
    Publication date: November 22, 2018
    Inventor: Dirk Thomsen
  • Publication number: 20180336126
    Abstract: A page is loaded into memory of an in-memory database system. Thereafter, it is determined whether to reorganized the page based on how such page is used. Based on such determination, the page is either reorganized by filling any free space gaps in memory and then, use of the reorganized page is enabled or, otherwise, use of the page is enabled without reorganization.
    Type: Application
    Filed: May 19, 2017
    Publication date: November 22, 2018
    Inventor: Dirk Thomsen
  • Publication number: 20180322050
    Abstract: Execution of a page flusher is initiated in an in-memory database system in which pages are loaded into memory and having associated physical disk storage by a resource flush thread using a queue. Thereafter, pages are identified that have been loaded into the memory of the database system and which have been modified. These identified pages are to be flushed to the physical disk storage. Each page is assigned with a different ordered physical page number. These identified pages are added to the queue. Subsequently, asynchronous write I/O is triggered causing the identified pages to be flushed to the physical disk storage and stored in the physical disk storage according to their assigned physical page numbers such that, if at least one predetermined performance condition is met, a subset of the identified pages in the queue are flushed to physical disk storage.
    Type: Application
    Filed: May 3, 2017
    Publication date: November 8, 2018
    Inventor: Dirk Thomsen
  • Publication number: 20180307570
    Abstract: Recovery of a database system by taking the database system offline is initiated. Thereafter, recovery operations specified by a redo log of the database system are replayed. During such replay, updates to pages implicated by the recovery operations are blocked. In parallel to such blocking, modified pages are adaptively flushed to physical disk storage using a factor that is based on a number of pages written to the physical disk storage and a number of write I/O operations as part of the flushing of the modified pages. Subsequently, the database system is brought online after all of the recovery operations are replayed.
    Type: Application
    Filed: April 25, 2017
    Publication date: October 25, 2018
    Inventor: Dirk Thomsen
  • Publication number: 20180307718
    Abstract: Each of a plurality of database transactions are logged (i.e., recorded) in a log. Concurrent with the logging, one or more characteristics of the log are monitored. Thereafter, a savepoint is triggered when a pre-defined condition is met as indicated by the monitoring. The triggered savepoint can override or accelerate a savepoint that would have otherwise been triggered based on pre-specified parameters.
    Type: Application
    Filed: April 25, 2017
    Publication date: October 25, 2018
    Inventors: Dirk Thomsen, Christoph Rottering, Werner Thesing
  • Publication number: 20180293135
    Abstract: Execution of a page flusher is initiated in an in-memory database system in which pages are loaded into memory and having associated physical disk storage. Thereafter, pages are identified that have been loaded into the memory of the database system and which have been modified. These identified pages are to be flushed to the physical disk storage. Each page is assigned with a different ordered physical page number. Asynchronous write I/O is later triggered causing the identified pages to be flushed to the physical disk storage and stored in the physical disk storage according to their assigned physical page numbers.
    Type: Application
    Filed: April 7, 2017
    Publication date: October 11, 2018
    Inventor: Dirk Thomsen
  • Publication number: 20180260286
    Abstract: Recovery of a database system can be initiated by taking the database system offline. Thereafter, recovery operations specified by a redo log of the database system are replayed. During the replaying, updates to pages implicated by the recovery operations are blocked. In parallel, modified pages are flushed to physical disk storage. The database is later brought online after all of the recovery operations are replayed.
    Type: Application
    Filed: March 7, 2017
    Publication date: September 13, 2018
    Inventors: Christoph Roterring, Dirk Thomsen, Reiner Singer
  • Publication number: 20180260425
    Abstract: Execution of a page flusher is initiated in an in-memory database system in which pages are loaded into memory and which has associated physical disk storage. Thereafter, the page flusher identifies pages that were last modified outside a pre-defined time window. The page flusher then flushes the identified modified pages to the physical disk storage.
    Type: Application
    Filed: April 4, 2017
    Publication date: September 13, 2018
    Inventors: Dirk Thomsen, Werner Thesing
  • Patent number: 9830109
    Abstract: The subject matter disclosed herein provides methods for materializing data from an in-memory array to one or more pages. An in-memory array holding a column of data can be maintained. One or more pages can be maintained. Each of the one or more pages can have one or more rows for storing the column of data. At least one of the one or more pages can be marked for materialization. The column of data can be materialized by copying the data from the in-memory array to the one or more rows of the one or more pages. The materializing can be based on the marking. Related apparatus, systems, techniques, and articles are also described.
    Type: Grant
    Filed: December 5, 2016
    Date of Patent: November 28, 2017
    Assignee: SAP SE
    Inventors: David Wein, Mihnea Andrei, Dirk Thomsen, Ivan Schreter
  • Publication number: 20170293453
    Abstract: Data records of a data set can be stored in multiple main part fragments retained in on-disk storage. Each fragment can include a number of data records that is equal to or less than a defined maximum fragment size. Using a compression that is optimized for each fragment, each fragment can be compressed. After reading at least one of the fragments into main system memory from the on-disk storage, an operation can be performed on the fragment or fragments while the in the main system memory.
    Type: Application
    Filed: June 23, 2017
    Publication date: October 12, 2017
    Inventors: Ivan Schreter, Dirk Thomsen, Colin Florendo, Blaine French
  • Patent number: 9734173
    Abstract: A plurality of data records that comprise a data set can be stored in a plurality of main part fragments such that each main part fragment includes a subset of the set of data records. Each fragment of the plurality of main part fragments can be assigned a relative data temperature. A newly arrived data record for storage in the data set can be placed in a delta part, and a merge can be performed to add the newly arrived data record to a corresponding main part fragment. The performing of the merge can occur more quickly if the corresponding main part fragment has a higher relative data temperature than if the corresponding main part fragment has a lower relative data temperature.
    Type: Grant
    Filed: March 12, 2013
    Date of Patent: August 15, 2017
    Assignee: SAP SE
    Inventors: Ivan Schreter, Dirk Thomsen, Colin Florendo, Blaine French
  • Patent number: 9690799
    Abstract: Data records of a data set can be stored in multiple main part fragments retained in on-disk storage. Each fragment can include a number of data records that is equal to or less than a defined maximum fragment size. Using a compression that is optimized for each fragment, each fragment can be compressed. After reading at least one of the fragments into main system memory from the on-disk storage, an operation can be performed on the fragment or fragments while the in the main system memory.
    Type: Grant
    Filed: February 3, 2016
    Date of Patent: June 27, 2017
    Assignee: SAP SE
    Inventors: Ivan Schreter, Dirk Thomsen, Colin Florendo, Blaine French
  • Publication number: 20170083243
    Abstract: The subject matter disclosed herein provides methods for materializing data from an in-memory array to one or more pages. An in-memory array holding a column of data can be maintained. One or more pages can be maintained. Each of the one or more pages can have one or more rows for storing the column of data. At least one of the one or more pages can be marked for materialization. The column of data can be materialized by copying the data from the in-memory array to the one or more rows of the one or more pages. The materializing can be based on the marking. Related apparatus, systems, techniques, and articles are also described.
    Type: Application
    Filed: December 5, 2016
    Publication date: March 23, 2017
    Inventors: David Wein, Mihnea Andrei, Dirk Thomsen, Ivan Schreter
  • Patent number: 9575990
    Abstract: A record within a destination virtual file is generated on a destination node of a distributed data storage system. The record comprises (i) a link directed to a partition of a source virtual file stored on a source node and (ii) partition criteria characterizing the partition. The source virtual file is mapped to a chain of linked pages stored in a page buffer of the distributed data storage system and the partitioning criteria is used by at least one of the source node and the destination node to identify data associated with the partition. A request is later received at the destination node to access data defined by the destination virtual file. Data is provided, in response to the request, from the partition of the source virtual file stored on the source node using the link and the partitioning criteria. Related apparatus, systems, techniques and articles are also described.
    Type: Grant
    Filed: December 13, 2011
    Date of Patent: February 21, 2017
    Assignee: SAP SE
    Inventors: Dirk Thomsen, Ivan Schreter