@InterfaceAudience.Private public class Replication extends WALActionsListener.Base implements ReplicationSourceService, ReplicationSinkService
HRegionServer.WALActionsListener.Base| 构造器和说明 |
|---|
Replication()
Empty constructor
|
Replication(Server server,
org.apache.hadoop.fs.FileSystem fs,
org.apache.hadoop.fs.Path logDir,
org.apache.hadoop.fs.Path oldLogDir)
Instantiate the replication management (if rep is enabled).
|
| 限定符和类型 | 方法和说明 |
|---|---|
static void |
decorateMasterConfiguration(org.apache.hadoop.conf.Configuration conf)
This method modifies the master's configuration in order to inject replication-related features
|
static void |
decorateRegionServerConfiguration(org.apache.hadoop.conf.Configuration conf)
This method modifies the region server's configuration in order to inject replication-related
features
|
ReplicationSourceManager |
getReplicationManager()
Get the replication sources manager
|
WALActionsListener |
getWALActionsListener()
Returns a WALObserver for the service.
|
void |
initialize(Server server,
org.apache.hadoop.fs.FileSystem fs,
org.apache.hadoop.fs.Path logDir,
org.apache.hadoop.fs.Path oldLogDir)
Initializes the replication service object.
|
static boolean |
isReplication(org.apache.hadoop.conf.Configuration c) |
static boolean |
isReplicationForBulkLoadDataEnabled(org.apache.hadoop.conf.Configuration c) |
void |
join()
Join with the replication threads
|
void |
postLogRoll(org.apache.hadoop.fs.Path oldPath,
org.apache.hadoop.fs.Path newPath)
The WAL has been rolled.
|
void |
preLogRoll(org.apache.hadoop.fs.Path oldPath,
org.apache.hadoop.fs.Path newPath)
The WAL is going to be rolled.
|
ReplicationLoad |
refreshAndGetReplicationLoad()
Refresh and Get ReplicationLoad
|
void |
replicateLogEntries(List<org.apache.hadoop.hbase.protobuf.generated.AdminProtos.WALEntry> entries,
CellScanner cells,
String replicationClusterId,
String sourceBaseNamespaceDirPath,
String sourceHFileArchiveDirPath)
Carry on the list of log entries down to the sink
|
static void |
scopeWALEdits(HTableDescriptor htd,
WALKey logKey,
WALEdit logEdit,
org.apache.hadoop.conf.Configuration conf,
ReplicationSourceManager replicationManager)
Utility method used to set the correct scopes on each log key.
|
void |
startReplicationService()
If replication is enabled and this cluster is a master,
it starts
|
void |
stopReplicationService()
Stops replication service.
|
void |
visitLogEntryBeforeWrite(HTableDescriptor htd,
WALKey logKey,
WALEdit logEdit) |
logCloseRequested, logRollRequested, postAppend, postLogArchive, postSync, preLogArchive, visitLogEntryBeforeWritepublic Replication(Server server, org.apache.hadoop.fs.FileSystem fs, org.apache.hadoop.fs.Path logDir, org.apache.hadoop.fs.Path oldLogDir) throws IOException
server - Hosting serverfs - handle to the filesystemlogDir - oldLogDir - directory where logs are archivedIOExceptionpublic Replication()
public void initialize(Server server, org.apache.hadoop.fs.FileSystem fs, org.apache.hadoop.fs.Path logDir, org.apache.hadoop.fs.Path oldLogDir) throws IOException
ReplicationServiceinitialize 在接口中 ReplicationServiceIOExceptionpublic static boolean isReplication(org.apache.hadoop.conf.Configuration c)
c - Configuration to look atpublic static boolean isReplicationForBulkLoadDataEnabled(org.apache.hadoop.conf.Configuration c)
c - Configuration to look atpublic WALActionsListener getWALActionsListener()
ReplicationSourceServicepublic void stopReplicationService()
stopReplicationService 在接口中 ReplicationServicepublic void join()
public void replicateLogEntries(List<org.apache.hadoop.hbase.protobuf.generated.AdminProtos.WALEntry> entries, CellScanner cells, String replicationClusterId, String sourceBaseNamespaceDirPath, String sourceHFileArchiveDirPath) throws IOException
replicateLogEntries 在接口中 ReplicationSinkServiceentries - list of entries to replicatecells - The data -- the cells -- that entries describes (the entries do not
contain the Cells we are replicating; they are passed here on the side in this
CellScanner).replicationClusterId - Id which will uniquely identify source cluster FS client
configurations in the replication configuration directorysourceBaseNamespaceDirPath - Path that point to the source cluster base namespace
directory required for replicating hfilessourceHFileArchiveDirPath - Path that point to the source cluster hfile archive directoryIOExceptionpublic void startReplicationService()
throws IOException
startReplicationService 在接口中 ReplicationServiceIOExceptionpublic ReplicationSourceManager getReplicationManager()
public void visitLogEntryBeforeWrite(HTableDescriptor htd, WALKey logKey, WALEdit logEdit) throws IOException
visitLogEntryBeforeWrite 在接口中 WALActionsListenervisitLogEntryBeforeWrite 在类中 WALActionsListener.BaselogEdit - TODO: Retire this in favor of
WALActionsListener.visitLogEntryBeforeWrite(HRegionInfo, WALKey, WALEdit) It only exists to get
scope when replicating. Scope should be in the WALKey and not need us passing in a
htd.IOException - If failed to parse the WALEditpublic static void scopeWALEdits(HTableDescriptor htd, WALKey logKey, WALEdit logEdit, org.apache.hadoop.conf.Configuration conf, ReplicationSourceManager replicationManager) throws IOException
htd - Descriptor used to find the scope to uselogKey - Key that may get scoped according to its editslogEdit - Edits used to lookup the scopesreplicationManager - Manager used to add bulk load events hfile referencesIOException - If failed to parse the WALEditpublic void preLogRoll(org.apache.hadoop.fs.Path oldPath,
org.apache.hadoop.fs.Path newPath)
throws IOException
WALActionsListenerpreLogRoll 在接口中 WALActionsListenerpreLogRoll 在类中 WALActionsListener.BaseoldPath - the path to the old walnewPath - the path to the new walIOExceptionpublic void postLogRoll(org.apache.hadoop.fs.Path oldPath,
org.apache.hadoop.fs.Path newPath)
throws IOException
WALActionsListenerpostLogRoll 在接口中 WALActionsListenerpostLogRoll 在类中 WALActionsListener.BaseoldPath - the path to the old walnewPath - the path to the new walIOExceptionpublic static void decorateMasterConfiguration(org.apache.hadoop.conf.Configuration conf)
conf - public static void decorateRegionServerConfiguration(org.apache.hadoop.conf.Configuration conf)
conf - region server configurationspublic ReplicationLoad refreshAndGetReplicationLoad()
ReplicationServiceCopyright © 2007–2021 The Apache Software Foundation. All rights reserved.