Skip to content

Instantly share code, notes, and snippets.

@aaneja
Last active September 25, 2023 09:14
Show Gist options
  • Save aaneja/3c6b0887f97fc2b084b63e95cdfe15d1 to your computer and use it in GitHub Desktop.
Save aaneja/3c6b0887f97fc2b084b63e95cdfe15d1 to your computer and use it in GitHub Desktop.
TPCDS Q9 with and without connector filter pushdown
2023-09-25T14:32:22.405+0530 INFO Query-20230925_090220_00000_asxxc-1169 com.facebook.presto.sql.planner.optimizations.LogPlanTreeOptimizer ------ Before ApplyConnectorOptimization
2023-09-25T14:32:22.409+0530 INFO Query-20230925_090220_00000_asxxc-1169 com.facebook.presto.sql.planner.optimizations.LogPlanTreeOptimizer Plan :
project, Assignments ({expr_449=SWITCH(true, WHEN(GREATER_THAN(count, 74129), avg), avg_64), expr_450=SWITCH(true, WHEN(GREATER_THAN(count_95, 122840), avg_127), avg_159), expr_451=SWITCH(true, WHEN(GREATER_THAN(count_190, 56580), avg_222), avg_254), expr_452=SWITCH(true, WHEN(GREATER_THAN(count_285, 10097), avg_317), avg_349), expr_453=SWITCH(true, WHEN(GREATER_THAN(count_380, 165306), avg_412), avg_444)}), Outputs ([expr_449, expr_450, expr_451, expr_452, expr_453]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317, avg_349, count_380, avg_412, avg_444]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317, avg_349, count_380, avg_412]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317, avg_349, count_380]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317, avg_349]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count]):
filter (predicate = EQUAL(r_reason_sk, 1))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=reason, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({}), Outputs ([]):
filter (predicate = BETWEEN(ss_quantity, 1, 20))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_ext_discount_amt_20=ss_ext_discount_amt_20}), Outputs ([ss_ext_discount_amt_20]):
filter (predicate = BETWEEN(ss_quantity_16, 1, 20))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_net_paid_57=ss_net_paid_57}), Outputs ([ss_net_paid_57]):
filter (predicate = BETWEEN(ss_quantity_47, 1, 20))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({}), Outputs ([]):
filter (predicate = BETWEEN(ss_quantity_79, 21, 40))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_ext_discount_amt_114=ss_ext_discount_amt_114}), Outputs ([ss_ext_discount_amt_114]):
filter (predicate = BETWEEN(ss_quantity_110, 21, 40))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_net_paid_152=ss_net_paid_152}), Outputs ([ss_net_paid_152]):
filter (predicate = BETWEEN(ss_quantity_142, 21, 40))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({}), Outputs ([]):
filter (predicate = BETWEEN(ss_quantity_174, 41, 60))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_ext_discount_amt_209=ss_ext_discount_amt_209}), Outputs ([ss_ext_discount_amt_209]):
filter (predicate = BETWEEN(ss_quantity_205, 41, 60))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_net_paid_247=ss_net_paid_247}), Outputs ([ss_net_paid_247]):
filter (predicate = BETWEEN(ss_quantity_237, 41, 60))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({}), Outputs ([]):
filter (predicate = BETWEEN(ss_quantity_269, 61, 80))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_ext_discount_amt_304=ss_ext_discount_amt_304}), Outputs ([ss_ext_discount_amt_304]):
filter (predicate = BETWEEN(ss_quantity_300, 61, 80))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_net_paid_342=ss_net_paid_342}), Outputs ([ss_net_paid_342]):
filter (predicate = BETWEEN(ss_quantity_332, 61, 80))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({}), Outputs ([]):
filter (predicate = BETWEEN(ss_quantity_364, 81, 100))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_ext_discount_amt_399=ss_ext_discount_amt_399}), Outputs ([ss_ext_discount_amt_399]):
filter (predicate = BETWEEN(ss_quantity_395, 81, 100))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_net_paid_437=ss_net_paid_437}), Outputs ([ss_net_paid_437]):
filter (predicate = BETWEEN(ss_quantity_427, 81, 100))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
2023-09-25T14:32:22.545+0530 INFO Query-20230925_090220_00000_asxxc-1169 com.facebook.presto.sql.planner.optimizations.LogPlanTreeOptimizer ------ After ApplyConnectorOptimization
2023-09-25T14:32:22.549+0530 INFO Query-20230925_090220_00000_asxxc-1169 com.facebook.presto.sql.planner.optimizations.LogPlanTreeOptimizer Plan :
project, Assignments ({expr_449=SWITCH(true, WHEN(GREATER_THAN(count, 74129), avg), avg_64), expr_450=SWITCH(true, WHEN(GREATER_THAN(count_95, 122840), avg_127), avg_159), expr_451=SWITCH(true, WHEN(GREATER_THAN(count_190, 56580), avg_222), avg_254), expr_452=SWITCH(true, WHEN(GREATER_THAN(count_285, 10097), avg_317), avg_349), expr_453=SWITCH(true, WHEN(GREATER_THAN(count_380, 165306), avg_412), avg_444)}), Outputs ([expr_449, expr_450, expr_451, expr_452, expr_453]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317, avg_349, count_380, avg_412, avg_444]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317, avg_349, count_380, avg_412]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317, avg_349, count_380]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317, avg_349]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95, avg_127, avg_159, count_190]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95, avg_127, avg_159]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95, avg_127]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count]):
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=reason, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{r_reason_sk:bigint:0:REGULAR=com.facebook.presto.common.predicate.Domain@56ba198}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({}), Outputs ([]):
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@144786dd}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_ext_discount_amt_20=ss_ext_discount_amt_20}), Outputs ([ss_ext_discount_amt_20]):
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@144786dd}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_net_paid_57=ss_net_paid_57}), Outputs ([ss_net_paid_57]):
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@144786dd}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({}), Outputs ([]):
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@d922f499}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_ext_discount_amt_114=ss_ext_discount_amt_114}), Outputs ([ss_ext_discount_amt_114]):
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@d922f499}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_net_paid_152=ss_net_paid_152}), Outputs ([ss_net_paid_152]):
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@d922f499}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({}), Outputs ([]):
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@1a99ad6c}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_ext_discount_amt_209=ss_ext_discount_amt_209}), Outputs ([ss_ext_discount_amt_209]):
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@1a99ad6c}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_net_paid_247=ss_net_paid_247}), Outputs ([ss_net_paid_247]):
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@1a99ad6c}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({}), Outputs ([]):
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@f89d2da8}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_ext_discount_amt_304=ss_ext_discount_amt_304}), Outputs ([ss_ext_discount_amt_304]):
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@f89d2da8}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_net_paid_342=ss_net_paid_342}), Outputs ([ss_net_paid_342]):
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@f89d2da8}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({}), Outputs ([]):
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@45673573}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_ext_discount_amt_399=ss_ext_discount_amt_399}), Outputs ([ss_ext_discount_amt_399]):
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@45673573}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_net_paid_437=ss_net_paid_437}), Outputs ([ss_net_paid_437]):
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@45673573}]), Enforced(Optional[{}])]
2023-09-25T14:32:23.372+0530 INFO Query-20230925_090220_00000_asxxc-1169 com.facebook.presto.sql.planner.optimizations.LogPlanTreeOptimizer ------ Before AddExchanges
2023-09-25T14:32:23.374+0530 INFO Query-20230925_090220_00000_asxxc-1169 com.facebook.presto.sql.planner.optimizations.LogPlanTreeOptimizer Plan :
project, Assignments ({expr_449=SWITCH(true, WHEN(GREATER_THAN(count, 74129), avg), avg_64), expr_450=SWITCH(true, WHEN(GREATER_THAN(count_95, 122840), avg_127), avg_159), expr_451=SWITCH(true, WHEN(GREATER_THAN(count_190, 56580), avg_222), avg_254), expr_452=SWITCH(true, WHEN(GREATER_THAN(count_285, 10097), avg_317), avg_349), expr_453=SWITCH(true, WHEN(GREATER_THAN(count_380, 165306), avg_412), avg_444)}), Outputs ([expr_449, expr_450, expr_451, expr_452, expr_453]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317, avg_349, count_380, avg_412, avg_444]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317, avg_349, count_380, avg_412]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317, avg_349, count_380]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317, avg_349]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95, avg_127, avg_159, count_190]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95, avg_127, avg_159]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95, avg_127]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count]):
single aggregation over ()
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@144786dd}]), Enforced(Optional[{}])]
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=reason, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{r_reason_sk:bigint:0:REGULAR=com.facebook.presto.common.predicate.Domain@56ba198}]), Enforced(Optional[{}])]
single aggregation over ()
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@144786dd}]), Enforced(Optional[{}])]
single aggregation over ()
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@144786dd}]), Enforced(Optional[{}])]
single aggregation over ()
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@d922f499}]), Enforced(Optional[{}])]
single aggregation over ()
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@d922f499}]), Enforced(Optional[{}])]
single aggregation over ()
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@d922f499}]), Enforced(Optional[{}])]
single aggregation over ()
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@1a99ad6c}]), Enforced(Optional[{}])]
single aggregation over ()
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@1a99ad6c}]), Enforced(Optional[{}])]
single aggregation over ()
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@1a99ad6c}]), Enforced(Optional[{}])]
single aggregation over ()
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@f89d2da8}]), Enforced(Optional[{}])]
single aggregation over ()
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@f89d2da8}]), Enforced(Optional[{}])]
single aggregation over ()
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@f89d2da8}]), Enforced(Optional[{}])]
single aggregation over ()
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@45673573}]), Enforced(Optional[{}])]
single aggregation over ()
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@45673573}]), Enforced(Optional[{}])]
single aggregation over ()
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@45673573}]), Enforced(Optional[{}])]
2023-09-25T14:32:23.530+0530 INFO Query-20230925_090220_00000_asxxc-1169 com.facebook.presto.sql.planner.optimizations.LogPlanTreeOptimizer ------ After AddExchanges
2023-09-25T14:32:23.533+0530 INFO Query-20230925_090220_00000_asxxc-1169 com.facebook.presto.sql.planner.optimizations.LogPlanTreeOptimizer Plan :
project, Assignments ({expr_449=SWITCH(true, WHEN(GREATER_THAN(count, 74129), avg), avg_64), expr_450=SWITCH(true, WHEN(GREATER_THAN(count_95, 122840), avg_127), avg_159), expr_451=SWITCH(true, WHEN(GREATER_THAN(count_190, 56580), avg_222), avg_254), expr_452=SWITCH(true, WHEN(GREATER_THAN(count_285, 10097), avg_317), avg_349), expr_453=SWITCH(true, WHEN(GREATER_THAN(count_380, 165306), avg_412), avg_444)}), Outputs ([expr_449, expr_450, expr_451, expr_452, expr_453]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317, avg_349, count_380, avg_412, avg_444]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317, avg_349, count_380, avg_412]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317, avg_349, count_380]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317, avg_349]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95, avg_127, avg_159, count_190]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95, avg_127, avg_159]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95, avg_127]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64, count_95]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg, avg_64]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count, avg]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([count]):
single aggregation over ()
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=SINGLE, arguments=[]}, outputLayout=[], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@144786dd}]), Enforced(Optional[{}])]
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=SINGLE, arguments=[]}, outputLayout=[], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=reason, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{r_reason_sk:bigint:0:REGULAR=com.facebook.presto.common.predicate.Domain@56ba198}]), Enforced(Optional[{}])]
single aggregation over ()
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=SINGLE, arguments=[]}, outputLayout=[ss_ext_discount_amt_20], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@144786dd}]), Enforced(Optional[{}])]
single aggregation over ()
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=SINGLE, arguments=[]}, outputLayout=[ss_net_paid_57], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@144786dd}]), Enforced(Optional[{}])]
single aggregation over ()
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=SINGLE, arguments=[]}, outputLayout=[], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@d922f499}]), Enforced(Optional[{}])]
single aggregation over ()
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=SINGLE, arguments=[]}, outputLayout=[ss_ext_discount_amt_114], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@d922f499}]), Enforced(Optional[{}])]
single aggregation over ()
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=SINGLE, arguments=[]}, outputLayout=[ss_net_paid_152], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@d922f499}]), Enforced(Optional[{}])]
single aggregation over ()
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=SINGLE, arguments=[]}, outputLayout=[], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@1a99ad6c}]), Enforced(Optional[{}])]
single aggregation over ()
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=SINGLE, arguments=[]}, outputLayout=[ss_ext_discount_amt_209], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@1a99ad6c}]), Enforced(Optional[{}])]
single aggregation over ()
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=SINGLE, arguments=[]}, outputLayout=[ss_net_paid_247], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@1a99ad6c}]), Enforced(Optional[{}])]
single aggregation over ()
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=SINGLE, arguments=[]}, outputLayout=[], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@f89d2da8}]), Enforced(Optional[{}])]
single aggregation over ()
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=SINGLE, arguments=[]}, outputLayout=[ss_ext_discount_amt_304], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@f89d2da8}]), Enforced(Optional[{}])]
single aggregation over ()
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=SINGLE, arguments=[]}, outputLayout=[ss_net_paid_342], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@f89d2da8}]), Enforced(Optional[{}])]
single aggregation over ()
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=SINGLE, arguments=[]}, outputLayout=[], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@45673573}]), Enforced(Optional[{}])]
single aggregation over ()
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=SINGLE, arguments=[]}, outputLayout=[ss_ext_discount_amt_399], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@45673573}]), Enforced(Optional[{}])]
single aggregation over ()
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=SINGLE, arguments=[]}, outputLayout=[ss_net_paid_437], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{ss_quantity:int:10:REGULAR=com.facebook.presto.common.predicate.Domain@45673573}]), Enforced(Optional[{}])]
2023-09-25T14:32:24.435+0530 INFO Query-20230925_090220_00000_asxxc-1173 com.facebook.presto.sql.planner.optimizations.LogPlanTreeOptimizer ------ Before ApplyConnectorOptimization
2023-09-25T14:32:24.436+0530 INFO Query-20230925_090220_00000_asxxc-1173 com.facebook.presto.sql.planner.optimizations.LogPlanTreeOptimizer Plan :
2023-09-25T14:32:24.436+0530 INFO Query-20230925_090220_00000_asxxc-1173 com.facebook.presto.sql.planner.optimizations.LogPlanTreeOptimizer ------ After ApplyConnectorOptimization
2023-09-25T14:32:24.436+0530 INFO Query-20230925_090220_00000_asxxc-1173 com.facebook.presto.sql.planner.optimizations.LogPlanTreeOptimizer Plan :
2023-09-25T14:32:24.437+0530 INFO Query-20230925_090220_00000_asxxc-1173 com.facebook.presto.sql.planner.optimizations.LogPlanTreeOptimizer ------ Before AddExchanges
2023-09-25T14:32:24.437+0530 INFO Query-20230925_090220_00000_asxxc-1173 com.facebook.presto.sql.planner.optimizations.LogPlanTreeOptimizer Plan :
2023-09-25T14:32:24.437+0530 INFO Query-20230925_090220_00000_asxxc-1173 com.facebook.presto.sql.planner.optimizations.LogPlanTreeOptimizer ------ After AddExchanges
2023-09-25T14:32:24.437+0530 INFO Query-20230925_090220_00000_asxxc-1173 com.facebook.presto.sql.planner.optimizations.LogPlanTreeOptimizer Plan :
2023-09-25T14:33:40.440+0530 INFO Query-20230925_090340_00002_asxxc-1212 com.facebook.presto.sql.planner.optimizations.LogPlanTreeOptimizer ------ Before ApplyConnectorOptimization
2023-09-25T14:33:40.441+0530 INFO Query-20230925_090340_00002_asxxc-1212 com.facebook.presto.sql.planner.optimizations.LogPlanTreeOptimizer Plan :
project, Assignments ({expr_449=SWITCH(true, WHEN(GREATER_THAN(count, 74129), avg), avg_64), expr_450=SWITCH(true, WHEN(GREATER_THAN(count_95, 122840), avg_127), avg_159), expr_451=SWITCH(true, WHEN(GREATER_THAN(count_190, 56580), avg_222), avg_254), expr_452=SWITCH(true, WHEN(GREATER_THAN(count_285, 10097), avg_317), avg_349), expr_453=SWITCH(true, WHEN(GREATER_THAN(count_380, 165306), avg_412), avg_444)}), Outputs ([expr_449, expr_450, expr_451, expr_452, expr_453]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317, avg_349, count_380, avg_412, avg_444]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317, avg_349, count_380, avg_412]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317, avg_349, count_380]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317, avg_349]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count]):
filter (predicate = EQUAL(r_reason_sk, 1))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=reason, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({}), Outputs ([]):
filter (predicate = BETWEEN(ss_quantity, 1, 20))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_ext_discount_amt_20=ss_ext_discount_amt_20}), Outputs ([ss_ext_discount_amt_20]):
filter (predicate = BETWEEN(ss_quantity_16, 1, 20))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_net_paid_57=ss_net_paid_57}), Outputs ([ss_net_paid_57]):
filter (predicate = BETWEEN(ss_quantity_47, 1, 20))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({}), Outputs ([]):
filter (predicate = BETWEEN(ss_quantity_79, 21, 40))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_ext_discount_amt_114=ss_ext_discount_amt_114}), Outputs ([ss_ext_discount_amt_114]):
filter (predicate = BETWEEN(ss_quantity_110, 21, 40))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_net_paid_152=ss_net_paid_152}), Outputs ([ss_net_paid_152]):
filter (predicate = BETWEEN(ss_quantity_142, 21, 40))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({}), Outputs ([]):
filter (predicate = BETWEEN(ss_quantity_174, 41, 60))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_ext_discount_amt_209=ss_ext_discount_amt_209}), Outputs ([ss_ext_discount_amt_209]):
filter (predicate = BETWEEN(ss_quantity_205, 41, 60))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_net_paid_247=ss_net_paid_247}), Outputs ([ss_net_paid_247]):
filter (predicate = BETWEEN(ss_quantity_237, 41, 60))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({}), Outputs ([]):
filter (predicate = BETWEEN(ss_quantity_269, 61, 80))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_ext_discount_amt_304=ss_ext_discount_amt_304}), Outputs ([ss_ext_discount_amt_304]):
filter (predicate = BETWEEN(ss_quantity_300, 61, 80))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_net_paid_342=ss_net_paid_342}), Outputs ([ss_net_paid_342]):
filter (predicate = BETWEEN(ss_quantity_332, 61, 80))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({}), Outputs ([]):
filter (predicate = BETWEEN(ss_quantity_364, 81, 100))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_ext_discount_amt_399=ss_ext_discount_amt_399}), Outputs ([ss_ext_discount_amt_399]):
filter (predicate = BETWEEN(ss_quantity_395, 81, 100))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_net_paid_437=ss_net_paid_437}), Outputs ([ss_net_paid_437]):
filter (predicate = BETWEEN(ss_quantity_427, 81, 100))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
2023-09-25T14:33:40.460+0530 INFO Query-20230925_090340_00002_asxxc-1212 com.facebook.presto.sql.planner.optimizations.LogPlanTreeOptimizer ------ After ApplyConnectorOptimization
2023-09-25T14:33:40.461+0530 INFO Query-20230925_090340_00002_asxxc-1212 com.facebook.presto.sql.planner.optimizations.LogPlanTreeOptimizer Plan :
project, Assignments ({expr_449=SWITCH(true, WHEN(GREATER_THAN(count, 74129), avg), avg_64), expr_450=SWITCH(true, WHEN(GREATER_THAN(count_95, 122840), avg_127), avg_159), expr_451=SWITCH(true, WHEN(GREATER_THAN(count_190, 56580), avg_222), avg_254), expr_452=SWITCH(true, WHEN(GREATER_THAN(count_285, 10097), avg_317), avg_349), expr_453=SWITCH(true, WHEN(GREATER_THAN(count_380, 165306), avg_412), avg_444)}), Outputs ([expr_449, expr_450, expr_451, expr_452, expr_453]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317, avg_349, count_380, avg_412, avg_444]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317, avg_349, count_380, avg_412]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317, avg_349, count_380]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317, avg_349]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count]):
filter (predicate = EQUAL(r_reason_sk, 1))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=reason, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({}), Outputs ([]):
filter (predicate = BETWEEN(ss_quantity, 1, 20))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_ext_discount_amt_20=ss_ext_discount_amt_20}), Outputs ([ss_ext_discount_amt_20]):
filter (predicate = BETWEEN(ss_quantity_16, 1, 20))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_net_paid_57=ss_net_paid_57}), Outputs ([ss_net_paid_57]):
filter (predicate = BETWEEN(ss_quantity_47, 1, 20))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({}), Outputs ([]):
filter (predicate = BETWEEN(ss_quantity_79, 21, 40))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_ext_discount_amt_114=ss_ext_discount_amt_114}), Outputs ([ss_ext_discount_amt_114]):
filter (predicate = BETWEEN(ss_quantity_110, 21, 40))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_net_paid_152=ss_net_paid_152}), Outputs ([ss_net_paid_152]):
filter (predicate = BETWEEN(ss_quantity_142, 21, 40))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({}), Outputs ([]):
filter (predicate = BETWEEN(ss_quantity_174, 41, 60))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_ext_discount_amt_209=ss_ext_discount_amt_209}), Outputs ([ss_ext_discount_amt_209]):
filter (predicate = BETWEEN(ss_quantity_205, 41, 60))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_net_paid_247=ss_net_paid_247}), Outputs ([ss_net_paid_247]):
filter (predicate = BETWEEN(ss_quantity_237, 41, 60))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({}), Outputs ([]):
filter (predicate = BETWEEN(ss_quantity_269, 61, 80))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_ext_discount_amt_304=ss_ext_discount_amt_304}), Outputs ([ss_ext_discount_amt_304]):
filter (predicate = BETWEEN(ss_quantity_300, 61, 80))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_net_paid_342=ss_net_paid_342}), Outputs ([ss_net_paid_342]):
filter (predicate = BETWEEN(ss_quantity_332, 61, 80))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({}), Outputs ([]):
filter (predicate = BETWEEN(ss_quantity_364, 81, 100))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_ext_discount_amt_399=ss_ext_discount_amt_399}), Outputs ([ss_ext_discount_amt_399]):
filter (predicate = BETWEEN(ss_quantity_395, 81, 100))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_net_paid_437=ss_net_paid_437}), Outputs ([ss_net_paid_437]):
filter (predicate = BETWEEN(ss_quantity_427, 81, 100))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
2023-09-25T14:33:40.760+0530 INFO Query-20230925_090340_00002_asxxc-1212 com.facebook.presto.sql.planner.optimizations.LogPlanTreeOptimizer ------ Before AddExchanges
2023-09-25T14:33:40.761+0530 INFO Query-20230925_090340_00002_asxxc-1212 com.facebook.presto.sql.planner.optimizations.LogPlanTreeOptimizer Plan :
project, Assignments ({expr_449=SWITCH(true, WHEN(GREATER_THAN(count, 74129), avg), avg_64), expr_450=SWITCH(true, WHEN(GREATER_THAN(count_95, 122840), avg_127), avg_159), expr_451=SWITCH(true, WHEN(GREATER_THAN(count_190, 56580), avg_222), avg_254), expr_452=SWITCH(true, WHEN(GREATER_THAN(count_285, 10097), avg_317), avg_349), expr_453=SWITCH(true, WHEN(GREATER_THAN(count_380, 165306), avg_412), avg_444)}), Outputs ([expr_449, expr_450, expr_451, expr_452, expr_453]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317, avg_349, count_380, avg_412, avg_444]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317, avg_349, count_380, avg_412]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317, avg_349, count_380]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317, avg_349]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count]):
filter (predicate = EQUAL(r_reason_sk, 1))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=reason, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({}), Outputs ([]):
filter (predicate = BETWEEN(ss_quantity, 1, 20))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_ext_discount_amt_20=ss_ext_discount_amt_20}), Outputs ([ss_ext_discount_amt_20]):
filter (predicate = BETWEEN(ss_quantity_16, 1, 20))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_net_paid_57=ss_net_paid_57}), Outputs ([ss_net_paid_57]):
filter (predicate = BETWEEN(ss_quantity_47, 1, 20))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({}), Outputs ([]):
filter (predicate = BETWEEN(ss_quantity_79, 21, 40))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_ext_discount_amt_114=ss_ext_discount_amt_114}), Outputs ([ss_ext_discount_amt_114]):
filter (predicate = BETWEEN(ss_quantity_110, 21, 40))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_net_paid_152=ss_net_paid_152}), Outputs ([ss_net_paid_152]):
filter (predicate = BETWEEN(ss_quantity_142, 21, 40))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({}), Outputs ([]):
filter (predicate = BETWEEN(ss_quantity_174, 41, 60))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_ext_discount_amt_209=ss_ext_discount_amt_209}), Outputs ([ss_ext_discount_amt_209]):
filter (predicate = BETWEEN(ss_quantity_205, 41, 60))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_net_paid_247=ss_net_paid_247}), Outputs ([ss_net_paid_247]):
filter (predicate = BETWEEN(ss_quantity_237, 41, 60))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({}), Outputs ([]):
filter (predicate = BETWEEN(ss_quantity_269, 61, 80))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_ext_discount_amt_304=ss_ext_discount_amt_304}), Outputs ([ss_ext_discount_amt_304]):
filter (predicate = BETWEEN(ss_quantity_300, 61, 80))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_net_paid_342=ss_net_paid_342}), Outputs ([ss_net_paid_342]):
filter (predicate = BETWEEN(ss_quantity_332, 61, 80))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({}), Outputs ([]):
filter (predicate = BETWEEN(ss_quantity_364, 81, 100))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_ext_discount_amt_399=ss_ext_discount_amt_399}), Outputs ([ss_ext_discount_amt_399]):
filter (predicate = BETWEEN(ss_quantity_395, 81, 100))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
single aggregation over ()
project, Assignments ({ss_net_paid_437=ss_net_paid_437}), Outputs ([ss_net_paid_437]):
filter (predicate = BETWEEN(ss_quantity_427, 81, 100))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
2023-09-25T14:33:40.805+0530 INFO Query-20230925_090340_00002_asxxc-1212 com.facebook.presto.sql.planner.optimizations.LogPlanTreeOptimizer ------ After AddExchanges
2023-09-25T14:33:40.806+0530 INFO Query-20230925_090340_00002_asxxc-1212 com.facebook.presto.sql.planner.optimizations.LogPlanTreeOptimizer Plan :
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=SINGLE, arguments=[]}, outputLayout=[expr_449, expr_450, expr_451, expr_452, expr_453], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
project, Assignments ({expr_449=SWITCH(true, WHEN(GREATER_THAN(count, 74129), avg), avg_64), expr_450=SWITCH(true, WHEN(GREATER_THAN(count_95, 122840), avg_127), avg_159), expr_451=SWITCH(true, WHEN(GREATER_THAN(count_190, 56580), avg_222), avg_254), expr_452=SWITCH(true, WHEN(GREATER_THAN(count_285, 10097), avg_317), avg_349), expr_453=SWITCH(true, WHEN(GREATER_THAN(count_380, 165306), avg_412), avg_444)}), Outputs ([expr_449, expr_450, expr_451, expr_452, expr_453]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317, avg_349, count_380, avg_412, avg_444]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317, avg_349, count_380, avg_412]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317, avg_349, count_380]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317, avg_349]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285, avg_317]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254, count_285]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222, avg_254]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190, avg_222]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159, count_190]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127, avg_159]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95, avg_127]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64, count_95]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg, avg_64]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count, avg]):
join (INNER), Equi-join condition([]), Filter (Optional.empty), Outputs([r_reason_sk, count]):
filter (predicate = EQUAL(r_reason_sk, 1))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=reason, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=BROADCAST, arguments=[]}, outputLayout=[count], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
single aggregation over ()
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=SINGLE, arguments=[]}, outputLayout=[], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
project, Assignments ({}), Outputs ([]):
filter (predicate = BETWEEN(ss_quantity, 1, 20))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=BROADCAST, arguments=[]}, outputLayout=[avg], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
single aggregation over ()
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=SINGLE, arguments=[]}, outputLayout=[ss_ext_discount_amt_20], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
project, Assignments ({ss_ext_discount_amt_20=ss_ext_discount_amt_20}), Outputs ([ss_ext_discount_amt_20]):
filter (predicate = BETWEEN(ss_quantity_16, 1, 20))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=BROADCAST, arguments=[]}, outputLayout=[avg_64], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
single aggregation over ()
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=SINGLE, arguments=[]}, outputLayout=[ss_net_paid_57], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
project, Assignments ({ss_net_paid_57=ss_net_paid_57}), Outputs ([ss_net_paid_57]):
filter (predicate = BETWEEN(ss_quantity_47, 1, 20))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=BROADCAST, arguments=[]}, outputLayout=[count_95], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
single aggregation over ()
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=SINGLE, arguments=[]}, outputLayout=[], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
project, Assignments ({}), Outputs ([]):
filter (predicate = BETWEEN(ss_quantity_79, 21, 40))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=BROADCAST, arguments=[]}, outputLayout=[avg_127], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
single aggregation over ()
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=SINGLE, arguments=[]}, outputLayout=[ss_ext_discount_amt_114], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
project, Assignments ({ss_ext_discount_amt_114=ss_ext_discount_amt_114}), Outputs ([ss_ext_discount_amt_114]):
filter (predicate = BETWEEN(ss_quantity_110, 21, 40))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=BROADCAST, arguments=[]}, outputLayout=[avg_159], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
single aggregation over ()
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=SINGLE, arguments=[]}, outputLayout=[ss_net_paid_152], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
project, Assignments ({ss_net_paid_152=ss_net_paid_152}), Outputs ([ss_net_paid_152]):
filter (predicate = BETWEEN(ss_quantity_142, 21, 40))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=BROADCAST, arguments=[]}, outputLayout=[count_190], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
single aggregation over ()
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=SINGLE, arguments=[]}, outputLayout=[], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
project, Assignments ({}), Outputs ([]):
filter (predicate = BETWEEN(ss_quantity_174, 41, 60))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=BROADCAST, arguments=[]}, outputLayout=[avg_222], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
single aggregation over ()
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=SINGLE, arguments=[]}, outputLayout=[ss_ext_discount_amt_209], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
project, Assignments ({ss_ext_discount_amt_209=ss_ext_discount_amt_209}), Outputs ([ss_ext_discount_amt_209]):
filter (predicate = BETWEEN(ss_quantity_205, 41, 60))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=BROADCAST, arguments=[]}, outputLayout=[avg_254], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
single aggregation over ()
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=SINGLE, arguments=[]}, outputLayout=[ss_net_paid_247], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
project, Assignments ({ss_net_paid_247=ss_net_paid_247}), Outputs ([ss_net_paid_247]):
filter (predicate = BETWEEN(ss_quantity_237, 41, 60))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=BROADCAST, arguments=[]}, outputLayout=[count_285], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
single aggregation over ()
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=SINGLE, arguments=[]}, outputLayout=[], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
project, Assignments ({}), Outputs ([]):
filter (predicate = BETWEEN(ss_quantity_269, 61, 80))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=BROADCAST, arguments=[]}, outputLayout=[avg_317], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
single aggregation over ()
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=SINGLE, arguments=[]}, outputLayout=[ss_ext_discount_amt_304], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
project, Assignments ({ss_ext_discount_amt_304=ss_ext_discount_amt_304}), Outputs ([ss_ext_discount_amt_304]):
filter (predicate = BETWEEN(ss_quantity_300, 61, 80))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=BROADCAST, arguments=[]}, outputLayout=[avg_349], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
single aggregation over ()
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=SINGLE, arguments=[]}, outputLayout=[ss_net_paid_342], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
project, Assignments ({ss_net_paid_342=ss_net_paid_342}), Outputs ([ss_net_paid_342]):
filter (predicate = BETWEEN(ss_quantity_332, 61, 80))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=BROADCAST, arguments=[]}, outputLayout=[count_380], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
single aggregation over ()
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=SINGLE, arguments=[]}, outputLayout=[], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
project, Assignments ({}), Outputs ([]):
filter (predicate = BETWEEN(ss_quantity_364, 81, 100))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=BROADCAST, arguments=[]}, outputLayout=[avg_412], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
single aggregation over ()
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=SINGLE, arguments=[]}, outputLayout=[ss_ext_discount_amt_399], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
project, Assignments ({ss_ext_discount_amt_399=ss_ext_discount_amt_399}), Outputs ([ss_ext_discount_amt_399]):
filter (predicate = BETWEEN(ss_quantity_395, 81, 100))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=BROADCAST, arguments=[]}, outputLayout=[avg_444], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
single aggregation over ()
exchange (scope=REMOTE_STREAMING, partitioning=PartitioningScheme{partitioning=Partitioning{handle=SINGLE, arguments=[]}, outputLayout=[ss_net_paid_437], hashChannel=Optional.empty, replicateNullsAndAny=false, bucketToPartition=Optional.empty})
project, Assignments ({ss_net_paid_437=ss_net_paid_437}), Outputs ([ss_net_paid_437]):
filter (predicate = BETWEEN(ss_quantity_427, 81, 100))
scan (HiveTableHandle{schemaName=tpcds_sf1_parquet_with_col_stats, tableName=store_sales, analyzePartitionValues=Optional.empty}) Constraints [Current (Optional[{}]), Enforced(Optional[{}])]
2023-09-25T14:33:41.174+0530 INFO Query-20230925_090340_00002_asxxc-1211 com.facebook.presto.sql.planner.optimizations.LogPlanTreeOptimizer ------ Before ApplyConnectorOptimization
2023-09-25T14:33:41.174+0530 INFO Query-20230925_090340_00002_asxxc-1211 com.facebook.presto.sql.planner.optimizations.LogPlanTreeOptimizer Plan :
2023-09-25T14:33:41.174+0530 INFO Query-20230925_090340_00002_asxxc-1211 com.facebook.presto.sql.planner.optimizations.LogPlanTreeOptimizer ------ After ApplyConnectorOptimization
2023-09-25T14:33:41.174+0530 INFO Query-20230925_090340_00002_asxxc-1211 com.facebook.presto.sql.planner.optimizations.LogPlanTreeOptimizer Plan :
2023-09-25T14:33:41.175+0530 INFO Query-20230925_090340_00002_asxxc-1211 com.facebook.presto.sql.planner.optimizations.LogPlanTreeOptimizer ------ Before AddExchanges
2023-09-25T14:33:41.175+0530 INFO Query-20230925_090340_00002_asxxc-1211 com.facebook.presto.sql.planner.optimizations.LogPlanTreeOptimizer Plan :
2023-09-25T14:33:41.175+0530 INFO Query-20230925_090340_00002_asxxc-1211 com.facebook.presto.sql.planner.optimizations.LogPlanTreeOptimizer ------ After AddExchanges
2023-09-25T14:33:41.175+0530 INFO Query-20230925_090340_00002_asxxc-1211 com.facebook.presto.sql.planner.optimizations.LogPlanTreeOptimizer Plan :
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment