Back to site

Реплікація бази даних і синхронізації баз даних

Синхронізації і зберігання даних в мобільних частково пов'язано Настройки

Система db4o реплікації (DRS) дозволяє користувачам, такі як Індра, Boeing і EasternData легко створювати додатки, які синхронізують об'єктів двонаправленим між db4o в мобільну базу даних випадках і іншим примірником db4o сервер, Versant об'єктних баз даних (VOD) і яких-небудь загальних реляційних баз даних, таких як Oracle, MySQL і т.д.

Включення Agile програміст

об'єктно-орієнтованого реплікації DRS підхід розроблений спеціально для динамічних підприємств у мінливому й усе більш мобільних бізнес-середовищі. DRS оптимізований для легкої синхронізації розподілених примірників баз даних і часто рефакторинг програмного коду, який у минулому був важким, якщо не неможливо досягти в той же час.

Наприклад, бізнес-об'єкт "Клієнт" (містить інформацію особового рахунку) необхідно синхронізації між продавця частково пов'язано КПК та внутрішнього сервера підприємства. Батько-нащадок в класи забезпечують природне опис того, що складає об'єкт "замовник" і те, що повинні бути прийняті разом з батьківським об'єктом. Щоб домогтися повної синхронізації цього бізнес-об'єкта, забудовник просто потрібно підключити дві бази даних випадках для запиту оновленого "клієнта" об'єктів, а потім синхронізувати їх - за допомогою всього одного рядка коду:

01 / / Початок реплікації сесії
02 ReplicationSession replicationSession =
03 Replication.begin (mobileDatabase, centralDatabase);
04
05 / / Отримати всі зміни з моменту останньої реплікації
06 ObjectSet changedCustomers = mobileDatabase.objectsChangedSinceLastReplication (Customer.class);
07
08 / / Перенесення змінених об'єктів
09 для (Object changedCustomer: changedCustomers) {replicationSession.replicate (changedCustomer);}
10 / / Фіксація реплікації сесії
11 replicationSession.commit ();

У звичайних, реляційні технології, бізнес-об'єкт "клієнт" може включати в себе багато десятків реляційних таблиць, в яких все має бути на які посилається дротових, статичний код програми, що складаються з багатьох ліній, включаючи немісцевих SQL рядки, які роблять рефакторинг ще більше громіздким.

Реплікації баз даних

Унікальні: об'єктно-орієнтоване Синхронізація вирішення конфліктів

Однією з унікальних особливостей DRS є його база даних (а не програми) приводом вирішення конфлікту. Модель даних програми, які повинні бути єдиним джерелом для орієнтованих на дані бізнес-логіки, може бути використаний для вирішення конфліктів, а не покладатися на вторинні сховища коду програми.

Синхронізація конфлікти виникають, коли об'єкт одночасно зміна у відключених примірників баз даних з моменту їхньої останньої сесії реплікації. Після цього користувач може вибрати модель бізнес-правила, які автоматично розв'язати ці конфлікти шляхом перезапису змін, з одного боку на іншу, минаючи суперечили об'єкту, зупиняючи реплікацію, щоб уникнути пошкодження даних та / або розміщення повідомлення рутини, щоб викликати подальші дії користувача або інших бізнес-правил.

1 ReplicationEventListener слухача = новий ReplicationEventListener () {
2 громадських onReplicate недійсними (ReplicationEvent подія) {
3 якщо (event.isConflict ()) {
4 / / Перевизначення записи з копією КПК (постачальника)
5 event.overrideWith (event.stateInProviderA ());
6 }
7 }
8 };

Наприклад, бізнес-об'єкт "клієнт" міг зміна номера телефону в обох продавця частково форуму КПК і назад базі даних CRM офісу. Бізнес-логіка може вимагати, щоб продавець має "право власності" на клієнта і може переписати всі бек-офіс зміни, якщо тільки певних випадках застосовувати (наприклад, певні права для бек-офіс користувачів або певного виду угоди, такі як користувацькі самообслуговування угоди, які могли б бути "вище" право власності продавця). Це бізнес-логіки не повинно бути важко-проводной (як в реляційної технології реплікації) в сам додаток, але зберігатися разом з об'єктом, щоб зробити його "розумним", щоб автоматично синхронізувати себе при дотриманні всіх відповідних і останній бізнес-правил.

І гарною новиною є те, що ви отримаєте всі ці можливості синхронізації навіть в умовах обмежених ресурсів без шкоди для ефективності. З докторами можна ініціювати сеанс синхронізації формі мобільного пристрою і поговорити з реляційними сервер як перший громадянин класу!

Popular Links
Published (Last edited): Aug 17 , source: http://developer.db4o.com/Solutions/ReplicationServices.aspx