Relacyjne bazy danych w Systemach Informacji Geograficznej

advertisement
Zastosowanie relacyjnych baz
danych w Systemach Informacji
Geograficznej
Zakres zagadnień
●
●
Co to jest relacyjna baza danych
Obszary zastosowań
–
–
–
–
Przechowywanie informacji geoprzestrzennej
(geometrii)
Przechowywanie atrybutów
Wyszukiwanie danych pod kątem atrybutów
Zaawansowane geoprzetwarzanie
Co to jest baza danych?
●
●
Baza danych to kolekcja danych umieszczonych w
określony sposób w strukturach odpowiadająca
założonemu modelowi danych.
W potocznym ujęciu obejmuje dane oraz program
komputerowy wyspecjalizowany do gromadzenia i
przetwarzania tych danych. Program taki (lub zestaw
programów) nazywany jest "Systemem zarządzania
bazą danych" - ang. Data Base Management System
(DBMS).
Rodzaje bazy danych
●
●
●
●
bazy kartotekowe
bazy relacyjne
bazy obiektowe
bazy strumieniowe
Co to jest relacja?
●
●
●
Jest wydzielonym logicznie zbiorem danych,
zorganizowanych w formie tabeli składającej się z
wierszy dzielonych na kolumny
Reprezentacja pewnej encji (np. książek, mieszkań,
ludzi), relacji między nimi, albo może stanowić
zawartość całej bazy danych.
Pojedynczy wiersz tabeli nazywany jest rekordem i
stanowi najczęściej zbiór danych o pojedynczym
obiekcie (ew. grupie obiektów).
Relacje i złączenia
KLASA
tabela
OBIEKT
Atrybuty (kolumny)
NAZWA
POWIERZCHNI
A
GŁĘBOKOŚĆ
SZEROKOŚĆ
Jezioro
Lednickie
12587595
16
654
Kociołek
12584
32
245
Wartość atrybutu
Cechy baz relacyjnych
●
●
●
●
●
dane są typu prostego (nie zawsze!)
dane przedstawione w postaci dwuwymiarowych tabel
*(relacji)
możliwe jest porównywanie danych z różnych tabel i
łączenie ich ze sobą
wszystkie operacje wykonywane są w oparciu o logikę
dwuwartościową
dane w bazie nie są uporządkowane, w celu ich
identyfikacji potrzeby jest 1 wiersz unikalny (primary
key)
Przechowywanie informacji geoprzestrzenej
●
●
●
●
●
●
Model Simple Feature
Model topologiczny
Istota topologii
Relacje geoprzestrzenne
Przykłady reguł topologicznych
Koncepcja geobazy
Model Simple Feature
●
Obiekty typu:
–
–
–
–
●
punkt (0 wymiarów, współrzędne)
linie (1 wymiar, długość)
obszar (2 wymiary, powierzchnia)
obiekty 3D (3 wymiary, objętość)
Sposób zapisu
–
umożliwia zapis w jednym rekordzie jednej
tabeli zarówno geometrii i atrybutów
punkty (points) (x,y)
scieżki (path) ( ( x1 , y1 ) , ... , ( xn , yn ) )
poligony (poligons) ( ( x1 , y1 ) , ... , ( xn , yn ) )
segmenty ( ( x1 , y1 ) , ( x2 , y2 ) )
prostokąty (boxes) ( ( x1 , y1 ) , ( x2 , y2 ) )
okręgi (circles) ( ( x , y ) , r )
Wady i zalety modelu Simple
Feature
●
Zalety
–
–
–
●
Szybkość przetwarzania
Łatwość opisu, oprogramowania i przechowania
Przejrzysty standard
Wady
–
–
–
Redundancja informacji
Ryzyko „bezwiednego” uszkodzenia spójności
Trudności w rysowaniu i nanoszeniu poprawek
Model topologiczny
●
Obiekty typu:
–
–
bezwymiarowe: punkt
jednowymiarowe: linia
●
–
dwuwymiarowe: area
●
●
●
–
węzły + linie
węzeł
granica
ośrodek
3D (siatki, mesh)
●
●
●
węzły
krawędzie
ścianki
Organizacja danych modelu
topologicznym
NODES
nr
n_lines
GEOM
coordinates
node = 1
n_lines = 3
xy = 616198.592392 392909.117460
node = 2
n_lines = 3
xy = 680335.950885 443081.083377
node = 3
n_lines = 1
xy = 632750.168778 427563.980516
node = 4
n_lines = 1
xy = 660680.953928 398598.721842
LINES
Nr
From_node
To_node
Left_area
Right_area
GEOM
bounding box
AREAS
nr
n_lines
centeroid
GEOM
bounding box
Wady i zalety modelu
topologicznego
●
Wady
–
–
–
●
Wolniejsze przetwarzanie danych
złożoność, skomplikowany opis, trudności w
oprogramowaniu
brak standardu
Zalety
–
–
–
–
Brak redundancji
Ułatwienia w rysowaniu i korekcie
Spójność danych
Dodatkowe możliwości analityczne i opisowe
Istota topologii
●
●
●
W modelu simple feature obiekty „nie wiedzą”
nawzajem o swoim istnieniu, stąd bardzo łatwe
zniszczenie struktury wewnętrznej warstwy i
W modelu topologicznym prymitywy (line, węzły)
„wiedzą” z jakimi znajdują się w relacji i na tej
podstawie mogę tworzyć struktury bardziej złożone
(obszary, sieci, drzewa itp.)
Zaawansowane narzędzia GIS stosują tzw. „topologię
tymczasową” - konsekwencją jest jednak często
„utrata spójności pliku i atrybutów”
Relacje geoprzestrzenne
●
Relacje typu:
–
–
–
–
●
●
linia przechodzi przez słupy
przyłącza są na końcówkach sieci
parcele nie nakładają się
rzeka znajduje się w dolinie
Są relacjami topologicznymi
Zaawansowane systemy GIS
pozwalają na budowanie relacji
topologicznych pomiędzy klasami
cech, pozwalając na kontrolę
spójności danych
Przykłady reguł topologicznych
źródło: ESRI, ArcGIS® Geodatabase Topology Rules
Koncepcja geobazy
●
●
●
baza danych przystosowana do
przechowywania i manipulowania danymi
geoprzestrzennymi
Dostęp do danych atrybutowych jest możliwy
poprzez zwykły SQL, ale dostęp do danych
geoprzestrzennych poprzez
wyspecjalizowane oprogramowanie
Istotą geobazy jest mozliwość zbudowania
relacji topologicznych pomiedzy wszystkimi
składnikami bazy
Przypisanie atrybutów do
obiektów
1
woda
nieużytki
naturalny
niezamieszkałe
2
las
użytki
naturalny
niezamieszkałe
3
pole
użytki
antropogeniczny
niezamieszkałe
4
zabudowania
nieużytki
antropogeniczny
zamieszkałe
1
2
3
4
Model relacyjny
(normalizowany)
1
naturalny
2
antropogeniczny
1
niezamieszkałe
2
zamieszkałe
1|1|1
1|1|2
1
nieużtytki
2
użytki
2|1|2
2|2|2
Przyspieszenie przeszukiwania geobazy: zamiast zapytania przechodzącego
przez wiele rekordów wykonywane jest proste zapytanie pobierające
identyfikator cechy, a następnie wybierane są wszystkie obiekty o danym
identyfikatorze.
Wyszukiwanie danych
WHERE rzędna >40
1
35
A
2
40
B
3
41
A
4
36
B
5
70
B
WHERE rzędna >
(SELECT avg FROM....)
WHERE CAT IN (
SELECT hahs.lcats FROM
(SELECT p1.lcat AS lcats, p2.rzedna AS end, p1.rzedna AS start
FROM
(SELECT lcat, rzedna FROM lpunkty_2 WHERE ALONG>0) p2
INNER JOIN
(SELECT lcat, rzedna FROM lpunkty_2 WHERE ALONG=0) p1
ON p2.lcat=p1.lcat) hahs
WHERE
hahs.end>hahs.start
)
WHERE rzędna >
(SELECT .... FROM....)
1
60
A
2
30
B
3
50
A
4
40
B
5
90
B
Realizacja zapytań
●
●
Z uwzględnieniem ograniczeń programu, zw
którym wykonuje się zapytanie, zapytania
dokonuje się de facto na atrybutach obiektu
Zapytanie bezpośrednio do bazy danych
poprzez sterownik. Wynik zapytania, zwraca
identyfikatory wybieranych obiektów.
Jedynymi ograniczeniami jest wyłącznie
obsługiwany przez bazę danych standard
języka SQL (metoda nie zawsze bezpieczna)
Zaawansowane
geoprzetwarzanie
●
●
Zaawansowane operacje przetwarzania danych są najczyściej
wykonywane przy wykorzystaniu baz danych.
Przykładem może być prezentowane uprzednio zapytanie
służące do odwracania kierunku spływu i budowy poprawnych
topologicznie sieci rzecznych
Download