Multi-Tier Asynchronous Replication using SymmetricDS
SymmetricDS is an open-source, flexible, extensible, asynchronous data replication engine specializing in the synchronization of multi-tier hierarchies of databases such as MySQL. SymmetricDS excels in applications where subsets of data need to be asynchronously replicated among hundreds or thousands of databases, as is the case in industries such as retail, telecommunications, medical, insurance, and many others. These industries typically require decentralized databases in multiple geographic locations, with partial or full copies of data, organized into a hierarchy of database tiers. For example, a common use of SymmetricDS in retail is to synchronize data between a central office, regional databases located internationally, and then to individual retail stores and register databases, all the while synchronizing only the data truly needed at each level in the hierarchy.
SymmetricDS was designed for bidirectional replication across hierarchies of databases and is capable of synchronizing data across a dozen different database platforms, including but not limited to MySQL, Oracle, Microsoft SQL Server, IBM DB2, PostgreSQL, Derby, H2, Firebird, and others. SymmetricDS provides centralized configuration and works well in environments where network outages or low bandwidth are likely, such as satellite, frame relay, or mobile network links. As part of its replication features, SymmetricDS allows for the subsetting of data to be sent to a database based on a variety of criteria. In addition, data can be transformed during the synchronization via a powerful transformation engine built into SymmetricDS. Most recently, SymmetricDS has added conflict resolution capabilities, including automated resolution or manual intervention when conflicts are detected.
Our presentation will begin by reviewing the problem domains SymmetricDS was designed to solve. We will then discuss the myriad of features available to achieve a needed synchronization scenario, features which are all set and controlled centrally. We will demonstrate the ease with which a synchronization scenario between MySQL and other databases can be implemented. In addition, the presentation will explore various data transformations that can take place while synchronizing. Finally, we will review the pluggable extensions API as well as conflict detection and resolution options available in SymmetricDS.