Dzielenie się zasobami GIS – publikowanie usługi mapowej z wykorzystaniem ArcGIS for Desktop oraz ArcGIS for Server

Dzielenie się zasobami GIS – publikowanie usługi mapowej z wykorzystaniem ArcGIS for Desktop oraz ArcGIS for Server

Zasoby GIS to podstawowy składnik każdego systemu informacji przestrzennej. Dane rastrowe i wektorowe, modele terenu, mapy, analizy, narzędzia geoprzetwarzania – wszystkie te zasoby GIS wykorzystujemy na co dzień w oprogramowaniu ArcGIS for Desktop lub innych aplikacjach biurowych.

Na opublikowanie tych zasobów w postaci usług sieciowych i współdzielenie ich z innymi użytkownikami przez Internet pozwala ArcGIS for Server. Usługi sieciowe są łatwo dostępne z poziomu przeglądarki internetowej lub każdego innego urządzenia z dostępem do Internetu – smartfonu, tabletu, aplikacji desktop lub aplikacji internetowych.

Oprogramowanie ArcGIS for Server daje możliwość korzystania z wielu obsługiwanych przez Esri formatów danych oraz różnych dodatkowych rozszerzeń, które wzbogacają możliwości serwera GIS o dodatkowe funkcje.

W niniejszym artykule omówiona zostanie procedura publikowania serwisów za pomocą ArcGIS for Server.

Do publikowania serwisów na platformie ArcGIS for Server potrzeba pakietu ArcGIS for Desktop. Jest to aplikacja, w której należy najpierw przygotować zasoby do opublikowania, wybierając dane (pliki shape, klasy obiektów, tabele baz danych), a następnie opracować ich wygląd oraz przygotować prezentację kartograficzną. Gotowy projekt zostaje następnie opublikowany jako usługa, która udostępnia nasze zasoby szerszemu gronu odbiorców. Inne zasoby GIS, takie jak lokatory adresów lub narzędzia geoprzetwarzania, również można przygotować przy pomocy ArcGIS for Desktop i opublikować na serwerze. Każda usługa opublikowana w ArcGIS for Server posiada własny adres URL, za pomocą którego aplikacje klienckie łączą się z opublikowanymi zasobami. Sposób wykorzystania serwisów zależy od użytkownika – istnieje możliwość wyświetlenia usług w portalu ArcGIS Online, w aplikacjach typu desktop czy też zbudowania własnej aplikacji internetowej lub mobilnej.

Podstawowym sposobem dzielenia się informacjami GIS z wykorzystaniem ArcGIS for Server jest opublikowanie serwisu mapowego. Poniżej krok po kroku przedstawiono procedurę publikowania prostego serwisu mapowego składającego się z dwóch warstw – warstwy rastrowej służącej jako tło dla naszych danych oraz warstwy wektorowej zawierającej właściwe dane.

Połączenia ArcGIS for Server w ArcMap i ArcCatalog

Aby mieć możliwość opublikowania serwisu mapowego, musimy najpierw zadbać o to, aby stacja robocza, na której przygotowujemy dane do publikacji, mogła się połączyć z ArcGIS for Server.
Do skonfigurowania połączenia potrzebny jest adres sieciowy naszego serwera GIS. Zależnie od modelu wdrożenia i ustawień naszej instancji ArcGIS for Server adres ten może wyglądać różnie.
Jeśli serwer GIS oraz nasza stacja robocza znajdują się w obrębie jednej sieci LAN, możemy wykorzystać nazwę maszyny serwerowej lub jej adres IP. W przypadku, gdy serwer znajduje się w lokalizacji zdalnej, musimy mieć pewność, że jest on widoczny dla użytkowników łączących się przez Internet oraz posiada odpowiednie ustawienia zabezpieczeń. O te funkcjonalności dba administrator serwera GIS.
Połączenia do ArcGIS for Server dzielą się na trzy kategorie.

