過去幾年有關注過 SymmetricDS 這一套資料庫複寫軟體,隨著時間推進版本提升不少,目前已經來到 3.9.0 版,漸漸成熟。
功能介紹
SymmetricDS 是資料庫複寫為主的軟體,重點功能:
- 跨平台
- 多執行緒設計
- 自動回復機制
- 交易處理
- 支援多 Master
- 傳輸時做篩選、轉換
- 以資料表為主的模式
- 支援 Push 或 Pull 兩種傳輸模式
- 採用 HTTP/HTTPS 傳輸
- 提供 API
同步機制提供 Push 與 Pull 兩種,對於不同的效能要求、資料即時或網路環境來活用,創造彈性。
異質整合
更棒的是,它也支援異質資料庫同步,大大提升資料庫架構設計的彈性。
依據官網所述,目前支援的資料庫項目有:
- Amazon Redshift
- Apache Derby
- Apache Ignite
- Firebird
- Greenplum
- DB2 for LUW
- DB2 for i
- DB2 for z/OS
- H2
- HSQLDB
- Informix
- Interbase
- MariaDB
- MongoDB
- MySQL
- NuoDB
- Oracle
- PostgreSQL
- SQL Anywhere
- SQL Server
- SQL Server Azure
- SQLite
- Sybase ASE
- Tibero
- VoltDB
我想...在大部份情況下,應該夠用了吧。
我們可以假設一種場景,客戶希望主要的資料庫使用知名品牌,例如 Oracle、SQLServer 等,但複寫目標端因為經費不夠,採用開源的資料庫系統如 MariaDB、PostgreSQL。
在過去,可能會自行開發資料庫同步程式解決,但有了 SymmetricDS 之後,我們可以很容易的解決這個難題。
參考資料
- SymmetricDS 官方網站
https://www.symmetricds.org/
- SymmetricDS 原始碼
https://github.com/JumpMind/symmetric-ds
- SymmetricDS Pro 官方網站
http://www.jumpmind.com/products/symmetricds/overview