For cases like the following:
- A slow ST_GEOMETRY query layer that constructs geometries or does spatial operations.
- A slow linear referencing route event layer.
- Or, a layer is slow due to a connection to an external database.
Could some optional settings be added to a layer's properties to boost performance?
- Control how often ArcGIS Pro re-queries the underlying data. For example, only re-query the db once every 5 minutes (and only if the map is actively being used). When the layer is used/refreshed in the map, ArcGIS would utilize the data that's cached in RAM, rather than re-querying the DB each time.
- Similarly, could we use a setting to tell ArcGIS Pro to re-query ahead of time, so that the data is pre-queried for the next time we use/refresh the layer in the map? Kind of like what Google Chrome does?
- Or only re-query if the underlying data has changed. Similar to Oracle’s result cache mechanism: Making Oracle queries faster: Cache query results using an SQL hint.
I wonder if that kind of thing might be useful for cases where a dynamic layer is slow or doesn't need to be real-time (to avoid unnecessary database hits).
It would be a lot more convenient to control that sort of thing in the application, instead of setting things up in the back-end via materialized views, triggers, scheduled tasks, etc.. And the user could toggle it on or off as needed, depending on the use case. Whereas if it's done in the back-end, the user doesn't have any control over how the data behaves in their map...in terms of currency, caching, etc..