You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Ted Yu (JIRA)" <ji...@apache.org> on 2013/07/18 17:28:49 UTC

[jira] [Commented] (HBASE-8980) Assistant Store ----------- An Index Store of HRegion

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

Ted Yu commented on HBASE-8980:
-------------------------------

If a table has multiple column families, how many assistant stores would be created ?

Do you have some performance numbers w.r.t. both impact on writing to the table and possibly assisted scanning ?

In the patch, modification to store file is presented. People may be more interested in seeing how scanning / filtering is done on top of the assistant stores.

Thanks
                
> Assistant Store ----------- An Index Store of HRegion
> -----------------------------------------------------
>
>                 Key: HBASE-8980
>                 URL: https://issues.apache.org/jira/browse/HBASE-8980
>             Project: HBase
>          Issue Type: New Feature
>          Components: regionserver
>            Reporter: chunhui shen
>            Assignee: chunhui shen
>         Attachments: 8980-94.patch
>
>
> *Background*
> a.Generally, we would hope several organizations for the same data. e.g. Secondary Index sortes the data as the non-primary key.
> b.Now, when we scanning the data on HBase with condition, like ValueFilter, its  efficiency seems low
> c.We could create an Assistant Store to store the data with another organization for the data of HRegion
> *Assistant Store*
> a.It's a store of HRegion, like HStore, could be created by user through adding ColumnFamliy
> b.Data in Assistant Store is the copy of data in HRegion, but using another organization ,The Exception is that its row could be not in the range of HRegion and its value is the same as the row of original KeyValue
> For example, 
> The region(Range:'row001'~'row999') includes the following KVs in the Store cf:
> row001/cf:q1/val001
> row002/cf:q1/val002
> row003/cf:q1/val003
> we could create an Assistant Store(named as) for the region which includes the following KVs:
> val001/cf:q1/row001
> val002/cf:q1/row002
> val003/cf:q1/row003
> c.We could use local region transaction to ensure the Atomicity and Consistency
> *Implementation Dependency*
> a.Split the StoreFile as value.(Now,we just split the file as row)
> b.Support multi-row transaction in region (Alreadt implemented)
> Providing an initial patch on 0.94 version. 
> What do you think about such a Store.

--
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