Metody ukládání časoprostorových dat pro multirelační dolování Martin Večeřa Laboratoř vyhledávání znalostí Fakulta informatiky Masarykova Univerzita Brno
2 Časoprostorová data ● zachycení části 2D/3D prostoru s odkazem na časový údaj ● spektrální – jediný časový okamžik (př. druh porostu) ● enviromentální data – dlouhodobý souhrn (př. srážky) ● rastrová vs. vektorová ● vše je možné kombinovat
3 Prostorová složka dat ● geometrická primitiva – bod, čára – množina bodů, lomená čára – polygon, množina lomených čar – množina polygonů – množina geometrických objektů ● souřadnicový systém (S-JTSK, WGS84...) ● doplňující vlastnosti objektů – místní název, plocha, druh...
4 Časová složka dat ● odkaz z prostorového objektu na časový okamžik/období ● čas uložen jako další dimenze – obtížně řešitelné, stávající systémy nepřipraveny ● čas uložen jako doplňující vlastnost objektu – objekt měnící se v čase se překrývá – při výběru nutné zvolit jen daný časový úsek t
5 Multirelační dolování ● klasické dolovácí algoritmy – data v jedné tabulce ● multirelační dolování – více objektů různých typů – vztahy mezi objekty – řešení: více tabulek ● ILP – predikátová logika prvního řádu – ~ přirozený jazyk pro vyjádření faktů a vztahů
6 Predikátová logika – příklad obec('Cikháj', 49°38'44.798"N, 15°57'58.339"E). obec('Světnov', 49°37'11.384"N, 15°57'14.624"E). silnice(350, [[12, 3], [14, 8], [13, 11], [18, 12],..., [37, 63]]). obec_na_silnici('Cikháj', 350). obec_na_silnici('Světnov', 350). vzdálenost_po_silnici(Silnice, Obec 1, Obec 2, Vzdálenost) :- obec(Obec 1, Poz 1 ), obec(Obec 2, Poz 2 ), obec_na_silnici(Obec 1, Silnice), obec_na_silnici(Obec 2, Silnice), silnice(Silnice, Geom), délka_od_do(Vzdálenost, Poz 1, Poz 2, Geom).
7 Datové formáty ● požadujeme – snadnou úprava dat – možnost ukládání doprovodných informací – geometrické funkce (průnik, posun, vzdálenost) – podporu různých souřadnicových systémů – export do predikátové logiky ● GML, KML, SpatialML, TimeML ● SDTS, DGN, DWG, ESRI Shapefile ● Oracle Spatial, PostGIS
8 Datové formáty nad XML ● XML je moderní, hezké, všem se líbí ● Geography Markup Language (GML) – Open Geospatial Consorcium – libovolná geografická data – reference, rozšiřující atributy – obtížně zpracovatelné (je to „jen“ textový soubor) <gml:LineString gml:id="p21" srsName="urn:ogc:def:crs:EPSG:6.6:4326"> 45.67, ,89.44
9 Datové formáty nad XML ● Keyhole Markup Language (KML) – Google Maps & Earth – jazyk pro vizualizaci geografických objektů (~HTML) – úzké zaměření (např. podpora jen WGS84) Roll over this icon 0 #exampleStyleMap ,37.422,0 stars.png
10 Datové formáty nad XML ● SpatialML + TimeML – značkování částí textu nesoucích prostorovou nebo časovou informaci – možnost propojení s GML a KML – referenece na objekty v databázi – vhodné spíše pro dolování v textech I visited many trattorias in [Rome], [Italy] Rome Italy
11 Datové formáty pro soubory ● Spatial Data Transfer Standard (SDTS) – vyvinut za účelem sjednotit formáty (~2001) – podpora od ESRI a omezeného množství SW ● DGN, DWG – další více či méně rozšířené formáty – v 99% existuje možnost exportu do Shapefile
12 Datové formáty pro soubory ● ESRI 1 Shapefile – well-known text/binary format (WKT, WKB) – víceméně otevřená specifikace – velmi populární, řada nástrojů, časem prověřený – nově také podpora 3D dat – jen jedna vrstva – několik souborů, doprovodné atributy – snadná konverze – import do PostGISu ● nevýhoda – soubory spolu nejsou v relaci 1) Environmental Systems Research Institute
13 Datové formáty pro databáze ● Oracle Spatial – Oracle nemůže zůstat mimo – pro nekomerční použití zdarma (omezení velikosti) – kanón na vrabce ● PostGIS – rozšíření PostgreSQL – open source řešení – DB vhodná i pro produkční prostředí – podpora knihoven pro práci s geometrií
14 PostGIS ● nativní podpora ESRI Shapefile (WKT, WKB) ● extended WKT/WKB (3D) ● možnost sloučit různé souřadnicové systémy – i uživatelsky definované ● všechna základní geometrická primitiva ● snadné úpravy v QuantumGIS ● inteligentní indexace dat
15 PostGIS v PostgreSQL ● veškerá funkcionalita PostgreSQL zachována ● nový datový typ GEOMETRY ● nové operátory – && průnik kompletně obsažen ● nové funkce – Distance, Area, Intersection ● nový typ indexu GiST ● nové tabulky – geometry_columns, spatial_ref_sys
16 ● snadný export pomocí textové reprezentace: SELECT id, jmeno, AsText(geom) FROM body; id | jmeno | astext | Bod c. 1 | POINT( ) ● najdi mi všechny hospody, ze kterých to není do nemocnice dále než 250m: SELECT h.name, p.name FROM hospitals h, pubs p WHERE Distance(h.the_geom, p.the_geom) < 250; PostGIS – příklad
17 Závěr ● hlavní zájem o multirelační dolování ve vektorových časoprostorových datech ● textový popis dat a nehomogenní soustava souborů skýtá řadu problémů a rizik ● v databázích se data snadno udržují a zpracovávají ● máme rádí snadná, ale účinná řešení ● máme rádi open source ● PostGIS hravě poráží své soupeře
18 Děkuji za pozornost.