Home > Fragmenty szkoleń > Wykorzystanie PostgreSQL w GIS

Wykorzystanie PostgreSQL w GIS

szkolenie gis z wykorzystaniem python

Czym jest GIS?

GIS – jest to System Informacji Geograficznej, którego przeznaczeniem jest: przechowywanie, manipulowanie, analiza, zarządzanie i prezentowanie wszystkich rodzajów danych geograficznych. W nazwie systemu położony jest nacisk na słowo – geografia, co oznacza to, że część danych ma charakter przestrzenny, odnoszący się do miejsc na Ziemi.

Zwykle z tymi danymi przestrzennymi występują zwykłe dane tabelaryczne, zwane danymi atrybutów. Dane atrybutów to dodatkowe informacje o każdym z elementów przestrzennych. Przykładem może być sklep. Faktyczna lokalizacja sklepów to dane przestrzenne. Dodatkowe dane, takie jak nazwa sklepu, asortyment będą stanowiły dane atrybutów.

PostgreSQL i PostGIS

PostgreSQL to jeden z kilku najbardziej popularnych systemów zarządzania relacyjnymi bazami danych typu open source, czyli krótko mówiąc, ​​możesz go pobrać i korzystać z niego zupełnie za darmo. PostGIS z kolei to rozszerzenie bazy danych, które współpracuje z PostgreSQL i umożliwia między innymi:

  • wykonywanie operacji przestrzennych
  • przechowywanie danych
  • przechowywanie geometrii
  • budowanie indeksów przestrzennych …

Jakie są zalety korzystania z relacyjnej bazy danych?

Można wybrać sposób zapisywania danych przestrzennych w formacie plików shapefile w folderach, ale do pewnego momentu. Pliki mają swoje ograniczenia dotyczące rozmiaru plików, zaś nazwy kolumn są ograniczone do maksymalnie dziesięciu znaków. Po pewnym czasie praca z takim rozwiązaniem staje się niewystarczająca. Poszukując innego rozwiązania trafiamy na bazę danych przestrzennych.

Bazy danych umożliwiają korzystanie z nich wielu użytkownikom, którzy z bazą i edytować dane w tym samym czasie. Takie centralne repozytorium danych oznacza, że ​​wszyscy użytkownicy w organizacji mogą pracować z tymi samymi danymi, które są aktualne.

Czym są widoki PostgreSQL?

Widok to inaczej dane wyjściowe, które widzimy po uruchomieniu instrukcji SQL na danych w co najmniej jednej tabeli bazy danych. Te dane możemy wykorzystać jako wirtualną tabelę bazy danych, co daje nam ciekawe możliwości. Na przykład możliwe jest tworzenie wielu widoków z jednego i tego samego zbioru danych i dodawanie ich do środowiska GIS. Inną możliwością jest dodanie atrybutów z różnych tabel bazy danych, które dzielą ze sobą relację przestrzenną za pośrednictwem widoku.

Użytkownik końcowy nie musi rozumieć podstawowych zapytań ani logiki, które są potrzebne do tworzenia tych widoków. Wyniki zapytań do bazy danych można dodać do mapy i udostępnić bezpośrednio w organizacji. Tym samym złożoność relacyjnych baz danych jest ukryta przed użytkownikiem końcowym i nie wydaje się być tak mocno skomplikowana.

Triggery w PostgreSQL

Trigger jest niestandardową funkcją, która jest wykonywana gdy następuje zdarzenie w bazie danych np. gdy jest wstawiany nowy wiersz do tabeli. Trigger pozwala na wcześniejsze manipulowanie danymi przed ich wstawieniem do tabeli. Możemy na przykład przeprowadzić walidację danych, aby upewnić się, że dane są poprawne.

Triggery zapewniają przestrzennej bazie danych samowystarczalność, co  byłoby trudniejsze do osiągnięcia przy wielu dodatkowych, zestawach danych i wielu pojedynczych skryptach.

Workflows

W tej kwestii odtwarzalnych przepływów pracy najlepiej mogliby wypowiedzieć się analitycy GIS. W takich workflow’ach dane wejściowe można łatwo zmienić bez konieczności odtwarzania całego procesu przepływu pracy od początku. Alternatywą dla istniejących rozwiązań płatnych jest przestrzenna baza danych taka jak PostgreSQL/PostGIS.Na przykład zapytanie SQL może zawierać kolejne kroki w procesie, które są wymagane dla całego przepływu pracy analizy przestrzennej. Kod ten może zawierać komentarze, po to aby inni użytkownicy mogli go zrozumieć, lub tez w celu jego ponownego wykorzystania w czasie późniejszym.

Jak rozpocząć pracę z PostgreSQL/PostGIS?

Aby rozpocząc pracę z PostgreSQL/PostGIS, w pierwszej kolejności nalezy pobrać i zainstalować PostgreSQL na komputerze. Podczas instalacji PostgreSQL mamy mozliwość wybrania dodatkowych rozszerzeń, w tym PostGIS. Następnie możesz załadować niektóre dane i popracować na nich lub wybrać bazę danych PostGIS z QGIS Desktop i załadować do niej kilka tabel.

Dostępne są specjalne wtyczki do łączenia się z bazą danych PostGIS, wewnątrz QGIS i przesyłania danych do przestrzennej bazy danych. Dostępnych jest wiele innych darmowych wtyczek do łączenia się z bazą danych PostGIS, takich jak DBeaver lub pgAdmin, które są dostarczane z domyślną instalacją PostgreSQL. Zarówno DBeaver, jak i pgAdmin są wyposażone w podgląd przestrzenny do wyświetlania danych przestrzennych na mapie.

Dane geoprzestrzenne

Istnieje wiele różnych konfiguracji i wariantów tego, co można zrobić z bazą danych PostgreSQL. Na początek dobrym wyborem jest baza danych PostGIS połączona z QGIS Desktop. Pozwala to na dodanie serwera geoprzestrzennego typu open source np: GeoServer lub MapServer. Co umożliwia udostępnianie danych z bazy danych za pośrednictwem sieci Web, dzięki czemu można z nich korzystać przez Internet.

Chcesz dowiedzieć się więcej na ten temat? Zapraszamy na szkolenia!!!

Artykuły na Dev-academy

Może Cię również zainteresować: