Mercurial > dive4elements > river
changeset 5007:4e5d209253dd dami
Importer doc: Update installation documentation.
author | Andre Heinecke <aheinecke@intevation.de> |
---|---|
date | Fri, 15 Feb 2013 17:22:07 +0100 (2013-02-15) |
parents | 769593a84606 |
children | ee52faa6b7ac |
files | flys-backend/doc/documentation/de/importer-geodaesie.tex |
diffstat | 1 files changed, 98 insertions(+), 64 deletions(-) [+] |
line wrap: on
line diff
--- a/flys-backend/doc/documentation/de/importer-geodaesie.tex Fri Feb 15 16:22:13 2013 +0100 +++ b/flys-backend/doc/documentation/de/importer-geodaesie.tex Fri Feb 15 17:22:07 2013 +0100 @@ -1,10 +1,14 @@ \section{Geodatenimport} -Der Geodaten Importer ist ein in Python geschriebenes Kommandozeilen Tool zum -Import von Shapefiles in eine Datenbank. Zum Lesen der Shapefiles und zum -Schreiben der Geodaten in die Datenbank wird GDAL verwendet. Der Import in eine -Oracle Datenbank erfordert, dass GDAL und GDAL Python Bindungs mit -Oracle Unterst�tzung installiert sind. Weitere Details hierzu befinden sich im +Der Geodaten Importer ist ein in der Programmiersprache Python +geschriebenes Kommandozeilen Werkzeug zum Import von Shapefiles in +eine Datenbank. +Zum Lesen der Shapefiles und zum schreiben der Geodaten +in die Datenbank wird die GDAL Bibliothek verwendet. +Um Daten in eine Oracle Datenbank zu importieren ist es n�tig, dass +GDAL und GDAL Python Bindungs mit Oracle Unterst�tzung installiert +sind. Bei der Verwendung von PostgreSQL entf�llt dieser Schritt. +Weitere Details hierzu befinden sich im Kapitel \ref{Systemanforderungen} und \ref{Installationsanleitung}. Der Importer kann mit einem Shellscript von der Kommandozeile gestartet werden @@ -13,7 +17,7 @@ importiert werden sollen. F�r jede Klasse gibt es einen speziellen Parser, der die speziellen Attribute eines Shapefiles liest und in die entsprechende Relation der Datenbank schreibt. Die Parser sind speziell auf das -Dateisystem der BfG ausgerichtet. So wird z.B. erwartet, dass die Shapefiles der +Dateisystem der BfG ausgerichtet. So wird beispielsweise erwartet, dass die Shapefiles der Gew�sserachse im Ordner $Geodaesie/Flussachse+km$ liegen. Weitere Informationen zu den einzelnen Parsern sind dem n�chsten Kapitel \ref{Beschreibung der Parser} zu entnehmen. Der Erfolg oder Misserfolg eines Shape-Imports wird je nach @@ -28,10 +32,17 @@ \textbf{INFO: Failed to create 2 features} \\Gibt die Anzahl der Features an, die nicht importiert werden konnten.\\ -\textbf{INFO: Found 3 unsupported features} +\textbf{INFO: Found 3 unsupported features of type: wbkMultiLineString} \\Gibt die Anzahl der Features an, die aufgrund ihres Datentyps nicht importiert -werden konnten. Z.B: es werden Linien erwartet, im Shapefile sind jedoch -Polygone enthalten.\\ +werden konnten. Wenn etwa Punkte erwartet wurden aber sich im Shapefile +Polygone befanden.\\ + +\textbf{INFO: Did not import values from fields: TYP ID GRUENDUNG BHW} +\\Manche Importer versuchen neben der Geographischen Information weitere +Felder in die Datenbank einzulesen. Um festzustellen ob ein Feld aufgrund +von Tippfehlern oder unterschiedlicher Schreibweise nicht importiert wurde, +gibt diese Information Auskunft dar�ber welche Felder aus der Shape Datei +nicht verwendet wurden.\\ \textbf{ERROR: No source SRS given! No transformation possible!} \\Das Shapefile enth�lt keine Information, in welcher Projektion die Geometrien @@ -90,7 +101,7 @@ \begin{tabular}[t]{ll} Pfad & Hydrologie/Hydr.Grenzen/Linien \\ Geometrie & LINESTRING, POLYGON \\ -Attribute & name, kind \\ +Attribute & name, kind, sectie, sobek \\ \end{tabular} \subsubsection{Bauwerke} @@ -151,8 +162,9 @@ \hspace{1cm} \begin{tabular}[t]{ll} Pfad & Hydrologie/HW-Schutzanlagen \\ -Geometrie & LINESTRING \\ -Attribute & TYP, Bauart, Name, name \\ +Geometrie & LINESTRING, POINT \\ +Attribute & name, source, description, status\_date, agency, + dike\_km, range, z\_target, rated\_level, z \\ \end{tabular} @@ -165,19 +177,6 @@ \end{tabular} -\subsubsection{Linien} -\hspace{1cm} -\begin{tabular}[t]{ll} -Pfad & Geodaesie/Linien \\ -Geometrie & LINESTRING, MULTILINESTRING \\ -Attribute & name, TYP, Z \\ - -Anmerkung & Wenn kein Attribut 'TYP' definiert ist, wird standardm��ig der Wert \\ - & 'DAMM' angenommen. Fehlt ein Attribut 'Z' wird '9999' als H�he \\ - & angenommen. \\ -\end{tabular} - - \subsubsection{�berschwemmungsfl�che} \hspace{1cm} \begin{tabular}[t]{ll} @@ -191,7 +190,7 @@ \label{Systemanforderungen} \begin{itemize} \item Oracle Datenbank inkl. Schema f�r FLYS - \item GDAL Binding f�r Python mit Oracle Support + \item GDAL ab Version 1.9 f�r Python mit Oracle Support \item ogr2ogr \item Python $>=$ 2.6 \end{itemize} @@ -199,22 +198,19 @@ \subsection{Installationsanleitung} \label{Installationsanleitung} -\begin{itemize} - - \item Python\\ - Zum Starten des Importers ist es notwendig Python zu installieren. Dies k�nnen - Sie mit folgendem Befehl auf der Kommandozeile erledigen: - \begin{lstlisting} - zypper in python - \end{lstlisting} + \subsubsection Oracle Instantclient\\ + % TODO: oracle_cx + Der Oracle Instantclient 11.2.0.2.0 wird ben�tigt, damit der Importer mittels Python +und GDAL in die bestehende Oracle Datenbank schreiben kann. Wenn Sie +eine PosgreSQL Datenbank verwenden, k�nnen Sie diesen Schritt �berspringen. - \item Oracle Instantclient\\ - Der Oracle Instantclient 11.2 wird ben�tigt, damit der Importer mittels Python - und GDAL in die bestehende Oracle Datenbank schreiben kann. Dazu ist es - erforderlich, folgende Archive von Oracle herunterzuladen. Zu finden sind die - folgenden Pakete unter\\ - \href{http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html}{http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html} +Zur Anbindung von Oracle ist es erforderlich, folgende Archive von +Oracle herunterzuladen (Sie ben�tigen daf�r ein Oracle Benutzerkonto): + +Der Oracle Instantclient 11.2 wird ben�tigt, damit der Importer mittels Python +und GDAL in die bestehende Oracle Datenbank schreiben kann. Dazu ist es +erforderlich, folgende Archive von Oracle herunterzuladen. \begin{itemize} \item instantclient-basic-linux-x86-64-11.2.0.2.0.zip @@ -222,42 +218,80 @@ \item instantclient-sqlplus-linux-x86-64-11.2.0.2.0.zip \end{itemize} +Zu finden sind die + Pakete unter:\\ +\href{http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html} +{http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html} + + +Um diese Pakete zu installieren, �ffnen Sie eine Konsole und wechseln +in das Verzeichnis in welches Sie die heruntergeladenen Pakete +gespeichert haben. (z.B.: cd /home/benutzername/Downloads ) Anschlie�end f�hren Sie folgende Befehle auf der Kommandozeile aus: \begin{lstlisting} - - mkdir /opt - - unzip ~/instantclient-basic-linux-x86-64-11.2.0.2.0.zip -d /opt - unzip ~/instantclient-sdk-linux-x86-64-11.2.0.2.0.zip -d /opt - unzip ~/instantclient-sqlplus-linux-x86-64-11.2.0.2.0.zip -d /opt + mkdir /opt - mkdir /opt/instantclient_11_2/lib - cd /opt/instantclient_11_2/lib - ln -s ../libclntsh.so.11.1 . - ln -s ../libclntsh.so.11.1 libclntsh.so - ln -s ../libnnz11.so . - ln -s ../libocci.so.11.1 . - ln -s ../libocci.so.11.1 libocci.so - ln -s ../libociei.so . - ln -s ../libocijdbc11.so . - ln -s ../libsqlplusic.so . - ln -s ../libsqlplus.so . + unzip instantclient-basic-linux-x86-64-11.2.0.2.0.zip -d /opt + unzip instantclient-sdk-linux-x86-64-11.2.0.2.0.zip -d /opt + unzip instantclient-sqlplus-linux-x86-64-11.2.0.2.0.zip -d /opt - rpm -i --nodeps ~/flys-importer/rpm/RPMS/x86_64/libgdal1180-1.8.0-intevation1.x86_64.rpm - rpm -i --nodeps ~/flys-importer/rpm/RPMS/x86_64/libgdal180-devel-1.8.0-intevation1.x86_64.rpm - rpm -i --nodeps ~/flys-importer/rpm/RPMS/x86_64/gdal180-1.8.0-intevation1.x86_64.rpm + mkdir /opt/instantclient_11_2/lib + cd /opt/instantclient_11_2/lib + ln -s ../libclntsh.so.11.1 . + ln -s ../libclntsh.so.11.1 libclntsh.so + ln -s ../libnnz11.so . + ln -s ../libocci.so.11.1 . + ln -s ../libocci.so.11.1 libocci.so + ln -s ../libociei.so . + ln -s ../libocijdbc11.so . + ln -s ../libsqlplusic.so . + ln -s ../libsqlplus.so . + echo "/opt/instantclient_11_2/lib/" > /etc/ld.so.conf.d/oci.conf + ldconfig \end{lstlisting} - Sollten keine Fehler aufgetreten sein, haben Sie den \textit{Oracle +Sollten keine Fehler aufgetreten sein, haben Sie den \textit{Oracle Instantclient 11.2} erfolgreich entpackt und im Dateisystem unter - \textit{/opt/instantclient\_11\_2} abgelegt. Mit den Befehlen $rpm -i --nodeps$ - haben Sie anschlie�end die notwendigen Bindings installiert, damit der Importer - die Geodaten in die Oracle Datenbank schreiben kann. + \textit{/opt/instantclient\_11\_2} abgelegt. +\subsubsection Python, Mapserver und GDAL\\ +Installieren Sie nun die restlichen ben�tigten Pakete. +Dazu installieren Sie zuerst einige Abh�ngigkeiten und anschlie�end die +von der Intevation GmbH bereitgestellten speziellen Versionen von gdal +und Mapserver. +% ^ Das sollte sich in zukunft �ndern und alles in einem repo sein. + +Um die Abh�ngigkeiten zu installieren f�hren Sie bitte folgende Befehle aus: + + \begin{lstlisting} + zypper ar http://download.opensuse.org/repositories/home:/intevation:/bfg/SLE_11/ "intevation:bfg" + rpm --import http://download.opensuse.org/repositories/home:/intevation:/bfg/SLE_11/repodata/repomd.xml.key + zypper ref # Paketlist neu laden + zypper in python libgeos0 libproj0 proj netcdf libnetcdf4 xerces-c libxerces-c-3_0 FastCGI + zypper mr -d "intevation:bfg" + zypper ref # Paketliste neu laden + ln -s /usr/lib64/libproj.so.0.6.6 /usr/lib64/libproj.so + \end{lstlisting} + +Nun k�nnen Sie die unter \url{http://ftp.intevation.de/local/flys/2012-09-11/RPMS/x86\_64} +bereitgestellten Pakete: +\begin{itemize} +\item libgdal1-1.9.0-intevation1.x86\_64.rpm +\item gdal-1.9.0-intevation1.x86\_64.rpm +\item python-gdal-1.9.0-intevation1.x86\_64.rpm +\item mapserver-6.0.2-1.x86\_64.rpm \end{itemize} +Installieren. Laden Sie diese dazu Herunter und wechseln Sie in das Verzeichnis in welches Sie +die Pakete heruntergeladen haben und f�hren Sie dann folgende Befehle aus: + + \begin{lstlisting} + rpm -i --nodeps libgdal1-1.9.0-intevation1.x86_64.rpm gdal-1.9.0-intevation1.x86_64.rpm python-gdal-1.9.0-intevation1.x86_64.rpm + rpm -i --nodeps mapserver-6.0.2-1.x86_64.rpm + \end{lstlisting} + \subsection{Konfiguration} \label{Konfiguration}