Which is the best back-end storage for Hybrid Mobile app using Ionic 2?


#1

We are developing hybrid mobile app (for both Android/ IOS platform) using Ionic 2. Now, we are analyzing about the best backend Storage for our Mobile Application. In This app we are mainly focusing on saving the mobile contacts from database and scheduling meeting etc. So, Which will be best for storage backend from the following? (SQLite or FireBase or Normal SQL database hosted in the Azure which is accessed through MVC WebAPI from mobile app) What are all the limitation there with these? Or any other back-end is available for the better performance?

Appreciate your thoughts!


#2

This question is posted here about once every other week. Honestly, I wish admin would pin a thread. But if you do a search, you’ll find a lot of opinions. The answer, of course, is: it depends. If you need realtime update (eg instant chat), Firebase is hard to beat, but you might not want to pay for it. If all you need is data retrieval, Mongo DB is worth a look.


#3

Hi, @AaronSterling, Thank you for your thoughts. I will analyze on the firebase to see whether it will fit for our app.
I am having the few more questions since I am new to the mobile app development and please pardon me if it’s not valid questions too. I just want to know about your thoughts on the below approach since we are only concentrating on the Mobile app development and no future Web application is going to be developed for this app.

  1. So, Is it a good practice to use Normal SQL database hosted in the Azure cloud as Back end which is consumed from Mobile through MVC_WEB API (Hosted in the Azure as Web App)with EF CodeFirst Approach?
  2. What are all the drawbacks are there with this approach?

#4

It depends what you’re storing. If you’re storing video, the answer is probably no. If you’re storing key-value pairs, the answer is probably yes. But if you need to do fancy manipulation with your data, you might need to look beyond SQL. Example: I need to be able to handle queries to an ontology, so I needed a noSQL framework in order to set that up.


#5

Hi, @AaronSterling, Thank you for the quick response. Our main focus of the mobile app is,
1.) We need to save the mobile contacts from an app from installed mobiles to our back end.
2.) We need to sync mobile contacts with our backend whenever the user changes the mobile contacts.
3.) We need to track and show the activity logs inside our app.
4.) Our mobile App will have login Authentication using Mobile Numbers like WhatsApp and telegram mobile application.

For the above use case, what backend should be good to go?

Appreciate your thoughts!

Thanks in Advance for your valuable time and thoughts!


#6

This sounds like a standard use case, but it’s one I have no experience with personally. You might get a lot of comments on Stack Overflow. I don’t think Ionic matters much here. But here’s something simple you could do: use Mongo DB. It works and it’s free. Build two providers: a contact manager, and a contact database provider. The database provider talks to MongoDB. The contact manager is the interface between pages and the database provider. That way, if you ever want to change from Mongo DB to something else, you just unplug the database provider and replace it with a different one. Your pages and management code won’t be affected.