1
saunved
3y

Is it a good idea to code my Android app keeping sqlite in mind before actually migrating to a noSQL version?

The primary reason for doing this is not having to deal with APIs or server side coding and also faster testing and prototype development.

Any ideas or suggestions?

Comments
  • 2
    Beware, sql and nosql databases are very different in how you should plan your storage and how you query for data and many times you will have difficulties moving from one platform to another.

    So unless you know what you are doing select one and stick to it or for more complex apps go with both and use them for different requirements.

    There are some hybrids but I fo not know how good they really are and if it pits extra constraints on what features you can use within each style.
  • 2
    @Voxera That said, local storage might fill a similar role as nosql since its also basically a key value store.
  • 0
    @Voxera thank you for the warning! If it helps, I'm developing a social network app. Ideally I should be using graph databases for this. But I'm a lone developer so learning those from scratch and working with servers is a bit daunting.

    I'd love to hear more advice/experiences you've had!
  • 0
    @Voxera Local storage as in shared preferences?
  • 2
    @saunved

    https://developer.mozilla.org/en-US...

    You could also use sqlite and store everything in a single table with a key and value that could be a json.

    For a social media app, yes s graph is good but probably you should consider a key value store and possibly a sql to for different purposes.

    They are good for different things and learning to combine them will be very valuable
  • 1
    @Voxera Thanks for the link. I guess I could just use Firebase in that case for testing purposes. Not exactly a fan of Firebase though
  • 1
    Short answer if you want to store locally is: Use Realm.

    It's nosql, amazing performance, simple models, far easier than sqlite.

    I don't see why but if you need to use sqlite you can plaster Google's Room on top of it to make it more human. But it's going to be tens of times slower than r realm (sqlite in general) and far harder to read/maintain
Add Comment