SCALED-OUT QUERY EXECUTION ENGINE
    41.
    发明申请

    公开(公告)号:US20210311946A1

    公开(公告)日:2021-10-07

    申请号:US16837843

    申请日:2020-04-01

    Applicant: SAP SE

    Abstract: A method, a system, and a computer program product for generating a query executable plan. A query requiring access to data stored in a database system is received. Based on the received query, a query execution plan having a plurality of query execution pipelines is generated. Each query execution pipeline in the plurality of query execution pipelines is configured to execute a plurality of operations in a predetermined order associated with each query execution pipeline. The generated query execution plan is fragmented into a plurality of fragments. Each fragment has one or more query execution pipelines in the plurality of query execution pipelines. The received query is executed by executing each fragment in the plurality of fragments.

    Optimal ranges for relational query execution plans

    公开(公告)号:US11080276B2

    公开(公告)日:2021-08-03

    申请号:US15904192

    申请日:2018-02-23

    Applicant: SAP SE

    Abstract: In some implementations, there is provided an apparatus having at least one data processor and at least one memory storing instructions which, when executed by the at least one data processor, cause executing at least a portion of a query execution plan; determining, at an edge including an intermediate result, a cardinality; proceeding with the execution of the query execution plan, when the determined cardinality is within an optimality range associated with the edge; and selecting an alternative query execution plan for execution, when the determined cardinality is outside the optimality range associated with the edge. Related systems and articles of manufacture are also provided.

    QUERY EXECUTION INCLUDING PAUSE AND DETACH OPERATIONS AFTER FIRST DATA FETCH

    公开(公告)号:US20200311066A1

    公开(公告)日:2020-10-01

    申请号:US16370580

    申请日:2019-03-29

    Applicant: SAP SE

    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.

    OPTIMAL RANGES FOR RELATIONAL QUERY EXECUTION PLANS

    公开(公告)号:US20190266272A1

    公开(公告)日:2019-08-29

    申请号:US15904192

    申请日:2018-02-23

    Applicant: SAP SE

    Abstract: In some implementations, there is provided an apparatus having at least one data processor and at least one memory storing instructions which, when executed by the at least one data processor, cause executing at least a portion of a query execution plan; determining, at an edge including an intermediate result, a cardinality; proceeding with the execution of the query execution plan, when the determined cardinality is within an optimality range associated with the edge; and selecting an alternative query execution plan for execution, when the determined cardinality is outside the optimality range associated with the edge. Related systems and articles of manufacture are also provided.

    Query execution pipelining with pump operators

    公开(公告)号:US10372707B2

    公开(公告)日:2019-08-06

    申请号:US15363545

    申请日:2016-11-29

    Applicant: SAP SE

    Abstract: A system for query execution and planning with pipelining and pump operators is provided. In some implementations, the system performs operations comprising identifying a plurality of operators for executing a query, the plurality of operators including a first operator and a second operator, generating a pump operator when the first operator comprises a table scan operator, and/or generating a query plan for execution of the query, the query plan comprising the pump operator and the second operator. The operations can further include executing the pump operator to at least retrieve a portion of a database table, generate a first data portion based on the portion of the database table, and provide the first data portion for the second operator. Related systems, methods, and articles of manufacture are also described.

    ALLOCATION OF WORKER THREADS IN A PARALLELIZATION FRAMEWORK WITH RESULT STREAMING

    公开(公告)号:US20250045118A1

    公开(公告)日:2025-02-06

    申请号:US18924585

    申请日:2024-10-23

    Applicant: SAP SE

    Abstract: A method for allocating worker threads may include receiving a first fetch call for a query accessing a dataset stored at a database. The first fetch call may require a first portion of a result for the query. A first quantity of worker threads may be allocated to generate the first portion of the result for the query in response to the first fetch call. In response to a second fetch call for the query by determining a threshold corresponding to the first quantity of worker threads, a second quantity of data required for the second fetch call, and a third quantity of data buffered from the first fetch call. A second quantity of worker threads to generate a second portion of the result for the query may be allocated based on the threshold. Related systems and computer program products are also provided.

    DEEPEST-ONLY SCHEDULING
    47.
    发明申请

    公开(公告)号:US20250036627A1

    公开(公告)日:2025-01-30

    申请号:US18358270

    申请日:2023-07-25

    Applicant: SAP SE

    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.

    PIPELINE BYPASS FOR CERTAIN QUERY PLAN OPERATORS

    公开(公告)号:US20250028724A1

    公开(公告)日:2025-01-23

    申请号:US18354963

    申请日:2023-07-19

    Applicant: SAP SE

    Abstract: In some implementations, there is provided pipeline bypassing of certain operators. In some implementations, a method includes generating a query plan including at least one pipeline of operators; determining whether the at least one pipeline of operators includes a first operator that requires a complete result set as an input and further includes a second operator that supports providing the complete result set using a state identified by a state reference; and in response to determining the at least one pipeline of operators includes the first operator that requires the complete result set as the input and further includes the second operator that supports providing the complete result set using the state identified by the state reference, bypassing in the query plan pipelining between the first operator and the second operator.

    Custom table scan for top k queries

    公开(公告)号:US12204537B1

    公开(公告)日:2025-01-21

    申请号:US18355318

    申请日:2023-07-19

    Applicant: SAP SE

    Abstract: In some implementations, there is provided a method that includes receiving a query request including a top k query operator for query plan generation, optimization, and execution, wherein k defines a threshold limit of query results for the top k query operator; inserting into a query plan a check operator associated with the top k query operator; in response to executing the query plan, checking, by the check operator, whether an early exit occurs due to the top k query operator reaching the threshold limit; in response to the early exit occurring due to the top k query operator reaching the threshold limit, stopping processing, by the check operator, including opening of another fragment of a database table; and in response to the early exit not occurring, allowing, by the check operator, the opening of the other fragment of the database table.

    Heapsort in a parallel processing framework

    公开(公告)号:US12197453B2

    公开(公告)日:2025-01-14

    申请号:US18453605

    申请日:2023-08-22

    Applicant: SAP SE

    Abstract: A method for performing a parallelized heapsort operation may include updating, by a first worker thread, a first buffer while a second worker thread updates a second buffer in parallel. The first worker thread may update the first buffer by adding, to the first buffer, elements from a first partition of a dataset. The second worker thread may update the second buffer by adding, to the second buffer, elements from a second partition of the dataset. Upon the first buffer reaching a threshold size, the first worker thread may acquire a lock for the first worker thread to update a heap based on the first buffer while the second worker thread is prevented from updating the heap based on the second buffer. A result of a top k query comprising a k quantity of smallest elements from the dataset may be generated based on the heap.

Patent Agency Ranking