Patents by Inventor Per-Ake Larson
Per-Ake Larson 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).
-
Publication number: 20240184766Abstract: A method of managing locks in a database is performed by a row lock manager of a database master. The method includes receiving, from a transaction executing on the database master, a row lock request for a row in the database. The row lock request includes a page in the database where the row is located. The row lock request also includes a row lock mode of sufficient strength to perform the transaction. Then, sending, to a page lock manager, a request for a covering lock of the page. The request specifies a page lock mode of sufficient strength to satisfy the row lock mode. Also, receiving, from the page lock manager, a grant of the page lock. The page lock includes information on row locks of rows located in the page. Then, granting, to the transaction, the row lock.Type: ApplicationFiled: December 1, 2022Publication date: June 6, 2024Applicant: HUAWEI CLOUD COMPUTING TECHNOLOGIES CO., LTD.Inventors: Jack Hon Wai NG, Per-Ake LARSON, Alexandre DEPOUTOVITCH, Chong CHEN
-
Patent number: 11921684Abstract: An apparatus is disclosed. The apparatus may be implemented in a database node or a storage node and includes one or more processors and memory storing instructions for causing the processor to perform a number of operations. Responsive to a page write request, the apparatus determines an identifier corresponding to the requested page, sends component blocks corresponding to the page to a storage node for appending to an append-only storage log of the storage node, receives the physical location of the stored component blocks, and associates the physical storage location of the stored component blocks with the logical identifier corresponding to the page.Type: GrantFiled: September 28, 2022Date of Patent: March 5, 2024Assignee: Huawei Cloud Computing Technologies Co., Ltd.Inventors: Per-Ake Larson, Alexandre Depoutovitch
-
Patent number: 11843663Abstract: A logical clock is implemented in networked nodes. Messages between nodes can include either a scalar timestamp or a vector timestamp. The scalar timestamp leads to an overhead reduction, and nodes can select whether to send a scalar or vector timestamp depending on requirements. Message recipients update their logical clock vector differently depending on whether the scalar or vector timestamp is received. Applications to multi-master databases are also provided. The clock conforms to Lamport clock requirements when the scalar timestamp is sent, and conforms to both Lamport and vector clock requirements when the vector timestamp is sent.Type: GrantFiled: January 3, 2023Date of Patent: December 12, 2023Assignee: HUAWEI CLOUD COMPUTING TECHNOLOGIES CO., LTD.Inventors: Alexandre Depoutovitch, Per-Ake Larson, Jack Hon Wai Ng, Chong Chen
-
Patent number: 11681456Abstract: A method of reducing write amplification in an append-only memory store of data records, by which the store is subdivided into streams, each of which for storing records having an update frequency within a variable range of update frequencies. By defining an update frequency that does not rely on time, statistical methods can be used to select the streams in which data records can be written. The range of update frequencies of each stream can be fixed or variable and based on the stored records. The memory allocated to each stream can be determined based on numerically solving an optimization problem that determines the write amplification resulting from different memory allocations in the streams.Type: GrantFiled: May 19, 2021Date of Patent: June 20, 2023Assignee: HUAWEI CLOUD COMPUTING TECHNOLOGIES CO., LTD.Inventors: Per-Ake Larson, Alexandre Depoutovitch
-
Patent number: 11640383Abstract: Methods and systems are described for managing a shared database. One or more processing nodes may access a shared database. A common log node may manage the shared database. The common log node may validate database operations requested by the one or more processing nodes. During validation, the common log node may detect conflicts that occur between database operations requested by the one or more processing nodes.Type: GrantFiled: November 15, 2018Date of Patent: May 2, 2023Assignee: HUAWEI TECHNOLOGIES CO., LTD.Inventors: Xun Xue, Chong Chen, Per-Ake Larson, Robin Grosman
-
Publication number: 20230053707Abstract: An apparatus is disclosed. The apparatus may be implemented in a database node or a storage node and includes one or more processors and memory storing instructions for causing the processor to perform a number of operations. Responsive to a page write request, the apparatus determines an identifier corresponding to the requested page, sends component blocks corresponding to the page to a storage node for appending to an append-only storage log of the storage node, receives the physical location of the stored component blocks, and associates the physical storage location of the stored component blocks with the logical identifier corresponding to the page.Type: ApplicationFiled: September 28, 2022Publication date: February 23, 2023Inventors: Per-Ake Larson, Alexandre Depoutovitch
-
Publication number: 20220374160Abstract: A method of reducing write amplification in an append-only memory store of data records, by which the store is subdivided into streams, each of which for storing records having an update frequency within a variable range of update frequencies. By defining an update frequency that does not rely on time, statistical methods can be used to select the streams in which data records can be written. The range of update frequencies of each stream can be fixed or variable and based on the stored records. The memory allocated to each stream can be determined based on numerically solving an optimization problem that determines the write amplification resulting from different memory allocations in the streams.Type: ApplicationFiled: May 19, 2021Publication date: November 24, 2022Applicant: HUAWEI TECHNOLOGIES CO., LTD.Inventors: Per-Ake LARSON, Alexandre DEPOUTOVITCH
-
Patent number: 11461296Abstract: An apparatus is disclosed. The apparatus may be implemented in a database node or a storage node and includes one or more processors and memory storing instructions for causing the processor to perform a number of operations. Responsive to a page write request, the apparatus determines an identifier corresponding to the requested page, sends component blocks corresponding to the page to a storage node for appending to an append-only storage log of the storage node, receives the physical location of the stored component blocks, and associates the physical storage location of the stored component blocks with the logical identifier corresponding to the page.Type: GrantFiled: July 27, 2020Date of Patent: October 4, 2022Assignee: Huawei Cloud Computing Technologies Co., Ltd.Inventors: Per-Ake Larson, Alexandre Depoutovitch
-
Patent number: 11113260Abstract: Various technologies described herein pertain to accessing records of an in-memory database. A memory can include a primary storage and a data store can include a secondary storage. The primary storage includes a first subset of the records of the database, and the secondary storage includes a second subset of the records of the database. Moreover, the memory includes an update memo that includes timestamp notices. The timestamp notices specify statuses of records of the database having updates that span the primary storage and the secondary storage. The memory further includes a database management system that is executable by a processor. The database management system processes a transaction. Further, the database management system includes a storage interface component that accesses a record of the database for the transaction based on at least one of the timestamp notices of the update memo.Type: GrantFiled: June 5, 2019Date of Patent: September 7, 2021Assignee: Microsoft Technology Licensing, LLCInventors: Justin Jon Levandoski, Per-Ake Larson, Ahmed Eldawy
-
Patent number: 11106541Abstract: A method includes receiving an indication of a change to a page of a database and adding a new log record corresponding to the page to a common log comprising log records, the new log record describing the change made to the page and assigned a distinct version number. The method further includes synchronously writing the new log record to each log store replica in a set of log store replicas, and asynchronously writing the new log record to all page store replicas for the page to update the page that is stored on each of the page store replicas, where each store replica for the page serves reads for the page. In response to receiving, from a predetermined number of the page store replicas, an acknowledgement of the writing of the log record, discarding the new log record from the common log.Type: GrantFiled: March 15, 2019Date of Patent: August 31, 2021Assignee: HUAWEI TECHNOLOGIES CO., LTDInventors: Alexandre Depoutovitch, Per-Ake Larson, Chong Chen
-
Patent number: 11048691Abstract: An in-memory database system stores an entirety of a database within main memory of the computer system. The database includes a table comprising a plurality of rows including a particular row. A first transaction updating the particular row is executed to create a first version of the particular row. A second transaction updating the particular row is executed to create a second version of the particular row. The first version is visible only to the first transaction, and the second version is visible only to the second transaction. The in-memory database system may associate an index with the database table, the index referencing the plurality of rows, including referencing the first version of the particular row and the second version of the particular row. The in-memory database system may initiate garbage collection of the first version of the particular row and/or the second version of the particular row.Type: GrantFiled: March 11, 2019Date of Patent: June 29, 2021Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Cristian Diaconu, Craig Steven Freedman, Per-Ake Larson, Michael James Zwilling
-
Patent number: 11010354Abstract: The subject disclosure relates to a distributed transaction management technique that ensures synchronization between participating nodes in a global or distributed database transaction. The technique leverages a commit protocol that uses local clocks at the respective participating nodes. Participants in a global transaction are configured to utilize the same commit timestamp and logical read time and can advance their respective local clocks to establish this synchronization. In one embodiment, distributed commit utilizes a modified version of two-phase commit that includes an extra phase to collect commit timestamp votes from participants. Additionally, a heartbeat mechanism can be used to establish loose synchronization between nodes. In another embodiment, a node can respond to a remote transaction request by returning a list of nodes involved in generating the result of the transaction and the types of access used by such nodes in addition to the transaction result itself.Type: GrantFiled: October 30, 2018Date of Patent: May 18, 2021Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Per-Ake Larson, Michael James Zwilling, Cristian Diaconu
-
Patent number: 10915403Abstract: A versioned records management computing system that uses a restart era in order to promote rapid recovery. A persistent store includes a multi-versioned record collection. The records are also associated with a restart era that corresponds to the era of operation of the computing system after a restart. Upon a recovery, the current restart era changes. An object collection media has an object collection that conforms to an object model such that the object model is used to operate upon the records. The object collection media is operable such that the object collection is durable so as to survive restarts of the system to thereby allow for accelerated recovery.Type: GrantFiled: April 18, 2019Date of Patent: February 9, 2021Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Per-Ake Larson, Robert Patrick Fitzgerald, Cristian Diaconu
-
Publication number: 20200364197Abstract: An apparatus is disclosed. The apparatus may be implemented in a database node or a storage node and includes one or more processors and memory storing instructions for causing the processor to perform a number of operations. Responsive to a page write request, the apparatus determines an identifier corresponding to the requested page, sends component blocks corresponding to the page to a storage node for appending to an append-only storage log of the storage node, receives the physical location of the stored component blocks, and associates the physical storage location of the stored component blocks with the logical identifier corresponding to the page.Type: ApplicationFiled: July 27, 2020Publication date: November 19, 2020Inventors: Per-Ake Larson, Alexandre Depoutovitch
-
Patent number: 10783009Abstract: Systems and methods for switching a data access synchronization strategy for a data structure are provided. Workload characteristics of one or more threads of execution access the data structure are monitored. A target data access synchronization strategy is determined. If the current strategy is different than the target strategy, the current strategy is switched to the target data access synchronization strategy for the data structure.Type: GrantFiled: April 20, 2018Date of Patent: September 22, 2020Assignee: Huawei Technologies Co., Ltd.Inventors: Alexandre Depoutovitch, Per-Ake Larson, Cong Guo
-
Publication number: 20200293407Abstract: A method includes receiving an indication of a change to a page of a database and adding a new log record corresponding to the page to a common log comprising log records, the new log record describing the change made to the page and assigned a distinct version number. The method further includes synchronously writing the new log record to each log store replica in a set of log store replicas, and asynchronously writing the new log record to all page store replicas for the page to update the page that is stored on each of the page store replicas, where each store replica for the page serves reads for the page. In response to receiving, from a predetermined number of the page store replicas, an acknowledgement of the writing of the log record, discarding the new log record from the common log.Type: ApplicationFiled: March 15, 2019Publication date: September 17, 2020Inventors: Alexandre Depoutovitch, Per-Ake Larson, Chong Chen
-
Patent number: 10761936Abstract: A versioned records management system that uses a restart era in order to promote rapid recovery. A persistent store includes a plurality of items that are each marked with a restart era. Any item that was created in the current restart era is marked with the current restart era. The persistent store also includes a first subset of the items comprising a plurality of records. At least one record includes multiple corresponding versions. The persistent store also includes a second subset of the items comprising a collection of objects that conform to an object model that is used to operate upon the plurality of records via the object collection. The versioned records management system recovers from a crash by promoting an item in the persistent store to the current restart era, in parallel with normal operation of the versioned records management system.Type: GrantFiled: April 9, 2018Date of Patent: September 1, 2020Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Per-Ake Larson, Robert Patrick Fitzgerald, Cristian Diaconu
-
Patent number: 10726047Abstract: A log manager causing events to be written to the primary and the secondary computing systems for high availability, and returning threads quickly. Rather than cause every event write to be immediately written to the secondary computing system, the log management component is triggered to write to the secondary computing system upon detecting event write requests of event writes of a particular event type. In response to detecting such an event write, the log management component gathers a group of event writes corresponding to that particular event write, and dispatches the event writes as a group. The particular thread that initiated the particular event write of the particular event type is returned after dispatching the event write group, but before or without confirmation of the particular event write group has been written to the secondary computing system.Type: GrantFiled: April 30, 2018Date of Patent: July 28, 2020Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Robert Patrick Fitzgerald, Per-Ake Larson, Michael James Zwilling, Cristian Diaconu
-
Patent number: 10725983Abstract: An apparatus is disclosed. The apparatus may be implemented in a database node or a storage node and includes one or more processors and memory storing instructions for causing the processor to perform a number of operations. Responsive to a page write request, the apparatus determines an identifier corresponding to the requested page, sends component blocks corresponding to the page to a storage node for appending to an append-only storage log of the storage node, receives the physical location of the stored component blocks, and associates the physical storage location of the stored component blocks with the logical identifier corresponding to the page.Type: GrantFiled: December 29, 2017Date of Patent: July 28, 2020Assignee: Huawei Technologies Co., Ltd.Inventors: Per-Ake Larson, Alexandre Depoutovitch
-
Patent number: 10664362Abstract: The recovery of one or more transactions in a computing system in which one or more persistent systems are coupled via a bus to one or more processors. As an example, the persistent system may serve as at least part of the main memory of the computing system. The transaction might implement multi-versioning in which a record is not updated in place. Rather, each record is represented as a sequence of one or more record versions, each version having a valid interval during which the record version is considered to properly represent the record.Type: GrantFiled: November 9, 2016Date of Patent: May 26, 2020Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Per-Ake Larson, Robert Patrick Fitzgerald, Cristian Diaconu, Michael James Zwilling