blob: e7a3684fb1331c62dc0ce6b61200227f0894f64d [file] [log] [blame]
explain
-------------------------------
SORT(6)
=> Sort Keys: default.lineitem.l_orderkey (INT4) (asc, nulls last),default.a.o_custkey (INT4) (asc, nulls last),default.part.p_name (TEXT) (asc, nulls last)
JOIN(12)(INNER)
=> Join Cond: default.lineitem.l_orderkey (INT4) = default.a.o_orderkey (INT4)
=> target list: default.a.o_custkey (INT4), default.lineitem.l_orderkey (INT4), default.part.p_name (TEXT)
=> out schema: {(3) default.a.o_custkey (INT4), default.lineitem.l_orderkey (INT4), default.part.p_name (TEXT)}
=> in schema: {(4) default.a.o_custkey (INT4), default.a.o_orderkey (INT4), default.lineitem.l_orderkey (INT4), default.part.p_name (TEXT)}
TABLE_SUBQUERY(4) as default.a
=> Targets: default.a.o_custkey (INT4), default.a.o_orderkey (INT4)
=> out schema: {(2) default.a.o_custkey (INT4), default.a.o_orderkey (INT4)}
=> in schema: {(2) default.a.o_custkey (INT4), default.a.o_orderkey (INT4)}
SCAN(2) on default.orders
=> target list: default.orders.o_custkey (INT4), default.orders.o_orderkey (INT4)
=> out schema: {(2) default.orders.o_custkey (INT4), default.orders.o_orderkey (INT4)}
=> in schema: {(9) default.orders.o_clerk (TEXT), default.orders.o_comment (TEXT), default.orders.o_custkey (INT4), default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderpriority (TEXT), default.orders.o_orderstatus (TEXT), default.orders.o_shippriority (INT4), default.orders.o_totalprice (FLOAT8)}
JOIN(11)(INNER)
=> Join Cond: default.lineitem.l_partkey (INT4) = default.part.p_partkey (INT4)
=> target list: default.lineitem.l_orderkey (INT4), default.part.p_name (TEXT)
=> out schema: {(2) default.lineitem.l_orderkey (INT4), default.part.p_name (TEXT)}
=> in schema: {(4) default.lineitem.l_orderkey (INT4), default.lineitem.l_partkey (INT4), default.part.p_name (TEXT), default.part.p_partkey (INT4)}
SCAN(1) on default.part
=> target list: default.part.p_name (TEXT), default.part.p_partkey (INT4)
=> out schema: {(2) default.part.p_name (TEXT), default.part.p_partkey (INT4)}
=> in schema: {(9) default.part.p_brand (TEXT), default.part.p_comment (TEXT), default.part.p_container (TEXT), default.part.p_mfgr (TEXT), default.part.p_name (TEXT), default.part.p_partkey (INT4), default.part.p_retailprice (FLOAT8), default.part.p_size (INT4), default.part.p_type (TEXT)}
SCAN(0) on default.lineitem
=> target list: default.lineitem.l_orderkey (INT4), default.lineitem.l_partkey (INT4)
=> out schema: {(2) default.lineitem.l_orderkey (INT4), default.lineitem.l_partkey (INT4)}
=> in schema: {(16) default.lineitem.l_comment (TEXT), default.lineitem.l_commitdate (TEXT), default.lineitem.l_discount (FLOAT8), default.lineitem.l_extendedprice (FLOAT8), default.lineitem.l_linenumber (INT4), default.lineitem.l_linestatus (TEXT), default.lineitem.l_orderkey (INT4), default.lineitem.l_partkey (INT4), default.lineitem.l_quantity (FLOAT8), default.lineitem.l_receiptdate (TEXT), default.lineitem.l_returnflag (TEXT), default.lineitem.l_shipdate (TEXT), default.lineitem.l_shipinstruct (TEXT), default.lineitem.l_shipmode (TEXT), default.lineitem.l_suppkey (INT4), default.lineitem.l_tax (FLOAT8)}
explain
-------------------------------
-------------------------------------------------------------------------------
Execution Block Graph (TERMINAL - eb_0000000000000_0000_000007)
-------------------------------------------------------------------------------
|-eb_0000000000000_0000_000007
|-eb_0000000000000_0000_000006
|-eb_0000000000000_0000_000005
|-eb_0000000000000_0000_000004
|-eb_0000000000000_0000_000003
|-eb_0000000000000_0000_000002
|-eb_0000000000000_0000_000001
-------------------------------------------------------------------------------
Order of Execution
-------------------------------------------------------------------------------
1: eb_0000000000000_0000_000001
2: eb_0000000000000_0000_000002
3: eb_0000000000000_0000_000003
4: eb_0000000000000_0000_000004
5: eb_0000000000000_0000_000005
6: eb_0000000000000_0000_000006
7: eb_0000000000000_0000_000007
-------------------------------------------------------------------------------
=======================================================
Block Id: eb_0000000000000_0000_000001 [LEAF]
=======================================================
[Outgoing]
[q_0000000000000_0000] 1 => 3 (type=HASH_SHUFFLE, key=default.lineitem.l_partkey (INT4), num=32)
SCAN(0) on default.lineitem
=> target list: default.lineitem.l_orderkey (INT4), default.lineitem.l_partkey (INT4)
=> out schema: {(2) default.lineitem.l_orderkey (INT4), default.lineitem.l_partkey (INT4)}
=> in schema: {(16) default.lineitem.l_comment (TEXT), default.lineitem.l_commitdate (TEXT), default.lineitem.l_discount (FLOAT8), default.lineitem.l_extendedprice (FLOAT8), default.lineitem.l_linenumber (INT4), default.lineitem.l_linestatus (TEXT), default.lineitem.l_orderkey (INT4), default.lineitem.l_partkey (INT4), default.lineitem.l_quantity (FLOAT8), default.lineitem.l_receiptdate (TEXT), default.lineitem.l_returnflag (TEXT), default.lineitem.l_shipdate (TEXT), default.lineitem.l_shipinstruct (TEXT), default.lineitem.l_shipmode (TEXT), default.lineitem.l_suppkey (INT4), default.lineitem.l_tax (FLOAT8)}
=======================================================
Block Id: eb_0000000000000_0000_000002 [LEAF]
=======================================================
[Outgoing]
[q_0000000000000_0000] 2 => 3 (type=HASH_SHUFFLE, key=default.part.p_partkey (INT4), num=32)
SCAN(1) on default.part
=> target list: default.part.p_name (TEXT), default.part.p_partkey (INT4)
=> out schema: {(2) default.part.p_name (TEXT), default.part.p_partkey (INT4)}
=> in schema: {(9) default.part.p_brand (TEXT), default.part.p_comment (TEXT), default.part.p_container (TEXT), default.part.p_mfgr (TEXT), default.part.p_name (TEXT), default.part.p_partkey (INT4), default.part.p_retailprice (FLOAT8), default.part.p_size (INT4), default.part.p_type (TEXT)}
=======================================================
Block Id: eb_0000000000000_0000_000003 [INTERMEDIATE]
=======================================================
[Incoming]
[q_0000000000000_0000] 1 => 3 (type=HASH_SHUFFLE, key=default.lineitem.l_partkey (INT4), num=32)
[q_0000000000000_0000] 2 => 3 (type=HASH_SHUFFLE, key=default.part.p_partkey (INT4), num=32)
[Outgoing]
[q_0000000000000_0000] 3 => 5 (type=HASH_SHUFFLE, key=default.lineitem.l_orderkey (INT4), num=32)
JOIN(11)(INNER)
=> Join Cond: default.lineitem.l_partkey (INT4) = default.part.p_partkey (INT4)
=> target list: default.lineitem.l_orderkey (INT4), default.part.p_name (TEXT)
=> out schema: {(2) default.lineitem.l_orderkey (INT4), default.part.p_name (TEXT)}
=> in schema: {(4) default.lineitem.l_orderkey (INT4), default.lineitem.l_partkey (INT4), default.part.p_name (TEXT), default.part.p_partkey (INT4)}
SCAN(15) on eb_0000000000000_0000_000002
=> out schema: {(2) default.part.p_name (TEXT), default.part.p_partkey (INT4)}
=> in schema: {(2) default.part.p_name (TEXT), default.part.p_partkey (INT4)}
SCAN(14) on eb_0000000000000_0000_000001
=> out schema: {(2) default.lineitem.l_orderkey (INT4), default.lineitem.l_partkey (INT4)}
=> in schema: {(2) default.lineitem.l_orderkey (INT4), default.lineitem.l_partkey (INT4)}
=======================================================
Block Id: eb_0000000000000_0000_000004 [LEAF]
=======================================================
[Outgoing]
[q_0000000000000_0000] 4 => 5 (type=HASH_SHUFFLE, key=default.a.o_orderkey (INT4), num=32)
TABLE_SUBQUERY(4) as default.a
=> Targets: default.a.o_custkey (INT4), default.a.o_orderkey (INT4)
=> out schema: {(2) default.a.o_custkey (INT4), default.a.o_orderkey (INT4)}
=> in schema: {(2) default.a.o_custkey (INT4), default.a.o_orderkey (INT4)}
PROJECTION(3)
=> Targets: default.orders.o_orderkey (INT4), default.orders.o_custkey (INT4)
=> out schema: {(2) default.orders.o_custkey (INT4), default.orders.o_orderkey (INT4)}
=> in schema: {(2) default.orders.o_custkey (INT4), default.orders.o_orderkey (INT4)}
SCAN(2) on default.orders
=> target list: default.orders.o_custkey (INT4), default.orders.o_orderkey (INT4)
=> out schema: {(2) default.orders.o_custkey (INT4), default.orders.o_orderkey (INT4)}
=> in schema: {(9) default.orders.o_clerk (TEXT), default.orders.o_comment (TEXT), default.orders.o_custkey (INT4), default.orders.o_orderdate (TEXT), default.orders.o_orderkey (INT4), default.orders.o_orderpriority (TEXT), default.orders.o_orderstatus (TEXT), default.orders.o_shippriority (INT4), default.orders.o_totalprice (FLOAT8)}
=======================================================
Block Id: eb_0000000000000_0000_000005 [INTERMEDIATE]
=======================================================
[Incoming]
[q_0000000000000_0000] 3 => 5 (type=HASH_SHUFFLE, key=default.lineitem.l_orderkey (INT4), num=32)
[q_0000000000000_0000] 4 => 5 (type=HASH_SHUFFLE, key=default.a.o_orderkey (INT4), num=32)
[Outgoing]
[q_0000000000000_0000] 5 => 6 (type=RANGE_SHUFFLE, key=default.a.o_custkey (INT4), default.lineitem.l_orderkey (INT4), default.part.p_name (TEXT), num=32)
SORT(18)
=> Sort Keys: default.lineitem.l_orderkey (INT4) (asc, nulls last),default.a.o_custkey (INT4) (asc, nulls last),default.part.p_name (TEXT) (asc, nulls last)
JOIN(12)(INNER)
=> Join Cond: default.lineitem.l_orderkey (INT4) = default.a.o_orderkey (INT4)
=> target list: default.a.o_custkey (INT4), default.lineitem.l_orderkey (INT4), default.part.p_name (TEXT)
=> out schema: {(3) default.a.o_custkey (INT4), default.lineitem.l_orderkey (INT4), default.part.p_name (TEXT)}
=> in schema: {(4) default.a.o_custkey (INT4), default.a.o_orderkey (INT4), default.lineitem.l_orderkey (INT4), default.part.p_name (TEXT)}
SCAN(17) on eb_0000000000000_0000_000004
=> out schema: {(2) default.a.o_custkey (INT4), default.a.o_orderkey (INT4)}
=> in schema: {(2) default.a.o_custkey (INT4), default.a.o_orderkey (INT4)}
SCAN(16) on eb_0000000000000_0000_000003
=> out schema: {(2) default.lineitem.l_orderkey (INT4), default.part.p_name (TEXT)}
=> in schema: {(2) default.lineitem.l_orderkey (INT4), default.part.p_name (TEXT)}
=======================================================
Block Id: eb_0000000000000_0000_000006 [ROOT]
=======================================================
[Incoming]
[q_0000000000000_0000] 5 => 6 (type=RANGE_SHUFFLE, key=default.a.o_custkey (INT4), default.lineitem.l_orderkey (INT4), default.part.p_name (TEXT), num=32)
[Enforcers]
0: sorted input=eb_0000000000000_0000_000005
SORT(6)
=> Sort Keys: default.lineitem.l_orderkey (INT4) (asc, nulls last),default.a.o_custkey (INT4) (asc, nulls last),default.part.p_name (TEXT) (asc, nulls last)
SCAN(19) on eb_0000000000000_0000_000005
=> out schema: {(3) default.a.o_custkey (INT4), default.lineitem.l_orderkey (INT4), default.part.p_name (TEXT)}
=> in schema: {(3) default.a.o_custkey (INT4), default.lineitem.l_orderkey (INT4), default.part.p_name (TEXT)}
=======================================================
Block Id: eb_0000000000000_0000_000007 [TERMINAL]
=======================================================