You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@doris.apache.org by GitBox <gi...@apache.org> on 2019/07/29 13:19:44 UTC

[GitHub] [incubator-doris] imay commented on issue #1561: Unify Field and ColumnSchema in Storage

imay commented on issue #1561: Unify Field and ColumnSchema in Storage
URL: https://github.com/apache/incubator-doris/pull/1561#issuecomment-515987932
 
 
   > @imay Hi. Why introduce the new concept `ContiguousRow` and `RowCursorCell`? Are they necessary? I think we should keep core concepts as little as possible and ensure every core concept is clear and easy to understand.
   
   @kangkaisen 
   
   In origin code, for example in Memtable, we use `char*` to represent a row. I introduce `ContiguousRow` to represent `char* ` with a `Schema`. And I think this struct will replace `RowCursor` in some day. And we have many types of row, like `RowCursor`, `char*`, `RowBlockRow` which is used in storage V2. 
   
   And there are some operations on row like copy, compare with row. In origin code, there are many copies code for same operation. So I introduce `Row` and `Cell` concept to let us finish this operation for all types of row with one copy template row. 
   
   And what's more, in our origin code, many code should handle row format, like `ptr + 1` to get column pointer, `*ptr` to get if it is null. With `Cell` concept, we can encapsulate this logic in it. So If we want to change `RowCursor` format, we need to modify only a couple of files.

----------------------------------------------------------------
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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@doris.apache.org
For additional commands, e-mail: dev-help@doris.apache.org