Pregunto esto porque estaba trabajando principalmente con Oracle, pero durante el año pasado me he duplicado con PostGIS y SQLServer 2008. La mayoría de las funciones espaciales en Oracle no funcionarán sin un índice espacial que devuelva el error ORA-13226:
13226, 00000, "interfaz no admitida sin un índice espacial" // * Causa: la tabla de geometría no tiene un índice espacial. // * Acción: Verifique que la tabla de geometría referenciada en el operador espacial tenga un índice espacial.
Para mí esto tiene sentido. Ejecutas una consulta espacial = debes tener un índice espacial. Pero por lo que yo entiendo, ni PostGIS ni SQL Serve requieren esto. PostGIS incluso parece tener funciones (_ * por ejemplo, _STContains) que EXPLÍCITAMENTE no usarán el índice espacial.
Entonces la pregunta es: ¿hay algún caso en el que NO deba usar un índice espacial? No necesariamente si es un enfoque de "tómalo o déjalo", es decir, no hará ninguna diferencia, pero ¿dónde NO usar el índice espacial mejorará el rendimiento? Para mí, la última oración es una contradicción en términos, pero por lo demás, ¿por qué PostGIS proporcionaría estas funciones?