Skip to main content
Tungsten Replicator

Application Prerequisites for Parallel Replication

Parallel replication works best on workloads that meet the following criteria:

  • ROW based binary logging must be enabled in the MySQL database.
  • Data are stored in independent schemas. If you have 100 customers per server with a separate schema for each customer, your application is a good candidate.
  • Transactions do not span schemas. Tungsten serializes such transactions, which is to say it stops parallel apply and runs them by themselves. If more than 2-3% of transactions are serialized in this way, most of the benefits of parallelization are lost.
  • Workload is well-balanced across schemas.
  • The replica host(s) are capable and have free memory in the OS page cache.
  • The host on which the replica runs has a sufficient number of cores to operate a large number of Java threads.
  • Not all workloads meet these requirements. If your transactions are within a single schema only, you may need to consider different approaches, such as &ctrep; prefetch. Contact Continuent for other suggestions.

Parallel replication does not work well on underpowered hosts, such as Amazon m1.small instances. In fact, any host that is already I/O bound under single-threaded replication will typically not show much improvement with parallel apply.