Tandis que R-Trees en général peut indexer des données avec un nombre arbitraire de dimensions, MySQL les capacités spatiales sont uniquement limitées à Geometry types (2 dimensions).
Si vos vecteurs sont 2 -dimensionnel et vous pouvez les normaliser, puis procédez comme suit :
- Divisez le cercle en deux fois le nombre d'angles correspondant à vos différences
- Trouvez le
MBRde vecteurs avec une différence de cosinus donnée par rapport au centre de chaque secteur - Trouvez tous les vecteurs dans le
MBR - Faire le filtrage fin pour la différence exacte.
Dans ce cas, cependant, il sera préférable de précalculer l'angle de la valeur et de l'indexer avec un simple B-Tree indice.