Ваши вопросы подняты и суммируют некоторые проблемы согласования данных. В общем, это возможно, но я бы не советовал делать это в одиночку. В области базы данных такие приложения, как CouchDB, работают над этим и показывают, что это в некотором роде гурклова задача.
Объединение данных между хранилищами объектов означает, что вам понадобится много логики приложения, чтобы элегантно их реализовать. Например, что происходит, когда два автономных приложения обновляют одну и ту же строку? У вас возник бы «конфликт слияния», и именно в такой ситуации приложения управления исходным кодом, такие как Git, такие сложные.
Чтобы реализовать эту идею, вы можете взять чип блока Git и использовать «источник событий» как способ пролистывания изменений. Я работаю с аналогичной концепцией в IDB , и она работает довольно хорошо. Стоит отметить, что я не пытаюсь объединить изменения между хранилищами объектов, а скорее управляю редакциями в одном хранилище объектов, поэтому ваша задача будет считаться значительно более сложной.