Połączenie administracyjne (Administer GIS server) – umożliwia nawiązanie połączenia z ArcGIS for Server operatorowi w roli administratora serwera. Administrator ma możliwość modyfikowania ustawień serwera GIS oraz ma dostęp do wszystkich opublikowanych serwisów. Może publikować nowe serwisy oraz zmieniać ustawienia już istniejących serwisów i sterować ich działaniem (uruchomieniem, zatrzymaniem lub skasowaniem serwisu). Do połączenia administracyjnego wymagane są nazwa użytkownika oraz hasło.

Połączenie publikujące (Publish GIS Services) umożliwia publikowanie wszystkich zasobów GIS. Uzytkownik publikujący ma również możliwość konfigurowania i publikowania szkiców serwisów (Draft Services), które zostały wcześniej przygotowane do publikowania i znajdują się w lokalnym katalogu szkiców (katalog Draft). Dodatkowo istnieje możliwość uruchomienia, zatrzymania lub usuwania serwisów. Nie ma możliwości zmiany ustawień serwera GIS. Do połączenia wymagane są nazwa oraz hasło użytkownika, który ma nadane co najmniej uprawnienia publikujące przez administratora serwera GIS.

Połączenie użytkownika (Use GIS services) umożliwia przeglądanie oraz użytkownie opublikowanych serwisów GIS. Nie ma możliwości zmiany ustawień serwera GIS, publikowania nowych serwisów i zmiany ich ustawień. Zwykły użytkownik nie może również uruchamiać, pauzować, zatrzymywać i kasować serwisów. Do połączenia może być wymagane podanie konkretnej nazwy i hasła użytkownika spośród użytkowników skonfigurowanych przez administratora serwera GIS, jednak istnieje możliwość połączenia bez podawania żadnych danych dostępowych.

 

Rys. 1. Typy połączeń do ArcGIS for Server.

Rys. 1. Typy połączeń do ArcGIS for Server.

Schemat adresu URL połączenia do ArcGIS for Server:
http://<IP_serwera> lub <nazwa_serwera>:<port>/<nazwa_serweraGIS>/
Przykładowe adresy połączenia ArcGIS for Server:
1. Serwer o nazwie „serwerGIS” dostępny w sieci LAN:
http://192.168.100.123:6080/serwerGIS/
2. Serwer w lokalizacji zdalnej, udostępniony dla użytkowników sieci Internet:
http://www.mojafirma.pl/serwerGIS/

Na potrzeby niniejszego poradnika korzystać będziemy z połączenia użytkownika, który posiada uprawnienia publikujące (Publish GIS Services).
Jeśli nie dysponujesz w tym momencie dostępem do ArcGIS for Server, a chciałbyś przetestować opisywaną funkcjonalność, możesz skorzystać z serwera udostępnionego w Internecie przez ESRI Inc.

Jest to serwer demonstracyjny, który udostępnia przykładowe zasoby GIS. Możesz połączyć się z nim jako zwykły użytkownik bez praw publikujących lub administracyjnych.
Adres tego serwera to http://sampleserver1.arcgisonline.com/ArcGIS/services.
Aby móc uzyskać połączenie do tego serwera w programie ArcMap, należy w oknie wyboru rodzaju połączenia zaznaczyć opcję „Use GIS Services”. Nie jest wymagane podawanie nazwy i hasła użytkownika. Po połączeniu będzie można przeglądać opublikowane serwisy mapowe i serwisy geoprzetwarzania oraz korzystać z ich funkcjonalności.

Ustanowienie połączenia do ArcGIS for Server.
1. Otwórz aplikację ArcMap lub ArcCatalog.
2. W oknie Catalog rozwiń pozycję „GIS Servers” i wybierz „Add ArcGIS Server”.
3. W oknie wyboru połączeń wybierz „Publish GIS Servies”.
4. Następnie podaj adres serwera GIS oraz dane logowania użytkownika posiadającego odpowiednie uprawnienia. Użytkownik został wcześniej utworzony przez Administratora serwera.
5. Opcja Staging Folder. W trakcie publikowania serwisu, automatycznie tworzony jest plik definicji serwisu (service definition file), przechowywany w folderze na dysku lokalnym. Domyślna lokalizacja folderu widoczna jest w oknie ustawień połączenia. Po poprawnym opublikowaniu serwisu w ArcGIS for Server plik zostaje skasowany. Pozostaw domyślną lokalizację katalogu Staging Folder.
6. Zatwierdź wszystkie ustawienia przyciskiem Finish. Jeśli dane są prawidłowe, połączenie do ArcGIS for Server zostanie dodane do listy połączeń.

