hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Enis Soztutar (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-7721) Local Transactions in META
Date Tue, 05 Feb 2013 01:13:13 GMT

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

Enis Soztutar commented on HBASE-7721:
--------------------------------------

bq. Is there a particular reason why META has the region as key instead of table?
I think it was just designed that way from the get go.
bq. having the regions inside the table row should give the transaction on the table modification
for free right?
I think this ties down to the same discussion that is happening at HBASE-7716. We could definitely
use table names as rows, not sure whether we expose the actual META schema to the clients
as an API (through MetaScanner or MetaReader). Hopefully not. 
But in the mean time that we fix HBASE-2600, we can go with this patch I think. 

                
> Local Transactions in META
> --------------------------
>
>                 Key: HBASE-7721
>                 URL: https://issues.apache.org/jira/browse/HBASE-7721
>             Project: HBase
>          Issue Type: Improvement
>          Components: Coprocessors, regionserver
>            Reporter: Enis Soztutar
>            Assignee: Enis Soztutar
>             Fix For: 0.96.0
>
>
> Thanks to Lars' local transactions patch (HBASE-5229), we can entertain the possibility
of doing local transactions within META regions.
> We need this mainly for region splits and merges. Clients scan the META concurrent to
the split/merge operations, and to prevent the clients from seeing overlapping region boundaries
or holes in META, we just through hoops. For more backgroun, see BlockingMetaScannerVisitor,
HBASE-5986, and my comments at https://reviews.apache.org/r/8716/. 
> Now, for the actual implementation options: 
>  1. As outlined in http://hadoop-hbase.blogspot.com/2012_02_01_archive.html, 
>    - We have to implement a Custom RegionSplitPolicy for the META regions to ensure that
a table's regions are always co-located in the same META region. Then we can add MultiRowMutationEndpoint
as a system level coprocessor, and use it for META operations. 
>  2. Do smt like HBASE-7716, and expose local atomic multi-row operations as a native
API.
>  3. Move META to zookeeper. Use zookeeper.multi.  
> Then we can change region split / merge logic to make use of atomic META operations.

> Thoughts, suggestions? 

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

Mime
View raw message