Benchmarking prostornih baza

=Cilj=
Napraviti funkcionalnu analizu i performace testove na najčešče korištenim RDBMS sa prostornim ekstenzijama.
* Rok realizacije: 06.2011
=Metodologija=
===Prostorne baze===
*Oracle XE **
*PostgrSQL/Postgis ( POSTGIS="1.5.2" GEOS="3.2.2-CAPI-1.6.2" PROJ="Rel. 4.7.1, 23 September 2009" LIBXML="2.6.31" USE_STATS) **
*Informix C Edition **
*SQLite/SpatiaLite ** / ( instalacija)
*DB2?
*MySQL?
*Ingres (http://community.ingres.com/wiki/GeoDemoLinuxSetup)?
*MSSQL Server (ako bude bilo Win mashina)?
-- ** instalirano
===Prostorni upiti i test performansi===
*Load (time)
*Database size (size)
*Create spatial index (size | time)
*ST_Intersect (+ overlap filter 3 velicine polygona)(Vertical polyline, Diagonal polyline, Multi-polyline) - sve ovo t select count(*) - sa result object Ovaj dio je glavi -razraditi!
*St_Within
*ST_Lenght
*ST_Area
*ST_Distance
* ... pogledati funkcionalnu analizu pa raspisati do kraja
===Funkcionalana analiza (tri kategorije funkcija)===
*data type component access (Point, LineString, Polygon, GeomCollection, MultiPoint, MultiLineString, MultiPolygon),
*operatori za topološke odnose (Equals, Disjoint, Intersects, Touches, Crosses, Within, Contains, Overlaps, Relate)
*geometrijske operacije (Distance, ConvexHull, Intersection, Union, Difference, SymDifference) - funkcije prostorne analize i
*agregatne funkcije (napraviti spatial joine na tablicama).
===Podaci===
* Polygoni
**50 000 recorda
**100 000 recorda
**1 000 000 recorda
*Rectangular area (za geometrijske i topološke operacije)
**mali polygon
**srednji polygon
**veliki polygon
Izvori podataka:
* 1. OSM podaci (pripremljeni podaci za benchmarking - područje njemačke)
===Scenariji===
*Scenarij 1: Presjecanje dijagonalnom multilinijom na tri seta podatak (+select count(*))
*Scenarij 2: Presjecanje okomitom multilinijom na tri seta podataka (+ select count(*))
*Scenarij 3: Presjecanje sa malim, srednjim i velikim poligonom na tri seta podataka (+ select count(*))
*Scenarij 4: Transformacijaizmeđu referentnih sustava
*Scenarij 5: Pronađi sve objekte koji se preklapaju sa danim poligonom (na tri poligona različitih veličina).
*Scenarij 6: Pronađi i izreži sve objekte unutar zadanog polygona
*Scenarij 7: Union većeg broja polygona
=Hardware=
* Mljac server (mama): za sada raspoloziva dvije virtualne masine 193.198.207.15 i 193.198.207.16 na kojima je ubuntu (ima nesto instaliranog sw-a)
* Dell Poweredge 2950: 2GB RAM, Intel Xeon 3.0 quad core, 2x120GB HDD (RAID0), Ubuntu 8.04 Server Edition, Oracle XE 10.2.0.1.0
=Sustav i konfiguracija sustava=
*OS: Trenutno ubuntu 8.04 LTS (Upgrade?)
** Otvoreno pitanje: Da li za svaku bazu postaviti isti, cist i isto konfiguriran OS ili sve stavljati na isti OS i ubijati deamone/procese i ine nametnike? 
=Zadaci=
Sami možete preuzimati obaveze sa popisa zadataka.
* 1. Konceptualno dogovoriti koje i kakve prostorne upite koristiti u benchmarkingu.
* 2. Napisati SQL upite korištenjem ST_funkcija (definirane u t.1))
** Upiti za Oracle: (???)
** Upiti za Postgres/PostGIS: (???)
** Upiti za Informix: (???)
* 3. Priprema podataka
** OSM: 
*** Područje: Njemačka ( shapefile download)
*** Podaci: POI, ceste/ulice
*** Napraviti triangulaciju na POI-ima kako bi dobili što veći broj polygona.
*** Razdvojiti polygone dobivene triangulacijom na tri dataset-a (cca 50000/100000/1000000 objekata)
*** Na odabranom području napraviti tri polygona "Rectangular area" za preklope.
=Korisni linkovi:=
*http://www.gdmc.nl/publications/2002/Testing_current_DBMS.pdf - Odlično!!!
*http://www.bostongis.com/PrinterFriendly.aspx?content_name=sqlserver2008r2_oracle11gr2_postgis15_compare (usporedba postgis/mssql/oracle)
*http://wiki.oracle.com/page/Database+Benchmarking
*http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.30.5401&rep=rep1&type=pdf
*http://dmap.nrlssc.navy.mil/dmap/pubs/documents/benchmarking.pdf