We have a software application with
1) Web-based component 2) Mobile-based component
Our 1) Web-based component uses
a) MongoDB as the Database
b) ASP.NET C#
Our 2) Mobile-based component uses
b) SQL Lite
However, both the databases have the same tables, but we have Not created any sort of bridge table between the collections in MongoDB and the tables in the SQL Lite.
The MongoDB Database and the SQL Lite will have the following collections/tables
-Daily Schedule ( corresponds to entire Day ) (MongoDB will have a unique ObjectId for daily schedule)
-Daily Schedule ( corresponds to entire Day ) ( SQLLite will use TEXT as ISO8601 strings ("YYYY-MM-DD HH:MM:SS.SSS") )
-Task ( many tasks to One Daily Schedule ) (MongoDB will have a unique ObjectId for every Task )
-Task ( many tasks to One Daily Schedule ) ( GUID type has affinity NONE, SQL Liste will store it store it as BLOB fields.)
In any sort of Mobile/Web combo application, how would they synchronize the data between the 2 databases? I'm looking for typical solutions that the software industry uses.
Some C# programmers on Stackoverflow[dot]com mentioned that it might be good idea to specify the ObjectId as a String or as a BLOB type.
It just gave me an thought, would it be a a good idea Mobile-based component which uses SQL Lite to have some bridge table that contains an ObjectId as String or a Blob type so that they can synchronize the data between the Mobile-based SQL Lite database, and the Web-based MongoDB Database?
Would the aforementioned approach have any disadvantages? If yes, please tell me the disadvantages.