Während R-Trees
generell kann MySQL
Daten mit beliebig vielen Dimensionen indizieren räumliche Fähigkeiten sind nur auf Geometry
beschränkt Typen (2
Abmessungen).
Wenn Ihre Vektoren 2
sind -dimensionale und Sie können sie normalisieren, dann gehen Sie wie folgt vor:
- Teilen Sie den Kreis in die doppelte Anzahl von Winkeln auf, die zu Ihren Unterschieden passen
- Suchen Sie den
MBR
von Vektoren mit gegebener Kosinusdifferenz von der Mitte jedes Sektors - Alle Vektoren im
MBR
finden - Führen Sie die Feinfilterung für den genauen Unterschied durch.
In diesem Fall ist es jedoch besser, nur den Winkel des Werts vorzuberechnen und ihn mit einem einfachen B-Tree
zu indizieren index.