+ All Categories
Home > Technology > Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Date post: 25-Jun-2015
Category:
Upload: roxana-chiriacescu
View: 4,052 times
Download: 10 times
Share this document with a friend
Description:
Prezentarea lucrarii de licenta
57
Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle Roxana Chiriacescu 16 Iulie 2009
Transcript
Page 1: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Reprezentarea informaţiilor geospaţiale în sistemele de

baze de date Oracle

Roxana Chiriacescu

16 Iulie 2009

Page 2: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Sumar

• Introducere• Analiza• Proiectare• Implementare• Testare• Concluzii

Page 3: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Introducere

• Tema: reprezentarea informatiilor geospatiale in sistemele de baze de date Oracle

• Cerinte: • Dezvoltarea unei aplicatii de redare a hartii planetare• Aplicatia va permite cautarea si vizualizarea informatiilor

de pe harta, folosind marcaje speciale: geotag-uri

Page 4: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Ciclul de viata al proiectului

Page 5: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Analiza Ce este GIS?

Page 6: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Ce sunt datele spatiale?

•Informatii de business ce contin sau descriu locatii• Adrese postale (clienti, magazine, fabrici, etc)• Vanzari (punctele de vanzare, repartitia clientilor, etc)• Bunuri publice (hidrant, transformator electric, etc)• Trasaturi geografice (drumuri, fluvii, parcuri, etc)

•Orice entitate care are o locatie fizica

Page 7: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Ce este GIS?

Sistemele geografice informatice (Geographic Information Systems) permit:•crearea de hărţi•integrarea informaţiilor geospatiale•vizualizarea de scenarii •dezvoltarea de soluţii efective într-un mod nou, uşor de utilizat.

Page 8: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Aplicatii cu date spatiale

Acces Intranet/Internet la date spatiale•Acces public•Date partajate intre mai multi utilizatori

Punerea afacerii pe harta•Unde sunt localizati clientii?•Unde ar trebui sa deschid un nou magazin?

Intrebari spatiale•Care parcele sunt afectate de revarsarea apei?•Unde se gaseste cel mai apropiat magazin in zona mea?

Page 9: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Servicii bazate pe locatie

Page 10: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Evolutia aplicatiilor GIS

Aplicatie

GIS

Fisiere proprii

SGBDtraditional

MiddlewareSpatial

Aplicatie

API propriu

Baza de date

spatiala

Server de harta

Aplicatie

OpenAPI

Trecut Prezent

StandaloneMiddleware

propriuPlatformaInternet

Page 11: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Analiza Cerintele aplicatiei

Page 12: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Utilizatorul doreste…

• …sa creeze puncte de interes pe o harta interactiva • …sa uploadeze imagini sau fisiere pdf pe care sa le

asocieze geotag-urilor• …sa vizualizeze continutul geotag-urilor prin

apasarea mouse-ului pe harta• …sa exporte un raport al tuturor geotag-urilor

stocate in baza de date• …sa obtina afisarea informatiilor tuturor geotag-

urilor dintr-o zona selectata manual pe harta.

Page 13: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Analiza Instrumente software

Page 14: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Ce este o baza de date spatiala?

Tipuri de date spatiale

Toate datele spatiale sunt

stocate in baza de date

Indexarea spatiala

Fast Access toSpatial Data

Acces spatial prin SQL

Analiza spatiala

Page 15: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

• Toate tipurile de geometrii• Puncte, linii, poligoane• 2D, 3D, 4D

• Toate tipurile de indexare• Rtree, Quadtree (fixe sau hibride)

• Toate tipurile de interogari spatiale• Inside, touch, overlap, …

• Cautari de proximitate• Intr-o anumita distanta, cel mai apropiat vecin

• Calcul de distante• Proiectii multiple

Oracle Locator Trasaturi de baza

Inclus in Oracle 10g Standard Edition

siEnterprise Edition

Toate trasaturile necesare aplicatiilor

simple

Page 16: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Oracle Spatial

Locator plus:• Operatii cu geometrii• Functii spatiale• Referentiere liniara• Transformarea sistemului de coordonate • Sisteme de coordonate definite de client

• Management de retea• Topologie• Integrarea imaginilor raster• Geocodificare• “Data Mining” Spatial

Trasaturi avansate

O optiune a Oracle Enterprise Edition

Volume mari de date, multi utilizatori

Interogari complexe, manipulari avansate de

date

Page 17: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Tipurile spatiale din Oracle 10g

Data

Locatii(puncte)

Retele(linii)

Parcele(poligoane)

Rastere(imagini, griduri)

Relatii Topologice(topologie persistenta)

Adrese(puncte geocodate)

Page 18: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Operatori spatiali

• O gama larga de operatori spatiali

• Implementati ca extensii functionale in SQL• Operatori topologici

– Inauntru Contine– Tangent Disjunctie– Acopera Acoperit de– Egal Intersectia contururilor