Rys. 2. Dane dostępowe połączenia publikującego (Publish GIS services).

Rys. 2. Dane dostępowe połączenia publikującego (Publish GIS services).

Teraz przejdziemy do publikacji serwisu mapowego. Serwis zostanie opublikowany na podstawie wcześniej przygotowanego projektu mapy (plik .mxd). W projekcie znajdują się dwie warstwy danych przestrzennych. W tym przypadku dane znajdują się w lokalnej geobazie plikowej. Warstwa „Lublin_orto” to plik rastrowy pokazujący fragment centrum Lublina. Warstwa „budynki” to klasa obiektów poligonowych reprezentująca kilka budynków znajdujących się w centrum miasta. Symbolizacja budynków została ustawiona tak, aby kolor symbolu odzwierciedlał wysokość budynku.

 

Rys. 3. Projekt prostej mapy, na podstawie którego zostanie opublikowana usługa GIS.

Rys. 3. Projekt prostej mapy, na podstawie którego zostanie opublikowana usługa GIS.

Procedura publikowania serwisu mapowego:
1. W głównej belce programu ArcMap należy wybrać File> Share As…>Service.
2. Wybieramy opcję „Publish a service”.
3. W kolejnym oknie z rozwijanej listy wybieramy wcześniej utworzone połączenie do ArcGIS for Server.
4. Opcjonalnie możemy zmienić domyślną nazwę serwisu. Nie powinna ona przekroczyć 120 znaków, może zawierać tylko znaki alfanumeryczne i podkreślenia (spacje nie są akceptowalne).

 Rys.4. Wybór połączenia oraz ustawienie nazwy serwisu.


Rys.4. Wybór połączenia oraz ustawienie nazwy serwisu.

5. Następnie możemy wybrać katalog, w którym zostanie opublikowany serwis. Domyślnie serwisy są publikowane w katalogu głównym serwera (root). Administrator serwera utworzył wcześniej katalog o nazwie „Tutorial”, w którym umieścimy nasz serwis.
6. Po zatwierdzeniu tych ustawień otworzy się okno „Service Editor”. Jest to najbardziej rozbudowany etap konfiguracji serwisu GIS. Na tym etapie mamy możliwość szczegółowego skonfigurowania serwisu oraz wybrania zakresu funkcjonalności, jaką serwis będzie udostępniał użytkownikom.
7. Wybieramy zakładkę Capabilities – domyślnie wybrane są funkcje Mapping oraz KML. Opcję KML możemy odznaczyć, gdyż nie jest nam w tym momencie potrzebna. W zakładce Mapping znajdują się następujące pozycje:
• REST URL oraz SOAP URL – tak będą wyglądać adresy internetowe opublikowanego serwisu. Dzięki nim aplikacje zewnętrzne będą mogły korzystać z opublikowanych zasobów GIS.

Operacje, jakie można wykonać na publikowanych danych:

  • Data – umozliwienie aplikacjom klienckim przeszukiwania obiektów według atrybutów. Odpowiednikiem tej operacji w programie ArcMap jest narzędzie FIND.
  • Map – umożliwienie aplikacjom klienckim rysowania geometrii obiektów na mapie.
  • Query – umożliwienie aplikacjom klienckim bezpośredniego dostępu do atrybutów obiektów opublikowanych w serwisie. Daje to możliwość zaimplementowania np. operacji identyfikacji obiektu (kliknięcie obiektu na mapie powoduje wyświetlenie tabelki z jego atrybutami). Odpowiednikiem tej operacji w programie ArcMap jest narzędzie IDENTIFY.

