HBASE-4517 Document new replication features in 0.92
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1177866 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
c80eaecce1
commit
1e606a3790
|
@ -74,6 +74,10 @@
|
|||
and the master cluster will do its “best effort” to balance the stream
|
||||
of replication on the slave clusters by relying on randomization.
|
||||
</p>
|
||||
<p>
|
||||
As of version 0.92 HBase supports master/master and cyclic replication as
|
||||
well as replication to multiple slaves.
|
||||
</p>
|
||||
<img src="images/replication_overview.png"/>
|
||||
</section>
|
||||
<section name="Enabling replication">
|
||||
|
@ -104,10 +108,14 @@
|
|||
<p>
|
||||
In a separate thread, the edit is read from the log (as part of a batch)
|
||||
and only the KVs that are replicable are kept (that is, that they are part
|
||||
of a family scoped GLOBAL in the family's schema and non-catalog so not
|
||||
.META. or -ROOT-). When the buffer is filled, or the reader hits the
|
||||
end of the file, the buffer is sent to a random region server on the
|
||||
slave cluster.
|
||||
of a family scoped GLOBAL in the family's schema, non-catalog so not
|
||||
.META. or -ROOT-, and did not originate in the target slave cluster - in
|
||||
case of cyclic replication).
|
||||
</p>
|
||||
<p>
|
||||
The edit is then tagged with the master's cluster UUID.
|
||||
When the buffer is filled, or the reader hits the end of the file,
|
||||
the buffer is sent to a random region server on the slave cluster.
|
||||
</p>
|
||||
<p>
|
||||
Synchronously, the region server that receives the edits reads them
|
||||
|
@ -115,6 +123,8 @@
|
|||
Once all edits are read, each buffer is flushed using the normal HBase
|
||||
client (HTables managed by a HTablePool). This is done in order to
|
||||
leverage parallel insertion (MultiPut).
|
||||
The master's cluster UUID is retained in the edits applied at the
|
||||
slave cluster in order to allow cyclic replication.
|
||||
</p>
|
||||
<p>
|
||||
Back in the master cluster's region server, the offset for the current
|
||||
|
@ -394,18 +404,6 @@
|
|||
queues of another dead RS, we will miss the data from the queues
|
||||
that weren't copied.
|
||||
</li>
|
||||
<li>
|
||||
HBASE-2196, a master cluster can only support a single slave, some
|
||||
refactoring is needed to support this.
|
||||
</li>
|
||||
<li>
|
||||
HBASE-2195, edits are applied disregard their home cluster, it should
|
||||
carry that data and check it.
|
||||
</li>
|
||||
<li>
|
||||
HBASE-3130, the master cluster needs to be restarted if its region
|
||||
servers lose their session with a slave cluster.
|
||||
</li>
|
||||
</ol>
|
||||
</section>
|
||||
</body>
|
||||
|
|
Loading…
Reference in New Issue