[
https://issues.apache.org/jira/browse/HIVE-3746?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13504126#comment-13504126
]
Carl Steinbach commented on HIVE-3746:
--------------------------------------
This would probably be more efficient:
{noformat}
// Represents a rowset
struct TRowSet {
// The starting row offset of this rowset.
1: required i64 startRowOffset
2: required list<TColumn> columns
}
struct TColumn {
1: required list<i32> nullOffsets
2: required TColumnData columnData
}
union TColumnData {
1: list<bool> boolColumn
2: list<byte> byteColumn
3: list<i16> i16Column
4: list<i32> i32Column
5: list<i64> i64Column
6: list<double> doubleColumn
7: list<string> stringColumn
}
{noformat}
We may be able to make this even more compact by using a run-length encoding
scheme for the nullOffset vector (and possibly the ColumnData list too).
> TRowSet resultset structure should be column-oriented
> -----------------------------------------------------
>
> Key: HIVE-3746
> URL: https://issues.apache.org/jira/browse/HIVE-3746
> Project: Hive
> Issue Type: Sub-task
> Components: Server Infrastructure
> Reporter: Carl Steinbach
> Assignee: Carl Steinbach
>
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira