Table of Contents

Search

  1. Preface
  2. Data Replication Overview
  3. Understanding Data Replication
  4. Sources - Preparation and Replication Considerations
  5. Targets - Preparation and Replication Considerations
  6. Starting the Server Manager
  7. Getting Started with the Data Replication Console
  8. Defining and Managing Server Manager Main Servers and Subservers
  9. Creating and Managing User Accounts
  10. Creating and Managing Connections
  11. Creating Replication Configurations
  12. Materializing Targets with InitialSync
  13. Scheduling and Running Replication Tasks
  14. Implementing Advanced Replication Topologies
  15. Monitoring Data Replication
  16. Managing Replication Configurations
  17. Handling Replication Environment Changes and Failures
  18. Troubleshooting
  19. Data Replication Files and Subdirectories
  20. Data Replication Runtime Parameters
  21. Command Line Parameters for Data Replication Components
  22. Updating Configurations in the Replication Configuration CLI
  23. DDL Statements for Manually Creating Recovery Tables
  24. Sample Scripts for Enabling or Disabling SQL Server Change Data Capture
  25. Glossary

Considerations for Running InitialSync

Considerations for Running InitialSync

Review the following information about running the InitialSync task:
  • Typically, you use InitialSync to materialize empty target tables. If a target table is not empty, you can delete all of the data from the table by using the SQL TRUNCATE TABLE statement. If you use the ODBC driver to load data, you can set the
    initial.check_empty_tables
    runtime parameter to 1 or 2 to check if the mapped tables are empty.
  • If you run InitialSync from the command line, you can use the following command line parameters to selectively synchronize target tables:
    • Set the RESYNC parameter to P to synchronize the tables that are not currently synchronized.
    • Specify the DEST_TABLES or EXCLUDE_DEST_TABLES parameters to filter the tables to synchronize. In this case, you must set the RESYNC parameter to N.
  • You can improve InitialSync performance by using multiple threads. You can specify a number of InitialSync threads in the
    InitialSync threads
    field on the
    Runtime Settings
    tab >
    General
    view. A single InitialSync thread loads data to a single target table.
  • For a particular configuration, you can run InitialSync and the Extractor at the same time if the set of tables for which you run InitialSync does not intersect with the set of tables for which you run the Extractor.
  • Because DB2 for Linux, UNIX, and Windows does not provide a way to retrieve the current LSN from the database, InitialSync inserts a record for each mapped target table in a service table. Data Replication creates the service table with the default name of DBSYNC_SYNC_LSN in the DB2 source database. After you start change data capture, the Extractor uses these records to determine the initial LSN to pass to the Applier. To keep source data consistent, InitialSync locks each source table to prevent write access.
  • For Microsoft SQL Server targets, InitialSync uses the snapshot transaction isolation level to provide data consistency. InitialSync records the LSN value of the source data unload transaction.
  • For Microsoft SQL Server targets on Windows, InitialSync might run out of memory when it uses the Bulk Copy Program (BCP) to load a large amount of LOB data to the target tables.
    Informatica recommends that you use the ODBC driver for initial materialization of Microsoft SQL Server target tables when you need to load a large amount of LOB data to the tables. To use the ODBC driver, run InitialSync with the DIRECT=n command line parameter.
    If you want to use BCP to materialize tables with a large amount of LOB data, decrease the number of InitialSync threads and the value of the
    global.lob_truncation_size
    runtime parameter to avoid running out of memory.
  • For Oracle sources, you can use Informatica Fast Clone instead of InitialSync to materialize target tables. Fast Clone provides better performance. For more information, see the Informatica Fast Clone documentation.
  • For most Oracle sources, you can use multiple InitialSync subtask threads to unload data. To enable InitialSync multithreaded processing, use the
    initial.oracle.parallel_subtask_limit
    and
    initial.oracle.parallel_sample_percentage
    runtime parameters.
    If you use the ODBC drivers to connect to targets, InitialSync supports multithreaded load processing for all target types.
    If you use the target native load utilities, InitialSync supports multithreaded load processing for target types other than the following unsupported types:
    • Oracle
    • Teradata
    Also, InitialSync does not support multithreaded processing for the following table types:
    • Oracle source tables that have subpartitions.
    • Source tables that have virtual columns with associated Tcl scripts or SQL expressions.
    If you unload data from these types of tables, ensure that the
    initial.oracle.parallel_sample_percentage
    runtime parameter is set to 0.
    For Microsoft SQL Server targets, if you use the BCP utility to load data, verify that the BCP requirements for parallel processing of a table are met. For more information, see the Microsoft SQL Server documentation at the following website: http://msdn.microsoft.com/en-us/library/aa196739(v=sql.80).aspx.
  • Do not use InitialSync with the following target types, for which initial synchronization is not needed:
    • Apache Kafka
    • Cloudera
    • Hortonworks
    • Flat File
  • For Microsoft SQL Server and Oracle sources, before you run InitialSync for a table that was added to an existing replication configuration, ensure that the table does not contain uncommitted data from an open transaction.
    If you run InitialSync for a source table that contains uncommitted data and then start the Extractor, the Extractor might not process the change data from the open transaction after the transaction is committed.

0 COMMENTS

We’d like to hear from you!