• Operatori de distanta– Pe o raza de…– Vecinul cel mai apropiat

Inauntru

500 meters

Pe o raza de…

Page 19: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Functii spatiale

• Returneaza o geometrie• Uniune• Diferenta• Intersectie• XOR

• Returneaza un numar• Lungimi• Arii• Distante

Uniune

XOR

Intersectie

Original

Diferenta

Page 20: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Index spatial R-Tree

• Se bazeaza pe conturul dreptunghiular minim MBR (Minimum Bounding Rectangle) al trasaturii spatiale

• Folosit pentru indexarea datelor 2D, 3D, 4D• Se comporta ca un filtru primar al datelor• Ofera acces extrem de rapid la datele spatiale

Datespatiale

Filtrulprimar

IndexspatialR-Tree

Setul redus

dedate

Filtrul secundar

Operatorispatiali

Setulrezultat

Page 21: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Sistemele de coordonate

• Suporta modelul pamantesc (latitudine/longitudine)• Calcule sferice• Calculul corect al distantelor si ariilor (in unitati de masura)• Suporta geometrii care strabat polii si meridianul 180o

• Suporta coordonate proiectate• Calcul cartezian• Calculul corect al distantelor si ariilor pentru suprafete mici

• Suporta coordonate definite de client

Page 22: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Oracle Application Server: MapViewer

• Inclus in toate versiunile Oracle Application Server

• XML, Java si JSP APIs

• Unealta de definire a hartilor

• Definitiile si simbolurile hartii sunt definite in baza de date

• Ilustrarea tematica a hartilor

• Suport pentru PNG, GIF, FLASH, SVG

Page 23: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Oracle10g AS MapViewer

• Componenta/serviciu de vizualizare a hartilor

• Vizualizeaza datele spatiale stocate in baza de date Oracle (Oracle Spatial or Oracle Locator)

• Trasatura standard al Oracle10g AS Release 2

• Ofera un API de servicii de mapare XML accesibil prin HTTP

• Serviciu in conformitate cu standardul J2EE

Page 24: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

MapViewer: Harta

• Generata din datele spatiale stocate in baza de date Oracle

• Definita ca o colectie de teme• Poate contine o legenda, un

titlu si o nota de subsol• Userii cer harti prin

intermediul unui MapRequest• MapViewer returneaza o

harta printr-un MapResponse

Nota de subsol

Legenda Teme

Cutremure

Titlu

Page 25: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Arhitectura MapViewer

MapViewer

Baza de date

Oracle Application Server

ClientAplicatie

XML/HTTP

JDBC

Tabelespatiale

Definitiilehartii

Java API

Utilitarul MapBuilder

Page 26: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Comunicarea MapViewer - Client

MapViewer

O cerere de harta poate contine:

• Harta de baza (base map)• Teme statice• Teme dinamice• Forme dinamice

• Pozitie de pe harta

• Formatul si dimensiunea hartii

Clientul hartii Un raspuns de harta:• harta in timp realsau• Adresa URL catre imaginea hartii, incadrata intr-un contur de o anumita dimensiune

Formate de afisare:GIF, PNG, SVG, JPEG

Oracle Spatial

Page 27: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Oracle Application Express (APEX)Dezvoltarea aplicatiilor web de baze de date

• Unealta unica pentru dezvoltarea rapida de aplicatii pentru baza de date Oracle

• Interfata in browser pentru dezvoltare, deployment & utilizare

• Ajuta la construirea aplicatiilor profesionale Web 2.0, rapide si sigure

• Foloseste capabilitatile bazei de date Oracle si integreaza scripturi SQL & PL/SQL

• Componenta a bazei de date

• Optiune gratuita a tuturor versiunilor bazei de date Oracle

Usor de dezvoltat • Usor de instalat • Usor de gestionat

Page 28: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Unelte de dezvoltare APEX

Rapoarte

Formulare

Grafice

Calendare

Template

Navigare

Validari

Procese

Calcule

Ramificatii

Servicii web

Servicii Email

Servicii de traducere

Procesare conditionala

Autentificare

Autorizare

Managementulsesiunilor

Logare & Monitorizare

Page 29: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Integrarea cu alte unelte / serviciiFoloseste intregul spectru de facilitati al bazei de date Oracle:

• SQL• PL/SQL• RAC• Spatial• OLAP• Flashback• Web Services• Text• Multimedia• Analytic Functions• Globalization• XML DB

• eBusiness Suite

Page 30: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Proiectare Schema de functionare

Page 31: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Schema generala de functionare

Page 32: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Proiectare Setul de date

Page 33: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Formatele de livrare a datelor

Page 34: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Structura unei harti navigabile

Page 35: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Straturile unei harti

Page 36: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Tarile incluse in setul de dateAlbania Gibraltar Poland

Andorra Great Britain Portugal

Australia Greece Puerto Rico

