[FEAT MERGE] [CP] Improve the rowcount estimation

Co-authored-by: akaError <lzg020616@163.com>
This commit is contained in:
xianyu-w
2024-01-22 04:12:26 +00:00
committed by ob-robot
parent a125d6cf00
commit d2ab1a4aae
70 changed files with 5953 additions and 3722 deletions

View File

@ -115,7 +115,7 @@ Query Plan
=======================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
-------------------------------------------------------
|0 |NESTED-LOOP ANTI JOIN | |7 |4 |
|0 |NESTED-LOOP ANTI JOIN | |8 |4 |
|1 |├─TABLE FULL SCAN |xy_t1|8 |3 |
|2 |└─MATERIAL | |5 |3 |
|3 | └─TABLE FULL SCAN |xy_t2|5 |3 |
@ -151,7 +151,7 @@ Query Plan
====================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
----------------------------------------------------
|0 |MERGE ANTI JOIN | |7 |7 |
|0 |MERGE ANTI JOIN | |8 |7 |
|1 |├─SORT | |8 |4 |
|2 |│ └─TABLE FULL SCAN|xy_t1|8 |3 |
|3 |└─SORT | |5 |3 |
@ -192,7 +192,7 @@ Query Plan
======================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
------------------------------------------------------
|0 |HASH RIGHT ANTI JOIN | |7 |7 |
|0 |HASH RIGHT ANTI JOIN | |8 |7 |
|1 |├─TABLE FULL SCAN |xy_t2|5 |3 |
|2 |└─TABLE FULL SCAN |xy_t1|8 |3 |
======================================================
@ -335,7 +335,7 @@ Query Plan
=======================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
-------------------------------------------------------
|0 |NESTED-LOOP SEMI JOIN | |2 |4 |
|0 |NESTED-LOOP SEMI JOIN | |1 |4 |
|1 |├─TABLE FULL SCAN |xy_t1|8 |3 |
|2 |└─MATERIAL | |5 |3 |
|3 | └─TABLE FULL SCAN |xy_t2|5 |3 |
@ -365,7 +365,7 @@ Query Plan
====================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
----------------------------------------------------
|0 |MERGE SEMI JOIN | |2 |7 |
|0 |MERGE SEMI JOIN | |1 |7 |
|1 |├─SORT | |8 |4 |
|2 |│ └─TABLE FULL SCAN|xy_t1|8 |3 |
|3 |└─SORT | |5 |3 |
@ -400,7 +400,7 @@ Query Plan
======================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
------------------------------------------------------
|0 |HASH RIGHT SEMI JOIN | |2 |7 |
|0 |HASH RIGHT SEMI JOIN | |1 |7 |
|1 |├─TABLE FULL SCAN |xy_t2|5 |3 |
|2 |└─TABLE FULL SCAN |xy_t1|8 |3 |
======================================================
@ -430,7 +430,7 @@ Query Plan
=======================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
-------------------------------------------------------
|0 |NESTED-LOOP ANTI JOIN | |7 |4 |
|0 |NESTED-LOOP ANTI JOIN | |8 |4 |
|1 |├─TABLE FULL SCAN |xy_t1|8 |3 |
|2 |└─MATERIAL | |5 |3 |
|3 | └─TABLE FULL SCAN |xy_t2|5 |3 |
@ -466,7 +466,7 @@ Query Plan
====================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
----------------------------------------------------
|0 |MERGE ANTI JOIN | |7 |7 |
|0 |MERGE ANTI JOIN | |8 |7 |
|1 |├─SORT | |8 |4 |
|2 |│ └─TABLE FULL SCAN|xy_t1|8 |3 |
|3 |└─SORT | |5 |3 |
@ -507,7 +507,7 @@ Query Plan
======================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
------------------------------------------------------
|0 |HASH RIGHT ANTI JOIN | |7 |7 |
|0 |HASH RIGHT ANTI JOIN | |8 |7 |
|1 |├─TABLE FULL SCAN |xy_t2|5 |3 |
|2 |└─TABLE FULL SCAN |xy_t1|8 |3 |
======================================================
@ -541,7 +541,7 @@ Query Plan
=======================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
-------------------------------------------------------
|0 |NESTED-LOOP SEMI JOIN | |2 |4 |
|0 |NESTED-LOOP SEMI JOIN | |1 |4 |
|1 |├─TABLE FULL SCAN |xy_t1|8 |3 |
|2 |└─MATERIAL | |5 |3 |
|3 | └─TABLE FULL SCAN |xy_t2|5 |3 |
@ -571,7 +571,7 @@ Query Plan
====================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
----------------------------------------------------
|0 |MERGE SEMI JOIN | |2 |7 |
|0 |MERGE SEMI JOIN | |1 |7 |
|1 |├─SORT | |8 |4 |
|2 |│ └─TABLE FULL SCAN|xy_t1|8 |3 |
|3 |└─SORT | |5 |3 |
@ -606,7 +606,7 @@ Query Plan
======================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
------------------------------------------------------
|0 |HASH RIGHT SEMI JOIN | |2 |7 |
|0 |HASH RIGHT SEMI JOIN | |1 |7 |
|1 |├─TABLE FULL SCAN |xy_t2|5 |3 |
|2 |└─TABLE FULL SCAN |xy_t1|8 |3 |
======================================================
@ -2831,8 +2831,8 @@ Query Plan
|0 |SCALAR GROUP BY | |1 |4168 |
|1 |└─SUBPLAN FILTER | |29 |4167 |
|2 | ├─TABLE FULL SCAN |xy_t1 |116 |8 |
|3 | ├─DISTRIBUTED TABLE RANGE SCAN|xy_t3(idx_c2)|2 |18 |
|4 | └─DISTRIBUTED TABLE RANGE SCAN|xy_t2(idx_c2)|2 |18 |
|3 | ├─DISTRIBUTED TABLE RANGE SCAN|xy_t3(idx_c2)|1 |18 |
|4 | └─DISTRIBUTED TABLE RANGE SCAN|xy_t2(idx_c2)|1 |18 |
=========================================================================
Outputs & filters:
-------------------------------------
@ -3483,8 +3483,8 @@ Query Plan
========================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
--------------------------------------------------------
|0 |SORT | |2 |7 |
|1 |└─HASH RIGHT SEMI JOIN | |2 |7 |
|0 |SORT | |1 |7 |
|1 |└─HASH RIGHT SEMI JOIN | |1 |7 |
|2 | ├─TABLE FULL SCAN |xy_t2|5 |3 |
|3 | └─TABLE FULL SCAN |xy_t1|8 |3 |
========================================================
@ -3513,8 +3513,8 @@ Query Plan
======================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
------------------------------------------------------
|0 |SORT | |2 |7 |
|1 |└─MERGE SEMI JOIN | |2 |7 |
|0 |SORT | |1 |7 |
|1 |└─MERGE SEMI JOIN | |1 |7 |
|2 | ├─SORT | |8 |4 |
|3 | │ └─TABLE FULL SCAN|xy_t1|8 |3 |
|4 | └─SORT | |5 |3 |
@ -3550,8 +3550,8 @@ Query Plan
=========================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
---------------------------------------------------------
|0 |SORT | |2 |4 |
|1 |└─NESTED-LOOP SEMI JOIN | |2 |4 |
|0 |SORT | |1 |4 |
|1 |└─NESTED-LOOP SEMI JOIN | |1 |4 |
|2 | ├─TABLE FULL SCAN |xy_t1|8 |3 |
|3 | └─MATERIAL | |5 |3 |
|4 | └─TABLE FULL SCAN |xy_t2|5 |3 |
@ -3615,8 +3615,8 @@ Query Plan
====================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
----------------------------------------------------
|0 |SORT | |2 |7 |
|1 |└─HASH SEMI JOIN | |2 |7 |
|0 |SORT | |1 |7 |
|1 |└─HASH SEMI JOIN | |1 |7 |
|2 | ├─TABLE FULL SCAN|xy_t2|5 |3 |
|3 | └─TABLE FULL SCAN|xy_t1|8 |3 |
====================================================
@ -3645,8 +3645,8 @@ Query Plan
======================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
------------------------------------------------------
|0 |SORT | |2 |7 |
|1 |└─MERGE SEMI JOIN | |2 |7 |
|0 |SORT | |1 |7 |
|1 |└─MERGE SEMI JOIN | |1 |7 |
|2 | ├─SORT | |5 |3 |
|3 | │ └─TABLE FULL SCAN|xy_t2|5 |3 |
|4 | └─SORT | |8 |4 |
@ -3682,8 +3682,8 @@ Query Plan
=========================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
---------------------------------------------------------
|0 |SORT | |2 |4 |
|1 |└─NESTED-LOOP SEMI JOIN | |2 |3 |
|0 |SORT | |1 |3 |
|1 |└─NESTED-LOOP SEMI JOIN | |1 |3 |
|2 | ├─TABLE FULL SCAN |xy_t2|5 |3 |
|3 | └─MATERIAL | |8 |4 |
|4 | └─TABLE FULL SCAN |xy_t1|8 |3 |
@ -3747,8 +3747,8 @@ Query Plan
====================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
----------------------------------------------------
|0 |SORT | |2 |7 |
|1 |└─HASH JOIN | |2 |7 |
|0 |SORT | |1 |7 |
|1 |└─HASH JOIN | |1 |7 |
|2 | ├─TABLE FULL SCAN|xy_t2|5 |3 |
|3 | └─TABLE FULL SCAN|xy_t1|8 |3 |
====================================================
@ -3776,7 +3776,7 @@ Query Plan
==================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
--------------------------------------------------
|0 |MERGE JOIN | |2 |6 |
|0 |MERGE JOIN | |1 |6 |
|1 |├─TABLE FULL SCAN|xy_t2|5 |3 |
|2 |└─TABLE FULL SCAN|xy_t1|8 |3 |
==================================================
@ -3832,8 +3832,8 @@ Query Plan
====================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
----------------------------------------------------
|0 |SORT | |2 |8 |
|1 |└─HASH SEMI JOIN | |2 |7 |
|0 |SORT | |1 |7 |
|1 |└─HASH SEMI JOIN | |1 |7 |
|2 | ├─TABLE FULL SCAN|xy_t2|5 |3 |
|3 | └─TABLE FULL SCAN|xy_t1|8 |3 |
====================================================
@ -3862,7 +3862,7 @@ Query Plan
====================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
----------------------------------------------------
|0 |MERGE SEMI JOIN | |2 |7 |
|0 |MERGE SEMI JOIN | |1 |7 |
|1 |├─TABLE FULL SCAN |xy_t2|5 |3 |
|2 |└─SORT | |8 |4 |
|3 | └─TABLE FULL SCAN|xy_t1|8 |3 |
@ -3893,7 +3893,7 @@ Query Plan
=======================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
-------------------------------------------------------
|0 |NESTED-LOOP SEMI JOIN | |2 |3 |
|0 |NESTED-LOOP SEMI JOIN | |1 |3 |
|1 |├─TABLE FULL SCAN |xy_t2|5 |3 |
|2 |└─MATERIAL | |8 |4 |
|3 | └─TABLE FULL SCAN |xy_t1|8 |3 |
@ -3952,8 +3952,8 @@ Query Plan
========================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
--------------------------------------------------------
|0 |SORT | |7 |8 |
|1 |└─HASH RIGHT ANTI JOIN | |7 |7 |
|0 |SORT | |8 |8 |
|1 |└─HASH RIGHT ANTI JOIN | |8 |7 |
|2 | ├─TABLE FULL SCAN |xy_t2|5 |3 |
|3 | └─TABLE FULL SCAN |xy_t1|8 |3 |
========================================================
@ -3988,8 +3988,8 @@ Query Plan
======================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
------------------------------------------------------
|0 |SORT | |7 |8 |
|1 |└─MERGE ANTI JOIN | |7 |7 |
|0 |SORT | |8 |8 |
|1 |└─MERGE ANTI JOIN | |8 |7 |
|2 | ├─SORT | |8 |4 |
|3 | │ └─TABLE FULL SCAN|xy_t1|8 |3 |
|4 | └─SORT | |5 |3 |
@ -4031,8 +4031,8 @@ Query Plan
=========================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
---------------------------------------------------------
|0 |SORT | |7 |4 |
|1 |└─NESTED-LOOP ANTI JOIN | |7 |4 |
|0 |SORT | |8 |4 |
|1 |└─NESTED-LOOP ANTI JOIN | |8 |4 |
|2 | ├─TABLE FULL SCAN |xy_t1|8 |3 |
|3 | └─MATERIAL | |5 |3 |
|4 | └─TABLE FULL SCAN |xy_t2|5 |3 |
@ -4108,8 +4108,8 @@ Query Plan
====================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
----------------------------------------------------
|0 |SORT | |4 |7 |
|1 |└─HASH ANTI JOIN | |4 |7 |
|0 |SORT | |5 |7 |
|1 |└─HASH ANTI JOIN | |5 |7 |
|2 | ├─TABLE FULL SCAN|xy_t2|5 |3 |
|3 | └─TABLE FULL SCAN|xy_t1|8 |3 |
====================================================
@ -4141,8 +4141,8 @@ Query Plan
======================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
------------------------------------------------------
|0 |SORT | |4 |7 |
|1 |└─MERGE ANTI JOIN | |4 |7 |
|0 |SORT | |5 |7 |
|1 |└─MERGE ANTI JOIN | |5 |7 |
|2 | ├─SORT | |5 |3 |
|3 | │ └─TABLE FULL SCAN|xy_t2|5 |3 |
|4 | └─SORT | |8 |4 |
@ -4181,8 +4181,8 @@ Query Plan
=========================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
---------------------------------------------------------
|0 |SORT | |4 |4 |
|1 |└─NESTED-LOOP ANTI JOIN | |4 |3 |
|0 |SORT | |5 |4 |
|1 |└─NESTED-LOOP ANTI JOIN | |5 |3 |
|2 | ├─TABLE FULL SCAN |xy_t2|5 |3 |
|3 | └─MATERIAL | |8 |4 |
|4 | └─TABLE FULL SCAN |xy_t1|8 |3 |
@ -4252,8 +4252,8 @@ Query Plan
====================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
----------------------------------------------------
|0 |SORT | |4 |8 |
|1 |└─HASH ANTI JOIN | |4 |7 |
|0 |SORT | |5 |8 |
|1 |└─HASH ANTI JOIN | |5 |7 |
|2 | ├─TABLE FULL SCAN|xy_t2|5 |3 |
|3 | └─TABLE FULL SCAN|xy_t1|8 |3 |
====================================================
@ -4286,7 +4286,7 @@ Query Plan
==================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
--------------------------------------------------
|0 |MERGE ANTI JOIN | |4 |6 |
|0 |MERGE ANTI JOIN | |5 |6 |
|1 |├─TABLE FULL SCAN|xy_t2|5 |3 |
|2 |└─TABLE FULL SCAN|xy_t1|8 |3 |
==================================================
@ -4318,7 +4318,7 @@ Query Plan
========================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
--------------------------------------------------------
|0 |NESTED-LOOP ANTI JOIN | |4 |96 |
|0 |NESTED-LOOP ANTI JOIN | |5 |96 |
|1 |├─TABLE FULL SCAN |xy_t2|5 |3 |
|2 |└─DISTRIBUTED TABLE GET|xy_t1|1 |18 |
========================================================
@ -4385,10 +4385,10 @@ Query Plan
========================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
--------------------------------------------------------
|0 |SORT | |2 |7 |
|1 |└─HASH RIGHT ANTI JOIN | |2 |6 |
|2 | ├─SUBPLAN SCAN |VIEW1|3 |3 |
|3 | │ └─TABLE FULL SCAN |xy_t1|3 |3 |
|0 |SORT | |4 |6 |
|1 |└─HASH RIGHT ANTI JOIN | |4 |6 |
|2 | ├─SUBPLAN SCAN |VIEW1|1 |3 |
|3 | │ └─TABLE FULL SCAN |xy_t1|1 |3 |
|4 | └─TABLE FULL SCAN |xy_t2|5 |3 |
========================================================
Outputs & filters:
@ -4422,11 +4422,11 @@ Query Plan
======================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
------------------------------------------------------
|0 |SORT | |2 |7 |
|1 |└─HASH ANTI JOIN | |2 |7 |
|0 |SORT | |4 |7 |
|1 |└─HASH ANTI JOIN | |4 |7 |
|2 | ├─TABLE FULL SCAN |xy_t2|5 |3 |
|3 | └─SUBPLAN SCAN |VIEW1|3 |3 |
|4 | └─TABLE FULL SCAN|xy_t1|3 |3 |
|3 | └─SUBPLAN SCAN |VIEW1|1 |3 |
|4 | └─TABLE FULL SCAN|xy_t1|1 |3 |
======================================================
Outputs & filters:
-------------------------------------
@ -4459,11 +4459,11 @@ Query Plan
======================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
------------------------------------------------------
|0 |SORT | |2 |7 |
|1 |└─HASH ANTI JOIN | |2 |7 |
|0 |SORT | |4 |7 |
|1 |└─HASH ANTI JOIN | |4 |7 |
|2 | ├─TABLE FULL SCAN |xy_t2|5 |3 |
|3 | └─SUBPLAN SCAN |VIEW1|3 |3 |
|4 | └─TABLE FULL SCAN|xy_t1|3 |3 |
|3 | └─SUBPLAN SCAN |VIEW1|1 |3 |
|4 | └─TABLE FULL SCAN|xy_t1|1 |3 |
======================================================
Outputs & filters:
-------------------------------------

View File

@ -110,10 +110,10 @@ Query Plan
===========================================================
|ID|OPERATOR |NAME|EST.ROWS|EST.TIME(us)|
-----------------------------------------------------------
|0 |NESTED-LOOP JOIN CARTESIAN | |3 |3 |
|0 |NESTED-LOOP JOIN CARTESIAN | |0 |3 |
|1 |├─TABLE FULL SCAN |b |3 |3 |
|2 |└─MATERIAL | |1 |3 |
|3 | └─TABLE RANGE SCAN |a |1 |3 |
|2 |└─MATERIAL | |0 |3 |
|3 | └─TABLE RANGE SCAN |a |0 |3 |
===========================================================
Outputs & filters:
-------------------------------------

View File

@ -112,10 +112,10 @@ Query Plan
===========================================================
|ID|OPERATOR |NAME|EST.ROWS|EST.TIME(us)|
-----------------------------------------------------------
|0 |NESTED-LOOP JOIN CARTESIAN | |3 |3 |
|0 |NESTED-LOOP JOIN CARTESIAN | |0 |3 |
|1 |├─TABLE FULL SCAN |b |3 |3 |
|2 |└─MATERIAL | |1 |3 |
|3 | └─TABLE RANGE SCAN |a |1 |3 |
|2 |└─MATERIAL | |0 |3 |
|3 | └─TABLE RANGE SCAN |a |0 |3 |
===========================================================
Outputs & filters:
-------------------------------------

View File

@ -112,10 +112,10 @@ Query Plan
===========================================================
|ID|OPERATOR |NAME|EST.ROWS|EST.TIME(us)|
-----------------------------------------------------------
|0 |NESTED-LOOP JOIN CARTESIAN | |3 |3 |
|0 |NESTED-LOOP JOIN CARTESIAN | |0 |3 |
|1 |├─TABLE FULL SCAN |b |3 |3 |
|2 |└─MATERIAL | |1 |3 |
|3 | └─TABLE RANGE SCAN |a |1 |3 |
|2 |└─MATERIAL | |0 |3 |
|3 | └─TABLE RANGE SCAN |a |0 |3 |
===========================================================
Outputs & filters:
-------------------------------------