Discussion on Firebase Extension for Typesense
TLDR Jason announced the release of a Firebase Extension for Typesense, leading to a discussion with Gabe about capabilities and scalability concerns. Other users, John and A, simply expressed their admiration.
Jun 16, 2021 (32 months ago)
It syncs data from your Firestore database to Typesense automatically on changes. If you're a Firebase user, I'd love to get your feedback.
A couple of questions:
• Because Firestore is an object store that allows having nested data, how do you handle users wanting to search nested data? IIRC typsense does not support this (yet)
• How does this scale...because firestore/firebase functions are "infinitely" scalable & typesense is not, I forsee issues arising from too much attempted indexing activity at once.
> Because Firestore is an object store that allows having nested data, how do you handle users wanting to search nested data? IIRC typsense does not support this (yet)
The current MVP version does not handle nested data in Firestore, because Typesense server doesn't support it yet. We've been discussing adding support, especially for Firebase users, based on demand for this...
> How does this scale...because firestore/firebase functions are "infinitely" scalable & typesense is not, I forsee issues arising from too much attempted indexing activity at once.
Scalability would be a function of the Typesense cluster configuration. High-throughput reads & writes would require larger number of CPU cores to handle the load.
Another thing I've been thinking about is may be adding a buffering mechanism on the Firestore side that can accumulate changes and bulk insert changes into Typesense, which should help accommodate higher throughput writes on lower number of CPU cores as well.
Question for you: is the pre-processing you're doing only to handle nested fields, or do you do additional transformations?
Is the userID stored in a different collection that you "join" on the fly before indexing to Typesense currently?
Jun 17, 2021 (32 months ago)
Jun 18, 2021 (32 months ago)
Jun 21, 2021 (31 months ago)
Jul 09, 2021 (31 months ago)
Indexed 3015 threads (79% resolved)
Nested Objects Issue in Firebase & Typesense Integration
Shaun encountered issues with nested objects being flattened in Typesense. Jason found the root issue and provided a solution involving updating the Firebase extension to 1.0.3.
Configuring Typesense Extension for Nested Fields in Firebase Collection
David had issues indexing nested fields using the Typesense extension. Jason offered advice on specifying schemas and prioritizing specific fields, but there remained unresolved challenges with the schema.
Handling Order of Firestore Events for Synchronization with Typesense.
Ross ran into an issue with Firestore events triggering out of order, causing synchronization inconsistency between Firestore and Typesense. With advice and input from Jason and Kishore Nallan, they implemented a debouncing solution using redis, ensuring that the latest Firestore data is synced to Typesense accurately.
Troubleshooting 400 Error When Upgrading Typesense Firestore Extension
Orion experienced a `400` error after updating the Typesense Firestore extension, causing issues with cloud functions. They traced the issue back to a data type conflict in their Typesense collection schema after updating. With help from Jason and Kishore Nallan, they resolved the issue by recreating the collection.
Resolving Typesense Cloud and Firebase Timestamp Error
Eoin faced an issue with Firebase timestamp when setting up Typesense Cloud. Jason suggested converting timestamps to Unix and sync them as int64 fields in Typesense.