Austria Hungary Romania

Belgium Ireland Russia

Bosnia & Herzegovina Italy SanMarino

Bulgaria Latvia Serbia & Montenegro

Canada Liechtenstein Slovak Republic

Croatia Lithuania Slovenia

Czech Republic Luxembourg Spain

Denmark Macedonia Sweden

Estonia Moldova Switzerland

Finland Monaco Ukraine

France Netherlands United States

Germany Norway Vatican City

Page 37: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Proiectare Structura bazei de date

Page 38: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Datele spatiale in tabelele Oracle10g

Road

ROAD_ID

1

2

3

SURFACE

Asphalt

Asphalt

Asphalt

NAME

Fisher Cir.

Coop Ct.

85Th St.

LANES

4

2

2

LOCATION

Tipuri si modele de date:SDO_GEOMETRY

SDO_TOPO_GEOMETRY

SDO_GEORASTER

Vector

Raster

Page 39: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Stocarea geometriilor in baza de date

DRUMURI

DNUME ID TIP ZONA GEOMETRIE

M40

M25

140

141

HWY

HWY

6

4

X Y

x1 y1

x2 y2

x3 y3

x4 y4

x5 y5

Tip abstract de date

Page 40: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Definitiile hartii

• Definitiile hartii stocate in baza de dateUSER_SDO_MAPS

USER_SDO_THEMES

USER_SDO_STYLES

• Hartile se pot defini folosind utilitarul MapBuilder

Metadatelehartii

Page 41: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Implementare

Page 42: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Aspecte generale

• Datele geospatiale folosite sunt stocate intr-o baza de date Oracle Spatial

• Tabela geotag-urilor din baza de date are atribute spatiale, precum si un index spatial

• Harta este accesibila prin intermediul MapViewer • Harta este vizualizata intr-o maniera interactiva prin

intermediul interfetei Oracle Maps bazata pe AJAX• Aplicatia web este realizata in Oracle APEX

Page 43: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

APEX: Application Builder

Page 44: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Testare

Page 45: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Aplicatia Geotag

• Aplicatie web, instalata pe un server HTTP• Vizualizeaza o harta a mapamondului• Se pot introduce geotag-uri (puncte de interes)

oriunde pe harta• Se pot asocia fisiere multimedia (jpeg/pdf) geotag-

urilor• Se pot vizualiza toate geotag-urile dintr-o zona de

interes, selectata de utilizator

Page 46: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Pagina de Login

•Se introduce username-ul si parola•Un singur user cu drepturi depline

Page 47: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Vizualizarea hartii (1) Lista tuturor geotag-urilor

Centreaza harta pe geotag

Zoom & deplasare

Page 48: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Vizualizarea hartii (2)

Detaliile geotag-ului “Paris”

Imaginea asociata geotag-ului

Simbolurile geotag-urilor

Page 49: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Vizualizarea hartii (3)

Deschiderea fisierului PDF asociat geotag-ului

Page 50: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Introducerea unui geotag (1)

• Eveniment: Click dreapta oriunde pe harta• Efect: Lansarea paginii nr. 2• Pagina nr. 2: formular pentru introducerea detaliilor

noului geotag• Coordonatele punctului sunt transmise formularului• Utilizatorul completeaza: “Name”, “Description”,

“Author”, “Population”• Utilizatorul incarca un fisier multimedia in campul

“File Name”

Page 51: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Introducerea unui geotag (2)

Completate automat Alege fisierul multimedia de incarcat

“Submit”: •proceseaza formularul•ruleaza procedura PL/SQL•introduce datele in baza

“Cancel”:•redirecteaza catre prima pagina fara sa modifice nimic in baza de date

Page 52: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Zona de cautare (1)

Zona de cautare: dreptunghiulara

Aici va fi raportul geotag-urilor din zona selectata

Page 53: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Zona de cautare (2)

Geotag-uri din zona de cautare

Page 54: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Concluzii

Page 55: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Concluzii

Aplicatia Geotag:

• evidentiaza aspecte legate de vizualizarea datelor geospatiale si analiza de vecinatate.

• este scalabila

• reprezinta scheletul oricarei aplicatii GIS de pe internet, ce foloseste tehnologia Oracle

Page 56: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

Imbunatatiri viitoare

• implementarea de analize mai amanuntite asupra setului de date

• schimbarea setului de date cu unul mai detaliat• modificarea aspectului hartii, folosind alte simboluri

pentru marcarea punctelor de interes• clasificarea datelor bazate pe locatia acestora• determinarea de pattern-uri in functie de locatie• determinarea modului in care locatia unui lucru este

corelat cu locatia altuia

Page 57: Reprezentarea informaţiilor geospaţiale în sistemele de baze de date Oracle

"O aplicatie GIS este limitata numai de imaginatia celor care o folosesc.“

(Jack Dangermond, CEO ESRI)


Recommended