Table scan predicate with integrated semi-join filter

    公开(公告)号:US12099490B2

    公开(公告)日:2024-09-24

    申请号:US17751296

    申请日:2022-05-23

    申请人: SAP SE

    摘要: 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.

    PARTITION-LOCAL PARTITION VALUE IDENTIFIER GROUPING

    公开(公告)号:US20240086426A1

    公开(公告)日:2024-03-14

    申请号:US18515898

    申请日:2023-11-21

    申请人: SAP SE

    IPC分类号: G06F16/28 G06F16/27

    CPC分类号: G06F16/285 G06F16/278

    摘要: 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.

    Partition-local partition value identifier grouping

    公开(公告)号:US11860906B2

    公开(公告)日:2024-01-02

    申请号:US17745741

    申请日:2022-05-16

    申请人: SAP SE

    IPC分类号: G06F16/00 G06F16/28 G06F16/27

    CPC分类号: G06F16/285 G06F16/278

    摘要: 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.

    DYNAMICALLY GENERATED OPERATIONS IN A PARALLEL PROCESSING FRAMEWORK

    公开(公告)号:US20230359620A1

    公开(公告)日:2023-11-09

    申请号:US17735493

    申请日:2022-05-03

    申请人: SAP SE

    摘要: 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.

    TELEMETRY FOR QUERY PROCESSING MEMORY USAGE
    5.
    发明公开

    公开(公告)号:US20230281195A1

    公开(公告)日:2023-09-07

    申请号:US17687262

    申请日:2022-03-04

    申请人: SAP SE

    发明人: Till Merker

    IPC分类号: G06F16/245 G06F9/50 G06F16/18

    摘要: 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.

    RELEASE OF LATCHES FOR GARBAGE COLLECTION
    7.
    发明申请

    公开(公告)号:US20200311069A1

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

    申请号:US16371609

    申请日:2019-04-01

    申请人: SAP SE

    IPC分类号: G06F16/2458 G06F9/52

    摘要: A query is received at a database execution engine. The query is executed by the database execution engine, the executing including executing one or more threads that operate on versions of data of the delta fragment; acquiring and releasing, by a first thread, a latch on a first version of the data of the delta fragment, the releasing is performed prior to the first thread entering a wait state; and reclaiming the first version of the data of the delta fragment from memory and during execution of the query. Related systems, methods, and articles of manufacture are also described.

    Query plan generation for precompiled and code generating query operations

    公开(公告)号:US10423619B2

    公开(公告)日:2019-09-24

    申请号:US15363380

    申请日:2016-11-29

    申请人: SAP SE

    IPC分类号: G06F16/2453

    摘要: A system for generating a query plan is provided. In some implementations, the system performs operations comprising: translating, into corresponding code, a query operation in a query plan comprising a sequence of query operations; determining a context for the translating of the query operation, the context corresponding to whether the query operation comprises a pre-compiled query operation or a code-generating query operation; and inserting adaptor code between code for the query operation and code for one or more previous query operations in the sequence of query operations, when a change in context is detected between the translating of the query operation and a translation of the one or more previous query operations. Related methods and articles of manufacture are also described.

    Blocked index join
    9.
    发明授权

    公开(公告)号:US12105709B2

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

    申请号:US17740151

    申请日:2022-05-09

    申请人: SAP SE

    发明人: Till Merker

    IPC分类号: G06F16/2453 G06F16/245

    摘要: 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.

    Global index with repartitioning operator

    公开(公告)号:US11977582B2

    公开(公告)日:2024-05-07

    申请号:US17741328

    申请日:2022-05-10

    申请人: SAP SE

    IPC分类号: G06F16/90 G06F16/903

    CPC分类号: G06F16/90335

    摘要: 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.