sql >> Databáze >  >> RDS >> Sqlserver

Jak dobrý je geografický datový typ na serveru SQL 2008?

Pokud manipulujete pouze se standardním párem zeměpisné šířky/délky, jak popisujete, a vše, co děláte, je jednoduché vyhledávání, pak pravděpodobně nezískáte mnoho na cestě ke zvýšení rychlosti použitím Geometry Type.

Pokud však chcete být dobrodružnější, jak uvádíte, pak přechod na používání typů geometrie vám otevře celý svět nových možností, a to nejen pro vyhledávání.

Například (Na základě projektu, na kterém pracuji) byste si mohli (Pokud se jedná o data ve Spojeném království) stáhnout definice polygonu pro všechna města / vesnice / města pro danou oblast a poté provést křížové odkazy pro vyhledávání v konkrétním městě nebo kdybyste měli cestovní mapu, mohli byste zjistit, kteří zákazníci žili vedle hlavních doručovacích tras, dálnic, hlavních silnic, všeho druhu.

Můžete také udělat nějaké velmi efektní reporty, představte si mapu měst, kde byl každý obrys vykreslen na mapě, poté stínován barvou, aby se zobrazila hustota zákazníků v oblasti, nějaká jednoduchá geometrie SQL vám snadno vrátí počet přímo z databáze, k zobrazení tohoto druhu informací.

Pak je tu sledování, nevím, s jakými daty nakládáte, nebo proč máte zákazníky, ale pokud něco dodáváte, zadáváte souřadnice dodávky dodávce, říká vám, jak blízko je danému zákazníkovi.

Pokud jde o otázku je STDistance rychlá? no to je opravdu těžké říct, myslím, že lepší otázka je "Je to rychlé v porovnání s.....", je těžké říct ano nebo ne, pokud to nemáte s čím porovnat.

Prostorové indexy jsou jedním z hlavních důvodů pro přesun vašich dat do geograficky orientované databáze, jsou optimalizovány tak, aby pro daný úkol produkovaly nejlepší výsledky, ale jako každá databáze, pokud vytvoříte špatné indexy, budete mít špatný výkon.

Obecně byste určitě měli zaznamenat určité zvýšení rychlosti, protože matematika v řazení a indexování si více uvědomuje účel dat, než aby byla v provozu poměrně lineární, jako je běžný index.

Mějte také na paměti, že čím výkonnější je stroj SQL serveru, tím lepších výsledků dosáhnete.

Posledním bodem, který je třeba zmínit, je správa dat, pokud používáte databázi s vědomím GIS, pak to otevírá cestu pro použití balíčku GIS, jako je ArcMap nebo MapInfo, ke správě, opravám a vizualizaci dat, což znamená, že opravy jsou velmi snadné. provádět ukazováním, kliknutím a tažením.

Moje rada by byla vytvořit vedle sebe tabulku k vaší stávající tabulce, která je naformátována pro prostorové operace, pak napsat několik uložených procesů a udělat nějaké testy časování, abyste viděli, který vyjde nejlépe. Pokud máte výrazný nárůst pouze u základních operací, které děláte, pak je to jen ospravedlnění, pokud je to přibližně stejné, pak vaše rozhodnutí skutečně závisí na tom, jaké nové funkce vlastně chcete dosáhnout.




  1. CHYBA:Nepodařilo se sestavit nativní rozšíření drahokamů – Chyba při instalaci mysql2

  2. Vyloučit hodnotu záznamu ve skupině, pokud je přítomen jiný

  3. ComboBox.ValueMember a DisplayMember

  4. Skupina MySQL podle po sobě jdoucích vzhledů