Je demandais sur un forum si cela pouvait être une bonne idée de créer des index spatiaux sur des sous-ensembles d'une table lorsque votre application n'affiche sur la carte que ces sous-ensembles et jamais la table entière.
Je posais cette question parce que je pensais que les sous-ensembles n'ayant pas les mêmes étendues que l'ensemble de la table, il serait peut-être plus rapide d'afficher les sous-ensembles avec leurs propres index spatiaux.
La réponse que j'ai reçue était que les index spatiaux n'affectent pas le temps d'affichage mais uniquement utilisés pour les requêtes spatiales telles que l'union ou l'intersection. Est-ce vrai??? Mon expérience avec le SIG et la base de données est quand une table n'a pas d'index spatial, l'affichage sur la carte est beaucoup plus lent. J'ai toujours pensé qu'à l'affichage, le tableau était interrogé pour montrer les entités qui coupent l'étendue de la fenêtre de carte actuelle, de sorte que les entités extérieures ne sont pas chargées pour rien. Est-ce vraiment ainsi que cela fonctionne? Ceci est une sorte de requête spatiale non?
Quelle est la vérité? Est-ce une bonne idée de créer des index spatiaux sur des sous-ensembles?
la source
Sur les grandes bases de données ou une base de données avec des changements, il peut être très important d'avoir des index spatiaux en place et mis à jour régulièrement.
(Garder les choses simples ici)
Par exemple, pour les capacités d'indexation d'Oracle Spatial dans le moteur de base de données Oracle est une caractéristique clé du produit Spatial. Un index spatial, comme tout autre index, fournit un mécanisme pour limiter les recherches , mais dans ce cas basé sur des critères spatiaux tels que l'intersection et le confinement. Un indice spatial est nécessaire pour:
Indexation spatiale avec Oracle 11.2g
http://docs.oracle.com/cd/E11882_01/appdev.112/e11830/sdo_index_query.htm
la source