I'm starting to develop an android application where I have to persist user data. For server data I want to use Google Cloud with noSQL but I don't know what to use to save data in local memory when the user doesn't have connection. My principal conflict is to mantain synchronized both data (local and cloud). Is there a noSql data base to use with android in local mode?.


closed as off-topic by gnat, Ixrec, Adam Zuckerman, user22815, TZHX Jun 2 '16 at 14:44

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions asking us to find or recommend tools, libraries, programming languages, resources (including books, blogs, tutorials, and examples), or projects to undertake are off-topic here as they attract opinionated answers that won't have lasting value to others. You may be able to get help in The Whiteboard, our chat room." – gnat, Ixrec, Adam Zuckerman, Community, TZHX
If this question can be reworded to fit the rules in the help center, please edit the question.


You might want to look into Firebase's Realtime Database (also Google) instead of Cloud Datastore.

It has Android/iOS/JavaScript SDK's and is designed to work offline with a client side cache, handling synchronization between Client and Server for you.

If you want to do this in Cloud Datastore, you'll need to wrap the client libraries with your own methods for local caching and synchronization (not easy, but possible).

If you use Cloud Datastore's auto-generation ID's for entities it will be much harder since there isn't a great client way to do it. How you would do it was pre-allocate keys in advanced per client and store in a cache to use while offline. alternatively, if you use Names in the keys instead of IDs it will be somewhat easier, although you'll need to make sure there isn't conflicts between clients.

Not the answer you're looking for? Browse other questions tagged or ask your own question.