You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by "morningman (via GitHub)" <gi...@apache.org> on 2024/03/29 12:38:31 UTC
[PR] [feature](local-tvf) support local tvf on shared storage [doris]
morningman opened a new pull request, #33050:
URL: https://github.com/apache/doris/pull/33050
## Proposed changes
Previously, local tvf can only query data on one BE node.
But if the storage is shared(eg, NAS), it can be executed on multi nodes.
This PR mainly changes:
1. Add a new property `"shared_stoage" = "false/true"`
Default is false, if set to true, "backend_id" is optional. If "backend_id" is set,
it still be executed on that BE, if not set, "shared_stoage" must be "true"
and it will be executed on multi nodes.
## Further comments
If this is a relatively large or complex change, kick off the discussion at [dev@doris.apache.org](mailto:dev@doris.apache.org) by explaining why you chose the solution you did and what alternatives you considered, etc...
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org
Re: [PR] [feature](local-tvf) support local tvf on shared storage [doris]
Posted by "doris-robot (via GitHub)" <gi...@apache.org>.
doris-robot commented on PR #33050:
URL: https://github.com/apache/doris/pull/33050#issuecomment-2028041695
Load test result on machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
```
Load test result on commit 224f6b29f9cd1fd90721969989961a14e2b95ef7 with default session variables
Stream load json: 18 seconds loaded 2358488459 Bytes, about 124 MB/s
Stream load orc: 59 seconds loaded 1101869774 Bytes, about 17 MB/s
Stream load parquet: 32 seconds loaded 861443392 Bytes, about 25 MB/s
Insert into select: 15.6 seconds inserted 10000000 Rows, about 641K ops/s
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org
Re: [PR] [feature](local-tvf) support local tvf on shared storage [doris]
Posted by "morningman (via GitHub)" <gi...@apache.org>.
morningman merged PR #33050:
URL: https://github.com/apache/doris/pull/33050
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org
Re: [PR] [feature](local-tvf) support local tvf on shared storage [doris]
Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #33050:
URL: https://github.com/apache/doris/pull/33050#issuecomment-2029028288
PR approved by at least one committer and no changes requested.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org
Re: [PR] [feature](local-tvf) support local tvf on shared storage [doris]
Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #33050:
URL: https://github.com/apache/doris/pull/33050#issuecomment-2027301105
PR approved by anyone and no changes requested.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org
Re: [PR] [feature](local-tvf) support local tvf on shared storage [doris]
Posted by "doris-robot (via GitHub)" <gi...@apache.org>.
doris-robot commented on PR #33050:
URL: https://github.com/apache/doris/pull/33050#issuecomment-2028037554
<details>
<summary>TPC-DS: <b>Total hot run time: 181777 ms</b></summary>
```
machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
scripts: https://github.com/apache/doris/tree/master/tools/tpcds-tools
TPC-DS sf100 test result on commit 224f6b29f9cd1fd90721969989961a14e2b95ef7, data reload: false
query1 1207 1131 1123 1123
query2 6339 2039 1943 1943
query3 6664 207 210 207
query4 25370 21536 21575 21536
query5 4177 402 398 398
query6 272 194 181 181
query7 4593 294 296 294
query8 233 174 176 174
query9 8478 2197 2227 2197
query10 447 249 254 249
query11 14983 14490 14539 14490
query12 143 96 98 96
query13 1630 376 395 376
query14 8545 6962 6942 6942
query15 211 177 179 177
query16 6872 287 279 279
query17 973 606 586 586
query18 1876 290 292 290
query19 209 164 164 164
query20 97 93 94 93
query21 201 138 132 132
query22 5017 4911 4837 4837
query23 33120 32534 32738 32534
query24 12974 3247 3280 3247
query25 733 465 446 446
query26 2002 167 162 162
query27 3188 390 398 390
query28 7049 1890 1853 1853
query29 1340 632 641 632
query30 310 176 165 165
query31 1079 774 761 761
query32 109 65 64 64
query33 702 267 260 260
query34 1190 508 524 508
query35 859 755 749 749
query36 1018 915 896 896
query37 216 81 76 76
query38 3748 3613 3544 3544
query39 1068 1046 1062 1046
query40 224 147 140 140
query41 49 46 45 45
query42 116 111 107 107
query43 458 414 411 411
query44 1153 727 736 727
query45 290 290 286 286
query46 1096 824 825 824
query47 1985 1910 1929 1910
query48 403 323 328 323
query49 954 387 395 387
query50 829 408 419 408
query51 6982 6661 6824 6661
query52 111 113 107 107
query53 380 305 295 295
query54 330 235 232 232
query55 90 85 89 85
query56 260 240 237 237
query57 1304 1197 1201 1197
query58 252 227 233 227
query59 2665 2424 2438 2424
query60 263 240 233 233
query61 92 90 90 90
query62 679 443 437 437
query63 312 280 290 280
query64 5828 3073 3104 3073
query65 3030 2987 3017 2987
query66 1327 335 332 332
query67 15479 15158 14842 14842
query68 9454 557 595 557
query69 589 331 336 331
query70 1409 1106 1119 1106
query71 517 271 285 271
query72 6419 2607 2415 2415
query73 1553 324 324 324
query74 6774 6440 6300 6300
query75 3815 2286 2305 2286
query76 5802 1070 1197 1070
query77 574 264 245 245
query78 11017 10087 10187 10087
query79 9488 530 526 526
query80 1778 416 422 416
query81 511 226 222 222
query82 334 102 104 102
query83 214 163 161 161
query84 269 88 96 88
query85 947 290 289 289
query86 364 288 275 275
query87 3682 3504 3506 3504
query88 3638 2313 2291 2291
query89 541 359 370 359
query90 2021 178 177 177
query91 136 108 107 107
query92 59 51 49 49
query93 6764 527 542 527
query94 1190 187 195 187
query95 423 326 331 326
query96 625 273 270 270
query97 2695 2442 2471 2442
query98 252 211 219 211
query99 1159 900 852 852
Total cold run time: 301196 ms
Total hot run time: 181777 ms
```
</details>
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org
Re: [PR] [feature](local-tvf) support local tvf on shared storage [doris]
Posted by "doris-robot (via GitHub)" <gi...@apache.org>.
doris-robot commented on PR #33050:
URL: https://github.com/apache/doris/pull/33050#issuecomment-2027187792
Thank you for your contribution to Apache Doris.
Don't know what should be done next? See [How to process your PR](https://cwiki.apache.org/confluence/display/DORIS/How+to+process+your+PR)
Since 2024-03-18, the Document has been moved to [doris-website](https://github.com/apache/doris-website).
See [Doris Document](https://cwiki.apache.org/confluence/display/DORIS/Doris+Document).
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org
Re: [PR] [feature](local-tvf) support local tvf on shared storage [doris]
Posted by "BePPPower (via GitHub)" <gi...@apache.org>.
BePPPower commented on code in PR #33050:
URL: https://github.com/apache/doris/pull/33050#discussion_r1544540541
##########
fe/fe-core/src/main/java/org/apache/doris/tablefunction/LocalTableValuedFunction.java:
##########
@@ -66,14 +75,37 @@ public LocalTableValuedFunction(Map<String, String> properties) throws AnalysisE
}
}
filePath = otherProps.get(PROP_FILE_PATH);
- backendId = Long.parseLong(otherProps.get(PROP_BACKEND_ID));
+ backendId = Long.parseLong(otherProps.getOrDefault(PROP_BACKEND_ID, "-1"));
+ sharedStorage = Boolean.parseBoolean(otherProps.getOrDefault(PROP_SHARED_STORAGE, "false"));
+
+ // If not shared storage, backend_id is required
+ // If is shared storage, backend_id can still be set, so that we can query data on single BE node.
+ // Otherwise, if shared storage is true, we may use multi BE nodes.
+ if (backendId == -1 && !sharedStorage) {
+ throw new AnalysisException("'backend_id' is required when 'shared_storage' is false.");
+ } else if (backendId != -1 && sharedStorage) {
+ throw new AnalysisException("'shared_storage' should be false when 'backend_id' is set.");
+ }
Review Comment:
This else-if logic is inconsistent with the pr description?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org
Re: [PR] [feature](local-tvf) support local tvf on shared storage [doris]
Posted by "morningman (via GitHub)" <gi...@apache.org>.
morningman commented on PR #33050:
URL: https://github.com/apache/doris/pull/33050#issuecomment-2028023933
run buildall
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org
Re: [PR] [feature](local-tvf) support local tvf on shared storage [doris]
Posted by "doris-robot (via GitHub)" <gi...@apache.org>.
doris-robot commented on PR #33050:
URL: https://github.com/apache/doris/pull/33050#issuecomment-2028032899
<details>
<summary>TPC-H: <b>Total hot run time: 38552 ms</b></summary>
```
machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
scripts: https://github.com/apache/doris/tree/master/tools/tpch-tools
Tpch sf100 test result on commit 224f6b29f9cd1fd90721969989961a14e2b95ef7, data reload: false
------ Round 1 ----------------------------------
q1 17642 4117 4048 4048
q2 2096 189 185 185
q3 10483 1223 1379 1223
q4 10203 861 1000 861
q5 7473 2924 2891 2891
q6 213 131 131 131
q7 1081 643 607 607
q8 9397 2045 2022 2022
q9 6710 6201 6101 6101
q10 8453 3488 3487 3487
q11 418 243 236 236
q12 391 221 214 214
q13 17778 2927 2908 2908
q14 271 243 235 235
q15 523 482 467 467
q16 500 382 383 382
q17 947 886 906 886
q18 7331 6571 6433 6433
q19 1674 1521 1517 1517
q20 612 319 309 309
q21 3526 3099 3104 3099
q22 350 310 312 310
Total cold run time: 108072 ms
Total hot run time: 38552 ms
----- Round 2, with runtime_filter_mode=off -----
q1 4063 4073 4050 4050
q2 339 229 228 228
q3 2945 3039 2951 2951
q4 1882 1850 1765 1765
q5 5215 5186 5209 5186
q6 209 127 125 125
q7 2220 1828 1794 1794
q8 3204 3247 3268 3247
q9 8418 8434 8408 8408
q10 3748 3961 4018 3961
q11 550 469 483 469
q12 770 615 589 589
q13 16825 3049 3079 3049
q14 322 269 280 269
q15 537 499 493 493
q16 514 475 444 444
q17 1765 1735 1693 1693
q18 8171 7667 7854 7667
q19 1659 1660 1671 1660
q20 2037 1800 1840 1800
q21 5086 4942 4896 4896
q22 505 449 440 440
Total cold run time: 70984 ms
Total hot run time: 55184 ms
```
</details>
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org
Re: [PR] [feature](local-tvf) support local tvf on shared storage [doris]
Posted by "doris-robot (via GitHub)" <gi...@apache.org>.
doris-robot commented on PR #33050:
URL: https://github.com/apache/doris/pull/33050#issuecomment-2028040538
<details>
<summary>ClickBench: <b>Total hot run time: 29.82 s</b></summary>
```
machine: 'aliyun_ecs.c7a.8xlarge_32C64G'
scripts: https://github.com/apache/doris/tree/master/tools/clickbench-tools
ClickBench test result on commit 224f6b29f9cd1fd90721969989961a14e2b95ef7, data reload: false
query1 0.04 0.03 0.03
query2 0.07 0.04 0.04
query3 0.24 0.05 0.05
query4 1.68 0.06 0.06
query5 0.48 0.47 0.50
query6 1.14 0.65 0.65
query7 0.01 0.01 0.01
query8 0.05 0.04 0.04
query9 0.57 0.50 0.52
query10 0.56 0.55 0.58
query11 0.14 0.12 0.11
query12 0.14 0.11 0.11
query13 0.61 0.60 0.59
query14 0.79 0.79 0.77
query15 0.85 0.82 0.84
query16 0.36 0.35 0.35
query17 0.97 0.97 0.99
query18 0.24 0.25 0.25
query19 1.79 1.74 1.71
query20 0.02 0.01 0.01
query21 15.53 0.78 0.66
query22 3.49 5.90 1.51
query23 17.54 1.26 1.15
query24 1.44 0.22 0.23
query25 0.13 0.10 0.08
query26 0.27 0.18 0.19
query27 0.08 0.08 0.08
query28 13.82 0.95 0.95
query29 12.59 3.39 3.40
query30 0.28 0.09 0.08
query31 2.80 0.39 0.39
query32 3.29 0.47 0.48
query33 2.84 2.84 2.81
query34 15.48 4.33 4.31
query35 4.38 4.39 4.34
query36 0.66 0.47 0.47
query37 0.20 0.16 0.18
query38 0.17 0.17 0.16
query39 0.04 0.04 0.04
query40 0.18 0.15 0.14
query41 0.10 0.06 0.05
query42 0.06 0.06 0.05
query43 0.04 0.04 0.05
Total cold run time: 106.16 s
Total hot run time: 29.82 s
```
</details>
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org