[improve](cloud) use delete bitmap cache to reduce sync rowset time#35856
[improve](cloud) use delete bitmap cache to reduce sync rowset time#35856dataroaring merged 4 commits intoapache:masterfrom
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 |
|
PR approved by at least one committer and no changes requested. |
|
PR approved by anyone and no changes requested. |
…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.