Mercurial > dive4elements > river
diff backend/doc/documentation/de/importer-geodaesie.tex @ 5838:5aa05a7a34b7
Rename modules to more fitting names.
author | Sascha L. Teichmann <teichmann@intevation.de> |
---|---|
date | Thu, 25 Apr 2013 15:23:37 +0200 |
parents | flys-backend/doc/documentation/de/importer-geodaesie.tex@ed149d5d7fb7 |
children | 46c6ff16c422 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/backend/doc/documentation/de/importer-geodaesie.tex Thu Apr 25 15:23:37 2013 +0200 @@ -0,0 +1,294 @@ +\section{Geodatenimport} + +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 +(siehe Kapitel \ref{Starten des Geodaten Importers}). Nach dem Start wird anhand der +Konfiguration festgestellt, welche Klassen von Shapefiles aus dem Dateisystem +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 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 +Konfiguration im Logfile vermerkt. Folgende Einträge können dem Logfile +entnommen werden: + +%TODO etwas zum srs schreiben. + +\textbf{INFO: Inserted 4 features} +\\Gibt die Anzahl der erfolgreich importierten Features an.\\ + +\textbf{INFO: Failed to create 2 features} +\\Gibt die Anzahl der Features an, die nicht importiert werden konnten.\\ + +\textbf{INFO: Found 3 unsupported features of type: wbkMultiLineString} +\\Gibt die Anzahl der Features an, die aufgrund ihres Datentyps nicht importiert +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 +vorliegen. Es findet keine Transformation in die Zielprojektion statt. Bitte +beachten Sie, dass FLYS diese Geometrien später ggf nicht korrekt darstellen +kann. + +\textbf{ERROR: Unable to insert feature: DETAIL} +\\Beim Lesen der Attribute eines Features ist ein Fehler aufgetreten. +Das Feature konnte nicht in die Datenbank geschrieben werden.\\ + +\textbf{ERROR: Exception while committing transaction} +\\Beim Abschluss des Schreib-Vorgangs in die Datenbank ist ein unerwarteter +Fehler aufgetreten. Die Features des Shapes sind nicht importiert worden.\\ + +\textbf{ERROR 1: ORA-01017: invalid username/password; logon denied} +\\Es konnte keine Verbindung zur Oracle Datenbank hergestellt werden. Prüfen Sie +die Verbindungseinstellungen. + +Damit die Geodaten eines Shapes später eindeutig in der Datenbank identifiziert +werden können, wird für jede Geometrie der Pfad des Shapes im Dateisystem in +einer Spalte der Datenbank gespeichert. Anwendungen, die auf der Datenbank +aufbauen, können die Geodaten eines Shapefiles später anhand dieses Merkmals +gruppieren und anzeigen. + + +\subsection{Beschreibung der Parser} +\label{Beschreibung der Parser} + +Wie im letzten Kapitel beschrieben, sind die Parser speziell an das Dateisystem +der BfG ausgerichtet. Im Folgenden werden zu jedem Parser folgende Informationen +angegeben: + +\textbf{Pfad} +\\Der Pfad, in dem die Shapefiles im Dateisystem abgelegt sein müssen ausgehend +vom Gewässer Verzeichnis. + +\textbf{Geometrie} +\\Der Geometrie Typ, der für diese Klasse von Shapefiles erwartet wird. + +\textbf{Attribute} +\\Eine Liste der Attribute, die vom Parser aus dem Shape gelesen werden. + + +\subsubsection{Achsen} +\hspace{1cm} +\begin{tabular}[t]{ll} +Pfad & Geodaesie/Flussachse+km \\ +Geometrie & LINESTRING \\ +Attribute & name, kind \\ +\end{tabular} + + +\subsubsection{Hydrologische Grenzen} +\hspace{1cm} +\begin{tabular}[t]{ll} +Pfad & Hydrologie/Hydr.Grenzen/Linien \\ +Geometrie & LINESTRING, POLYGON \\ +Attribute & name, kind, sectie, sobek \\ +\end{tabular} + +\subsubsection{Bauwerke} +\hspace{1cm} +\begin{tabular}[t]{ll} +Pfad & Geodaesie/Bauwerke \\ +Geometrie & LINESTRING \\ +Attribute & name, Name, KWNAAM \\ +\end{tabular} + + +\subsubsection{Einzugsgebiete} +\hspace{1cm} +\begin{tabular}[t]{ll} +Pfad & Hydrologie/Einzugsgebiet \\ +Geometrie & POLYGON, MULTIPOLYGON \\ +Attribute & name, Name, AREA, area \\ +\end{tabular} + + +\subsubsection{Querprofilspuren} +\hspace{1cm} +\begin{tabular}[t]{ll} +Pfad & Geodaesie/Querprofile \\ +Geometrie & LINESTRING \\ +Attribute & KILOMETER, KM, STATION, ELEVATION \\ +\end{tabular} + + +\subsubsection{Festpunkte} +\hspace{1cm} +\begin{tabular}[t]{ll} +Pfad & Geodaesie/Festpunkte \\ +Geometrie & POINT \\ +Attribute & name, KM, ELBE\_KM, X, Y, HPGP \\ +\end{tabular} + + +\subsubsection{Talaue} +\hspace{1cm} +\begin{tabular}[t]{ll} +Pfad & Hydrologie/Hydr.Grenzen \\ +Geometrie & POLYGON, MULTIPOLYGON \\ +Attribute & name \\ +\end{tabular} + + +\subsubsection{Pegelstationen} +\hspace{1cm} +\begin{tabular}[t]{ll} +Pfad & Hydrologie/Streckendaten \\ +Geometrie & POINT \\ +Attribute & Name, name, MPNAAM \\ +\end{tabular} + + +\subsubsection{Hochwasserschutzanlagen} +\hspace{1cm} +\begin{tabular}[t]{ll} +Pfad & Hydrologie/HW-Schutzanlagen \\ +Geometrie & LINESTRING, POINT \\ +Attribute & name, source, description, status\_date, agency, + dike\_km, range, z\_target, rated\_level, z \\ +\end{tabular} + + +\subsubsection{Kilometrierung} +\hspace{1cm} +\begin{tabular}[t]{ll} +Pfad & Geodaesie/Flussachse+km \\ +Geometrie & POINT \\ +Attribute & name, km, KM \\ +\end{tabular} + + +\subsubsection{Überschwemmungsfläche} +\hspace{1cm} +\begin{tabular}[t]{ll} +Pfad & Hydrologie/UeSG/Berechnung \\ +Geometrie & POLYGON, MULTIPOLYGON \\ +Attribut & name, diff, count, area, perimeter \\ +\end{tabular} + +\subsection{Konfiguration} +\label{Konfiguration} +Der Geodaten Importer kann über die Datei \textit{contrib/run\_geo.sh} +konfiguriert werden. Öffnen Sie die Datei mit einem Texteditor Ihrer Wahl. +In den Zeilen 4-9 werden Optionen definiert, die zwangsläufig angepasst +werden müssen: + +\textbf{RIVER\_PATH} +\\Der Pfad zum Gewässer im Dateisystem. + +\textbf{RIVER\_NAME} +\\Der Datenbank Name des zu importierenden Gewässers. Wird dieser Parameter +nicht übergeben werden die Ordnernamen im mit dem Parameter RIVER\_PATH +angegebenen Verzeichnis als Flussnamen interpretiert und es wird versucht +diese zu Importieren. + +\textbf{HOST} +\\Der Host der Datenbank. + +\textbf{USER} +\\Der Nutzer, der zum Verbinden zur Datenbank verwendet wird. + +\textbf{PASS} +\\Das Passwort für USER zum Verbinden zur Datenbank. + +In den Zeilen 12-23 werden weitere Optionen definiert, die bei Bedarf angepasst +werden können. Falls nicht anders angegeben, können die Optionen mit den Werten +`0` und `1` belegt werden. + +\textbf{VERBOSE} +\\Dieser Wert gibt die Granularität der Log-Ausgaben während des +Imports an. Je höher der Wert, desto mehr Informationen werden +in das Logfile geschrieben. Aktuell sind die Werte `0`, `1` und +`2` definiert. Wird der Wert `0` gesetzt, werden nur Fehler und +Warnungen in das Logfile geschrieben. Bei `1` werden neben +Fehlern und Warnungen auch Infos in das Logfile geschrieben. Bei +`2` werden sämtliche Ausgaben des Programms geschrieben. Dieser +Modus ist hauptsächlich für die Entwicklung gedacht. + +\textbf{OGR\_CONNECTION} +\\Hiermit kann direkt ein beliebiger Verbindungs string angegegeben +werden, welcher die host, user und passwort werde überschreibt. +Dieser Option wird direkt an die OGR Bibliothek weitergegeben und ermöglicht +verbesserte Tests und Entwicklung mit verschiedenen Daten Backends. + +\textbf{SKIP\_AXIS} +\\Bei gesetztem Wert `1` werden keine Flussachsen importiert. + +\textbf{SKIP\_KMS} +\\Bei gesetztem Wert `1` werden keine Kilometrierungen importiert. + +\textbf{SKIP\_CROSSSECTIONS} +\\Bei gesetztem Wert `1` werden keine Querprofilespuren importiert. + +\textbf{SKIP\_FIXPOINTS} +\\Bei gesetztem Wert `1` werden keine Festpunkte importiert. + +\textbf{SKIP\_BUILDINGS} +\\Bei gesetztem Wert `1` werden keine Bauwerke importiert. + +\textbf{SKIP\_FLOODPLAINS} +\\Bei gesetztem Wert `1` werden keine Talauen importiert. + +\textbf{SKIP\_HYDR\_BOUNDARIES} +\\Bei gesetztem Wert `1` werden keine hydrologischen Grenzen importiert. + +\textbf{SKIP\_HWS\_LINES} +\\Bei gesetztem Wert `1` werden kein Hochwasserschutz Liniendaten importiert. + +\textbf{SKIP\_HWS\_POINTS} +\\Bei gesetztem Wert `1` werden kein Hochwasserschutz Punktdaten importiert. + +\textbf{SKIP\_CATCHMENTS} +\\Bei gesetztem Wert `1` werden keine Einzugsgebiete importiert. + +\textbf{SKIP\_UESG} +\\Bei gesetztem Wert `1` werden keine Überschwemmungsflächen importiert. + +\textbf{SKIP\_DGM} +\\Bei gesetztem Wert `1` werden keine Informationen über Digitale Geländemodelle importiert. + +\textbf{SKIP\_JETTIES} +\\Bei gesetztem Wert `1` werden keine Informationen über Buhnen importiert. + +\textbf{SKIP\_FLOODMARKS} +\\Bei gesetztem Wert `1` werden keine Informationen über HW-Marken importiert. + +\subsection{Starten des Geodaten Importers} +\label{Starten des Geodaten Importers} +Der Geodaten Importer wird mittels eines Shellskripts von einer Konsole +gestartet. Dazu führen Sie folgenden Befehl aus:\\ + +\begin{lstlisting} + sh contrib/run_geo.sh > geo-import.log +\end{lstlisting} + +Der Importer wird nun gestartet. Sämtliche Log-Ausgaben werden in die Datei +$geo-import.log$ geschrieben. + +\textbf{Hinweis} +\\Bitte beachten Sie, dass der Geodaten Importer aufgrund der eingesetzten +Technologien derzeit nicht in der Lage ist, lesend auf die Oracle Datenbank +zuzugreifen. Entsprechend kann beim Import nicht festgestellt werden, ob sich +Shapefiles bereits in der Datenbank befinden, oder nicht. Ein erneuter Import +Vorgang der Geodaten würde also dazu führen, dass Geometrien doppelt in der +Datenbank abgelegt werden. +