Temat badań mojego pierwszego mistrza dotyczył indeksów przestrzennych. Dowiedziałem się o drzewach R i drzewach R +, drzewach R * i innych różnych, ale bardzo podobnych tematach. To może nie być publikowana informacja, ale jakiego typu indeksu przestrzennego używa ESRI? Jako drugorzędne pytanie można zmienić ten typ i jak? Istnieją sytuacje, w których inny typ indeksu zwiększyłby wydajność.
W przypadku Oracle może używać typu danych przestrzennych ST_Geometry, który może być indeksowany do drzewa R lub drzewa quad albo obu: http://docs.oracle.com/html/A88805_01/sdo_intr.htm
Inne bazy danych używają binarnych mechanizmów przechowywania, które domyślnie nie są przestrzenne i nie wydają się korzystać z dostępnego indeksowania przestrzennego. W SQL 2005 i niższych typach danych przestrzennych nie istniały, ale ESRI nadal mógł używać baz danych SQL. Zgodnie z tym studium przypadku SQL 2012: http://www.microsoft.com/casestudies/Case_Study_Detail.aspx?CaseStudyID=710000000547 wykorzystuje typ zautomatyzowanej wydajności przestrzennej, ale nie podaje rodzaju R-drzewa.
Punkty bonusowe za czytanie materiałów odpowiadających na to pytanie.
Dzięki.
źródło
Odpowiedzi:
Istnieje wiele różnych indeksów przestrzennych, których będzie używać ArcSDE, w zależności od używanej bazy danych i typu danych przestrzennych.
W przypadku Oracle Oracle Spatial używa indeksu domen R-Tree, podczas gdy typ Esri SDE.ST_Geometry używa indeksu domen grid. W przypadku SQL Server 2012 uważam, że główną zmianą w indeksowaniu przestrzennym jest dodanie automatycznej siatki. To tak naprawdę nie zmienia struktury siatki (wciąż B-drzewa), ale automatycznie wybiera lepszy rozmiar siatki .
To wszystko, co mogę wymyślić, ale jestem pewien, że coś przeoczyłem.
źródło