Calcite - Physical Plan

Card Puncher Data Processing


Sql Engine - (Physical|Execution) Plan in calcite.

The physical plan is the relation algebra expression that describe how to perform the operation on the data. It's the output of the optimizer


Example of output of a physical_plan (There is no node that starts with the term logical, otherwise, it's a logical_plan)

  1627:EnumerableHashJoin(condition=[=($1, $5)], joinType=[inner])
    1626:EnumerableFilter(condition=[=($0, 100)])
      94:EnumerableTableScan(table=[[HR, emps]])
    92:EnumerableTableScan(table=[[HR, depts]])



As the physical plan is a relational expression, see relation expression print


Explain is just another term for printing.

Recommended Pages
Card Puncher Data Processing
Calcite - Getting Started (from Sql to Resultset)

A getting started page that shows a query planning process (ie from sql to resultset process) gerardnico/calcite/blob/master/src/test/java/com/gerardnico/calcite/
Card Puncher Data Processing
Calcite - Query Planning Process (Sql Processing)

in Calcite The query planning process is the entire process that takes a SQL to a result. The process can be resumed as follow: Phase 1: The Sql statement (Query) is parsed to build a parse tree...
Card Puncher Data Processing
Calcite - Relational Expression (RelNode, Algebra)

Relational Algebra in Calcite A relational expression is represented by a tree of RelNode. A RelNode can be considered as the same logic than the Spark dataframe. TableScan Project Filter...

Share this page:
Follow us:
Task Runner