[Refactor](map) remove using column array in map to reduce offset column (#17330)

1. remove column array in map 
2. add offsets column in map 
Aim to reduce duplicate offset  from key-array and value-array in disk
This commit is contained in:
amory
2023-03-09 11:22:26 +08:00
committed by GitHub
parent 368e6a4f9c
commit 06dee69174
19 changed files with 659 additions and 326 deletions

View File

@ -195,10 +195,9 @@ vectorized::IColumn::MutablePtr Schema::get_predicate_column_ptr(const Field& fi
}
case OLAP_FIELD_TYPE_MAP:
ptr = doris::vectorized::ColumnMap::create(
doris::vectorized::ColumnArray::create(
get_predicate_column_ptr(*field.get_sub_field(0), true)),
doris::vectorized::ColumnArray::create(
get_predicate_column_ptr(*field.get_sub_field(1), true)));
get_predicate_column_ptr(*field.get_sub_field(0)),
get_predicate_column_ptr(*field.get_sub_field(1)),
doris::vectorized::ColumnArray::ColumnOffsets::create());
break;
default:
LOG(FATAL) << "Unexpected type when choosing predicate column, type=" << field.type();