SymmetricDS
| Перший випуск | November 2007 |
|---|---|
| Стабільний випуск | 3.9.15 (31 жовтня 2018) |
| Операційна система | Microsoft Windows, Linux, Mac OS X, Android |
| Доступні мови | English |
| Стан розробки | Active |
| Ліцензія | GPL |
| Вебсайт | symmetricds.org |
SymmetricDS - це програмне забезпечення з відкритим початковим кодом для синхронізації баз даних і файлів з можливістю multi-master replication, фільтрованої синхронізації та можливостей трансформації.[1] Він розроблений здатним до масштабування для великої кількості вузлів та роботи із з'єднаннями з низькою пропускною здатністю і витримує періоди відключення мережі.[2] Синхронізація даних відбувається асинхронно від запланованого завдання, при цьому зміни даних надсилаються через операцію push або pull. Він використовує стандартні вебпротоколи (HTTP) і технології баз даних (JDBC) для того, щоб підтримувати широкий спектр платформ і максимізувати його сумісність. Вона включає підтримку Oracle, MySQL, MariaDB, PostgreSQL, Greenplum, SQL Server, SQL Server Azure, HSQLDB, H2, Derby, DB2, Firebird, Informix, Interbase, SQLite, Sybase ASE, Sybase ASA, MongoDB, Amazon_Redshift і VoltDB. [3]
Функціональність
SymmetricDS працює як окремий сервер (за допомогою вбудованого Jetty), на сервері програм (наприклад, Apache Tomcat), або вбудований у програму. Конфігурація здійснюється за допомогою файлів властивостей і колекції таблиць конфігурації на центральному вузлі. Таблиці баз даних і файлові системи можуть бути синхронізовані по мережі вузлів. Конфігурація дозволяє вибирати таблиці, стовпці (вертикальна фільтрація) і підмножини рядків (горизонтальна фільтрація) для синхронізації в одному напрямку або в обох напрямках. Файли вибираються за критерієм базової директорії та рекурсійності. Символи підстановки використовуються для узгодження декількох таблиць і файлів. Таблиці можуть бути згруповані в канали, які синхронізуються на основі пріоритету. Групи вузлів пов'язані між собою і призначені транспортним методом push або pull. Push підключається до вузла і надсилає зміни, коли вони будуть готові, тоді як pull буде періодично з'єднуватися з вузлом, щоб перевірити, чи були зроблені зміни. Кілька топологій мережі можливі шляхом з'єднання груп вузлів, включаючи fan-in/out, multi-master, star, та multi-tier tree. Вузол може бути підготовлений з початковим завантаженням даних для заповнення своєї бази даних. Зміни групуються в пакети і призначаються для доставки в вузли з використанням маршрутизаторів. Маршрутизатори можуть бути налаштовані або заскриптовані, щоб фільтрувати дані і приймати рішення, які вузли повинні отримувати дані. Пакети доставляються під час синхронізації та відслідковуються за допомогою порядкового номера та статусу, з періодичними спробами, призначеними для автоматичного відновлення помилок. Інструменти керування для командного рядка та вебконсолі JMX включені для керування вузлами з центрального розташування. Інтерфейси програмування для Java і REST включені для розширення та налаштування поведінки.
Також слід звернути увагу
- Порівняння програмного забезпечення для синхронізації файлів
- Реплікація (обчислення)
Досвідченим користувачам
- OpenMRS - відкрита система медичного запису[4]
- Openboxes - програмне забезпечення управління ланцюгами постачання [5]
Посилання
- ↑ SymmetricDS. SourceForge (англ.). Архів оригіналу за 11 квітня 2019. Процитовано 11 квітня 2019.
- ↑ Synchronize Databases with SymmetricDS. SourceForge Community Blog (амер.). 23 листопада 2012. Архів оригіналу за 11 квітня 2019. Процитовано 11 квітня 2019.
- ↑ Appendix C. Database Notes. www.symmetricds.org. Архів оригіналу за 6 травня 2021. Процитовано 11 квітня 2019. [Архівовано 2021-05-06 у Wayback Machine.]
- ↑ Database Synchronization with Symmetric DS - Projects - OpenMRS Wiki. wiki.openmrs.org. Архів оригіналу за 11 квітня 2019. Процитовано 11 квітня 2019.
- ↑ Google Code Archive - Long-term storage for Google Code Project Hosting. code.google.com. Архів оригіналу за 11 квітня 2019. Процитовано 11 квітня 2019.