hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "stack (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-10070) HBase read high-availability using eventually consistent region replicas
Date Sat, 18 Jan 2014 02:10:19 GMT

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

stack commented on HBASE-10070:
-------------------------------

You may not have seen my response above where I think we should not talk of replicas in our
model all.  We should call the region instances something else and then in a layer above do
designations such as "primary" or "leader" and "read-only replica" or "follower".   If you
agree with me, the 'desired region model' you propose in your comment is no longer appropriate.

Sorry Enis, I don't get your second paragraph above.  Pardon me.  It is a failing on my part.
 I'm having trouble untangling what the 'Right now' refers to, whether it is trunk or your
work on this feature so far.... and what 'whether this is possible' refers to. 

bq. I guess we can add it there, but add special case handling for parsing back. Would that
work?

I haven't done the research but am thinking that a wholesale move to a new region naming scheme
for all new region creations better than a scheme where we have 'replicas' named with one
format and everything else another.







> HBase read high-availability using eventually consistent region replicas
> ------------------------------------------------------------------------
>
>                 Key: HBASE-10070
>                 URL: https://issues.apache.org/jira/browse/HBASE-10070
>             Project: HBase
>          Issue Type: New Feature
>            Reporter: Enis Soztutar
>            Assignee: Enis Soztutar
>         Attachments: HighAvailabilityDesignforreadsApachedoc.pdf
>
>
> In the present HBase architecture, it is hard, probably impossible, to satisfy constraints
like 99th percentile of the reads will be served under 10 ms. One of the major factors that
affects this is the MTTR for regions. There are three phases in the MTTR process - detection,
assignment, and recovery. Of these, the detection is usually the longest and is presently
in the order of 20-30 seconds. During this time, the clients would not be able to read the
region data.
> However, some clients will be better served if regions will be available for reads during
recovery for doing eventually consistent reads. This will help with satisfying low latency
guarantees for some class of applications which can work with stale reads.
> For improving read availability, we propose a replicated read-only region serving design,
also referred as secondary regions, or region shadows. Extending current model of a region
being opened for reads and writes in a single region server, the region will be also opened
for reading in region servers. The region server which hosts the region for reads and writes
(as in current case) will be declared as PRIMARY, while 0 or more region servers might be
hosting the region as SECONDARY. There may be more than one secondary (replica count >
2).
> Will attach a design doc shortly which contains most of the details and some thoughts
about development approaches. Reviews are more than welcome. 
> We also have a proof of concept patch, which includes the master and regions server side
of changes. Client side changes will be coming soon as well. 



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Mime
View raw message