Patents by Inventor Thomas Legler
Thomas Legler has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Publication number: 20240111757Abstract: A method may include receiving a first transaction inserting a record into a database and a second transaction deleting the record from the database. A validity period for the record may be determined based on a first commit time at which the first transaction is committed and a second commit time at which the second transaction is committed. A current table and/or a history table of a system versioned table may be updated to include the record based on the validity period of the record. One or more temporal operations may be performed based on the system versioned table. For example, a time travel operation may be performed to retrieve, based on the system versioned table, one or more records that are valid at a given point in time. Related systems and computer program products are also provided.Type: ApplicationFiled: December 6, 2023Publication date: April 4, 2024Inventors: Bernhard Scheirle, Andreas Tonder, Carsten Thiel, Guenter Radestock, Thomas Legler, Martin Heidel, Robert Schulze, Joern Schmidt, Rolando Blanco
-
Patent number: 11947994Abstract: A method may include determining a threshold quantity of attempts to optimistically perform a first transaction operating data stored in a database. The threshold quantity of attempts may be determined based on an expected workload of the first transaction and/or a workload at the database. The first transaction may be performed optimistically including by tracking cache lines accessed by the first transaction and detecting, based on a second transaction writing to a cache line accessed by the first transaction, a conflict between the first transaction and the second transaction. If the first transaction is not successful performed after the threshold quantity of attempts to optimistically perform the first transaction, the first transaction may be performed in a fallback mode including by acquiring a lock to prevent the second transaction from accessing a same data in the database as the first transaction. Related systems and articles of manufacture are also provided.Type: GrantFiled: March 28, 2019Date of Patent: April 2, 2024Assignee: SAP SEInventor: Thomas Legler
-
Patent number: 11914589Abstract: In some example embodiments, there may be provided a method including detecting a query operator of a predetermined type requiring a sorting or a scanning responsive to the query operator at a column-oriented database; determining a sorted dictionary at the column-oriented database is eligible for direct access by at least checking that the column-oriented database provides sorted dictionary access and that dictionary collation and a collation of the query operator are the same; when the sorted dictionary is eligible, reading directly from the sorted dictionary a batch of sorted values; and processing, based on the batch sorted values read from the sorted dictionary, the query operator.Type: GrantFiled: February 28, 2020Date of Patent: February 27, 2024Assignee: SAP SEInventors: Oliver Horn, Thomas Legler, Robert Schulze
-
Patent number: 11886424Abstract: A method may include receiving a first transaction inserting a record into a database and a second transaction deleting the record from the database. A validity period for the record may be determined based on a first commit time at which the first transaction is committed and a second commit time at which the second transaction is committed. A current table and/or a history table of a system versioned table may be updated to include the record based on the validity period of the record. One or more temporal operations may be performed based on the system versioned table. For example, a time travel operation may be performed to retrieve, based on the system versioned table, one or more records that are valid at a given point in time. Related systems and computer program products are also provided.Type: GrantFiled: September 22, 2021Date of Patent: January 30, 2024Assignee: SAP SEInventors: Bernhard Scheirle, Andreas Tonder, Carsten Thiel, Guenter Radestock, Thomas Legler, Martin Heidel, Robert Schulze, Joern Schmidt, Rolando Blanco
-
Patent number: 11789951Abstract: A method, a system, and a computer program product for placement or storage of data structures in memory/storage locations. A type of a data structure for storing data and a type of data access to the data structure are determined. The type of data access includes a first and a second type of data access. A frequency of each type of access to each type of data structure accessed by a query is determined. Using the determined frequency, a number of first type of data accesses to the data structure is compared to a number of second type of accesses to the data structure. The numbers of first and second types of data access are compared to a predetermined threshold percentage of a total number of data accesses to the data structure. Based on the comparisons, a physical memory location for storing data is determined.Type: GrantFiled: September 7, 2021Date of Patent: October 17, 2023Assignee: SAP SEInventors: Robert Lasch, Thomas Legler, Robert Schulze, Kai-Uwe Sattler
-
Patent number: 11789741Abstract: A method for optimizing memory access for database operations is provided. The method may include performing a first database operation by at least executing a first instruction stream associated with the first database operation. The first database operation may be defined as a coroutine to at least enable the execution of the first instruction stream to be interleaved with an execution of a second instruction stream. In response to determining that data required to continue the execution of the first instruction stream is absent from a cache, the execution of the first instruction stream may be suspended and the second instruction stream may be executed instead. Related systems and articles of manufacture, including computer program products, are also provided.Type: GrantFiled: March 8, 2018Date of Patent: October 17, 2023Assignee: SAP SEInventors: Georgios Psaropoulos, Thomas Legler, Norman May, Anastasia Ailamaki
-
Patent number: 11726975Abstract: A system for unloading tables of a database is provided. In some aspects, the system performs operations including determining that a number of accesses to a table occurring within a time period has satisfied an access threshold. The operations may further include identifying, in response to the determining, a first timestamp indicating a most recent access to the table. The operations may further include determining whether a difference between a current timestamp and the first timestamp satisfies a first time threshold. The operations may further include comparing, in response to the difference satisfying the first time threshold, a ratio of the difference and a size of the table to a ratio threshold. The operations may further include unloading, in response to satisfying the ratio threshold, the table. The operations may further include adjusting, based on the feedback, the first time threshold and/or the ratio threshold.Type: GrantFiled: April 29, 2022Date of Patent: August 15, 2023Assignee: SAP SEInventors: Klaus Otto Mueller, Thomas Legler
-
Patent number: 11714795Abstract: A system includes storage of data into a target memory location allocated to a target leaf node of a tree-based index structure, the target leaf node being a child node of a parent node of the tree-based index structure, where the tree-based index structure comprises one or more other leaf nodes which are child nodes of the parent node, and each of the target leaf node and the one or more other leaf nodes is associated with a plurality of allocated memory locations, incremental identification of all unused allocated memory locations between a first allocated memory location of a left-most one of the target leaf node and the one or more other leaf nodes and a last used allocated memory location of a right-most one of the target leaf node and the one or more other leaf nodes, and movement of data stored in the target leaf node and the one or more other leaf nodes into the identified unused allocated memory locations.Type: GrantFiled: September 23, 2021Date of Patent: August 1, 2023Assignee: SAP SEInventor: Thomas Legler
-
Publication number: 20230086449Abstract: A system includes storage of data into a target memory location allocated to a target leaf node of a tree-based index structure, the target leaf node being a child node of a parent node of the tree-based index structure, where the tree-based index structure comprises one or more other leaf nodes which are child nodes of the parent node, and each of the target leaf node and the one or more other leaf nodes is associated with a plurality of allocated memory locations, incremental identification of all unused allocated memory locations between a first allocated memory location of a left-most one of the target leaf node and the one or more other leaf nodes and a last used allocated memory location of a right-most one of the target leaf node and the one or more other leaf nodes, and movement of data stored in the target leaf node and the one or more other leaf nodes into the identified unused allocated memory locations.Type: ApplicationFiled: September 23, 2021Publication date: March 23, 2023Inventor: Thomas LEGLER
-
Publication number: 20230086162Abstract: A method may include receiving a first transaction inserting a record into a database and a second transaction deleting the record from the database. A validity period for the record may be determined based on a first commit time at which the first transaction is committed and a second commit time at which the second transaction is committed. A current table and/or a history table of a system versioned table may be updated to include the record based on the validity period of the record. One or more temporal operations may be performed based on the system versioned table. For example, a time travel operation may be performed to retrieve, based on the system versioned table, one or more records that are valid at a given point in time. Related systems and computer program products are also provided.Type: ApplicationFiled: September 22, 2021Publication date: March 23, 2023Inventors: Bernhard Scheirle, Andreas Tonder, Carsten Thiel, Guenter Radestock, Thomas Legler, Martin Heidel, Robert Schulze, Joern Schmidt, Rolando Blanco
-
Publication number: 20220405288Abstract: A method, a system, and a computer program product for placement or storage of data structures in memory/storage locations. A type of a data structure for storing data and a type of data access to the data structure are determined. The type of data access includes a first and a second type of data access. A frequency of each type of access to each type of data structure accessed by a query is determined. Using the determined frequency, a number of first type of data accesses to the data structure is compared to a number of second type of accesses to the data structure. The numbers of first and second types of data access are compared to a predetermined threshold percentage of a total number of data accesses to the data structure. Based on the comparisons, a physical memory location for storing data is determined.Type: ApplicationFiled: September 7, 2021Publication date: December 22, 2022Inventors: Robert Lasch, Thomas Legler, Robert Schulze, Kai-Uwe Sattler
-
Patent number: 11520763Abstract: There is provided a method for compressing a first tree data structure. The method includes determining, by a processor, to compress a first tree data structure associated with a dictionary of a database management system. The method further includes compressing the first tree data structure to generate a compressed tree data structure. The compressing includes traversing, by the processor and in response to the determining, the first tree data structure on a lowest level. The compressing further includes identifying, by the processor and in response to traversing, empty nodes on the lowest level. The compressing further includes removing the identified empty nodes to compress the lowest level. The compressing further includes constructing, in response to the removing, a second level of the compressed tree data structure based on the compressed lowest level, the second level higher in the compressed tree data structure than the compressed lowest level.Type: GrantFiled: March 26, 2020Date of Patent: December 6, 2022Assignee: SAP SEInventor: Thomas Legler
-
Publication number: 20220261391Abstract: A system for unloading tables of a database is provided. In some aspects, the system performs operations including determining that a number of accesses to a table occurring within a time period has satisfied an access threshold. The operations may further include identifying, in response to the determining, a first timestamp indicating a most recent access to the table. The operations may further include determining whether a difference between a current timestamp and the first timestamp satisfies a first time threshold. The operations may further include comparing, in response to the difference satisfying the first time threshold, a ratio of the difference and a size of the table to a ratio threshold. The operations may further include unloading, in response to satisfying the ratio threshold, the table. The operations may further include adjusting, based on the feedback, the first time threshold and/or the ratio threshold.Type: ApplicationFiled: April 29, 2022Publication date: August 18, 2022Inventors: Klaus Otto Mueller, Thomas Legler
-
Patent number: 11347710Abstract: A system for unloading tables of a database is provided. In some aspects, the system performs operations including determining that a number of accesses to a table occurring within a time period has satisfied an access threshold. The operations may further include identifying, in response to the determining, a first timestamp indicating a most recent access to the table. The operations may further include determining whether a difference between a current timestamp and the first timestamp satisfies a first time threshold. The operations may further include comparing, in response to the difference satisfying the first time threshold, a ratio of the difference and a size of the table to a ratio threshold. The operations may further include unloading, in response to satisfying the ratio threshold, the table. The operations may further include adjusting, based on the feedback, the first time threshold and/or the ratio threshold.Type: GrantFiled: June 2, 2020Date of Patent: May 31, 2022Assignee: SAP SEInventors: Klaus Otto Mueller, Thomas Legler
-
Publication number: 20210303533Abstract: There is provided a method for compressing a first tree data structure. The method includes determining, by a processor, to compress a first tree data structure associated with a dictionary of a database management system. The method further includes compressing the first tree data structure to generate a compressed tree data structure. The compressing includes traversing, by the processor and in response to the determining, the first tree data structure on a lowest level. The compressing further includes identifying, by the processor and in response to traversing, empty nodes on the lowest level. The compressing further includes removing the identified empty nodes to compress the lowest level. The compressing further includes constructing, in response to the removing, a second level of the compressed tree data structure based on the compressed lowest level, the second level higher in the compressed tree data structure than the compressed lowest level.Type: ApplicationFiled: March 26, 2020Publication date: September 30, 2021Inventor: Thomas Legler
-
Patent number: 11119742Abstract: A system for cache efficient reading of column values in a database is provided. In some aspects, the system performs operations including pre-fetching, asynchronously and in response to a request for data in a column store database system, a plurality of first values associated with the requested data. The request may identify a row of the column store database system associated with the requested data. The plurality of first values may be located in the row. The operations may further include storing the plurality of first values in a cache memory. The operations may further include pre-fetching, asynchronously and based on the plurality of first values, a plurality of second values. The operations may further include storing the plurality of second values in the cache memory. The operations may further include reading, in response to the storing the plurality of second values, the requested data from the cache memory.Type: GrantFiled: September 9, 2019Date of Patent: September 14, 2021Assignee: SAP SEInventor: Thomas Legler
-
Publication number: 20210271676Abstract: In some example embodiments, there may be provided a method including detecting a query operator of a predetermined type requiring a sorting or a scanning responsive to the query operator at a column-oriented database; determining a sorted dictionary at the column-oriented database is eligible for direct access by at least checking that the column-oriented database provides sorted dictionary access and that dictionary collation and a collation of the query operator are the same; when the sorted dictionary is eligible, reading directly from the sorted dictionary a batch of sorted values; and processing, based on the batch sorted values read from the sorted dictionary, the query operator.Type: ApplicationFiled: February 28, 2020Publication date: September 2, 2021Inventors: Oliver Horn, Thomas Legler, Robert Schulze
-
Patent number: 11061876Abstract: Disclosed herein are system, method, and computer program product embodiments for generating a data structure and responding to an aggregation query. An embodiment operates by a computer implemented method that includes receiving, by at least one processor, a request to enter data in a block in a data structure. The method further includes reading, by the at least one processor, a first aggregated value stored in the data structure. The first aggregated value represents a sum over at least values associated with data that is stored in the block in the data structure. The method further includes calculating, by the at least one processor, a second aggregated value by adding the first aggregated value and a value associated with the data to be entered in the data structure. The method further includes storing, by the at least one processor, at least part of the data to be entered and the second aggregated value in the block in the data structure.Type: GrantFiled: November 15, 2016Date of Patent: July 13, 2021Assignee: SAP SEInventor: Thomas Legler
-
Patent number: 10915576Abstract: A method may include identifying, based on a first hash representation of a value, a first cache line corresponding to the value. A first bit and a second bit in the cache line may be identified as corresponding to the value based on a second hash representation of the value. The first bit may be identified based on a first offset in a binary representation of the second hash representation. The second bit may be identified based on a second offset in the binary representation of the second hash representation. Each of the first offset and the second offset may include a portion of the binary digits forming the binary representation of the second hash representation. The value may be determined to be absent from a set of values based the first bit and/or the second bit being set to a first value instead of a second value.Type: GrantFiled: March 26, 2019Date of Patent: February 9, 2021Assignee: SAP SEInventor: Thomas Legler
-
Publication number: 20200311139Abstract: A method may include identifying, based on a first hash representation of a value, a first cache line corresponding to the value. A first bit and a second bit in the cache line may be identified as corresponding to the value based on a second hash representation of the value. The first bit may be identified based on a first offset in a binary representation of the second hash representation. The second bit may be identified based on a second offset in the binary representation of the second hash representation. Each of the first offset and the second offset may include a portion of the binary digits forming the binary representation of the second hash representation. The value may be determined to be absent from a set of values based the first bit and/or the second bit being set to a first value instead of a second value.Type: ApplicationFiled: March 26, 2019Publication date: October 1, 2020Inventor: Thomas Legler