zenoyang opened a new pull request #8627: URL: https://github.com/apache/incubator-doris/pull/8627
# Proposed changes Code optimization and refactoring for low-cardinality columns in storage layer. ## Problem Summary: Optimization: - Add `dict_code` member variable to the predicate. Before the predicate is calculated, the conversion of the predicate constant into the dictionary code only needs to be done once Refactor: - Add `PredicateType` enum, add `type` method to the predicate, which is used to represent the predicate type, instead of the original less flexible way, for example: `is_in_predicate()` ... - Added the following interface to `IColumn` to simplify the code of the storage layer and avoid exposing the specific type of column: - `convert_to_predicate_column_if_dictionary` - `convert_dict_codes_if_necessary` - `set_predicate_dict_code_if_necessary` - Class member variables start with an underscore - Specify the `int` type only supported by the specialized `ColumnDictionary` template In addition to this, there are some priorities that I will provide in the coming period. -- 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-unsubscr...@doris.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org