|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectcom.continuent.tungsten.replicator.applier.batch.SimpleBatchApplier
public class SimpleBatchApplier
Implements an applier that bulk loads data into a SQL database via CSV files.
| Field Summary | |
|---|---|
protected java.lang.String |
charset
|
protected boolean |
cleanUpFiles
|
protected CommitSeqnoTable |
commitSeqnoTable
|
protected Database |
conn
|
protected java.lang.String |
consistencySelect
|
protected java.lang.String |
consistencyTable
|
protected java.text.SimpleDateFormat |
dateFormatter
|
static java.lang.String |
DELETE
Denotes a delete operation. |
protected java.lang.String |
driver
|
protected HeartbeatTable |
heartbeatTable
|
protected java.util.regex.Pattern |
ignoreSessionPattern
|
static java.lang.String |
INSERT
Denotes an insert operation. |
protected java.lang.String |
metadataSchema
|
protected LoadMismatch |
onLoadMismatch
|
protected java.lang.String |
password
|
protected boolean |
showCommands
|
protected java.lang.String |
stageColumnPrefix
|
protected java.lang.String |
stageDirectory
|
protected java.lang.String |
stageMergeScript
|
protected java.lang.String |
stagePkeyColumn
|
protected java.lang.String |
stageSchemaPrefix
|
protected java.lang.String |
stageTablePrefix
|
protected java.lang.String |
startupScript
|
protected java.sql.Statement |
statement
|
protected java.lang.String |
timezone
|
protected java.lang.String |
url
|
protected java.lang.String |
user
|
| Constructor Summary | |
|---|---|
SimpleBatchApplier()
|
|
| Method Summary | |
|---|---|
void |
apply(DBMSEvent event,
ReplDBMSHeader header,
boolean doCommit,
boolean doRollback)
Applies row updates using a batch loading scheme. |
void |
assertNotNull(java.lang.String property,
java.lang.String name)
|
protected void |
clearStageTable(CsvInfo info)
|
void |
commit()
Commits current open transaction to ensure data applied up to current point are durable. |
void |
configure(PluginContext context)
Complete plug-in configuration. |
protected java.lang.String |
getCsvString(OneRowChange.ColumnVal columnVal,
OneRowChange.ColumnSpec columnSpec)
Converts a column value to a suitable String for CSV loading. |
ReplDBMSHeader |
getLastEvent()
Return header information corresponding to last committed event. |
static SqlScriptGenerator |
initializeGenerator(java.lang.String script)
|
void |
prepare(PluginContext context)
Prepare plug-in for use. |
void |
release(PluginContext context)
Release all resources used by plug-in. |
void |
rollback()
Rolls back any current work. |
void |
setCharset(java.lang.String charset)
Sets the platform charset name. |
void |
setCleanUpFiles(boolean cleanUpFiles)
If true, clean up files automatically. |
void |
setDriver(java.lang.String driver)
|
void |
setOnLoadMismatch(java.lang.String onLoadMismatchString)
Sets the proper handling of a load mismatch. |
void |
setPassword(java.lang.String password)
|
void |
setShowCommands(boolean showCommands)
If true, show commands in the log when loading batches. |
void |
setStageColumnPrefix(java.lang.String stageColumnPrefix)
Set the prefix for staging table columns. |
void |
setStageDirectory(java.lang.String stageDirectory)
Set the name of the staging directory. |
void |
setStageMergeScript(java.lang.String stageMergeScript)
Set the name of the merge script. |
void |
setStagePkeyColumn(java.lang.String stagePkeyColumn)
Set the default name of the staging table primary key. |
void |
setStageSchemaPrefix(java.lang.String stageSchemaPrefix)
Set the schema prefix for staging tables. |
void |
setStageTablePrefix(java.lang.String stageTablePrefix)
|
void |
setStartupScript(java.lang.String startupScript)
Set the name of the connect script. |
void |
setTaskId(int id)
Sets the ID of the task using this raw applier. |
void |
setTimezone(java.lang.String timezone)
Sets the timezone. |
void |
setUrl(java.lang.String url)
|
void |
setUser(java.lang.String user)
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static java.lang.String INSERT
public static java.lang.String DELETE
protected java.lang.String driver
protected java.lang.String url
protected java.lang.String user
protected java.lang.String password
protected java.lang.String stageDirectory
protected java.lang.String startupScript
protected java.lang.String stageMergeScript
protected java.lang.String stageSchemaPrefix
protected java.lang.String stageTablePrefix
protected java.lang.String stageColumnPrefix
protected java.lang.String stagePkeyColumn
protected boolean cleanUpFiles
protected java.lang.String charset
protected java.lang.String timezone
protected LoadMismatch onLoadMismatch
protected boolean showCommands
protected java.lang.String metadataSchema
protected java.lang.String consistencyTable
protected java.lang.String consistencySelect
protected Database conn
protected java.sql.Statement statement
protected java.util.regex.Pattern ignoreSessionPattern
protected CommitSeqnoTable commitSeqnoTable
protected HeartbeatTable heartbeatTable
protected volatile java.text.SimpleDateFormat dateFormatter
| Constructor Detail |
|---|
public SimpleBatchApplier()
| Method Detail |
|---|
public void setDriver(java.lang.String driver)
public void setUrl(java.lang.String url)
public void setUser(java.lang.String user)
public void setPassword(java.lang.String password)
public void setStartupScript(java.lang.String startupScript)
public void setStageMergeScript(java.lang.String stageMergeScript)
public void setStageSchemaPrefix(java.lang.String stageSchemaPrefix)
public void setStageTablePrefix(java.lang.String stageTablePrefix)
public void setStagePkeyColumn(java.lang.String stagePkeyColumn)
public void setStageColumnPrefix(java.lang.String stageColumnPrefix)
public void setStageDirectory(java.lang.String stageDirectory)
public void setCleanUpFiles(boolean cleanUpFiles)
public void setCharset(java.lang.String charset)
public void setTimezone(java.lang.String timezone)
public void setOnLoadMismatch(java.lang.String onLoadMismatchString)
public void setShowCommands(boolean showCommands)
public void apply(DBMSEvent event,
ReplDBMSHeader header,
boolean doCommit,
boolean doRollback)
throws ReplicatorException,
ConsistencyException,
java.lang.InterruptedException
apply in interface RawApplierevent - Event to be applied. If a DBMSEmptyEvent, just mark the
apply position.header - Header data corresponding to eventdoCommit - Boolean flag indicating whether this is the last part of
multi-part eventdoRollback - Boolean flag indicating whether this transaction should
rollback
ReplicatorException - Thrown if applier processing fails
ConsistencyException - Thrown if the applier detects that a
consistency check has failed
java.lang.InterruptedException - Thrown if the applier is interruptedRawApplier.apply(com.continuent.tungsten.replicator.event.DBMSEvent,
com.continuent.tungsten.replicator.event.ReplDBMSHeader, boolean,
boolean)
public void commit()
throws ReplicatorException,
java.lang.InterruptedException
commit in interface RawApplierReplicatorException - Thrown if applier processing fails
java.lang.InterruptedException - Thrown if the applier is interruptedRawApplier.commit()
public ReplDBMSHeader getLastEvent()
throws ReplicatorException,
java.lang.InterruptedException
getLastEvent in interface RawApplierReplicatorException - Thrown if getting sequence number fails
java.lang.InterruptedException - Thrown if the applier is interruptedRawApplier.getLastEvent()
public void rollback()
throws java.lang.InterruptedException
rollback in interface RawApplierjava.lang.InterruptedException - Thrown if the applier is interrupted.RawApplier.rollback()public void setTaskId(int id)
setTaskId in interface RawApplierid - Task IDRawApplier.setTaskId(int)
public void configure(PluginContext context)
throws ReplicatorException,
java.lang.InterruptedException
configure in interface ReplicatorPluginReplicatorException - Thrown if configuration is incomplete or
fails
java.lang.InterruptedExceptionReplicatorPlugin.configure(com.continuent.tungsten.replicator.plugin.PluginContext)
public void assertNotNull(java.lang.String property,
java.lang.String name)
throws ReplicatorException
ReplicatorException
public void prepare(PluginContext context)
throws ReplicatorException,
java.lang.InterruptedException
prepare in interface ReplicatorPluginReplicatorException - Thrown if resource allocation fails
java.lang.InterruptedExceptionReplicatorPlugin.prepare(com.continuent.tungsten.replicator.plugin.PluginContext)
public static SqlScriptGenerator initializeGenerator(java.lang.String script)
throws ReplicatorException
ReplicatorException
public void release(PluginContext context)
throws ReplicatorException,
java.lang.InterruptedException
release in interface ReplicatorPluginReplicatorException - Thrown if resource deallocation fails
java.lang.InterruptedExceptionReplicatorPlugin.release(com.continuent.tungsten.replicator.plugin.PluginContext)
protected void clearStageTable(CsvInfo info)
throws ReplicatorException
ReplicatorException
protected java.lang.String getCsvString(OneRowChange.ColumnVal columnVal,
OneRowChange.ColumnSpec columnSpec)
throws CsvException
columnVal - Column valuecolumnSpec - Column metadata
CsvException
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||