Ben bir enlem / Ing koordinat ile kayıtların bir MySQL tablo, her vardır. Aramalar bir merkez noktasına göre bu veriler üzerinde yapılır ve bir yarıçap (yarıçap içinde herhangi bir kayıt döndürülür). Sorgumda içindeki mesafe hesaplamak için cosines küresel yasasını kullanarak ediyorum. Benim sorunum Geodata indeksleme (lat / Ing değerleri yüzen olarak depolanır) korkunç verimsiz olmasıdır. MySQL mekansal uzantılarını kullanarak bir seçenek değildir. Boyutu 100k etrafında setleri ile sorgu yürütmek için zaman mantıksız bir miktar alır.
Ben biraz araştırma yaptım ve bir z-index yani Morton numarasını yardımcı olabilir kullanarak gibi görünüyor. Ben ekleme üzerinde her kayıt için Morton sayısını hesaplamak ve sonra Dünya'nın yarıçapı / merkez noktası / arama yarıçapı verilen dayalı bir sınırlayıcı kutu için yüksek / düşük Morton değerini hesaplayabilirsiniz.
Ben sadece bu yüzden bu işe tamamen emin değilim, ve de ben PHP Morton sayısını hesaplayabiliriz nasıl bilmiyorum benim app oluşturmak için bu şeyler hakkında yeterli biliyorum. Bu bir bit operasyonu olabilir mi?