apache / doris

Apache Doris is an easy-to-use, high performance and unified analytics database.
https://doris.apache.org
Apache License 2.0
11.82k stars 3.12k forks source link

[feat](Nereids): Add support for slot pruning in functional dependencies #37045

Closed XieJiann closed 1 day ago

XieJiann commented 2 days ago

Proposed changes

Implement slot pruning functionality for functional dependencies to optimize performance and resource utilization. This enhancement allows for more efficient handling of dependencies by removing unnecessary slots.

doris-robot commented 2 days ago

Thank you for your contribution to Apache Doris. Don't know what should be done next? See How to process your PR

Since 2024-03-18, the Document has been moved to doris-website. See Doris Document.

morrySnow commented 2 days ago

run buildall

github-actions[bot] commented 2 days ago

PR approved by at least one committer and no changes requested.

github-actions[bot] commented 2 days ago

PR approved by anyone and no changes requested.

XieJiann commented 2 days ago

run buildall

doris-robot commented 2 days ago
TPC-H: Total hot run time: 40033 ms ``` machine: 'aliyun_ecs.c7a.8xlarge_32C64G' scripts: https://github.com/apache/doris/tree/master/tools/tpch-tools Tpch sf100 test result on commit 427bfb1db16b3c7d81a454ed143c9960d527acc1, data reload: false ------ Round 1 ---------------------------------- q1 17798 4476 4285 4285 q2 2279 191 201 191 q3 10522 1195 1071 1071 q4 10242 811 787 787 q5 7502 3007 2680 2680 q6 223 138 139 138 q7 963 602 601 601 q8 9244 2111 2082 2082 q9 8905 6505 6517 6505 q10 9101 3729 3741 3729 q11 452 246 238 238 q12 401 233 231 231 q13 17864 3013 3001 3001 q14 276 224 235 224 q15 513 475 480 475 q16 511 391 382 382 q17 992 675 620 620 q18 8003 7578 7409 7409 q19 5596 1511 1435 1435 q20 680 321 325 321 q21 4991 3294 3892 3294 q22 397 334 337 334 Total cold run time: 117455 ms Total hot run time: 40033 ms ----- Round 2, with runtime_filter_mode=off ----- q1 4363 4234 4214 4214 q2 373 278 275 275 q3 2998 2766 2780 2766 q4 2073 1713 1670 1670 q5 5491 5634 5564 5564 q6 228 136 134 134 q7 2213 1857 1840 1840 q8 3242 3449 3421 3421 q9 8712 8864 8720 8720 q10 4150 3727 3708 3708 q11 604 480 485 480 q12 821 647 626 626 q13 17825 3205 3161 3161 q14 333 290 281 281 q15 532 494 482 482 q16 489 433 440 433 q17 1847 1549 1503 1503 q18 7817 7524 7296 7296 q19 1675 1488 1476 1476 q20 2094 1794 1799 1794 q21 6433 4669 4668 4668 q22 631 559 578 559 Total cold run time: 74944 ms Total hot run time: 55071 ms ```
doris-robot commented 2 days ago
TPC-DS: Total hot run time: 173212 ms ``` machine: 'aliyun_ecs.c7a.8xlarge_32C64G' scripts: https://github.com/apache/doris/tree/master/tools/tpcds-tools TPC-DS sf100 test result on commit 427bfb1db16b3c7d81a454ed143c9960d527acc1, data reload: false query1 1191 397 373 373 query2 6462 2218 2353 2218 query3 6642 209 216 209 query4 18830 17580 17383 17383 query5 4208 515 508 508 query6 265 185 166 166 query7 4597 304 294 294 query8 314 318 289 289 query9 8509 2407 2375 2375 query10 602 327 295 295 query11 10618 10251 10084 10084 query12 138 86 85 85 query13 1666 376 383 376 query14 9573 7224 6959 6959 query15 244 179 183 179 query16 7834 277 271 271 query17 1437 569 570 569 query18 1972 292 285 285 query19 206 156 159 156 query20 96 86 89 86 query21 220 136 135 135 query22 4337 3974 4108 3974 query23 34059 33177 33175 33175 query24 12019 2817 2869 2817 query25 690 421 388 388 query26 1868 157 163 157 query27 2910 311 317 311 query28 7559 2058 2055 2055 query29 1192 664 629 629 query30 292 151 151 151 query31 967 745 756 745 query32 101 58 57 57 query33 793 311 299 299 query34 929 482 490 482 query35 765 662 629 629 query36 1075 935 903 903 query37 289 77 80 77 query38 2874 2747 2752 2747 query39 919 819 798 798 query40 286 133 132 132 query41 55 55 56 55 query42 121 103 104 103 query43 591 541 564 541 query44 1198 731 731 731 query45 207 163 162 162 query46 1079 758 721 721 query47 1848 1761 1765 1761 query48 374 296 310 296 query49 1143 436 433 433 query50 781 394 405 394 query51 7140 6859 6737 6737 query52 109 96 97 96 query53 362 304 306 304 query54 938 454 457 454 query55 79 77 75 75 query56 314 386 277 277 query57 1143 1070 1055 1055 query58 244 245 269 245 query59 3523 3225 3074 3074 query60 317 296 289 289 query61 97 97 120 97 query62 635 440 472 440 query63 327 305 296 296 query64 9835 2312 1773 1773 query65 3159 3139 3105 3105 query66 1376 331 321 321 query67 15480 14797 14833 14797 query68 9055 555 579 555 query69 673 358 335 335 query70 1319 1138 1137 1137 query71 523 291 282 282 query72 8408 5540 5337 5337 query73 2156 335 325 325 query74 6040 5561 5441 5441 query75 4768 2676 2614 2614 query76 5073 974 904 904 query77 701 315 313 313 query78 10550 9860 9872 9860 query79 8173 527 534 527 query80 1257 493 473 473 query81 534 216 219 216 query82 761 111 105 105 query83 216 170 171 170 query84 273 82 89 82 query85 1264 282 270 270 query86 396 308 338 308 query87 3274 3136 3102 3102 query88 4859 2390 2352 2352 query89 554 385 390 385 query90 2028 187 184 184 query91 130 99 104 99 query92 63 50 48 48 query93 6685 506 507 506 query94 1281 186 194 186 query95 410 316 323 316 query96 613 273 279 273 query97 3198 3047 3006 3006 query98 206 205 197 197 query99 1187 851 884 851 Total cold run time: 298651 ms Total hot run time: 173212 ms ```
doris-robot commented 2 days ago
ClickBench: Total hot run time: 30.99 s ``` machine: 'aliyun_ecs.c7a.8xlarge_32C64G' scripts: https://github.com/apache/doris/tree/master/tools/clickbench-tools ClickBench test result on commit 427bfb1db16b3c7d81a454ed143c9960d527acc1, data reload: false query1 0.04 0.03 0.03 query2 0.07 0.04 0.04 query3 0.22 0.05 0.05 query4 1.67 0.08 0.09 query5 0.50 0.47 0.49 query6 1.16 0.72 0.74 query7 0.02 0.01 0.02 query8 0.05 0.04 0.04 query9 0.56 0.50 0.48 query10 0.53 0.52 0.54 query11 0.15 0.11 0.12 query12 0.15 0.12 0.12 query13 0.59 0.59 0.62 query14 0.78 0.77 0.78 query15 0.86 0.80 0.82 query16 0.37 0.37 0.36 query17 1.05 1.03 1.04 query18 0.23 0.23 0.25 query19 1.84 1.72 1.70 query20 0.01 0.01 0.01 query21 15.43 0.74 0.67 query22 4.36 6.58 2.26 query23 18.32 1.35 1.30 query24 2.13 0.23 0.23 query25 0.15 0.09 0.08 query26 0.27 0.18 0.19 query27 0.08 0.08 0.09 query28 13.22 1.02 0.99 query29 12.57 3.23 3.29 query30 0.25 0.06 0.05 query31 2.87 0.39 0.40 query32 3.26 0.48 0.49 query33 2.89 2.88 2.95 query34 17.17 4.48 4.43 query35 4.47 4.50 4.49 query36 0.65 0.49 0.48 query37 0.18 0.16 0.16 query38 0.15 0.15 0.16 query39 0.05 0.03 0.03 query40 0.17 0.15 0.15 query41 0.10 0.04 0.05 query42 0.05 0.04 0.04 query43 0.05 0.04 0.04 Total cold run time: 109.69 s Total hot run time: 30.99 s ```
XieJiann commented 2 days ago

