-
公开(公告)号:US10983965B2
公开(公告)日:2021-04-20
申请号:US16544739
申请日:2019-08-19
Applicant: SAP SE
Inventor: Chul Won Lee , Daniel Booss , Jaeyoung Choi , Werner Thesing
Abstract: Receiving a statement including requests for database operations in a secondary database system storing data replicated from a primary database system by replaying transaction output generated by the primary database system; responsive to receiving the statement, requesting an allocation of memory from the secondary database system to support the requested database operations; generating an aggregated statement memory consumption value based on the amount of memory consumed by all statements executing in the secondary database system that are not associated with replaying the transaction logs; determining that the requested allocation of memory in addition to the aggregated statement memory consumption value exceeds a total statement execution memory limit indicating a total amount of memory that may be allocated to all database operations associated with statement execution in a secondary database system, and denying the requested allocation of memory. Related apparatus, systems, techniques and articles are also described.
-
公开(公告)号:US10241907B2
公开(公告)日:2019-03-26
申请号:US15598609
申请日:2017-05-18
Applicant: SAP SE
Inventor: Ivan Schreter , Daniel Booss , Akanksha Meghlan , Mehul Wagle
IPC: G06F12/02 , G11C11/56 , G06F17/30 , G06F3/06 , G06F16/27 , G06F16/11 , G06F16/21 , G06F16/901 , G06F16/00
Abstract: A system includes reception of an instruction to create a data block associated with a portion of a database table in a non-volatile memory system, creation, in response to the instruction to create the data block, of a file associated with the data block in the non-volatile memory system, where a filename of the file comprises an indication that the data block is a temporary block, creation of an entry in a data block map table indicating that the data block is a temporary block, reception of an instruction to commit the data block, and, in response to the instruction to commit the data block, flush data associated with the data block to the file in the non-volatile memory system, rename the file to remove the indication that the data block is a temporary block, and update the entry in the data block map to indicate that the data block is a committed block.
-
3.
公开(公告)号:US10068197B2
公开(公告)日:2018-09-04
申请号:US14859006
申请日:2015-09-18
Applicant: SAP SE
Inventor: Andrei Suvernev , Thorsten Glebe , Volkmar Soehner , Daniel Booss
Abstract: A method is described that involves providing a persisted quantity for a time series time interval to a first transaction, then, providing the same persisted quantity to a second transaction that operates in parallel with the first transaction. The second transaction is not permitted to change the persisted quantity. The method also involves replacing the persisted quantity with a second persisted quantity within the time series. The second persisted quantity is determined by the first transaction. The method also involves writing a persisted quantity change for the time series time interval. The persisted quantity change is determined by the second transaction.
-
公开(公告)号:US20180246676A1
公开(公告)日:2018-08-30
申请号:US15598609
申请日:2017-05-18
Applicant: SAP SE
Inventor: Ivan Schreter , Daniel Booss , Akanksha Meghlan , Mehul Wagle
IPC: G06F3/06
CPC classification number: G06F12/0238 , G06F3/0604 , G06F3/0646 , G06F3/0649 , G06F3/0679 , G06F12/0246 , G06F17/30 , G06F17/30073 , G06F17/30292 , G06F17/30575 , G06F2212/10 , G06F2212/1016 , G06F2212/1024 , G06F2212/202 , G11C11/5628
Abstract: A system includes reception of an instruction to create a data block associated with a portion of a database table in a non-volatile memory system, creation, in response to the instruction to create the data block, of a file associated with the data block in the non-volatile memory system, where a filename of the file comprises an indication that the data block is a temporary block, creation of an entry in a data block map table indicating that the data block is a temporary block, reception of an instruction to commit the data block, and, in response to the instruction to commit the data block, flush data associated with the data block to the file in the non-volatile memory system, rename the file to remove the indication that the data block is a temporary block, and update the entry in the data block map to indicate that the data block is a committed block.
-
5.
公开(公告)号:US20170220446A1
公开(公告)日:2017-08-03
申请号:US15489208
申请日:2017-04-17
Applicant: SAP SE
Inventor: Tobias Scheuer , Daniel Booss
CPC classification number: G06F11/3423 , G06F9/46 , G06F11/0766 , G06F11/2236 , G06F11/328 , G06F11/3409 , G06F11/3452 , G06F11/3466 , G06F11/3476 , G06F2201/86 , G06F2201/865 , G06F2201/88
Abstract: Computing threads can be sampled such that the samples hit each activity with a probability proportional to a time period of that activity. Therefore, the sampling can advantageously account for all activities, including activities that are smaller than the applicable sampling interval.
-
公开(公告)号:US20170068465A1
公开(公告)日:2017-03-09
申请号:US14849041
申请日:2015-09-09
Applicant: SAP SE
Inventor: Ivan Schreter , Daniel Booss , Daniel Egenolf
CPC classification number: G06F17/30312 , G06F12/023 , G06F12/06 , G06F2212/1024 , G06F2212/1044
Abstract: A database memory manager determines a size class for each of a plurality of memory allocation requests. The memory manager then, based on the determined size classes, assigns which of a plurality of sub-allocators forming part of a plurality of memory pools should handle each memory allocation request. The sub-allocators assignments are based on predefined size ranges for each size class. The corresponding assigned sub-allocators then identify locations within the memory for each memory allocation request. The corresponding assigned sub-allocators next handle the memory allocation requests to allocate memory at the identified locations such that one of the sub-allocators utilizes both thread local storage and core-striped memory management.
Abstract translation: 数据库存储器管理器为多个存储器分配请求中的每一个确定大小类别。 然后,存储器管理器基于所确定的大小类别,分配构成多个存储器池的一部分的多个子分配器中的哪一个应该处理每个存储器分配请求。 子分配器分配基于每个大小类别的预定义大小范围。 相应的分配的子分配器然后识别存储器内的每个存储器分配请求的位置。 相应的分配的子分配器接下来处理在所识别的位置处分配存储器的存储器分配请求,使得一个子分配器利用线程本地存储和核心条带存储器管理两者。
-
公开(公告)号:US12093732B2
公开(公告)日:2024-09-17
申请号:US18333752
申请日:2023-06-13
Applicant: SAP SE
Inventor: Daniel Booss , Robert Kettler
IPC: G06F12/00 , G06F9/4401 , G06F9/50 , G06F12/0882 , G06N20/00
CPC classification number: G06F9/5016 , G06F9/4418 , G06F9/442 , G06F9/5022 , G06F12/0882 , G06N20/00 , G06F2209/5018 , G06F2212/7201
Abstract: A system for shutting down a process of a database is provided. In some aspects, the system performs operations including tracking, during startup of a process, code locations of a process in the at least one memory. The operations may further include tracking, during runtime of the process and in response to the tracking the code locations, memory segments of the at least one memory allocated to the process. The operations may further include receiving an indication for a shutdown of a process. The operations may further include waking, in response to the indication, at least one processing thread of a plurality of processing threads allocated to a database system. The operations may further include allocating a list of memory mappings to the plurality of processing threads. The operations may further include freeing, by the first processing thread, the physical memory assigned to the processing thread by the memory mappings.
-
公开(公告)号:US11720402B2
公开(公告)日:2023-08-08
申请号:US17818957
申请日:2022-08-10
Applicant: SAP SE
Inventor: Daniel Booss , Robert Kettler
IPC: G06F12/00 , G06F9/50 , G06F9/4401 , G06F12/0882 , G06N20/00
CPC classification number: G06F9/5016 , G06F9/442 , G06F9/4418 , G06F9/5022 , G06F12/0882 , G06N20/00 , G06F2209/5018 , G06F2212/7201
Abstract: A system for shutting down a process of a database is provided. In some aspects, the system performs operations including tracking, during startup of a process, code locations of a process in the at least one memory. The operations may further include tracking, during runtime of the process and in response to the tracking the code locations, memory segments of the at least one memory allocated to the process. The operations may further include receiving an indication for a shutdown of a process. The operations may further include waking, in response to the indication, at least one processing thread of a plurality of processing threads allocated to a database system. The operations may further include allocating a list of memory mappings to the plurality of processing threads. The operations may further include freeing, by the first processing thread, the physical memory assigned to the processing thread by the memory mappings.
-
公开(公告)号:US10824673B2
公开(公告)日:2020-11-03
申请号:US15695621
申请日:2017-09-05
Applicant: SAP SE
Inventor: Oliver Rebholz , Ivan Schreter , Abdelkader Sellami , Daniel Booss , Gunter Radestock , Peter Bumbulis , Alexander Boehm , Frank Renkes , Werner Thesing , Thomas Willhalm
IPC: G06F16/901 , G06F3/06
Abstract: A system includes a non-volatile random access memory storing a column store main fragment of a column of a database table, and a processing unit to read the column store main fragment from the non-volatile random access memory. A volatile random access memory storing a column store delta fragment of the column of the database table may also be included, in which the processing unit is to write to the column store delta fragment. According to some systems, the stored column store main fragment is byte-addressable, and is copied from the volatile random access memory to the non-volatile random access memory without using a filesystem cache.
-
公开(公告)号:US20190258580A1
公开(公告)日:2019-08-22
申请号:US15900120
申请日:2018-02-20
Applicant: SAP SE
Inventor: Daniel Booss , Ivan Schreter
IPC: G06F12/0891 , G06F12/123
Abstract: A method may include dividing, into a first portion of memory resources and a second portion of memory resources, a plurality of memory resources included in a cache coupled with a database. The plurality of memory resources included in the cache may store data from the database. The first portion of memory resources may be occupied by data assigned to a first weight class. The second portion of memory resources may be occupied by data assigned to a second weight class. The first portion of memory resources may be selected based at least on the first weight class and an age of at least some of the data occupying the first portion of memory resources. In response to the selection of the first portion of memory resources, the first portion of memory resources may be reclaimed. Related systems and articles of manufacture, including computer program products, are also provided.
-
-
-
-
-
-
-
-
-