Patents by Inventor Till Merker

Till Merker 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).

  • Patent number: 11962686
    Abstract: Computer-readable media, methods, and systems are disclosed for handling intermediate data in connection with a database employing group-level encryption. Intermediate data is used during database operation and stored transiently such that the intermediate data is removed from memory upon database restart. To protect the privacy of the intermediate data, a random encryption key may be generated upon startup of a database instance. The random encryption key may be stored transiently. During database operation, the random encryption key may be used to encrypt and/or decrypt the intermediate data. The transient memory may be wiped upon database shut down such that the random encryption key is no longer accessible upon database restart.
    Type: Grant
    Filed: December 13, 2021
    Date of Patent: April 16, 2024
    Assignee: SAP SE
    Inventors: Dirk Thomsen, Till Merker
  • Patent number: 11960463
    Abstract: A method for performing a multi-fragment index scan operation included in a query pipeline of a query accessing a database table may include performing an index scan on a first chunk of a first fragment of the database table and a second chunk of a second fragment of the database table. A first output of the index scan on the first chunk of the first fragment of the database table and a second output of the index scan on the second chunk of the second fragment of the database table may be merged to generate a partial result set for ingestion by a next operation in the query pipeline. The multi-fragment index scan operation may continue with index scans on subsequent chunks of the first fragment and second fragment of the database table. Related systems and computer program products are also provided.
    Type: Grant
    Filed: May 23, 2022
    Date of Patent: April 16, 2024
    Assignee: SAP SE
    Inventors: Andreas Amler, Paul Willems, Till Merker
  • Publication number: 20240095248
    Abstract: Described herein are systems and method for providing data transfer in a computer-implemented database from a database extension layer. A data server associated with a database receives a request to transfer data stored in a database extension layer of the database. Input data chunks are collected from the database extension layer until a configured row count limit is reached. Row positions are determined from the input data chunks. Value identifiers corresponding to the row positions are determined. Values corresponding to the value identifiers are retrieved. Output data is generated based on the values corresponding to the value identifiers.
    Type: Application
    Filed: September 15, 2022
    Publication date: March 21, 2024
    Inventors: Canberk Morelli, Till Merker
  • Publication number: 20240086426
    Abstract: A method for executing a query may include generating a partition value identifier for a partitioned table. The partitioned table may include a main fragment including a main dictionary storing a first value and a main value identifier corresponding to the first value and a delta fragment including a delta dictionary storing a second value and a delta value identifier corresponding to the second value. The partition value identifier may be set based at least in part on the first value and the second value. The generated partition value identifier and a corresponding one of the main value identifier and the delta value identified may be maintained as part of a mapping. A query to group data stored in the partitioned table may be received. The query may be executed by at least using the mapping.
    Type: Application
    Filed: November 21, 2023
    Publication date: March 14, 2024
    Inventors: Andreas Amler, Jonathan Dees, Till Merker
  • Patent number: 11860906
    Abstract: A method for executing a query may include generating a partition value identifier for a partitioned table. The partitioned table may include a main fragment including a main dictionary storing a first value and a main value identifier corresponding to the first value and a delta fragment including a delta dictionary storing a second value and a delta value identifier corresponding to the second value. The partition value identifier may be set based at least in part on the first value and the second value. The generated partition value identifier and a corresponding one of the main value identifier and the delta value identified may be maintained as part of a mapping. A query to group data stored in the partitioned table may be received. The query may be executed by at least using the mapping.
    Type: Grant
    Filed: May 16, 2022
    Date of Patent: January 2, 2024
    Assignee: SAP SE
    Inventors: Andreas Amler, Jonathan Dees, Till Merker
  • Publication number: 20230376405
    Abstract: A method, a system, and a computer program product for providing one or more checks during execution of queries an application. A query is received for execution by a software application. A just-in-time executable code is generated for execution of the received query. A determination is made that the generated just-in-time executable code is configured to include one or more testing codes for testing the software application. The testing codes are associated with one or more conditions. The generated just-in-time executable code and one or more testing codes are executed. The testing codes are executed upon a determination that one or more conditions are activated.
    Type: Application
    Filed: May 17, 2022
    Publication date: November 23, 2023
    Inventor: TILL MERKER
  • Publication number: 20230376474
    Abstract: A table scan predicate with integrated semi-join filter is provided. A method includes receiving a query including: a request to join first data from a first table and second data from a second table, a first predicate for use in a table scan of the second table, and a second predicate including an expression associated with the first data from the first table and a reference to a column associated with the second data from the second table. The method may include transforming the second predicate into a dynamic predicate for execution of the query. the method may include applying the dynamic predicate to at least the first data. The method may include executing the query by at least scanning the second table based on the first predicate and filtered first data from the application of the dynamic predicate. Related systems and articles of manufacture are provided.
    Type: Application
    Filed: May 23, 2022
    Publication date: November 23, 2023
    Inventors: Manuel Mayr, Wolfgang Stephan, Till Merker
  • Publication number: 20230376473
    Abstract: A method for performing a multi-fragment index scan operation included in a query pipeline of a query accessing a database table may include performing an index scan on a first chunk of a first fragment of the database table and a second chunk of a second fragment of the database table. A first output of the index scan on the first chunk of the first fragment of the database table and a second output of the index scan on the second chunk of the second fragment of the database table may be merged to generate a partial result set for ingestion by a next operation in the query pipeline. The multi-fragment index scan operation may continue with index scans on subsequent chunks of the first fragment and second fragment of the database table. Related systems and computer program products are also provided.
    Type: Application
    Filed: May 23, 2022
    Publication date: November 23, 2023
    Inventors: Andreas Amler, Paul Willems, Till Merker
  • Publication number: 20230367819
    Abstract: A global index with a repartitioning operator is provided. A method for executing a query includes receiving a query including a request to search a first table based on a first value in a first column. The method may include generating a second table by partitioning the second table based on the first column and including, in the second table, a partition identifier and a reference row identifier. The method may include pruning the second table such that a row corresponding to the first value remains in the second table. The method may include repartitioning the row to a stream based on the partition identifier. The method may include executing the query by at least searching the partition of the first table based on the stream and the row identifier of the row. Related systems and articles of manufacture are provided.
    Type: Application
    Filed: May 10, 2022
    Publication date: November 16, 2023
    Inventors: Joerg Fellmann, Till Merker, Paul Willems, Dan Bi Park, Heesik Shin, Jin Su Lee, Myunggu Kang
  • Publication number: 20230367791
    Abstract: A method for executing a query may include generating a partition value identifier for a partitioned table. The partitioned table may include a main fragment including a main dictionary storing a first value and a main value identifier corresponding to the first value and a delta fragment including a delta dictionary storing a second value and a delta value identifier corresponding to the second value. The partition value identifier may be set based at least in part on the first value and the second value. The generated partition value identifier and a corresponding one of the main value identifier and the delta value identified may be maintained as part of a mapping. A query to group data stored in the partitioned table may be received. The query may be executed by at least using the mapping.
    Type: Application
    Filed: May 16, 2022
    Publication date: November 16, 2023
    Inventors: Andreas Amler, Jonathan Dees, Till Merker
  • Publication number: 20230359671
    Abstract: A method for parallelization may include identifying, within a sequence of operations comprising a query pipeline for executing a query, a workload skewing operation whose input dataset and output dataset exhibit an above-threshold difference in size. A reparallelization point may be inserted in the query pipeline subsequent to the workload skewing operation. The reparallelization point including a scheduling operation configured to determine a task size for performing one or more operations following the workload skewing operation in the query pipeline. The query may be executed by performing the sequence of operations comprising the query pipeline. Related systems and computer program products are also provided.
    Type: Application
    Filed: May 4, 2022
    Publication date: November 9, 2023
    Inventors: Christina Teflioudi, Paul Willems, Till Merker
  • Publication number: 20230359620
    Abstract: A method for executing a dynamically generated operation in a parallel processing framework may include executing the dynamically generated operation sequentially for a threshold quantity of times before initiating a compilation operation to generate precompiled code for the dynamically generated operation. Upon generating the precompiled code, execution of the precompiled code may be parallelized by determining, based on a quantity of time required to execute the precompiled code on a portion of a dataset, a task size. The execution of the precompiled code may be divided, based on the task size, into one or more tasks. Moreover, a corresponding quantity of worker threads may be allocated to perform the one or more tasks in parallel. Related methods and computer program products are also provided.
    Type: Application
    Filed: May 3, 2022
    Publication date: November 9, 2023
    Inventors: Christina Teflioudi, Paul Willems, Till Merker
  • Publication number: 20230359622
    Abstract: A method, a system, and a computer program product for executing a blocked index join. One or more join values for joining data stored in a database in response to a query for accessing data stored in the database are identified. The database stores data in a plurality of tables. Each table has a plurality of columns and a plurality of rows. A mapping of one or more rows in the plurality of rows corresponding to one or more join values to a number of rows including one or more join values is identified. Based on the mapping, a join of one or more join values based on the rows including one or more join values is executed. The joined values are outputted.
    Type: Application
    Filed: May 9, 2022
    Publication date: November 9, 2023
    Inventor: Till MERKER
  • Publication number: 20230281195
    Abstract: A method may include receiving, from a first thread of a first operator performing a first operation of a query, a first request for memory allocation or memory deallocation. In response to the first request, a first local data structure of the first thread may be accessed to identify the first operator associated with the first request. A first memory usage metric for the first thread of the first operator may be updated based on the first request. A third memory usage metric for the first operator may be determined based on the first memory usage metric and a second memory usage metric for a second thread of the first operator. A fourth memory usage metric for a second operator may be determined based on a fifth memory usage metric for a third thread used by the second operator to perform a second operation of the query.
    Type: Application
    Filed: March 4, 2022
    Publication date: September 7, 2023
    Inventor: Till Merker
  • Publication number: 20230281201
    Abstract: A method for on-demand access to table partitions may include receiving, at a data execution engine, a query accessing a database table divided into a first partition and a second partition stored at different nodes of the database. The data execution engine may respond to the query by acquiring a lock on the database table and instantiating data structures to support the execution of the query without loading any of the partitions of the database table into a main memory. Instead, the loading of the individual partitions of the database table may be delegated to the operators tasked with performing the operations included in the execution plan for the query. Each operator may refrain from loading those partitions of the database table that are determined to be unnecessary for performing the individual operations. Related systems and computer program products are also provided.
    Type: Application
    Filed: March 2, 2022
    Publication date: September 7, 2023
    Applicant: SAP SE
    Inventors: Till Merker, Paul Willems, Manuel Mayr
  • Publication number: 20230244665
    Abstract: A system for generating a mixed query plan including operator alternatives. A method may include generating a mixed query plan including a first operator selected as a pre-compiled operator; generating the mixed query plan including a second operator selected as operator alternatives, the operator alternatives configuring the second operator as pre-compiled or code-generating alternatives; delaying selection of one of the operator alternatives until additional information regarding the mixed query plan becomes available; generating the mixed query plan including a third operator selected as a code-generating operator; and selecting, given the third operator representing the additional information, one of the operator alternatives to enable execution of the mixed query plan using the selected operator alternative. Related methods and articles of manufacture are also described.
    Type: Application
    Filed: April 10, 2023
    Publication date: August 3, 2023
    Inventor: Till Merker
  • Publication number: 20230214393
    Abstract: Aspects of the current subject matter are directed to providing query results to clients by incorporating pause and/or detach operations into the query execution after a first fetch of results. The pause and the detach operations for query execution consistent with implementations of the current subject matter result in reduced times and conserved resources in providing query results by computing only results necessary to satisfy a first fetch call prior to computing results necessary to satisfy subsequent fetch calls.
    Type: Application
    Filed: March 10, 2023
    Publication date: July 6, 2023
    Inventors: Paul Willems, Christina Teflioudi, Till Merker
  • Publication number: 20230188328
    Abstract: Computer-readable media, methods, and systems are disclosed for handling intermediate data in connection with a database employing group-level encryption. Intermediate data is used during database operation and stored transiently such that the intermediate data is removed from memory upon database restart. To protect the privacy of the intermediate data, a random encryption key may be generated upon startup of a database instance. The random encryption key may be stored transiently. During database operation, the random encryption key may be used to encrypt and/or decrypt the intermediate data. The transient memory may be wiped upon database shut down such that the random encryption key is no longer accessible upon database restart.
    Type: Application
    Filed: December 13, 2021
    Publication date: June 15, 2023
    Inventors: Dirk Thomsen, Till Merker
  • Patent number: 11675788
    Abstract: A query is received at a database execution engine. A query plan is generated by the database execution engine and for execution of the query. The query plan includes a first operator including computer executable instructions that upon execution queries a data structure of a database, determines whether the data structure satisfies a precondition for execution of a second operator of the query plan, and generates a signal indicating that the precondition is not satisfied. Execution of the query plan is initiated. A new query plan is generated by the database execution engine and in response to receiving the signal indicating that the precondition is not satisfied. Related systems, methods, and articles of manufacture are also described.
    Type: Grant
    Filed: April 1, 2019
    Date of Patent: June 13, 2023
    Inventors: Manuel Mayr, Till Merker
  • Patent number: 11650982
    Abstract: A system for generating a mixed query plan including operator alternatives. A method may include generating a mixed query plan including a first operator selected as a pre-compiled operator; generating the mixed query plan including a second operator selected as operator alternatives, the operator alternatives configuring the second operator as pre-compiled or code-generating alternatives; delaying selection of one of the operator alternatives until additional information regarding the mixed query plan becomes available; generating the mixed query plan including a third operator selected as a code-generating operator; and selecting, given the third operator representing the additional information, one of the operator alternatives to enable execution of the mixed query plan using the selected operator alternative. Related methods and articles of manufacture are also described.
    Type: Grant
    Filed: April 1, 2019
    Date of Patent: May 16, 2023
    Assignee: SAP SE
    Inventor: Till Merker