[ 
https://issues.apache.org/jira/browse/TRAFODION-1462?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14715271#comment-14715271
 ] 

Suresh Subbiah commented on TRAFODION-1462:
-------------------------------------------

This changed was merged today with this commit.
https://github.com/apache/incubator-trafodion/commit/5928f31a1e20c70a528101487def3db0ef0ade9c

This commit addresses multiple JIRAs. The actual change for this JIRA is in 
nadefaults.cpp


> Enable HBase serialization by default
> -------------------------------------
>
>                 Key: TRAFODION-1462
>                 URL: https://issues.apache.org/jira/browse/TRAFODION-1462
>             Project: Apache Trafodion
>          Issue Type: Improvement
>          Components: sql-general
>    Affects Versions: 1.0 (pre-incubation)
>            Reporter: Suresh Subbiah
>            Assignee: Suresh Subbiah
>             Fix For: 2.0-incubating
>
>   Original Estimate: 168h
>  Remaining Estimate: 168h
>
> Currently when a Trafodion table is created, by default data stored in HBase 
> tables is not serialized (i.e. not encoded or stored in a form that will 
> allow evaluation of range predicates with HBase Filters executing in the 
> RegionServer proceses). Trafodion did support storing Trafodion data in such 
> an encoded format, but the feature had to be explicitly enabled with
> cqd HBASE_SERIALIZATION 'ON' ;
> With this change the default setting for the cqd has been changed to ON. 
> Tables will now be created by default with columns having the serialized 
> attribute. This can be verified by using the showddl command. For example
> >>showddl customer_demographics ;
> CREATE TABLE TRAFODION.SCH.CUSTOMER_DEMOGRAPHICS
>   (
>     CD_DEMO_SK                       INT NO DEFAULT NOT NULL NOT DROPPABLE
>       SERIALIZED
>   , CD_GENDER                        CHAR(1) CHARACTER SET ISO88591 COLLATE
>       DEFAULT DEFAULT NULL SERIALIZED
>   , CD_MARITAL_STATUS                CHAR(1) CHARACTER SET ISO88591 COLLATE
>       DEFAULT DEFAULT NULL SERIALIZED
>   , CD_EDUCATION_STATUS              CHAR(20) CHARACTER SET ISO88591 COLLATE
>       DEFAULT DEFAULT NULL SERIALIZED
>   , CD_PURCHASE_ESTIMATE             INT DEFAULT NULL SERIALIZED
>   , CD_CREDIT_RATING                 CHAR(10) CHARACTER SET ISO88591 COLLATE
>       DEFAULT DEFAULT NULL SERIALIZED
>   , CD_DEP_COUNT                     INT DEFAULT NULL SERIALIZED
>   , CD_DEP_EMPLOYED_COUNT            INT DEFAULT NULL SERIALIZED
>   , CD_DEP_COLLEGE_COUNT             INT DEFAULT NULL SERIALIZED
>   )
>   STORE BY (CD_DEMO_SK ASC)
> ;
> CREATE INDEX CD_DEP_COLLEGE_COUNT_IDX ON TRAFODION.SCH.CUSTOMER_DEMOGRAPHICS
>   (
>     CD_DEP_COLLEGE_COUNT ASC
>   )
> ;
> CREATE INDEX CD_DEP_COUNT_IDX ON TRAFODION.SCH.CUSTOMER_DEMOGRAPHICS
>   (
>     CD_DEP_COUNT ASC
>   )
> ;
> The create table statements used for this table is
> create table customer_demographics
> (
>  cd_demo_sk int not null,
>  cd_gender char(1),
>  cd_marital_status char(1),
>  cd_education_status char(20),
>  cd_purchase_estimate int,
>  cd_credit_rating char(10),
>  cd_dep_count int,
>  cd_dep_employed_count int,
>  cd_dep_college_count int
> ) store by (cd_demo_sk);
> create index cd_dep_count_IDX on customer_demographics(cd_dep_count);
> create index cd_dep_college_count_IDX on 
> customer_demographics(cd_dep_college_count);
> The indexes are also serialized though showddl does not show it.
> Having a column as serialized allows data to be stored in a format suitable 
> for using HBase filters. However to get HBase filters in the execution plan 
> for a SQL query, the cqd HBASE_FILTER_PREDS must be set to 'ON'. This cqd 
> still defaults to 'OFF' as in some cases it is better to evaluate the 
> predicate in the Trafodion/SQL layer, rather than the RegionServers (since 
> Trafodion can use more ESPs to further parallelize predicate evaulation).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to