run buildall

XieJiann commented 2 days ago

run buildall

doris-robot commented 2 days ago
TPC-H: Total hot run time: 39855 ms ``` machine: 'aliyun_ecs.c7a.8xlarge_32C64G' scripts: https://github.com/apache/doris/tree/master/tools/tpch-tools Tpch sf100 test result on commit d8c503d95e02577a8e419ec784245dde3d4b32d0, data reload: false ------ Round 1 ---------------------------------- q1 17637 4481 4401 4401 q2 2023 189 186 186 q3 10483 1192 1014 1014 q4 10185 838 827 827 q5 7520 2679 2648 2648 q6 222 145 138 138 q7 972 602 605 602 q8 9237 2109 2079 2079 q9 8917 6555 6516 6516 q10 8991 3709 3744 3709 q11 476 233 234 233 q12 489 233 242 233 q13 17751 2971 3005 2971 q14 271 231 230 230 q15 534 478 486 478 q16 518 375 383 375 q17 976 676 754 676 q18 8023 7431 7353 7353 q19 7114 1569 1400 1400 q20 676 329 327 327 q21 5081 3134 3844 3134 q22 390 325 335 325 Total cold run time: 118486 ms Total hot run time: 39855 ms ----- Round 2, with runtime_filter_mode=off ----- q1 4368 4252 4193 4193 q2 367 271 264 264 q3 3007 2891 2859 2859 q4 1978 1760 1775 1760 q5 5536 5539 5461 5461 q6 222 132 140 132 q7 2157 1921 1862 1862 q8 3258 3398 3433 3398 q9 8773 8824 8844 8824 q10 4143 3779 3777 3777 q11 578 487 498 487 q12 841 653 641 641 q13 16022 3187 3187 3187 q14 302 281 279 279 q15 525 470 520 470 q16 479 432 441 432 q17 1820 1537 1503 1503 q18 8194 8885 7809 7809 q19 1798 1670 1680 1670 q20 2123 1886 1859 1859 q21 5310 4945 4892 4892 q22 631 549 553 549 Total cold run time: 72432 ms Total hot run time: 56308 ms ```
doris-robot commented 2 days ago
TPC-DS: Total hot run time: 173416 ms ``` machine: 'aliyun_ecs.c7a.8xlarge_32C64G' scripts: https://github.com/apache/doris/tree/master/tools/tpcds-tools TPC-DS sf100 test result on commit d8c503d95e02577a8e419ec784245dde3d4b32d0, data reload: false query1 913 377 380 377 query2 6448 2392 2385 2385 query3 6629 209 215 209 query4 20593 17526 17279 17279 query5 3675 482 471 471 query6 267 157 171 157 query7 4615 293 291 291 query8 299 265 276 265 query9 8453 2378 2357 2357 query10 563 313 269 269 query11 10451 10035 10088 10035 query12 121 86 86 86 query13 1640 363 374 363 query14 9916 7790 7188 7188 query15 229 189 185 185 query16 7918 280 271 271 query17 1879 552 540 540 query18 2041 285 276 276 query19 204 156 156 156 query20 90 82 84 82 query21 209 136 125 125 query22 4223 3974 3978 3974 query23 33807 33482 33612 33482 query24 10558 2875 2912 2875 query25 612 426 389 389 query26 718 157 157 157 query27 2272 333 320 320 query28 5949 2147 2133 2133 query29 915 670 662 662 query30 249 157 161 157 query31 1010 767 773 767 query32 97 56 57 56 query33 708 373 280 280 query34 864 475 489 475 query35 756 630 611 611 query36 1131 971 978 971 query37 140 80 78 78 query38 2958 2839 2875 2839 query39 874 819 830 819 query40 210 124 127 124 query41 53 56 53 53 query42 107 102 99 99 query43 610 526 538 526 query44 1076 737 716 716 query45 194 164 171 164 query46 1067 706 719 706 query47 1850 1808 1771 1771 query48 368 301 293 293 query49 847 397 417 397 query50 760 381 380 380 query51 6922 6767 6754 6754 query52 112 90 93 90 query53 352 288 288 288 query54 869 440 432 432 query55 78 75 72 72 query56 286 275 266 266 query57 1104 1044 1061 1044 query58 236 251 289 251 query59 3453 3069 3103 3069 query60 293 280 275 275 query61 94 87 94 87 query62 637 448 439 439 query63 309 288 290 288 query64 8503 2227 1774 1774 query65 3188 3110 3111 3110 query66 748 327 324 324 query67 15710 15030 15199 15030 query68 7120 539 531 531 query69 725 418 326 326 query70 1194 1105 1113 1105 query71 475 316 272 272 query72 8481 4972 5300 4972 query73 824 322 323 322 query74 5936 5440 5453 5440 query75 4695 2645 2651 2645 query76 4274 948 947 947 query77 753 295 297 295 query78 10460 9918 9775 9775 query79 5112 510 511 510 query80 998 479 460 460 query81 544 225 220 220 query82 459 104 110 104 query83 313 171 169 169 query84 270 85 82 82 query85 956 274 273 273 query86 353 308 328 308 query87 3311 3060 3053 3053 query88 3712 2367 2352 2352 query89 497 374 373 373 query90 1968 188 186 186 query91 127 98 94 94 query92 60 50 47 47 query93 5524 513 517 513 query94 1324 194 183 183 query95 398 315 310 310 query96 613 261 265 261 query97 3241 3020 3007 3007 query98 204 203 199 199 query99 1274 851 848 848 Total cold run time: 281225 ms Total hot run time: 173416 ms ```
doris-robot commented 2 days ago
ClickBench: Total hot run time: 30.31 s ``` machine: 'aliyun_ecs.c7a.8xlarge_32C64G' scripts: https://github.com/apache/doris/tree/master/tools/clickbench-tools ClickBench test result on commit d8c503d95e02577a8e419ec784245dde3d4b32d0, data reload: false query1 0.04 0.03 0.03 query2 0.08 0.03 0.04 query3 0.22 0.04 0.05 query4 1.67 0.07 0.07 query5 0.49 0.51 0.49 query6 1.15 0.72 0.72 query7 0.02 0.01 0.01 query8 0.05 0.04 0.04 query9 0.55 0.50 0.48 query10 0.54 0.54 0.54 query11 0.15 0.12 0.11 query12 0.15 0.12 0.12 query13 0.60 0.59 0.59 query14 0.78 0.76 0.78 query15 0.85 0.81 0.81 query16 0.37 0.37 0.35 query17 0.98 0.98 0.94 query18 0.23 0.25 0.24 query19 1.91 1.67 1.70 query20 0.02 0.01 0.01 query21 15.44 0.79 0.66 query22 4.46 6.78 1.79 query23 18.29 1.31 1.27 query24 2.18 0.24 0.22 query25 0.17 0.08 0.08 query26 0.26 0.17 0.17 query27 0.08 0.08 0.08 query28 13.23 1.01 0.99 query29 12.61 3.29 3.28 query30 0.25 0.06 0.05 query31 2.85 0.39 0.40 query32 3.26 0.47 0.46 query33 2.87 2.94 2.88 query34 17.20 4.42 4.42 query35 4.49 4.44 4.48 query36 0.66 0.48 0.48 query37 0.19 0.15 0.17 query38 0.15 0.16 0.15 query39 0.04 0.04 0.03 query40 0.17 0.15 0.15 query41 0.10 0.04 0.04 query42 0.05 0.05 0.05 query43 0.05 0.03 0.03 Total cold run time: 109.9 s Total hot run time: 30.31 s ```