Şu anda Lat/Long float sütunları olan bir tablo ve bu 2 sütun üzerinde artı bir alması gereken başka bir dizin içeren bir sitem var.SQL Server 2008'de bir "Covering, Spatial" dizini oluşturabilir miyim?
Belirli bir noktadan bir yarıçap içinde yer alan satırları almak için bu tabloyu sürekli olarak sorgulıyorum (aslında hız için kare alıyorum), ancak yalnızca dizinlenmiş alanlara ihtiyacım var, bu dizin aslında örtüsü olduğunu ve yürütme planı sadece 2 adım vardır: Ben SQL Ben Coğrafya sütunu oluşturduk 2008. mekansal özelliklerinden yararlanmak çalışıyorum, Şimdi
Index Seek (cost: 100%) and SELECT (cost: 0%)
yarattı, doldurdum mekansal indeks, eserler.
Ve her şey gayet iyi çalışıyor, ancak yürütme planının milyonlarca adımı vardır ve zamanın% 74'ü Kümelenmiş Dizin Aracında harcanır, burada Uzamsal Dizinde bulunan satırları gerçek tabloya dahil eder, verilerin dinlen ...
Yani
(Mekansal Index Seek Yürütme Planı Maliyet% 1 sürer), görünüşe göre, uygun şekilde Mekansal dizini kullanarak ve kayıtları bulma IS ben çok daha hızlı daha ihtiyaç Lat/Long üzerinden "normal" dizinimden önce, ama ana tablonun birleştirilmesi beni KILLING, Mekansal sorguyu eskisinden 7 kat daha uzun sürüyor.
Uzamsal indekse daha fazla sütun eklemenin bir yolu var mı? Böylece, daha önce yaptığı gibi, bir adımda işleri yapabilir.
Bu durumu iyileştirmek için yapabileceğim başka şeyler var mı?
GÜNCELLEME: Ben göre
(sadece endeks kendisi sütunları dahil Ben kullanılan bilmediğim) "normal" indeksleri anahtar kelime DAHİL kullanan diğer sütunları "include" bulmuşlardır here dokümantasyonuna göre, bu madde Mekansal Endeksler için bir seçenek değildir ... Herhangi bir fikir?
Teşekkürler!
Daniel