-
公开(公告)号:US11900153B2
公开(公告)日:2024-02-13
申请号:US17678788
申请日:2022-02-23
Applicant: SAP SE
Inventor: Tiemo Bang , Norman May , Ismail Oukid , Carsten Binnig
CPC classification number: G06F9/4843 , G06F9/45558 , G06F9/5016 , G06F9/5077 , G06F2009/45562 , G06F2209/485
Abstract: Techniques and solutions are described for implementing virtual domains. Computing resources in a computing environment are determined and assigned to one or more virtual domains. One or more data structures can be located in a given virtual domain. The computing resources assigned to a virtual domain can be dynamically reconfigured without affecting processes that submit tasks to be performed on data structures in the virtual domains. Tasks can be submitted to a dispatcher, which can determine the appropriate virtual domain for the task and forward the task to the determined virtual domain. Tasks are received by virtual domains and assigned to worker threads, which can access a data structure specified for a given task.
-
公开(公告)号:US10168911B1
公开(公告)日:2019-01-01
申请号:US15621736
申请日:2017-06-13
Applicant: SAP SE
Inventor: Ismail Oukid , Ivan Schreter , Daniel Booss
Abstract: Disclosed herein are system, method, and computer program product embodiments for defragmentation of persistent main memory (e.g., storage class memory). An embodiment operates by determining that a request to allocate a block of persistent main memory cannot be fulfilled, identifying the largest block of a plurality of free blocks associated with a persistent allocator, and punching a hole at the location of the block within a segment of the persistent main memory. The embodiment further operates by determining that at least one neighboring block of the largest block is also a hole, and coalescing the at least one neighboring block and the largest block.
-
公开(公告)号:US20180356991A1
公开(公告)日:2018-12-13
申请号:US15621736
申请日:2017-06-13
Applicant: SAP SE
Inventor: Ismail Oukid , Ivan Schreter , Daniel Booss
CPC classification number: G06F3/0608 , G06F3/0631 , G06F3/0641 , G06F17/30327
Abstract: Disclosed herein are system, method, and computer program product embodiments for defragmentation of persistent main memory (e.g., storage class memory). An embodiment operates by determining that a request to allocate a block of persistent main memory cannot be fulfilled, identifying the largest block of a plurality of free blocks associated with a persistent allocator, and punching a hole at the location of the block within a segment of the persistent main memory. The embodiment further operates by determining that at least one neighboring block of the largest block is also a hole, and coalescing the at least one neighboring block and the largest block.
-
公开(公告)号:US11050436B2
公开(公告)日:2021-06-29
申请号:US16729721
申请日:2019-12-30
Applicant: SAP SE
Inventor: Robert Lasch , Ismail Oukid , Norman May
IPC: H03M7/34 , H03M7/30 , G06F16/174 , G06F9/38
Abstract: A method, a system, and a computer program product for executing a database compression. A compressed string dictionary having a block size and a front coding bucket size is generated from a dataset. Front coding is applied to one or more buckets of strings in the dictionary having the front coding bucket size to generate one or more front coded buckets of strings. One or more portions of the generated front coded buckets of strings are concatenated to form one or more blocks having the block size. Each block is compressed. A set of compressed blocks is stored. The set of the compressed blocks stores all strings in the dataset.
-
公开(公告)号:US20190171721A1
公开(公告)日:2019-06-06
申请号:US15900150
申请日:2018-02-20
Applicant: SAP SE
Inventor: Ismail Oukid , Wolfgang Lehner , Daniel dos Santos Bossle
IPC: G06F17/30 , G06F12/0808 , G06F12/02 , G06F12/0815
Abstract: Disclosed herein are embodiments for performing multi-version concurrency control (MVCC) in non-volatile memory. An embodiment operates by determining that an event occurred, wherein one or more write transactions to one or more records of a multi-version database that were pending prior to the event did not commit. The one or more write transactions are identified based on a commit value that was stored in the non-volatile memory prior to the event. A particular one of the identified uncommitted write transactions is selected. From the multi-version database, a first version of a record corresponding to the selected uncommitted write transaction that was not committed, and an earlier version of the record that was committed prior to the event are identified. A visibility of the record is set to indicate that the earlier version of the record is visible and the first version of the record is not visible.
-
公开(公告)号:US09720774B2
公开(公告)日:2017-08-01
申请号:US14753521
申请日:2015-06-29
Applicant: SAP SE
Inventor: Ismail Oukid , Anisoara Nica , Peter Bumbulis , Wolfgang Lehner , Thomas Willhalm
CPC classification number: G06F11/142 , G06F3/0619 , G06F3/0644 , G06F3/068 , G06F11/00 , G06F2201/80
Abstract: A system includes determination of a plurality of secondary data structures of a database to be rebuilt, determination, for each of the plurality of secondary data structures, of a current ranking based on a pre-crash workload, a crash-time workload, the post-crash workload, and a rebuild time of the secondary data structure, determination to rebuild one of the plurality of secondary data structures based on the determined rankings, and rebuilding of the one of the plurality of secondary data structures in a dynamic random access memory based on primary data of a database stored in non-volatile random access memory.
-
公开(公告)号:US12261628B2
公开(公告)日:2025-03-25
申请号:US18586140
申请日:2024-02-23
Applicant: SAP SE
Inventor: Robert Lasch , Ismail Oukid , Norman May
IPC: H03M13/37 , G06F3/06 , G06F16/901 , H03M7/30
Abstract: A method, a system, and a computer program product for decompressing data. One or more compressed blocks in a set of stored compressed blocks responsive to a request to access data in the set of stored compressed blocks are identified. String prefixes inside the identified compressed blocks are decompressed using front coding. String suffixes inside the identified compressed blocks are decompressed using a re-pair decompression. Uncompressed data is generated.
-
公开(公告)号:US11962330B2
公开(公告)日:2024-04-16
申请号:US18046782
申请日:2022-10-14
Applicant: SAP SE
Inventor: Robert Lasch , Ismail Oukid , Norman May
IPC: G06F7/38 , G06F3/06 , G06F16/901 , H03M7/30 , H03M13/37
CPC classification number: H03M13/3761 , G06F3/0604 , G06F3/064 , G06F16/9027 , H03M7/3095 , H03M7/3097 , G06F3/0679
Abstract: A method, a system, and a computer program product for decompressing data. One or more compressed blocks in a set of stored compressed blocks responsive to a request to access data in the set of stored compressed blocks are identified. String prefixes inside the identified compressed blocks are decompressed using front coding. String suffixes inside the identified compressed blocks are decompressed using a re-pair decompression. Uncompressed data is generated.
-
公开(公告)号:US11294708B2
公开(公告)日:2022-04-05
申请号:US16712728
申请日:2019-12-12
Applicant: SAP SE
Inventor: Tiemo Bang , Norman May , Ismail Oukid , Carsten Binnig
Abstract: Techniques and solutions are described for implementing virtual domains. Computing resources in a computing environment are determined and assigned to one or more virtual domains. One or more data structures can be located in a given virtual domain. The computing resources assigned to a virtual domain can be dynamically reconfigured without affecting processes that submit tasks to be performed on data structures in the virtual domains. Tasks can be submitted to a dispatcher, which can determine the appropriate virtual domain for the task and forward the task to the determined virtual domain. Tasks are received by virtual domains and assigned to worker threads, which can access a data structure specified for a given task.
-
公开(公告)号:US10795877B2
公开(公告)日:2020-10-06
申请号:US15900150
申请日:2018-02-20
Applicant: SAP SE
Inventor: Ismail Oukid , Wolfgang Lehner , Daniel dos Santos Bossle
IPC: G06F12/02 , G06F16/23 , G06F11/14 , G06F12/0808 , G06F12/0815
Abstract: Disclosed herein are embodiments for performing multi-version concurrency control (MVCC) in non-volatile memory. An embodiment operates by determining that an event occurred, wherein one or more write transactions to one or more records of a multi-version database that were pending prior to the event did not commit. The one or more write transactions are identified based on a commit value that was stored in the non-volatile memory prior to the event. A particular one of the identified uncommitted write transactions is selected. From the multi-version database, a first version of a record corresponding to the selected uncommitted write transaction that was not committed, and an earlier version of the record that was committed prior to the event are identified. A visibility of the record is set to indicate that the earlier version of the record is visible and the first version of the record is not visible.
-
-
-
-
-
-
-
-
-