If they are defined, they can override table-level settings.
{
        auto lock = lockParts();
        const auto it = column_sizes.find(name);
        return it == std::end(column_sizes) ? 0 : it->second.data_compressed;
    }
    ColumnSizeByName getColumnSizes() const override
    {
        auto lock = lockParts();
        return column_sizes;
    }
    const ColumnsDescription & getObjectColumns() const { return object_columns; }
    
    static ColumnsDescription getObjectColumns(
        const DataPartsVector & parts, const ColumnsDescription & storage_columns);
    IndexSizeByName getSecondaryIndexSizes() const override
    {