-
公开(公告)号:US11748369B2
公开(公告)日:2023-09-05
申请号:US17465298
申请日:2021-09-02
Applicant: Microsoft Technology Licensing, LLC
Inventor: Alejandro Hernandez Saenz , Cristian Diaconu , Krystyna Ewa Reisteter , Naveen Prakash , Sheetal Shrotri , Rogério Ramos , Alexander Budovski , Hanumantha Rao Kodavalla
IPC: G06F16/00 , G06F16/25 , G06F16/27 , G06F16/22 , G06F16/2455
CPC classification number: G06F16/256 , G06F16/278 , G06F16/2272 , G06F16/24557
Abstract: Distributed database systems including compute nodes and page servers are described herein that enable separating logical and physical storage of database files in a distributed database system. A distributed database system includes a page server and a compute node and is configured to store a logical database file that includes data and is associated with a file identifier. Each page server is configurable to store slices (i.e., subportions) of the logical database file. The compute node is coupled to the plurality of page servers and configured to store the logical database file responsive to a received command. In an aspect, such storage may comprise slicing the data comprising the logical database file into a set of slices with each being associated with a respective page server, maintaining an endpoint mapping for each slice of the first set of slices, and transmitting each slice to the associated for storage thereby.
-
公开(公告)号:US11048664B2
公开(公告)日:2021-06-29
申请号:US16138103
申请日:2018-09-21
Applicant: Microsoft Technology Licensing, LLC
Inventor: Cristian Diaconu , Naveen Prakash , Alejandro Hernandez Saenz , Alexander Budovski
Abstract: The bifurcation of a log into a fixed-size log portion and a growable log portion. Log records are first written to the fixed-size log portion. At some point, the older log records within the fixed-size log portion are destaged to the growable log portion. Destaging may involve copying the log records from the fixed-size log portion and tacking the log record onto the end of the growable log portion. This destaging might occur one sub-portion (e.g., one virtual log file) at a time. The more recent log records are within the fixed-size log portion. Accordingly, new writes to the log occur to the fixed-size log portion. Furthermore, a large portion of the reads are of the more recent log records within the fixed-size log portion. Thus, optimizing performance within the fixed-size log portion results in significant improvement in the performance of the overall log.
-
公开(公告)号:US20190243712A1
公开(公告)日:2019-08-08
申请号:US16388009
申请日:2019-04-18
Applicant: MICROSOFT TECHNOLOGY LICENSING, LLC
Inventor: Per-Ake Larson , Robert Patrick Fitzgerald , Cristian Diaconu
CPC classification number: G06F11/1417 , G06F11/1441 , G06F11/1471 , G06F11/1474 , G06F16/2365
Abstract: 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.
-
公开(公告)号:US10140150B2
公开(公告)日:2018-11-27
申请号:US15018531
申请日:2016-02-08
Applicant: Microsoft Technology Licensing, LLC
Abstract: The efficient use of threads that issue calls to log events. While waiting for the call to return or complete, the threads are put to work on other tasks that are not part of the process that generated the event. This can occur without context switching of the thread, especially when the task to be performed is state-less or context free. In the efficient thread diversion process, the thread calls a logging component to log an event. This blocks the thread from continuing work on a process that the event is part of until the event is logged. The thread then performs a diversion task that is not part of the processing unit that the event is part of. After detecting that the event has logged, the thread continues work on the processing unit that the event is part of.
-
公开(公告)号:US10055449B2
公开(公告)日:2018-08-21
申请号:US15822496
申请日:2017-11-27
Applicant: Microsoft Technology Licensing, LLC
Inventor: Cristian Diaconu , Craig Steven Freedman , Per-Ake Larson , Michael James Zwilling
CPC classification number: G06F16/2379 , G06F12/0253 , G06F16/219 , G06F16/24561 , G06F16/27 , G06F2212/1044
Abstract: An in-memory database system stores the entirety of a database that is being operated on by a database system within main memory. The database includes a table that comprises a plurality of rows including a particular row. The database table comprises a first version of the particular row having a first valid time, and a second version having a second valid time. Index(es) are associated with the database table. Each index is implemented as a lock-free data structure and references the plurality of rows, including referencing the first and second versions of the particular row. A transaction acting on the first version of the particular row is executed. The first version of the particular row is visible to the transaction based on the first valid time and the second version of the particular row being not visible to the transaction based on the second valid time.
-
公开(公告)号:US09952931B2
公开(公告)日:2018-04-24
申请号:US15001088
申请日:2016-01-19
Applicant: Microsoft Technology Licensing, LLC
Inventor: Per-Ake Larson , Robert Patrick Fitzgerald , Cristian Diaconu
CPC classification number: G06F11/1417 , G06F11/1438 , G06F11/1441 , G06F11/1469 , G06F11/1474 , G06F17/30371 , G06F2201/80 , G06F2201/84
Abstract: 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.
-
公开(公告)号:US09747174B2
公开(公告)日:2017-08-29
申请号:US14966724
申请日:2015-12-11
Applicant: Microsoft Technology Licensing, LLC
CPC classification number: G06F11/1471 , G06F3/0619 , G06F3/0646 , G06F3/0653 , G06F3/0673 , G06F11/1438 , G06F11/1441
Abstract: A system that uses a persistent main memory to preserve events that await logging in a persistent store. Each event is written into the persistent main memory so as to be loggable in case of recovery. For instance, the event may be written into a log cache structure, along with other state which identifies that the event is in the particular log cache structure, the location of the event within the particular log cache structure, and the order of the event. To recover, the log in the persistent store is evaluated to identify the end of the stored log. The tail of the log is identified in the persistent main memory by identifying any log cache structures that are after the end of the stored log and which are validly recoverable. The log cache structure contents are then serialized one log cache at a time, earliest first.
-
公开(公告)号:US20170168904A1
公开(公告)日:2017-06-15
申请号:US14966724
申请日:2015-12-11
Applicant: Microsoft Technology Licensing, LLC
CPC classification number: G06F11/1471 , G06F3/0619 , G06F3/0646 , G06F3/0653 , G06F3/0673 , G06F11/1438 , G06F11/1441
Abstract: A system that uses a persistent main memory to preserve events that await logging in a persistent store. Each event is written into the persistent main memory so as to be loggable in case of recovery. For instance, the event may be written into a log cache structure, along with other state which identifies that the event is in the particular log cache structure, the location of the event within the particular log cache structure, and the order of the event. To recover, the log in the persistent store is evaluated to identify the end of the stored log. The tail of the log is identified in the persistent main memory by identifying any log cache structures that are after the end of the stored log and which are validly recoverable. The log cache structure contents are then serialized one log cache at a time, earliest first.
-
9.
公开(公告)号:US20170060703A1
公开(公告)日:2017-03-02
申请号:US15347580
申请日:2016-11-09
Applicant: MICROSOFT TECHNOLOGY LICENSING, LLC
Abstract: 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.
Abstract translation: 恢复计算系统中的一个或多个事务,其中一个或多个持久系统经由总线耦合到一个或多个处理器。 作为示例,持续系统可以用作计算系统的主存储器的至少一部分。 事务可能会实现多版本,其中记录没有更新。 相反,每个记录被表示为一个或多个记录版本的序列,每个版本具有有效间隔,在该间隔期间记录版本被认为适当地表示记录。
-
10.
公开(公告)号:US20160306841A1
公开(公告)日:2016-10-20
申请号:US14686560
申请日:2015-04-14
Applicant: Microsoft Technology Licensing, LLC
Inventor: Cristian Diaconu , Christian Damianidis , Arkadi Brjazovski , Rogerio Ramos , Raghavendra Thallam Kodandaramaih
IPC: G06F17/30
Abstract: The insertion into a data stream of collection records associated with multiple collections of data items in the data stream, for purposes of aiding in subsequent processing of the data stream by collections. Each collection record comprises a collection definition that does not overlap with the collection definition in any of the sequence of collection records including the collection definition of any neighboring collection record in the sequence of collection records. Each collection record also includes a data stream address range extending from the first data item to the last data item in the collection.
Abstract translation: 在数据流中插入数据流中与数据项的多个集合相关联的收集记录的数据流,以便于通过集合辅助数据流的后续处理。 每个收集记录包括与集合记录的任何序列中的收集定义不重叠的收集定义,包括收集记录序列中的任何相邻收集记录的收集定义。 每个收集记录还包括从集合中的第一数据项到最后一个数据项的数据流地址范围。
-
-
-
-
-
-
-
-
-