-
公开(公告)号:US10733186B2
公开(公告)日:2020-08-04
申请号:US15266751
申请日:2016-09-15
Applicant: Oracle International Corporation
Inventor: Angela Amor , Andrew Witkowski , Srikanth Bondalapati , Sankar Subramanian
IPC: G06F16/2453 , G06F16/22 , G06F16/2455
Abstract: Techniques are described herein for processing queries comprising joins specifying a plurality of tables. The techniques involve partitioning the tables by assigning rows to partitions. One or more partition maps may be generated to indicate the partitions. Subsequent tables may be partitioned based on the generated partition maps. The partitions may be used to determine results for the joins.
-
公开(公告)号:US20240126757A1
公开(公告)日:2024-04-18
申请号:US17966036
申请日:2022-10-14
Applicant: Oracle International Corporation
Inventor: Rafi Ahmed , Angela Amor , Mohamed Ziauddin
IPC: G06F16/2453
CPC classification number: G06F16/24544 , G06F16/24535 , G06F16/24537
Abstract: A new type of table join operation, outer semi join (OSJ), is provided, which can be used by an optimizer layer and an execution layer of a database management system (DBMS). OSJ combines the semantics of both left outer-join and semi-join. The concept of an anti-join marker (AJM) is also introduced, which specifies whether a matching row was not found between joined tables for each result row in an OSJ operation. The OSJ operation supports unnesting of a class of disjunctive ANY, ALL, EXISTS, NOT EXISTS, IN, and NOT IN subqueries for execution plan optimization. The disjunction may contain filter predicates. For unnesting, OSJ avoids the need of using a distinct operator on the right table and also supports using inequality (e.g. >, >=,
-
公开(公告)号:US10572475B2
公开(公告)日:2020-02-25
申请号:US15713365
申请日:2017-09-22
Applicant: Oracle International Corporation
Inventor: Huagang Li , Angela Amor , Sankar Subramanian , Chun-Chieh Lin , Vinita Subramanian
IPC: G06F7/00 , G06F17/30 , G06F16/2453 , G06F16/23 , G06F16/2455
Abstract: Techniques are described for leveraging column dictionaries of tables for join, group-by and expression evaluation operations. In an embodiment, a table is stored in one or more data units, each data unit's metadata containing dictionaries for stored columns. Rather than storing unencoded column values, the data units may store columns as column vectors of dictionary-encoded values, in an embodiment. When performing a join operation, a matching of values may be performed on the build-side table using the unencoded, unencoded, values stored in the join-key dictionary(s) of the probe-side table, thus, significantly reducing the number of searching and matching operations. In an embodiment, a group-by operation may be executed by performing partial aggregations based on unique group-by key values as stored in the one or more group-by key dictionaries. For an expression evaluation, only a single evaluation may be performed for each unique combination of expression-key values in a data unit by leveraging the one or more expression-key dictionaries.
-
公开(公告)号:US12197439B2
公开(公告)日:2025-01-14
申请号:US17966036
申请日:2022-10-14
Applicant: Oracle International Corporation
Inventor: Rafi Ahmed , Angela Amor , Mohamed Ziauddin
IPC: G06F16/2453
Abstract: A new type of table join operation, outer semi join (OSJ), is provided, which can be used by an optimizer layer and an execution layer of a database management system (DBMS). OSJ combines the semantics of both left outer-join and semi-join. The concept of an anti-join marker (AJM) is also introduced, which specifies whether a matching row was not found between joined tables for each result row in an OSJ operation. The OSJ operation supports unnesting of a class of disjunctive ANY, ALL, EXISTS, NOT EXISTS, IN, and NOT IN subqueries for execution plan optimization. The disjunction may contain filter predicates. For unnesting, OSJ avoids the need of using a distinct operator on the right table and also supports using inequality (e.g. >, >=,
-
公开(公告)号:US20180075101A1
公开(公告)日:2018-03-15
申请号:US15266751
申请日:2016-09-15
Applicant: Oracle International Corporation
Inventor: Angela Amor , Andrew Witkowski , Srikanth Bondalapati , Sankar Subramanian
IPC: G06F17/30
Abstract: Techniques are described herein for processing queries comprising joins specifying a plurality of tables. The techniques involve partitioning the tables by assigning rows to partitions. One or more partition maps may be generated to indicate the partitions. Subsequent tables may be partitioned based on the generated partition maps. The partitions may be used to determine results for the joins.
-
-
-
-