Używasz ArcGIS Desktop z SQL Server Spatial jako backend?

15

Zastanawiam się, jak najlepiej używać ArcGIS Desktop i SQL Server 2008 razem. W tej chwili prowadzimy ręczny import i eksport plików między SQL 2008 i plikami kształtów arcgis 10. Ponieważ SQL 2008 ma typ danych geograficznych, spodziewałem się, że łatwo będzie zastąpić pliki map relacyjną bazą danych, ale z jakiegoś powodu nie wydaje się to tak proste, jak się spodziewałem.

Czy ktoś ma jakieś pomysły, jak wykorzystać SQL 2008 do przechowywania danych i pozbyć się plików kształtów? Czytałem o arcsde, ale tak naprawdę nie rozumiem sensu innej warstwy. Nie mam pojęcia, co właściwie ma zrobić.

Michael
źródło

Odpowiedzi:

9

Za pomocą ArcSDE możesz przechowywać dane przestrzenne w zasadniczo 2 formatach. Albo używając natywnego formatu SDE (który jest BLOB), LUB W zależności od używanej bazy danych (SQL Server, Oracle, PostGIS, myślę, że także DB2 spatial) w odpowiednim macierzystym formacie bazy danych. Który na przykład dla Oracle jest typem SDO_GEOMETRY, a dla SQL Server typy przestrzenne Geografia lub Geometria.

To, jakiego formatu ostatecznie użyjesz, zależy od Ciebie i nie powinno / nie powinno mieć żadnej (wielkiej) różnicy po stronie klienta. Każdy klient ESRI (np. Arcmap) obsługiwałby dane w ten sam sposób. Moją sugestią byłoby wybranie natywnego formatu SQL Server (lub Oracle, jeśli go używałeś), ponieważ w przeciwnym razie myślę, że będziesz musiał użyć narzędzi tylko ESRI, aby wykonać nawet najprostsze zapytania przestrzenne lub analizy. Z drugiej strony użycie macierzystego formatu db pozwoliłoby na wysyłanie zapytań do danych od innych klientów, a nawet z SQL Server Management Studio. Jak mówi @Blomster, możesz przenieść dużo logiki przestrzennej do procedur przechowywanych.

Pierwszym krokiem do importowania plików kształtów do SQL Server byłoby pobranie niezwykle przydatnego narzędzia Shape2SQL autorstwa Mortena Nielsena

mapoholic
źródło
13

Ponieważ otagowałeś pytanie dotyczące ArcGIS 10, sprawdź warstwy zapytań: http://help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#/What_is_a_query_layer/00s50000000n000000/

Użyłem go do łączenia się z bazami danych innymi niż ArcSDE SQL Server 2008.

Dostajesz się do niego z menu plików:

wprowadź opis zdjęcia tutaj

Jest też kilka innych ekranów, które przeprowadzają użytkownika przez proces definiowania wiedzy ArcMap, aby utworzyć warstwę zapytania.

wprowadź opis zdjęcia tutaj
(Upewnij się, że zapytanie zawiera pole geometrii i unikalne pole identyfikatora)

wprowadź opis zdjęcia tutaj

Będziesz chciał to przetestować, ponieważ wiem, że było wadliwe w wydaniu i SP1.

Jay Cummins
źródło
6

Z mojego doświadczenia wynika, że ​​dodanie typu kolumny przestrzennej SQL pozwoliło mi przenieść wiele moich operacji przestrzennych (odległość, bufor) do procedur przechowywanych, co jest naprawdę przydatne.

Przybornik ArcGIS ma narzędzie „Kopiuj funkcje” do wypychania danych do geobazy sde, a jeśli podasz słowo kluczowe konfiguracji „Geometria” lub „Geografia”, należy wygenerować kolumnę przestrzenną SQL.

Blomster
źródło
4

ArcSDE pozwala przechowywać dane przestrzenne w instancji SQL Server, skutecznie dodając kolumnę przestrzenną do tabel; nie zmienia tego ani nie wpływa na istniejącą łączność / aplikacje. ArcSDE działa, jeśli chcesz, jako magazyn metadanych dla twoich danych przestrzennych, takich jak nazwa klasy obiektów, właściciel, zasięg, rodzaj przechowywanej geometrii itp., Itp. (Wszystko w tabelach metadanych zbudowanych podczas instalacji ArcSDE). Pozwala na przechowywanie wszystkiego, co lubisz, obrazów itp., I wciąż masz odwołania przestrzenne (w SQL Server, jeśli dobrze pamiętam, dane przestrzenne są przechowywane jako obraz tpe?). ArcSDE zarządza przechowywaniem tych danych. To właściwie dobre narzędzie, a wszystko to od sceptycznego użytkownika ESRI.

Obecnie używam ArcGIS Server, z ArcSDE i bezpośrednim połączeniem (używając nazw tnsn) na zapleczu Oracle 11g i jest to świetne. Nie rozumiem, dlaczego miałbyś używać SQL Servera do danych przestrzennych, kiedy uważam, że jest on nadal niedojrzały.

Włochaty
źródło
0

Możesz edytować dane wektorowe przechowywane w SQL 2008 lub 2012 w ArcGIS, instalując rozszerzenie GISquirrel, dostępne na stronie www.gisquirrel.com. Zapewnia to również narzędzia do importowania danych przestrzennych do SQL Server z dowolnego źródła danych, które można przeglądać jako warstwę w ArcMap . Niedawno zaimportowałem stół z 90 milionami wielokątów - zajęło to 4 dni, ale bez problemu pracowałem na 2-letnim laptopie!

CrispinF
źródło