Clustering : indexation d’un point sur les dalles

Le meilleur moyen d’indexer les dalles est de les identifier par une chaine qui représente une décomposition fractale de la surface. Si chaque dalle contient, par exemple, quatre dalles plus petites il suffit de représenter chacune par une lettre A, B, C ou D. Chacune de ces petites dalles se décompose à nouveau en quatre dalles plus petites, on ajoute alors une deuxième lettre pour obtenir une adresse à deux caractères, de AA à DD.

Ce système d’indexation a deux intérêt :

  1. En un seul champ, on peut désigner toutes les dalles qui contiennent un point.
  2. On peut utiliser LIKE AAAA% pour récupérer tous les points d’une dalle de n’importe quel niveau.

La recherche des points d’une dalle se fait assez facilement par :
SELECT * FROM la_table_du_point WHERE TileAddr LIKE adresse-de-la-dalle% ORDER BY TileAddr