I am currently using Cloud Functions to do aggregation in Firebase so that whenever a certain type of data entry occurs, I aggregate it accordingly and store it to show our reports. There are following concerns with this approach:-
- Adding new reports would mean going over all the existing data and that could be expensive with firebase realtime database
- Making any changes to existing reports is also non-trivial
I was considering a solution like Cloud Dataflow. However, one issue is that it is not part of the Spark or Flame plan of Firebase.
What is the best way to handle reporting with firebase, keeping both cost and performance in mind?