The Query Result Cache hint seems like a useful mechanism: Oracle Base: Query Result Cache.
But it's a shame it isn't supported for object types like SDO_GEOMETRY.
13.56 RESULT_CACHE Clause
Can't use Query Result Cache in query with varray (or object types)
With that said, the mechanism could still be useful for:
Queries that are non-spatial.
Queries that use SDO_GEOMETRY functionality, but don't output geometry columns.
For example, output spatial information as X and Y number columns, instead of an SDO_GEOMETRY column. Then use the GIS application to display the XYs as points — via something like an XY Event Layer in ArcGIS. (XY Event Layers are surprisingly fast.)
Unfortunately, that only helps us if the spatial information is points. We can't create an event layer for lines, polygons, or multi-part points.
More info:
Making Oracle queries faster: Cache query results using an SQL hint
What's the intended use case for the Query Result Cache hint?
Does anyone have any experience with the Query Result Cache hint? Can you think of any other workarounds for using it with spatial data?