Here is an example of tick amplification. The input time table ticks once. When this is passed into a group/ungroup, the query engine does not know which cell changed, so the entire array is marked as modified, and large sections of the output table change. If your real-time queries are not careful, you could potentially have scenarios where one small change causes huge amounts of things to be recomputed -- one tick gets amplified. If you look at partition_by/merge, it doesn't suffer from the same problem. It is why you may want to use it in some cases. Either way, tick amplification is something to keep in mind for performance analysis.
Here is an example of tick amplification. The input time table ticks once. When this is passed into a group/ungroup, the query engine does not know which cell changed, so the entire array is marked as modified, and large sections of the output table change. If your real-time queries are not careful, you could potentially have scenarios where one small change causes huge amounts of things to be recomputed -- one tick gets amplified. If you look at partition_by/merge, it doesn't suffer from the same problem. It is why you may want to use it in some cases. Either way, tick amplification is something to keep in mind for performance analysis.
I let this run for a while, and I see:
See how the one tick has already been amplified 26x.