-
公开(公告)号:US09830109B2
公开(公告)日:2017-11-28
申请号:US15369618
申请日:2016-12-05
Applicant: SAP SE
Inventor: David Wein , Mihnea Andrei , Dirk Thomsen , Ivan Schreter
CPC classification number: G06F3/065 , G06F3/0608 , G06F3/0617 , G06F3/0644 , G06F3/0673 , G06F3/0685 , G06F17/30315 , G06F17/30339 , G06F17/3048 , G06F17/30575
Abstract: The subject matter disclosed herein provides methods for materializing data from an in-memory array to one or more pages. An in-memory array holding a column of data can be maintained. One or more pages can be maintained. Each of the one or more pages can have one or more rows for storing the column of data. At least one of the one or more pages can be marked for materialization. The column of data can be materialized by copying the data from the in-memory array to the one or more rows of the one or more pages. The materializing can be based on the marking. Related apparatus, systems, techniques, and articles are also described.
-
公开(公告)号:US09798759B2
公开(公告)日:2017-10-24
申请号:US14553535
申请日:2014-11-25
Applicant: SAP SE
Inventor: Ivan Schreter , Juchang Lee , Mihnea Andrei , Thorsten Glebe , Changgyoo Park , Eunsang Kim
CPC classification number: G06F17/30348
Abstract: A plurality of transactions are handled in a database. Each transaction comprises a plurality of operations on at least one record in the database with at least two of the transactions being handled concurrently. Thereafter, a temporary timestamp is assigned to each record that is based, at least in part, on the corresponding transaction. A first transaction among the plurality of transactions is subsequently committed. Afterwards, re-stamping of at least one commit timestamp modified by the first transaction is delegated. Related apparatus, systems, techniques and articles are also described.
-
公开(公告)号:US11537578B2
公开(公告)日:2022-12-27
申请号:US15958663
申请日:2018-04-20
Applicant: SAP SE
Inventor: Colin Florendo , Carsten Thiel , Ivan Schreter , Mihnea Andrei , Anil Kumar Goel
IPC: G06F16/22
Abstract: A request for an entry of a dictionary having multiple dictionary blocks may be received, where the dictionary stores string values associated with corresponding value identifiers (IDs) for dictionary compression. One of the dictionary blocks may be selectively loaded into memory, and the dictionary block that has been loaded into memory may be searched. A value ID directory may be constructed in memory, where the value ID directory includes last value IDs for the dictionary blocks, and each of the last value IDs is mapped to an index of one of the dictionary blocks that includes a string value for that last value ID. A separator directory may also be constructed in memory, where the separator directory includes separators for the dictionary blocks, and each of the separators is mapped to an index of one of the dictionary blocks that includes a string value for that separator.
-
公开(公告)号:US20220197922A1
公开(公告)日:2022-06-23
申请号:US17646982
申请日:2022-01-04
Applicant: SAP SE
Inventor: Ruediger Karl , Mihnea Andrei , Juchang Lee , Stefan Baeuerle , Seyeong Bae , Joo Yeon Lee
IPC: G06F16/25 , G06F16/23 , G06F16/22 , G06F16/2455 , G06F16/21
Abstract: Techniques and solutions are described for implementing virtual table schemas. A virtual table schema includes a logical pointer that is used to target a table that includes data and is defined according to the virtual table schema. Values assigned to the logical pointer can be used to target tables at different locations, such as in a federated database system or in a cache of a database management system of a central computing system. When data associated with the virtual table is requested, or prior to receiving the request, the data can be stored in a table in the cache. The logical pointer can be updated to reference the cache. If the cache is full, the table can be removed from the cache, and the logical pointer can be updated to reference a table at the federated database system.
-
公开(公告)号:US11232090B2
公开(公告)日:2022-01-25
申请号:US16374472
申请日:2019-04-03
Applicant: SAP SE
Abstract: In one aspect, there is provided a method. The method may include accessing a multi-version concurrency control block providing row state for a block of rows in a table of a database, the multi-version concurrency control block including a header portion and a data portion, the header portion including a type indicator indicating whether all of the rows of the block are visible to a plurality of threads at a database management system or invisible to the plurality of threads at the database management system. Related systems, methods, and articles of manufacture are also disclosed.
-
公开(公告)号:US11030182B2
公开(公告)日:2021-06-08
申请号:US16276560
申请日:2019-02-14
Applicant: SAP SE
Inventor: Amarnadh Sai Eluri , Vimal Chandran Satheesh , Anupam Mukherjee , Mihnea Andrei
IPC: G06F16/00 , G06F16/23 , G06F16/18 , G06F9/50 , G06F16/901 , G06F3/06 , G06F16/908
Abstract: A method may include iterating through at least a portion of a table stored in a database by identifying a timestamp block associated with a range of rows forming the portion of the table. In response to determining that the timestamp block is a sparse timestamp block storing timestamps associated with only some of the rows in the first range of rows, generating a bitmap. Each of the binary values in the bitmap may correspond one of the rows in the range of rows. Moreover, each of the binary values in the bitmap may indicate whether the timestamp block includes a timestamp associated with a corresponding row from the range of rows. Iterating through the range of rows may include accessing, based on the bitmap, the timestamp block to read or write timestamps of transaction affecting the rows in the range of rows.
-
公开(公告)号:US10997178B2
公开(公告)日:2021-05-04
申请号:US16437799
申请日:2019-06-11
Applicant: SAP SE
Inventor: Christian Bensberg , Mihnea Andrei
IPC: G06F16/2455 , G06F16/22
Abstract: A method, a system and a computer program product for implicitly partitioning data. An index in a plurality of indexes is selected. The index corresponds to a plurality of ranges of data values stored in a plurality of database slices of a database. A partitioning structure for the selected index is generated. The partitioning structure includes a plurality of hierarchically arranged nodes. Each node corresponds to a range of data values in the plurality of ranges of data values stored and at least one database slice storing corresponding range of data values. Another range of data values is received for storage in the database. Using the partitioning structure, a node in the partitioning structure corresponding to the received range of data values and a corresponding database slice for storing the received range of data values are identified. The received range of data values is stored in the identified database slice.
-
公开(公告)号:US10762107B2
公开(公告)日:2020-09-01
申请号:US15409234
申请日:2017-01-18
Applicant: SAP SE
Inventor: Colin Florendo , Chaitanya Gottipati , Michael Muehle , Nirvik Basak , Mihnea Andrei , Thomas Peh
IPC: G06F16/27
Abstract: A computer implemented method for updating a secondary database includes receiving transaction log information from a primary database system at a secondary database system. The transaction log information comprises a first marker identifying a beginning of an operation comprising a plurality of sub-operations and a second marker identifying an end of the operation. The transaction log information is sequentially parsed, a first marker is identified, and a lock state is created after replaying the first marker to ensure proper serialization of the plurality of sub-operations. The lock state is terminated after replaying the second marker. Related apparatus, systems, techniques and articles are also described.
-
公开(公告)号:US10592509B2
公开(公告)日:2020-03-17
申请号:US15601815
申请日:2017-05-22
Applicant: SAP SE
Inventor: Torsten Ziegler , Christian Hansen , Frank-Martin Haas , Stefan Baeuerle , Mihnea Andrei , Alexander Boehm
IPC: G06F16/00 , G06F16/2453 , G06F16/2455
Abstract: The present disclosure involves systems, software, and computer implemented methods for using declarative rules for optimized access to data. One example method includes receiving a structured query language (SQL) query, the SQL query associated with at least one database table and at least one predicate. A determination is made as to whether the SQL query is associated with at least one declarative rule based on the at least one database table and the at least one predicate. In response to determining that the SQL query is associated with at least one declarative rule, the at least one associated declarative rule is applied, during optimization of the SQL query. The at least one declarative rule defines a transformation to the SQL query to be performed during query optimization. An updated SQL query is generated based on the applied at least one associated declarative rule and the updated SQL query is provided.
-
公开(公告)号:US20190236192A1
公开(公告)日:2019-08-01
申请号:US15964631
申请日:2018-04-27
Applicant: SAP SE
Inventor: William Zou , Reza Sherkat , John Smirnios , Mihnea Andrei
IPC: G06F17/30
CPC classification number: G06F16/24554 , G06F16/2282 , G06F16/24556
Abstract: Disclosed herein are system, method, and computer program product embodiments for partition pruning via non-homogenous synopsis information. An embodiment operates by maintaining synopsis information for a data partition in accordance with a first synopsis strategy, monitoring performance of the synopsis information within a partition pruning system, determining that the performance of the synopsis information is insufficient, and updating the synopsis information in accordance with a second synopsis strategy better suited for the attributes of the data partition. In some embodiments, a first data partition of a partitioned data table may employ a first synopsis strategy and a second data partition of the partitioned data table may employ a second synopsis strategy.
-
-
-
-
-
-
-
-
-