-
Notifications
You must be signed in to change notification settings - Fork 3.7k
[improve](cloud) use delete bitmap cache to reduce sync rowset time #35856
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Thank you for your contribution to Apache Doris. Since 2024-03-18, the Document has been moved to doris-website. |
|
run buildall |
|
clang-tidy review says "All clean, LGTM! 👍" |
1 similar comment
|
clang-tidy review says "All clean, LGTM! 👍" |
|
TeamCity be ut coverage result: |
TPC-H: Total hot run time: 41494 ms |
TPC-DS: Total hot run time: 171359 ms |
ClickBench: Total hot run time: 29.95 s |
0372ffc to
753f892
Compare
|
run buildall |
|
clang-tidy review says "All clean, LGTM! 👍" |
|
run buildall |
|
clang-tidy review says "All clean, LGTM! 👍" |
TPC-H: Total hot run time: 40248 ms |
|
TeamCity be ut coverage result: |
TPC-DS: Total hot run time: 172534 ms |
ClickBench: Total hot run time: 30.58 s |
zhannngchen
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
|
PR approved by at least one committer and no changes requested. |
|
PR approved by anyone and no changes requested. |
dataroaring
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
…35856) My test show that get_delete_bitmap from metaservice may cost too much time while doing sync_rowset in cloud mode, which may lead to calculating delete bitmap slow on publish phase, we can use the existing delete bitmap cache to slove this problem.
…map from cache failed (#41309) ## Proposed changes Issue Number: close #xxx To accelerate the speed of sync latest delete bitmap, #35856 try to get the delete bitmap from `CloudTxnDeleteBitmapCache` first. In the following situation, compaction may get empty delete bitmap and cause duplicate key: 1. compaction started 2. several load succeed during the compaction 3. compaction finished data merging and start to calculate delete bitmap generated by latest load tasks 4. compaction try to sync rowset and delete bitmap, it get delete bitmap first from `CloudTxnDeleteBitmapCache` 5. `CloudTxnDeleteBitmapCache::get_delete_bitmap()` can get txn infos from it's inner map, but cache missed when it try to get delete bitmap from LRU cache, it don't report error but returned an empty delete bitmap 6. compaction used wrong delete bitmap, duplicate key occured.
…map from cache failed (#41309) ## Proposed changes Issue Number: close #xxx To accelerate the speed of sync latest delete bitmap, #35856 try to get the delete bitmap from `CloudTxnDeleteBitmapCache` first. In the following situation, compaction may get empty delete bitmap and cause duplicate key: 1. compaction started 2. several load succeed during the compaction 3. compaction finished data merging and start to calculate delete bitmap generated by latest load tasks 4. compaction try to sync rowset and delete bitmap, it get delete bitmap first from `CloudTxnDeleteBitmapCache` 5. `CloudTxnDeleteBitmapCache::get_delete_bitmap()` can get txn infos from it's inner map, but cache missed when it try to get delete bitmap from LRU cache, it don't report error but returned an empty delete bitmap 6. compaction used wrong delete bitmap, duplicate key occured.
…map from cache failed (apache#41309) ## Proposed changes Issue Number: close #xxx To accelerate the speed of sync latest delete bitmap, apache#35856 try to get the delete bitmap from `CloudTxnDeleteBitmapCache` first. In the following situation, compaction may get empty delete bitmap and cause duplicate key: 1. compaction started 2. several load succeed during the compaction 3. compaction finished data merging and start to calculate delete bitmap generated by latest load tasks 4. compaction try to sync rowset and delete bitmap, it get delete bitmap first from `CloudTxnDeleteBitmapCache` 5. `CloudTxnDeleteBitmapCache::get_delete_bitmap()` can get txn infos from it's inner map, but cache missed when it try to get delete bitmap from LRU cache, it don't report error but returned an empty delete bitmap 6. compaction used wrong delete bitmap, duplicate key occured.
Proposed changes
Issue Number: close #xxx
My test show that get_delete_bitmap from metaservice may cost too much time while doing sync_rowset in cloud mode, which may lead to calculating delete bitmap slow on publish phase, we can use the existing delete bitmap cache to slove this problem.