Software Engineering Stack Exchange is a question and answer site for professionals, academics, and students working within the systems development life cycle who care about creating, delivering, and maintaining software responsibly. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Say I want to make an app that is going to allow users to post pictures of their dogs with Instagram like functionality. Imagine that it also is going to have a massive Wikipedia like library of different dog breeds that users can send complex search queries to. I want to implement the social features using Firebase and for Wikipedia-like part use a seperate server and then create basic REST API to allow for search requests.

I assume that the server side programming should be fairly straightforward: get the search request from user, build an SQL query, execute it and return JSON. Simple enough, but as I understand, Firebase can't even do something as simple as "WHERE foo LIKE '%bar%'", so I don't have much choice here other than having a seperate server and database with SQL. I have a few concerns though.

  • Given that this is going to be a mobile app, how viable is that approach?
  • Should my mobile app communicate directly with the "dog encyclopedia" server or should my app send all of its queries to Firebase and then let Firebase handle the fetching of data from server?
  • Where should I store the images from my database? Should I store them on my server or use Firebase Storage?
share|improve this question
    
You may want to look here before discarding firebase for advanced querying (I'm not saying it's any easier, but you may like the speed.): firebase.com/docs/web/guide/… – JeffO Sep 2 at 15:19
    
@JeffO I have seen that before, and I my original intention was to use queries, but now I am getting an impression that this might be too simplistic for my purpose. I want the query to be complex, I intend to use regular expressions and string manipulations and many conditions. SQL would work great for that but I don't see how I would do it with Firebase. Say I want to order my query result based on some parameter that shows the relevance of the search result and I want to calculate it by doing some operations with strings (Levenshtein distance for example)? Would it be possible with Firebase? – Ilya Lapan Sep 2 at 23:10
    
I don't see how SQL would do such a great job of this, but if you can make it work, go for it. – JeffO Sep 9 at 3:22

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Browse other questions tagged or ask your own question.