Patents by Inventor Marcel van der Holst

Marcel van der Holst 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: 10318648
    Abstract: The present invention extends to methods, systems, and computer program products for main-memory database checkpointing. Embodiments of the invention use a transaction log as an interface between online threads and a checkpoint subsystem. Using the transaction log as an interface reduces synchronization overhead between threads and the checkpoint subsystem. Transactions can be assigned to files and storage space can be reserved in a lock free manner to reduce overhead of checkpointing online transactions. Meta-data independent data files and delta files can be collapsed and merged to reduce storage overhead. Checkpoints can be updated incrementally such that changes made since the last checkpoint (and not all data) are flushed to disk. Checkpoint I/O is sequential, helping ensure higher performance of physical I/O layers. During recovery checkpoint files can be loaded into memory in parallel for multiple devices.
    Type: Grant
    Filed: November 27, 2015
    Date of Patent: June 11, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Cristian C. Diaconu, Ryan L. Stonecipher, Michael James Zwilling, Marcel Van Der Holst
  • Patent number: 9304998
    Abstract: The present invention extends to methods, systems, and computer program products for main-memory database checkpointing. Embodiments of the invention use a transaction log as an interface between online threads and a checkpoint subsystem. Using the transaction log as an interface reduces synchronization overhead between threads and the checkpoint subsystem. Transactions can be assigned to files and storage space can be reserved in a lock free manner to reduce overhead of checkpointing online transactions. Meta-data independent data files and delta files can be collapsed and merged to reduce storage overhead. Checkpoints can be updated incrementally such that changes made since the last checkpoint (and not all data) are flushed to disk. Checkpoint I/O is sequential, helping ensure higher performance of physical I/O layers. During recovery checkpoint files can be loaded into memory in parallel for multiple devices.
    Type: Grant
    Filed: December 19, 2012
    Date of Patent: April 5, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Cristian C. Diaconu, Ryan L. Stonecipher, Michael James Zwilling, Marcel Van Der Holst
  • Publication number: 20160078044
    Abstract: The present invention extends to methods, systems, and computer program products for main-memory database checkpointing. Embodiments of the invention use a transaction log as an interface between online threads and a checkpoint subsystem. Using the transaction log as an interface reduces synchronization overhead between threads and the checkpoint subsystem. Transactions can be assigned to files and storage space can be reserved in a lock free manner to reduce overhead of checkpointing online transactions. Meta-data independent data files and delta files can be collapsed and merged to reduce storage overhead. Checkpoints can be updated incrementally such that changes made since the last checkpoint (and not all data) are flushed to disk. Checkpoint I/O is sequential, helping ensure higher performance of physical I/O layers. During recovery checkpoint files can be loaded into memory in parallel for multiple devices.
    Type: Application
    Filed: November 27, 2015
    Publication date: March 17, 2016
    Inventors: Cristian C. Diaconu, Ryan L. Stonecipher, Michael James Zwilling, Marcel Van Der Holst
  • Publication number: 20140172803
    Abstract: The present invention extends to methods, systems, and computer program products for main-memory database checkpointing. Embodiments of the invention use a transaction log as an interface between online threads and a checkpoint subsystem. Using the transaction log as an interface reduces synchronization overhead between threads and the checkpoint subsystem. Transactions can be assigned to files and storage space can be reserved in a lock free manner to reduce overhead of checkpointing online transactions. Meta-data independent data files and delta files can be collapsed and merged to reduce storage overhead. Checkpoints can be updated incrementally such that changes made since the last checkpoint (and not all data) are flushed to disk. Checkpoint I/O is sequential, helping ensure higher performance of physical I/O layers. During recovery checkpoint files can be loaded into memory in parallel for multiple devices.
    Type: Application
    Filed: December 19, 2012
    Publication date: June 19, 2014
    Applicant: MICROSOFT CORPORATION
    Inventors: Cristian C. Diaconu, Ryan L. Stonecipher, Michael James Zwilling, Marcel Van Der Holst
  • Publication number: 20110145201
    Abstract: Methods, systems, and computer-readable media of database mirroring are disclosed. A particular method includes initiating a transaction that modifies one or more pages of a first database. Each page includes a structure modification operation (SMO) bit and initiating the transaction includes setting the SMO bit of each of the one or more pages to a first value. One or more first records are created at a transaction log of the first database. The transaction log is useable at a second database to mirror the transaction. Each first record indicates the setting of a SMO bit of a particular page to the first value. The database transaction is performed, and the SMO bit of each of the one or more pages is set to a second value. One or more second records are created at the transaction log, each second record indicating the setting of a SMO bit of a particular page to the second value. The method includes committing the transaction.
    Type: Application
    Filed: December 11, 2009
    Publication date: June 16, 2011
    Applicant: Microsoft Corporation
    Inventors: Marcel van der Holst, Robin D. Dhamankar, Hanumantha R. Kodavalla, Srikumar Rangarajan
  • Patent number: 7873672
    Abstract: Various technologies and techniques are disclosed for efficiently processing DML SQL statements through minimal logging and optimized insertions. Rows are inserted into a table in a database in a sorted order. When an insertion of a particular row into the table causes a page split and a new page created during the page split is empty, the new page is locked until an end of a transaction associated with the insertion is completed. When the page split is caused by appending monotonically increasing values at an end of the table, the sorted order will guarantee that the new page is empty. Minimal logging is performed. When the transaction associated with the insertion is completed, a forced checkpoint is performed.
    Type: Grant
    Filed: January 24, 2008
    Date of Patent: January 18, 2011
    Assignee: Microsoft Corporation
    Inventors: Stefano Stefani, Srikumar Rangarajan, Marcel van der Holst
  • Patent number: 7676525
    Abstract: Disclosed are systems and methods for optimization and efficient processing of MERGE statements. MERGE allows performing a mix of inserts, updates, and deletes in a single statement, and introduces new challenges compared to legacy DML statements, where the kind of action to be performed is hard-coded and known at compile time. Such optimizations may include Halloween Protection detection for MERGE statements, optimized prevention of non-deterministic MERGE statements, in-place inserts for MERGE statements scanning the “Read Instance” of the target table, and optimized execution of MERGE statements seeking the “Read Instance” of the target table. Such optimizations may be fundamental in order to ensure proper performance and reliable processing times.
    Type: Grant
    Filed: July 2, 2007
    Date of Patent: March 9, 2010
    Assignee: Microsoft Corporation
    Inventors: Stefano Stefani, Naveen Prakash, Craig S. Freedman, Marcel van der Holst
  • Publication number: 20090193060
    Abstract: Various technologies and techniques are disclosed for efficiently processing DML SQL statements through minimal logging and optimized insertions. Rows are inserted into a table in a database in a sorted order. When an insertion of a particular row into the table causes a page split and a new page created during the page split is empty, the new page is locked until an end of a transaction associated with the insertion is completed. When the page split is caused by appending monotonically increasing values at an end of the table, the sorted order will guarantee that the new page is empty. Minimal logging is performed. When the transaction associated with the insertion is completed, a forced checkpoint is performed.
    Type: Application
    Filed: January 24, 2008
    Publication date: July 30, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Stefano Stefani, Srikumar Rangarajan, Marcel van der Holst
  • Publication number: 20090012980
    Abstract: Disclosed are systems and methods for optimization and efficient processing of MERGE statements. MERGE allows performing a mix of inserts, updates, and deletes in a single statement, and introduces new challenges compared to legacy DML statements, where the kind of action to be performed is hard-coded and known at compile time. Such optimizations may include Halloween Protection detection for MERGE statements, optimized prevention of non-deterministic MERGE statements, in-place inserts for MERGE statements scanning the “Read Instance” of the target table, and optimized execution of MERGE statements seeking the “Read Instance” of the target table. Such optimizations may be fundamental in order to ensure proper performance and reliable processing times.
    Type: Application
    Filed: July 2, 2007
    Publication date: January 8, 2009
    Applicant: Microsoft Corporation
    Inventors: Stefano Stefani, Naveen Prakash, Craig S. Freedman, Marcel van der Holst