PostGIS: erinevus redaktsioonide vahel
Uus lehekülg: '===Sissejuhatus=== TODO ===PostGIS tarkvara paigaldamine=== PostGIS tarkvara paigaldamiseks sobib öelda # apt-get install postgis postgresql-8.4-postgis kus * postgis - sisa…' |
|||
| (ei näidata sama kasutaja 14 vahepealset redaktsiooni) | |||
| 1. rida: | 1. rida: | ||
===Sissejuhatus=== | ===Sissejuhatus=== | ||
PostGIS http://postgis.refractions.net/ tarkvara lisab PostgreSQL andmebaasile ruumilise toe (ingl. k. spatially enables PostgreSQL) kirjeldades geograafilised objektid (ingl. k geographic objects). Tehniliselt toetub PostGIS asjaolule, et PostgreSQL tarkvara võimaldab väga otsekoheselt kirjeldada uusi andmetüüpe. | |||
Võrreldes nt Shapefile formaadis andmete kasutamisega on PostGIS'il sellised eelised | |||
* on eriti sobiv juhtumil, kui andmetega töötavad samaaegselt mitu kasutajat | |||
* võimaldab pidada GIS-andmete andmebaasi teenust võrgus | |||
* sobib hästi GIS-andmete muutmisega seotud kasutusjuhtumiteks | |||
===PostGIS tarkvara paigaldamine=== | ===PostGIS tarkvara paigaldamine=== | ||
PostGIS tarkvara paigaldamiseks sobib öelda | PostGIS tarkvara paigaldamiseks sobib öelda nt Debian Squeeze puhul | ||
# apt-get install postgis postgresql-8.4-postgis | # apt-get install postgis postgresql-8.4-postgis | ||
| 11. rida: | 17. rida: | ||
kus | kus | ||
* postgis - sisaldab utiliite | * postgis - sisaldab utiliite Shapefile formaadis andmete teisendamiseks, pgsql2shp ja shp2pgsql | ||
* postgresql-8.4-postgis - PostgreSQL andmebaasi teek ning skriptid vastavate funktsioonide andmebaasi tekitamiseks | * postgresql-8.4-postgis - PostgreSQL andmebaasi teek ning skriptid vastavate funktsioonide andmebaasi tekitamiseks | ||
| 20. rida: | 26. rida: | ||
$ psql -h 127.0.0.1 -U postgres postgis < /usr/share/postgresql/8.4/contrib/postgis_comments.sql | $ psql -h 127.0.0.1 -U postgres postgis < /usr/share/postgresql/8.4/contrib/postgis_comments.sql | ||
Eduka paigaldamise korral öeldakse nt | Eduka paigaldamise korral moodustatatakse andmebaasi hulka funktsioone ning kaks uut tabelit | ||
* public.geometry_columns | |||
* public.spatial_ref_sys | |||
ja öeldakse nt | |||
sql> SELECT postgis_full_version(); | sql> SELECT postgis_full_version(); | ||
| 26. rida: | 37. rida: | ||
---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ||
POSTGIS="1.4.0" GEOS="3.2.0-CAPI-1.6.0" PROJ="Rel. 4.7.1, 23 September 2009" USE_STATS | POSTGIS="1.4.0" GEOS="3.2.0-CAPI-1.6.0" PROJ="Rel. 4.7.1, 23 September 2009" USE_STATS | ||
===Andmete import Shapefile formaadist=== | |||
Näitena imporditakse Maa-ameti Geoportaalis Shapefile formaadis jagatavaid Eesti asustusüksuste ruumiandmeid http://geoportaal.maaamet.ee/docs/haldus_asustus/20100301_asustus_shp.zip PostGIS'i. Peale faili kopeerimist tuleb arhiiv lahti pakkida | |||
$ unzip 20100301_asustus_shp.zip | |||
ning tekivad sellised failid | |||
$ ls -l | |||
-rw-r--r-- 1 mart mart 955858 Feb 26 10:46 F20100301_asustus.dbf | |||
-rw-r--r-- 1 mart mart 502 Feb 26 17:19 F20100301_asustus.prj | |||
-rw-r--r-- 1 mart mart 19340604 Feb 26 10:46 F20100301_asustus.shp | |||
-rw-r--r-- 1 mart mart 37572 Feb 26 10:46 F20100301_asustus.shx | |||
Shapefile formaadis andmete teisendamiseks sql skripti kujule sobib kasutada shp2pgsql utiliiti | |||
$ shp2pgsql F20100301_asustus.shp asustusyksus > asutusyksus.sql | |||
Maa-ameti andmed on esitatud ISO-8859-1 kodeeringus ja kuna tavaliselt andmebaasi kodeering on et_EE.UTF-8, siis tuleb teha vastav teisendus, nt selliselt | |||
$ recode ISO-8859-1..UTF-8 asutusyksus.sql | |||
Vajadusel saab kohendada sql skript, nt näidata alguses lisaks skeemi nimi (eestikaart) | |||
set search_path to eestikaart, public; | |||
Ning lõpuks laadida andmed andmebaasi | |||
$ psql -h 127.0.0.1 -U mart postgis < asustusyksus.sql | |||
===PostGIS kasutamine=== | ===PostGIS kasutamine=== | ||
PostGISi ei kasutata tavaliselt vahetult üldotstarbelise SQL kliendiga, vaid mõne spetsiaalse GIS tarkvara poolt, nt | |||
* [[:UDig]] | |||
* [[:Quantum GIS]] | |||
* [[:GeoServer]] | |||
===Kasulikud lisamaterjalid=== | ===Kasulikud lisamaterjalid=== | ||
* [[:GIS]] | |||
* [[:PostgreSQL]] | |||
* http://www.manning.com/obe/ | * http://www.manning.com/obe/ | ||
* http://www.bostongis.com/?content_name=postgis_tut01 | * http://www.bostongis.com/?content_name=postgis_tut01 | ||
* http://xgis.maaamet.ee/wms-pub/alus? - avalikuks kasutamiseks wms kiht | * http://xgis.maaamet.ee/wms-pub/alus? - avalikuks kasutamiseks wms kiht | ||
* http://en.wikipedia.org/wiki/PostGIS | |||
Viimane redaktsioon: 5. aprill 2010, kell 16:29
Sissejuhatus
PostGIS http://postgis.refractions.net/ tarkvara lisab PostgreSQL andmebaasile ruumilise toe (ingl. k. spatially enables PostgreSQL) kirjeldades geograafilised objektid (ingl. k geographic objects). Tehniliselt toetub PostGIS asjaolule, et PostgreSQL tarkvara võimaldab väga otsekoheselt kirjeldada uusi andmetüüpe.
Võrreldes nt Shapefile formaadis andmete kasutamisega on PostGIS'il sellised eelised
- on eriti sobiv juhtumil, kui andmetega töötavad samaaegselt mitu kasutajat
- võimaldab pidada GIS-andmete andmebaasi teenust võrgus
- sobib hästi GIS-andmete muutmisega seotud kasutusjuhtumiteks
PostGIS tarkvara paigaldamine
PostGIS tarkvara paigaldamiseks sobib öelda nt Debian Squeeze puhul
# apt-get install postgis postgresql-8.4-postgis
kus
- postgis - sisaldab utiliite Shapefile formaadis andmete teisendamiseks, pgsql2shp ja shp2pgsql
- postgresql-8.4-postgis - PostgreSQL andmebaasi teek ning skriptid vastavate funktsioonide andmebaasi tekitamiseks
Funktsioonide moodustamiseks andmebaasi postgis public skeemi sobib öelda
$ psql -h 127.0.0.1 -U postgres postgis < /usr/share/postgresql/8.4/contrib/postgis.sql $ psql -h 127.0.0.1 -U postgres postgis < /usr/share/postgresql/8.4/contrib/spatial_ref_sys.sql $ psql -h 127.0.0.1 -U postgres postgis < /usr/share/postgresql/8.4/contrib/postgis_comments.sql
Eduka paigaldamise korral moodustatatakse andmebaasi hulka funktsioone ning kaks uut tabelit
- public.geometry_columns
- public.spatial_ref_sys
ja öeldakse nt
sql> SELECT postgis_full_version();
postgis_full_version
----------------------------------------------------------------------------------------
POSTGIS="1.4.0" GEOS="3.2.0-CAPI-1.6.0" PROJ="Rel. 4.7.1, 23 September 2009" USE_STATS
Andmete import Shapefile formaadist
Näitena imporditakse Maa-ameti Geoportaalis Shapefile formaadis jagatavaid Eesti asustusüksuste ruumiandmeid http://geoportaal.maaamet.ee/docs/haldus_asustus/20100301_asustus_shp.zip PostGIS'i. Peale faili kopeerimist tuleb arhiiv lahti pakkida
$ unzip 20100301_asustus_shp.zip
ning tekivad sellised failid
$ ls -l -rw-r--r-- 1 mart mart 955858 Feb 26 10:46 F20100301_asustus.dbf -rw-r--r-- 1 mart mart 502 Feb 26 17:19 F20100301_asustus.prj -rw-r--r-- 1 mart mart 19340604 Feb 26 10:46 F20100301_asustus.shp -rw-r--r-- 1 mart mart 37572 Feb 26 10:46 F20100301_asustus.shx
Shapefile formaadis andmete teisendamiseks sql skripti kujule sobib kasutada shp2pgsql utiliiti
$ shp2pgsql F20100301_asustus.shp asustusyksus > asutusyksus.sql
Maa-ameti andmed on esitatud ISO-8859-1 kodeeringus ja kuna tavaliselt andmebaasi kodeering on et_EE.UTF-8, siis tuleb teha vastav teisendus, nt selliselt
$ recode ISO-8859-1..UTF-8 asutusyksus.sql
Vajadusel saab kohendada sql skript, nt näidata alguses lisaks skeemi nimi (eestikaart)
set search_path to eestikaart, public;
Ning lõpuks laadida andmed andmebaasi
$ psql -h 127.0.0.1 -U mart postgis < asustusyksus.sql
PostGIS kasutamine
PostGISi ei kasutata tavaliselt vahetult üldotstarbelise SQL kliendiga, vaid mõne spetsiaalse GIS tarkvara poolt, nt