Hi,
Thanks for giving detail requirement, it's pretty clear. I suggest to use in memory database such as hsqldb or mysql (using in memory table) for caching purpose.
Things to do in this project :
- Reconcile module, this module has responsibility to sync data. It will compare two data like you mentioned and ensure those data are sync.
- Data Manager module, this module has responsibility to ensure the caching database is not full. Need detail scenario for this module.
- Data Access module, this module has responsibility to serve query request.
Please feel free to discuss more detail.
Thank you.
Best Regards,
Dhian Wicaksana Putra