-
公开(公告)号:US20190324866A1
公开(公告)日:2019-10-24
申请号:US15959744
申请日:2018-04-23
Applicant: SAP SE
Inventor: Christian Bensberg , Steffen Geissinger , Thorsten Glebe
Abstract: Provided are systems and methods for storing checkpoints of an in-memory storage device. In one example, the method may include detecting database transactions performed on a slice of an in-memory storage and storing a record of the database transactions in a log file, receiving a request to persist the slice of in-memory storage, the request comprising a timing indicator corresponding to a timing of database transactions, trimming the log file based on the timing indicator to remove a record of one or more database transactions from the log file that occurred prior to the timing indicator and to preserve a record of one or more database transactions that occurred after the timing indicator, and persisting, to disk, data from the slice of in-memory storage and the trimmed log file preserving the record of the one or more database transactions that occurred after the timing indicator.
-
公开(公告)号:US20190012262A1
公开(公告)日:2019-01-10
申请号:US16131217
申请日:2018-09-14
Applicant: SAP SE
Inventor: Burak Kurt , Steffen Geissinger , Anil Akay
CPC classification number: G06F12/0646 , G06F3/0608 , G06F3/064 , G06F3/0656 , G06F3/0673
Abstract: Provided are a device and method of managing data stored in memory. The device may include a buffer for storing data blocks including a head data block, a tail data block, and intermediate data blocks. Non-used blocks may be further included in the buffer between the head data block and the tail data block. The device may further include a controller for managing the data blocks within the buffer. The managing may include determining a shift direction for the data blocks based on a distribution of the data blocks within the buffer, shifting at least one data block from among the data blocks in the determined direction, and shifting the one or more non-used blocks in an opposite direction from which the at least one data block is shifted. As a result of the shifting, the data blocks may be aggregated within the buffer.
-
33.
公开(公告)号:US20180137172A1
公开(公告)日:2018-05-17
申请号:US15354841
申请日:2016-11-17
Applicant: SAP SE
Inventor: Steffen Geissinger
IPC: G06F17/30 , G06F3/06 , G06F12/0866
CPC classification number: G06F16/2455 , G06F16/27
Abstract: Systems and methods are described for implementation by a computing system having a non-uniform memory access (NUMA) architecture comprising a plurality of NUMA nodes. A query of a document store storing a collection of slices each comprising one or more documents is received from a client. Thereafter, it is determined which of the slices within the document store are required for execution of the query. An execution plan is then generated, using the query, that comprises a plurality of nodes each specifying at least one database operation to execute a portion of the query. The execution plan assigns one of the plurality of NUMA nodes to each slice determined to be required for execution of the query. The database operations specified by the nodes of the execution plan are then executed using the corresponding assigned NUMA nodes for the associated slice. Data responsive to the query is then provided to the client.
-
公开(公告)号:US20180137144A1
公开(公告)日:2018-05-17
申请号:US15354921
申请日:2016-11-17
Applicant: SAP SE
Inventor: Steffen Geissinger
IPC: G06F17/30
CPC classification number: G06F16/25
Abstract: A query is received from a client that specifies at least one database operation implicating data within a first database and within a second database. The second database includes a document store storing a collection of documents. Thereafter, a plurality of transactions responsive to the query are initiated to access the data within the first database and the second database. Execution of the plurality of transactions are coordinated between the first database and the second database. All changes specified by the at least one database operation are persisted in the first database including changes implicating data stored within the second database. Data responsive to the query can then be provided to the client.
-
公开(公告)号:US20170336980A1
公开(公告)日:2017-11-23
申请号:US15157746
申请日:2016-05-18
Applicant: SAP SE
Inventor: Burak Kurt , Steffen Geissinger , Anil Akay
CPC classification number: G06F12/0646 , G06F3/0608 , G06F3/064 , G06F3/0656 , G06F3/0673 , G06F2212/1016 , G06F2212/1044
Abstract: Provided are a device and method of managing data stored in memory. The device may include a buffer for storing data blocks including a head data block, a tail data block, and intermediate data blocks. Non-used blocks may be further included in the buffer between the head data block and the tail data block. The device may further include a controller for managing the data blocks within the buffer. The managing may include determining a shift direction for the data blocks based on a distribution of the data blocks within the buffer, shifting at least one data block from among the data blocks in the determined direction, and shifting the one or more non-used blocks in an opposite direction from which the at least one data block is shifted. As a result of the shifting, the data blocks may be aggregated within the buffer.
-
公开(公告)号:US11874746B2
公开(公告)日:2024-01-16
申请号:US16944015
申请日:2020-07-30
Applicant: SAP SE
Inventor: Christian Bensberg , Steffen Geissinger , Juchang Lee , Chang Gyoo Park , Kyu Hwan Kim , Deok Koo Kim
IPC: G06F11/14
CPC classification number: G06F11/1464 , G06F2201/87
Abstract: Technologies are described for facilitating database system recovery in a distributed database environment having a master node and at least one slave node. The master node maintains an in-memory reference that includes transaction identifiers and their corresponding commit identifiers. When a slave node requests that a commit identifier be assigned to a transaction, the transaction and commit identifiers for the transaction are added to the in-memory reference. The commit identifier is sent by the master node to the slave node. The slave node writes a log entry to a commit log that includes the transaction identifier and the assigned commit identifier. If the database system is interrupted before the slave node writes the commit log entry, the slave node can request the commit identifier for the transaction from the master node, which retrieves the identifier from the in-memory reference.
-
37.
公开(公告)号:US20220283723A1
公开(公告)日:2022-09-08
申请号:US17750900
申请日:2022-05-23
Applicant: SAP SE
Inventor: Christian Bensberg , Steffen Geissinger
IPC: G06F3/06 , G06F16/22 , G06F16/23 , G06F16/2455
Abstract: A data storage and retrieval system for a computer memory including a memory slice formed of segments and adapted to contain one or more documents and a checkpoint adapted to persist the memory slice. The checkpoint includes a document vector containing a document pointer corresponding to a document. The document pointer including a segment identifier identifying a logical segment of the memory slice and an offset value defining a relative memory location of the first document within the identified segment. There are checkpoint memory blocks, each storing a copy of a corresponding segment of the memory slice. The segment identifier of the document pointer identifies a checkpoint memory block and the offset value of the document pointer defines a relative location of the document within the checkpoint memory block.
-
公开(公告)号:US10860571B2
公开(公告)日:2020-12-08
申请号:US15344223
申请日:2016-11-04
Applicant: SAP SE
Inventor: Christian Bensberg , Steffen Geissinger
Abstract: A system for storage, access, and/or pruning of documents of a document store is provided. In some implementations, the system performs operations comprising analyzing a plurality of parameters of a plurality of documents stored among a plurality of slices in a database and generating, based on the analyzing, statistics about the plurality of parameters including a range of document identifiers present in corresponding slices from the plurality of slices. The operations can further comprise pruning, based on the statistics, one or more slices of the plurality of slices, the pruning triggered in response to a query related to at least a portion of the plurality of stored documents. The operations can further comprise responding to the query based on slices that are not pruned. One or more of the operations can be implemented by a database server. Related systems, methods, and articles of manufacture are also described.
-
公开(公告)号:US10747737B2
公开(公告)日:2020-08-18
申请号:US14552902
申请日:2014-11-25
Applicant: SAP SE
Inventor: Colin Florendo , Ivan Schreter , Panfeng Zhou , David Wein , Steffen Geissinger , Michael Muehle
Abstract: Disclosed herein are system, method, and computer program product embodiments for altering the data type of a column in a database. An embodiment operates by converting an original dictionary associated with a column into a new dictionary. The new dictionary stores the values of the original dictionary using a different data type. An index vector containing the keys of the original dictionary is then updated to contain the associated keys of the new dictionary. Because the size of the original dictionary is often substantially smaller than the number of rows in the associated column, this dictionary conversion decreases the computation cost to the database system of altering the data type of the column and reduces or even minimizes database downtime for users.
-
公开(公告)号:US10678812B2
公开(公告)日:2020-06-09
申请号:US15354910
申请日:2016-11-17
Applicant: SAP SE
Inventor: Christian Bensberg , Steffen Geissinger
Abstract: A query is received from a client that specifies at least one database operation implicating data within a first database and within a second database. The first database has a first transaction manager and the second database has a second transaction manager. Thereafter, a plurality of transactions responsive to the query are initiated to access the data within the first database and the second database. Execution of the plurality of transactions are coordinated using the first transaction manager such that commits for both of the first database and the second database are handled by the first transaction manager. Data responsive to the query can then be provided to the client. Related apparatus, systems, techniques and articles are also described.
-
-
-
-
-
-
-
-
-