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: 20240111757
    Abstract: 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: Application
    Filed: December 6, 2023
    Publication date: April 4, 2024
    Inventors: Bernhard Scheirle, Andreas Tonder, Carsten Thiel, Guenter Radestock, Thomas Legler, Martin Heidel, Robert Schulze, Joern Schmidt, Rolando Blanco
  • Patent number: 11947994
    Abstract: 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: Grant
    Filed: March 28, 2019
    Date of Patent: April 2, 2024
    Assignee: SAP SE
    Inventor: Thomas Legler
  • Patent number: 11914589
    Abstract: 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: Grant
    Filed: February 28, 2020
    Date of Patent: February 27, 2024
    Assignee: SAP SE
    Inventors: Oliver Horn, Thomas Legler, Robert Schulze
  • Patent number: 11886424
    Abstract: 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: Grant
    Filed: September 22, 2021
    Date of Patent: January 30, 2024
    Assignee: SAP SE
    Inventors: Bernhard Scheirle, Andreas Tonder, Carsten Thiel, Guenter Radestock, Thomas Legler, Martin Heidel, Robert Schulze, Joern Schmidt, Rolando Blanco
  • Patent number: 11789951
    Abstract: 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: Grant
    Filed: September 7, 2021
    Date of Patent: October 17, 2023
    Assignee: SAP SE
    Inventors: Robert Lasch, Thomas Legler, Robert Schulze, Kai-Uwe Sattler
  • Patent number: 11789741
    Abstract: 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: Grant
    Filed: March 8, 2018
    Date of Patent: October 17, 2023
    Assignee: SAP SE
    Inventors: Georgios Psaropoulos, Thomas Legler, Norman May, Anastasia Ailamaki
  • Patent number: 11726975
    Abstract: 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: Grant
    Filed: April 29, 2022
    Date of Patent: August 15, 2023
    Assignee: SAP SE
    Inventors: Klaus Otto Mueller, Thomas Legler
  • Patent number: 11714795
    Abstract: 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: Grant
    Filed: September 23, 2021
    Date of Patent: August 1, 2023
    Assignee: SAP SE
    Inventor: Thomas Legler
  • Publication number: 20230086449
    Abstract: 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: Application
    Filed: September 23, 2021
    Publication date: March 23, 2023
    Inventor: Thomas LEGLER
  • Publication number: 20230086162
    Abstract: 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: Application
    Filed: September 22, 2021
    Publication date: March 23, 2023
    Inventors: Bernhard Scheirle, Andreas Tonder, Carsten Thiel, Guenter Radestock, Thomas Legler, Martin Heidel, Robert Schulze, Joern Schmidt, Rolando Blanco
  • Publication number: 20220405288
    Abstract: 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: Application
    Filed: September 7, 2021
    Publication date: December 22, 2022
    Inventors: Robert Lasch, Thomas Legler, Robert Schulze, Kai-Uwe Sattler
  • Patent number: 11520763
    Abstract: 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: Grant
    Filed: March 26, 2020
    Date of Patent: December 6, 2022
    Assignee: SAP SE
    Inventor: Thomas Legler
  • Publication number: 20220261391
    Abstract: 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: Application
    Filed: April 29, 2022
    Publication date: August 18, 2022
    Inventors: Klaus Otto Mueller, Thomas Legler
  • Patent number: 11347710
    Abstract: 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: Grant
    Filed: June 2, 2020
    Date of Patent: May 31, 2022
    Assignee: SAP SE
    Inventors: Klaus Otto Mueller, Thomas Legler
  • Publication number: 20210303533
    Abstract: 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: Application
    Filed: March 26, 2020
    Publication date: September 30, 2021
    Inventor: Thomas Legler
  • Patent number: 11119742
    Abstract: 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: Grant
    Filed: September 9, 2019
    Date of Patent: September 14, 2021
    Assignee: SAP SE
    Inventor: Thomas Legler
  • Publication number: 20210271676
    Abstract: 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: Application
    Filed: February 28, 2020
    Publication date: September 2, 2021
    Inventors: Oliver Horn, Thomas Legler, Robert Schulze
  • Patent number: 11061876
    Abstract: 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: Grant
    Filed: November 15, 2016
    Date of Patent: July 13, 2021
    Assignee: SAP SE
    Inventor: Thomas Legler
  • Patent number: 10915576
    Abstract: 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: Grant
    Filed: March 26, 2019
    Date of Patent: February 9, 2021
    Assignee: SAP SE
    Inventor: Thomas Legler
  • Publication number: 20200311139
    Abstract: 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: Application
    Filed: March 26, 2019
    Publication date: October 1, 2020
    Inventor: Thomas Legler