doris icon indicating copy to clipboard operation
doris copied to clipboard

[enhencement](jdbc catalog) Use Druid instead of HikariCP in JdbcClient

Open BePPPower opened this issue 1 year ago • 3 comments

Proposed changes

Issue Number: close #xxx

This pr does three things:

  1. Use Druid instead of HikariCP in JdbcClient
  2. when download udf jar, add the name of the jar package after the local file name.
  3. refactor some jdbcResource code

Problem summary

Describe your changes.

Checklist(Required)

  • [ ] Does it affect the original behavior
  • [ ] Has unit tests been added
  • [ ] Has document been added or modified
  • [ ] Does it need to update dependencies
  • [ ] Is this PR support rollback (If NO, please explain WHY)

Further comments

If this is a relatively large or complex change, kick off the discussion at [email protected] by explaining why you chose the solution you did and what alternatives you considered, etc...

BePPPower avatar Mar 03 '23 08:03 BePPPower

clang-tidy review says "All clean, LGTM! :+1:"

github-actions[bot] avatar Mar 03 '23 08:03 github-actions[bot]

clang-tidy review says "All clean, LGTM! :+1:"

github-actions[bot] avatar Mar 03 '23 09:03 github-actions[bot]

Use Druid instead of HikariCP in JdbcClient

Why are you doing this? It's no make sense to me.

CalvinKirs avatar Mar 03 '23 09:03 CalvinKirs

Unify to use same logic as we did in JdbcExecutor

morningman avatar Mar 06 '23 00:03 morningman

clang-tidy review says "All clean, LGTM! :+1:"

github-actions[bot] avatar Mar 06 '23 08:03 github-actions[bot]

clang-tidy review says "All clean, LGTM! :+1:"

github-actions[bot] avatar Mar 06 '23 09:03 github-actions[bot]

clang-tidy review says "All clean, LGTM! :+1:"

github-actions[bot] avatar Mar 06 '23 09:03 github-actions[bot]

run buildall

BePPPower avatar Mar 06 '23 10:03 BePPPower

TeamCity pipeline, clickbench performance test result: the sum of best hot time: 33.32 seconds stream load tsv: 452 seconds loaded 74807831229 Bytes, about 157 MB/s stream load json: 36 seconds loaded 2358488459 Bytes, about 62 MB/s stream load orc: 74 seconds loaded 1101869774 Bytes, about 14 MB/s stream load parquet: 31 seconds loaded 861443392 Bytes, about 26 MB/s https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/tmp/20230306120806_clickbench_pr_109350.html

hello-stephen avatar Mar 06 '23 12:03 hello-stephen

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

github-actions[bot] avatar Mar 06 '23 13:03 github-actions[bot]

PR approved by anyone and no changes requested.

github-actions[bot] avatar Mar 06 '23 13:03 github-actions[bot]

I don't recommend using Druid to replace HikariCP. HikariCP has much higher performance than Druid, and I think this requirement is invalid. I don't recommend adopting it. If monitoring or similar tasks are needed, they can be done through third-party middleware. Don't affect Doris' performance. I really don't understand why such a strange requirement was proposed. Even Spring uses HikariCP by default. If Druid is used, it's like putting the cart before the horse. I think this is also why Doris does not use Druid by default, so I don't recommend adopting it

zjf88865 avatar Dec 05 '23 03:12 zjf88865