Understanding structure

Hi all! I’m pretty new to the Android dev community and even more of a newbie when it comes to Elasticsearch. Currently, for an Android app, I am using Firestore as the NoSQL database to store data. I’ve modeled the data to be as shallow as possible and as such have divided the data up into multiple collections such as destinations, resources, reviews, and users.

I want to allow the end user to search for destinations based on fields within each document in destinations. As such, I plan on using Algolia since Firestore has very limited querying abilities. However, I can’t seem to understand why Firebase would then be useful since I will essentially be duplicating each new document that gets added to Firestore, to Algolia. If I’m using Algolia to query destinations what purpose would Firestore then serve?

On the same note, if you know of any example Android projects that implement both Algolia and Firebase, that would be greatly appreciated!

Hi Najm,

Algolia could serve as a database, but its limited: due to indexing time, there’s no synchronous realtime possible and it’s better to only index the data that are useful for search for performance reasons. Algolia is always better when plugged on top of a database, and you’ll always get better data access features with a database on your own, such as storing big records such as document contents, realtime updates, and more.