Na potrzeby niniejszego poradnika nie jest wymagane wprowadzanie zmian w zaawansowanych ustawieniach serwisu. Wszystkie ustawienia pozostawiamy na poziomie domyślnym.

 

Rys. 5. Główne okno konfiguracji serwisu – Service Editor.

Rys. 5. Główne okno konfiguracji serwisu – Service Editor.

W górnej belce okna Service Editor znajduje się przycisk „Analyze”. Uruchomienie tej funkcji automatycznie przeanalizuje nasz projekt mapowy pod kątem zgodności z zasadami optymalnego publikowania zasobów GIS. Jest to bardzo przydatna funkcja, wprowadzona w ArcGIS 10.1. Analiza wskaże nam wszystkie elementy projektu, które należy poprawić, aby opublikowany serwis działał optymalnie.

8. Uruchomienie funkcji „Analyze” wyświetliło łącznie pięć komunikatów o elementach, które publikujący może poprawić, aby zoptymalizować swój serwis. Tabelka prezentuje dokładny opis problemu i stopień jego ważności (High, Medium, Low). Kliknięcie komunikatu prawym przyciskiem wskaże dokładne miejsce, w którym należy dokonać zmian, aby naprawić błąd. Przykładowo, kiedy pojawi się komunikat: „Layer draws at all scale ranges”, możemy rozwinąć menu prawego przycisku i wybrać pozycję „Change General Layer Properties”. Otworzy się okno ustawień warstwy, w której został wykryty problem. Możemy teraz ograniczyć wyświetlanie warstwy do wybranych przez nas skal i zaakceptować zmiany. Po ponownej analizie projektu serwisu, komunikat się nie pojawi. Jeśli wskazane problemy nie mają dla nas dużego znaczenia i chcemy dopuścić publikację serwisu w takim stanie, możemy zaznaczyć je jako wyjątki (Mark As Exception).

 

 Rys.6. Analiza i optymalizacja ustawień serwisu przed właściwą publikacją.


Rys.6. Analiza i optymalizacja ustawień serwisu przed właściwą publikacją.

9. Po zaakceptowaniu wszystkich ustawień możemy wybrać opcję „Preview”, która otworzy nowe okno pokazujące, jak będzie dokładnie wyglądał nasz serwis po opublikowaniu. Ostatnim krokiem jest użycie przycisku „Publish”, które rozpocznie procedurę tworzenia serwisu w repozytorium ArcGIS for Server.
10. Po zakończeniu publikowania możemy się cieszyć udostępnioną usługą GIS, gotową do użycia. W tym momencie możemy otworzyć usługę w aplikacji ArcMap, podłączyć do portalu ArcGIS Online lub zbudować własne aplikacje bazujące na serwisach udostępnianych przez nasz ArcGIS for Server.

W kolejnej części tutorialu ArcGIS for Server zostanie zaprezentowany sposób na zbudowanie własnej aplikacji internetowej działającej w przeglądarce internetowej.

 

Rys.7. Widok gotowej usługi w aplikacji ArcMap oraz okna „Identify” pokazującego atrybuty jednego z budynków.

Rys.7. Widok gotowej usługi w aplikacji ArcMap oraz okna „Identify” pokazującego atrybuty jednego z budynków.

 

Rys.8. Widok gotowej usługi podłączonej do mapy w portalu ArcGIS Online. Mapa bazowa ESRI Streets.

Rys.8. Widok gotowej usługi podłączonej do mapy w portalu ArcGIS Online. Mapa bazowa ESRI Streets.

 

INFORMACJA NA KOŃCU ARTYKUŁU

Źródła danych:

  • Zdjęcie lotnicze wykorzystane w tutorialu to fragment ogólnodostępnej mapy bazowej ESRI Imagery.
  • Dane wektorowe budynków oraz ich atrybuty – opracowanie własne. Wartości atrybutów są fiwistościkcyjne, nie mają pokrycia z rzeczyą.
Czy zainteresował Cię ten materiał?