SynchDB 1.2 釋出 - 原生 Oracle 聯結器、增強的監控與快速部署工具
釋出於 2025-09-08,作者:Hornetlabs Technology Inc
相關開源專案
釋出日期:2025 年 9 月 4 日
我們很高興地宣佈 **SynchDB 1.2** 釋出!此次更新引入了原生 Openlog Replicator Oracle 聯結器、具有 JMX 和 Grafana 整合的全面監控功能,以及簡化了測試和設定的便捷部署工具。
SynchDB 繼續致力於在不使用中介軟體的情況下,實現從多個數據庫平臺到 PostgreSQL 的無縫、原生資料同步,現在還提供了改進的效能和增強的操作可見性。
主要增強功能
原生 Openlog Replicator 聯結器 - BETA
- 原生 Oracle 流式傳輸 - 新聯結器型別
olr,直接與 Openlog Replicator 服務通訊,無需 Debezium 依賴
- 支援必要的 DML(insert、update、delete)和關鍵 DDL,包括 CREATE/DROP TABLE、ALTER TABLE 操作和 TRUNCATE
- 基於 libprotobuf-c 實現高效通訊,並使用 IvorySQL 的 Oracle 解析器進行 DDL 處理
- 支援完整的快照模式(initial、initial_only、no_data、always、never),並具備批處理和偏移量管理功能
增強的監控與可觀察性
- 透過
synchdb_add_jmx_conninfo 和 synchdb_del_jmx_conninfo 函式實現 JMX 整合
- 透過 JMX Exporter 支援 Prometheus 和 Grafana,提供專用的連線管理功能
- 為 MySQL、SQL Server 和 Oracle 聯結器提供預構建的 Grafana 儀表盤模板
- 為生產環境監控收集全面的指標
簡化的部署與測試
- ezdeploy.sh 工具 - 一鍵部署指令碼,用於快速測試和開發
- 支援 MySQL、SQL Server、Oracle(19c 和 23ai)以及 Openlog Replicator 1.3.0 的部署
- 自動設定 Prometheus 和 Grafana,並預載入儀表盤
- 提供預編譯的 SynchDB v1.2 二進位制檔案,可立即進行測試
效能與可靠性改進
- 選擇性快照表功能 - 在
always 模式下,可以選擇特定表進行初始快照
- 透過直接緩衝區而非頻繁的 JNI 呼叫,提升事件輪詢效能
- 改進的聯結器隔離 - 每個 SynchDB 擴充套件現在維護獨立的聯結器資料
- 透過基於 hammerdb 的 TPC 測試增強 pytest 框架,支援 Oracle
與上一版本的變更
- 在
synchdb_add_conninfo 中新增 snapshot table 引數,用於精細化快照控制
- 聯結器恢復操作現預設採用
initial 快照模式,以保持一致性
synchdb_state_view 和 synchdb_stats_view 現在僅顯示當前擴充套件的聯結器
- 改進了記憶體管理和上下文處理
已修復的問題
- 解決了與 SPI 記憶體上下文清理相關的
spi_execute_select_one() 中的崩潰問題
- 修復了 PostgreSQL 使用 cassert 編譯時出現的編譯問題
- 修正了不同資料庫中同名聯結器之間的共享記憶體衝突
已知問題和注意事項
- 原生 Openlog Replicator 聯結器目前會流式傳輸指定資料庫中的所有表
- 表過濾必須在 Openlog Replicator 中配置,而不是 SynchDB
- Prometheus 和 Grafana 監控功能需要 JMX Exporter
資源
關於 SynchDB
SynchDB 是 Hornetlabs Technology 開發的開源 PostgreSQL 擴充套件。它能夠以高效能和高可靠性實現從異構資料庫(MySQL、MS SQL Server、Oracle 等)到 PostgreSQL 的直接資料複製。該擴充套件無需中介軟體或第三方軟體即可滿足所有同步需求。
我們非常感謝您一如既往的支援和反饋,我們將努力使 SynchDB 成為最強大的 PostgreSQL 資料庫同步工具。您的測試、錯誤報告和功能請求有助於我們確定開發優先順序。
誠摯地,
Hornetlabs Technology SynchDB 團隊