You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "Jean-Daniel Cryans (JIRA)" <ji...@apache.org> on 2010/02/06 00:00:28 UTC

[jira] Assigned: (HBASE-1728) Column family scoping

     [ https://issues.apache.org/jira/browse/HBASE-1728?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jean-Daniel Cryans reassigned HBASE-1728:
-----------------------------------------

    Assignee: Jean-Daniel Cryans

This jira is the next on my list. Here are my thoughts :

Ryan's point is valid (to be able to change HCD without disable) but resolving that is outside of the scope of this jira (he agrees on that). This should not be a blocker.

 I'm not sure I agree that we should be able to set destinations on the family scope. What kind of mess are you creating if all families from all tables are going different ways? I don't see any reason why we should not at least first have only local or global scope.

The KV should not carry the scoping information since it's only needed in HLog where we already have access to the HTD.

As Andrew was saying in HBASE-2129, we need to be able to trace where an edit is coming from and a Byte would be enough to hold that value. It should not go in KV since that means we would store that in HFiles. I think the best would be to put it in HLogKey. How chained clusters should handle that then is when we have:

master1 => slave1 & master2 => slave2 

The second node should use a new special field in Put and Delete to set the original cluster Byte which will be passed down to HLog in order to create new HLogKey with that same value. So slave2 will still receive the location of the original cluster which may be master1 or master2. If we have a cycle:

... => slave3 & master1 => slave1 & master2 => slave2 & master3 => slave3 & master1 =>...

Then each master needs to consider if the slave cluster it's pushing to is the same as the one in the Byte of every edit it's about to replicate.

> Column family scoping
> ---------------------
>
>                 Key: HBASE-1728
>                 URL: https://issues.apache.org/jira/browse/HBASE-1728
>             Project: Hadoop HBase
>          Issue Type: Sub-task
>            Reporter: Andrew Purtell
>            Assignee: Jean-Daniel Cryans
>             Fix For: 0.21.0
>
>         Attachments: HCD-family-scoping.patch, HLogKey-scoping.patch
>
>
> Support column family scoping via a new HCD attribute. Add convenience methods. Add Thrift, REST, and Stargate support. Provide initial set of scoping constants and javadoc setting expectations for a simple default binary scoping policy: replicate, or do not. Make the underlying type Integer so more complex edit routing policies are possible. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.