I ran into performance issues when leveraging the zendesk integration for some relevant discussion.
The issue I ran into was that it is difficult to apply the filtering before you are hit with the browser trying to load all entities. At one point the browser was crashing before I could apply enough filtering so that it wouldn’t crash. It does appear to be much better now that only the name field is included by default, but I also don’t have near as many items in the database now.
Ultimately, it seems there must be paging of some kind added at some point. There are just too many HTML elements on the page, which is what drives up the CPU usage. That can happen from very wide, complicated tables and/or many rows and would be made worse the more complicated the columns are. This is also why apps that must have large tables (e.g., google sheets) have tables that use canvas, rather than HTML. However, fibery has many view types, so leveraging canvas for one view I imagine is not a big priority.
Even if all the data is still delivered to the client, not creating all the HTML elements for all the items would improve the situation quite a bit. As the number of HTML elements increases on a page, everything will slow down.