-
Notifications
You must be signed in to change notification settings - Fork 5.4k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Enable logical property propagation by default
- Loading branch information
1 parent
4f91dee
commit 54ffa28
Showing
9 changed files
with
93 additions
and
21 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
32 changes: 32 additions & 0 deletions
32
presto-docs/src/main/sphinx/optimizer/logical-properties.rst
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
================================= | ||
Logical Properties of Query Plans | ||
================================= | ||
|
||
Presto implements a framework for associating logical properties with the | ||
result sets produced by the nodes of a query plan. These logical properties | ||
might either derive from constraints defined on tables, or from | ||
operations performed by intermediate nodes in the query plan such as | ||
aggregations, limits, or the application of predicates. The Presto optimizer | ||
may then use these logical properties to perform optimizations such as | ||
removing redundant operations or other logical transformations. | ||
|
||
The propagation of logical properties in query plans is enabled by the | ||
``exploit_constraints`` session property or ``optimizer.exploit_constraints`` | ||
configuration property set in ``etc/config.properties`` of the coordinator. | ||
Logical property propagation is enabled by default. | ||
|
||
|
||
Types of Logical Properties | ||
--------------------------- | ||
|
||
Presto detects and propagates the following logical properties: | ||
|
||
* ``KeyProperty`` - A collection of distinct attributes that hold for | ||
a final or intermediate result set produced by a plan node. | ||
|
||
* ``MaxCardProperty`` - A provable maximum number of rows in a final or | ||
intermediate result set produced by a plan node. | ||
|
||
* ``EquivalenceClassProperty`` - Classes of equivalent variable and | ||
constant references that hold for a final or intermediate result set produced | ||
by a plan node. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters