the use of indexes I have come up with a plan for managing a firebase
location of tens of thousands of records that I need to filter by a number
of different properties. Loading the entire dataset and managing the
filtering client-side is not a realistic option as it will grow to 10's of
megabytes over time.
The location in question stores a list of bookings that I need to be able
to retrieve by status, client, ship & invoicing status.
I have built a node.js server process that monitors the location for
child_added & child_changed events and updates the indexes accordingly. All
simple, and very well explained by the firebase team.
The app will be displaying the filtered data in a grid using the ng-repeat
Now... The question I have is how best to consume the index via an
My initial thought was to have a complete read-only copy of the record
stored at each index location, but this seems inefficient as I am
potentially keeping many copies of the same record in memory if a user has
requested data by status and then by client and then by ship.
My second thought was to setup a $watch on the index and each time a record
is added/deleted, retrieve/remove the underlying record into an array of
sdk will efficiently manage multiple references to the same object if it
appears in multiple indexes. My question is, how efficient is the
$firebaseObject and if I have several hundred in memory will I kill my app?
I am going to test this over the coming days, but before I head down a path
that will have consequences, would appreciate any thoughts from people that
may have had to manage a similar use case?
You received this message because you are subscribed to the Google Groups "Firebase + AngularJS" group.
To unsubscribe from this group and stop receiving emails from it, send an email to email@example.com.
To post to this group, send email to firstname.lastname@example.org.
To view this discussion on the web visit https://groups.google.com/d/msgid/firebase-angular/f413297b-b26d-464d-bb8f-ad1c8ca67fac%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.