-
Notifications
You must be signed in to change notification settings - Fork 3.7k
[Improve](cloud) support caching SchemaCloudDictionary in BE side #47629
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. Please clearly describe your PR:
|
|
run buildall |
/* * SchemaCloudDictionaryCache provides a local cache for SchemaCloudDictionary. * * Caching logic: * - If the dictionary associated with a given key has not had any new columns added * (determined by comparing the serialized data for consistency), * the cached dictionary is directly used to update the dictionary list in the rowset meta * (similar to the process_dictionary logic in write_schema_dict). * - If new columns have been detected, the local cache is disregarded, and the updated * dictionary should be fetched via the meta service. */ use SchemaCloudDictionaryCache in Backend to reduce the frequency of reading and converting SchemaCloudDictionary in MetaService
|
run buildall |
TPC-H: Total hot run time: 31815 ms |
|
TeamCity be ut coverage result: |
TPC-DS: Total hot run time: 183512 ms |
ClickBench: Total hot run time: 31.15 s |
|
TeamCity cloud ut coverage result: |
|
run buildall |
|
TeamCity cloud ut coverage result: |
TPC-H: Total hot run time: 31923 ms |
TPC-DS: Total hot run time: 183835 ms |
ClickBench: Total hot run time: 30.11 s |
|
TeamCity be ut coverage result: |
|
run buildall |
|
TeamCity cloud ut coverage result: |
TPC-H: Total hot run time: 31949 ms |
TPC-DS: Total hot run time: 191544 ms |
ClickBench: Total hot run time: 31.33 s |
|
run buildall |
|
TeamCity cloud ut coverage result: |
TPC-H: Total hot run time: 32377 ms |
TPC-DS: Total hot run time: 183916 ms |
ClickBench: Total hot run time: 31.29 s |
|
PR approved by at least one committer and no changes requested. |
|
PR approved by anyone and no changes requested. |
csun5285
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
BE UT Coverage ReportIncrement line coverage Increment coverage report
|
…7629) The most important changes focus on adding support for schema dictionary caching, modifying existing methods to utilize the cache, and ensuring schema consistency. ``` /* * SchemaCloudDictionaryCache provides a local cache for SchemaCloudDictionary. * * Caching logic: * - If the dictionary associated with a given key has not had any new columns added * (determined by comparing the serialized data for consistency), * the cached dictionary is directly used to update the dictionary list in the rowset meta * (similar to the process_dictionary logic in write_schema_dict). * - If new columns have been detected, the local cache is disregarded, and the updated * dictionary should be fetched via the meta service. */ ``` use SchemaCloudDictionaryCache in Backend to reduce the frequency of reading and converting SchemaCloudDictionary in MetaService
…ache#47629) The most important changes focus on adding support for schema dictionary caching, modifying existing methods to utilize the cache, and ensuring schema consistency. ``` /* * SchemaCloudDictionaryCache provides a local cache for SchemaCloudDictionary. * * Caching logic: * - If the dictionary associated with a given key has not had any new columns added * (determined by comparing the serialized data for consistency), * the cached dictionary is directly used to update the dictionary list in the rowset meta * (similar to the process_dictionary logic in write_schema_dict). * - If new columns have been detected, the local cache is disregarded, and the updated * dictionary should be fetched via the meta service. */ ``` use SchemaCloudDictionaryCache in Backend to reduce the frequency of reading and converting SchemaCloudDictionary in MetaService
…ache#47629) The most important changes focus on adding support for schema dictionary caching, modifying existing methods to utilize the cache, and ensuring schema consistency. ``` /* * SchemaCloudDictionaryCache provides a local cache for SchemaCloudDictionary. * * Caching logic: * - If the dictionary associated with a given key has not had any new columns added * (determined by comparing the serialized data for consistency), * the cached dictionary is directly used to update the dictionary list in the rowset meta * (similar to the process_dictionary logic in write_schema_dict). * - If new columns have been detected, the local cache is disregarded, and the updated * dictionary should be fetched via the meta service. */ ``` use SchemaCloudDictionaryCache in Backend to reduce the frequency of reading and converting SchemaCloudDictionary in MetaService
The most important changes focus on adding support for schema dictionary caching, modifying existing methods to utilize the cache, and ensuring schema consistency.
use SchemaCloudDictionaryCache in Backend to reduce the frequency of reading and converting SchemaCloudDictionary in MetaService
What problem does this PR solve?
Issue Number: close #xxx
Related PR: #xxx
Problem Summary:
Release note
None
Check List (For Author)
Test
Behavior changed:
Does this need documentation?
Check List (For Reviewer who merge this PR)