I have an Android app, where user can add different cities that he visited on his visited cities list. Those cities are saved locally on his phone in relational SQLite database. Each user has his own list of cities, which are not pre-available (I don't have cities saved in the database) and selects them from cities that he gets from an API (there are 500GB of cities, that's why I don't keep them in the database). So each user has his own local database with his own cities (however, if two users visited "Paris", they will both have "Paris" in their database).
My problem is that I want to do some kind of back-up, so that user's data doesn't get lost if his phone breaks. I might also develop a web-app and iOS app in the future, so I might also need the data to be synced (if user adds a city on his phone, he should see it on the web).
That's why I am thinking of implementing Realtime Database or Firestore. I wanted to ask if these two solutions are the right ones for my use case?
I will appreciate every suggestion.
Kind regards,
Miha