Patents by Inventor Marius Eich

Marius Eich 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: 20260133971
    Abstract: A database execution engine generates a first query execution plan in response to receiving a first query, where a thread limit is specified for worker threads launched by the database execution engine. A first main executor thread is launched to process the first query and a first plurality of tasks are created to be performed in response to the first query. Then, a first plurality of worker threads are launched to perform the first plurality of tasks, where the first plurality of worker threads is less than or equal to the thread limit. In response to parallelizing processing of the first query execution plan, the first main executor thread is restricted to a first period of execution time before entering a waiting phase. The first main executor thread is woken up after the first plurality of worker threads have completed the first plurality of tasks.
    Type: Application
    Filed: October 7, 2025
    Publication date: May 14, 2026
    Inventors: Christina Teflioudi, Paul Willems, Marius Eich
  • Publication number: 20260064689
    Abstract: A database execution engine generates query execution plan for a received query, where the query execution plan includes one or more operators which will be interpreted by an interpreter when the query execution plan is executed. A query execution engine determines an overhead associated with preparation of the interpreter for executing the one or more operators of the query execution plan. Also, the query execution engine determines a preferred task size based on removing the overhead associated with preparation of the interpreter. During execution of the query execution plan, the query execution engine assigns tasks to one or more worker threads, where a task size of each assigned task is determined based on the preferred task size.
    Type: Application
    Filed: August 27, 2024
    Publication date: March 5, 2026
    Inventors: Christina Teflioudi, Paul Willems, Marius Eich
  • Publication number: 20260044506
    Abstract: A database execution engine initiates generation of a query plan on a projection pipeline for a received query. In response to initiating generation of the query plan, the database execution engine determines a first estimate of total work that will be parallelized by a scheduling operator for the query plan. Also, the database execution engine determines a second estimate of a final result size at the projection pipeline. Next, the database execution engine calculates a target number of rows based on a pause threshold and one or more configuration parameters. Then, the database execution engine calculates a task size upper bound by multiplying the target number of rows by the first estimate divided by the second estimate. During execution of the query plan, the database execution engine applies the task size upper bound to task sizes for result streaming threads scheduled by the scheduling operator on the projection pipeline.
    Type: Application
    Filed: August 12, 2024
    Publication date: February 12, 2026
    Inventors: Christina Teflioudi, Paul Willems, Marius Eich
  • Publication number: 20260023592
    Abstract: Arrangements for adjusting adaptive workers increase for waiting situations are provided. A number of tasks that have been processed since a last check of periodic checks into a task queue may be determined. In response to determining that a progress threshold has not been reached, determining, for a thread working in the task queue, a thread active time and an elapsed time. The thread active time may include an accumulated time the thread was actively executing a task since the last check of the periodic checks into the task queue. The elapsed time may include an amount of time that has passed since the last check of periodic checks into a task queue. A ratio of the thread active time and the elapsed time may be determined. A number of threads for executing the task queue may be adaptively configured based on the ratio.
    Type: Application
    Filed: July 17, 2024
    Publication date: January 22, 2026
    Inventors: Christina Teflioudi, Paul Willems, Marius Eich
  • Patent number: 12461915
    Abstract: A database execution engine generates a first query execution plan in response to receiving a first query, where a thread limit is specified for worker threads launched by the database execution engine. A first main executor thread is launched to process the first query and a first plurality of tasks are created to be performed in response to the first query. Then, a first plurality of worker threads are launched to perform the first plurality of tasks, where the first plurality of worker threads is less than or equal to the thread limit. In response to parallelizing processing of the first query execution plan, the first main executor thread is restricted to a first period of execution time before entering a waiting phase. The first main executor thread is woken up after the first plurality of worker threads have completed the first plurality of tasks.
    Type: Grant
    Filed: August 27, 2024
    Date of Patent: November 4, 2025
    Assignee: SAP SE
    Inventors: Christina Teflioudi, Paul Willems, Marius Eich
  • Publication number: 20250036627
    Abstract: In some implementations, there is provided executing a query execution plan for a query; setting a first flag to indicate to a plurality of worker threads to stop executing tasks in a first queue of a memory stack; pushing into the memory stack, a second queue containing one or more exclusive tasks associated with the query; setting a second flag to indicate to the plurality of worker threads to resume working; and in response to the second queue being empty of the one or more exclusive tasks, setting a third flag to indicate to the plurality of worker threads to stop executing tasks in the second queue, and setting a fourth flag to indicate to the plurality of worker threads to resume working on the tasks in the first queue.
    Type: Application
    Filed: July 25, 2023
    Publication date: January 30, 2025
    Inventors: Marius Eich, Christina Teflioudi, Paul Willems
  • Patent number: 11386087
    Abstract: In some aspects, there is provided a method including receiving an execution plan file, the execution plan file utilizing at least one operator of interest and further utilizing other actions separate from the at least one operator of interest. The method further includes forming an execution plan object by modifying the execution plan file by isolating the at least one operator of interest from the other actions. The method further includes performing a series of tests executing an extended execution plan object. The series of tests can include receiving the input data identified by the one or more pointers in the extended execution plan object, executing the extended execution plan object using the received input data, measuring, based on the execution of the extended execution plan object, at least one cost metric representative of execution of the at least one operator of interest, and outputting the measured cost metric.
    Type: Grant
    Filed: April 3, 2019
    Date of Patent: July 12, 2022
    Assignee: SAP SE
    Inventors: Marius Eich, Dennis Felsing
  • Patent number: 11138165
    Abstract: A method, a system, and a computer program product for executing a query. A query plan for execution of a query is generated. The query requires access to at least one table stored in a database system. The query includes one or more filter predicates. A filter predicate in the one or more filter predicates is selected. For the selected filter predicate, a plurality of cost function values associated executing a filter evaluation of the selected filter predicate are determined. Filter evaluation of the selected predicate is executed in accordance with at least one determined cost function value in the plurality of cost function values.
    Type: Grant
    Filed: April 4, 2019
    Date of Patent: October 5, 2021
    Assignee: SAP SE
    Inventors: Oliver Horn, Marius Eich
  • Publication number: 20200320078
    Abstract: In some aspects, there is provided a method including receiving an execution plan file, the execution plan file utilizing at least one operator of interest and further utilizing other actions separate from the at least one operator of interest. The method further includes forming an execution plan object by modifying the execution plan file by isolating the at least one operator of interest from the other actions. The method further includes performing a series of tests executing an extended execution plan object. The series of tests can include receiving the input data identified by the one or more pointers in the extended execution plan object, executing the extended execution plan object using the received input data, measuring, based on the execution of the extended execution plan object, at least one cost metric representative of execution of the at least one operator of interest, and outputting the measured cost metric.
    Type: Application
    Filed: April 3, 2019
    Publication date: October 8, 2020
    Inventors: Marius Eich, Dennis Felsing
  • Publication number: 20200320048
    Abstract: A method, a system, and a computer program product for executing a query. A query plan for execution of a query is generated. The query requires access to at least one table stored in a database system. The query includes one or more filter predicates. A filter predicate in the one or more filter predicates is selected. For the selected filter predicate, a plurality of cost function values associated executing a filter evaluation of the selected filter predicate are determined. Filter evaluation of the selected predicate is executed in accordance with at least one determined cost function value in the plurality of cost function values.
    Type: Application
    Filed: April 4, 2019
    Publication date: October 8, 2020
    Inventors: Oliver Horn, Marius Eich