Verwenden Sie bei der Erstellung eines räumlichen Indexes die CREATE INDEX-Anweisung oder den Assistenten zum Erstellen von Indizes wie bei der Erstellung eines Indexes für jeden anderen Datentyp. Bei der Erstellung von Indizes für räumliche Daten wird dagegen empfohlen, nicht mehr als eine räumliche Spalte in den Index einzubeziehen, und die räumliche Spalte an das Ende der Indexdefinition zu stellen.
Um eine räumliche Spalte in einen Index einzubeziehen, muss diese Spalte außerdem eine SRID-Integritätsregel besitzen.
Indizes für räumliche Daten können die Kosten für die Bewertung der Beziehungen zwischen Geometrien verringern. Beispiel: Sie wollen die Grenzen der Vertriebsregionen ändern und möchten die Auswirkungen auf die bestehenden Kunden ermitteln. Um festzustellen, welche Kunden sich in einer bestimmten Vertriebsregion befinden, können Sie die ST_Within-Methode verwenden, um einen Punkt, der eine Kundenadresse darstellt, mit einem Polygon zu vergleichen, das die Vertriebsregion repräsentiert. Ohne jeglichen Index muss der Datenbankserver jeden Adresspunkt in der Kundentabelle anhand der Vertriebsregion überprüfen, um zu ermitteln, ob sie in dem Ergebnis zurückgegeben werden soll. Dies kann kostspielig sein, wenn die Kundentabelle groß ist, und ineffizient, wenn die Vertriebsregion klein ist. Ein Index, der den Adresspunkt jedes Kunden einbezieht, kann dazu beitragen, die Ergebnisse schneller zurückzugeben. Wenn der Abfrage ein Prädikat hinzugefügt werden kann, das die Vertriebsregion den Staaten zuordnet, die sie überlappt, können die Ergebnisse noch schneller mit einem Index ermittelt werden, der sowohl den Code des Staats als auch den Adresspunkt einbezieht.
Abfragen auf räumliche Daten ziehen möglicherweise Nutzen aus einem Clustered-Index. Vor der Verwendung eines Clustered-Indexes sollte jedoch die sonstige Nutzung der Tabelle berücksichtigt werden. Sie sollten die Typen von Abfragen, die wahrscheinlich durchgeführt werden, prüfen und testen, ob die Performance durch die Clustered-Indizes verbessert wird.
Es können auch Textindizes für eine räumliche Spalte erstellt werden. Diese bieten jedoch keinen Vorteil gegenüber normalen Indizes, weshalb stattdessen normale Indizes empfohlen werden.
Spalten mit räumlichen Daten können nicht in einen Primärschlüssel, eindeutigen Index oder eine Eindeutigkeits-Integritätsregel einbezogen werden.
![]() |
Kommentieren Sie diese Seite in DocCommentXchange.
|
Copyright © 2012, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.1 |