Mercurial > dive4elements > river
view backend/doc/documentation/de/overview.tex @ 7117:1c4faf9f2570 generator-refactoring
Close generator-refactoring
author | Andre Heinecke <aheinecke@intevation.de> |
---|---|
date | Tue, 24 Sep 2013 12:32:08 +0200 |
parents | 7e48f7a64182 |
children | 92c8cc7e064b |
line wrap: on
line source
\section{�bersicht} Diese Dokumentation beschreibt die von Intevation entwickelten Werkzeuge zum Importieren der hydrologischen, morphologischen und geod�tischen Daten der BfG. Die im Folgenden\\ beschriebenen Werkzeuge zum Importieren der fachlichen und geod�tischen Daten sind speziell auf das Verzeichnissystem der BfG ausgerichtet. Dabei wird angenommen, dass sich das Verzeichnis eines Gew�ssers auf oberster Ebene in drei Unterverzeichnisse aufgliedert: \begin{itemize} \item Geodaesie \item Hydrologie \item Morphologie \end{itemize} Desweiteren beziehen sich die Befehle, die auf der Kommandozeile abgesetzt werden, auf ein SuSE-Linux-Enterprise-Server Version 11. Bitte beachten Sie auch, dass einige der Befehle \textit{root}-Rechte ben�tigen. \subsection{Vorbereitungen} \subsubsection{Entpacken des Datenimporters} Damit die Software performant und korrekt ausgef�hrt werden kann, ist es erforderlich, dass sie auf dem selben System wie die Datenbank installiert und ausgef�hrt wird. Sollten Sie das Paket nicht auf dem Zielsystem selbst heruntergeladen haben, sind ggf. weitere Werkzeuge notwendig. Wenn Sie von einem Windows System auf das Zielsystem zugreifen wollen, k�nnen Sie beispielsweise folgende Werkzeuge verwenden: \begin{itemize} \item WinSCP \\ WinSCP ist ein Open Source Werkzeug zum Transferieren von Dateien zwischen zwei Systemen. Um das heruntergeladene Paket auf das Zielsystem zu transferieren, k�nnen Sie WinSCP benutzen. F�r weitere Informationen und den Gebrauch von WinSCP lesen Sie bitte unter folgender Adresse nach: \href{http://winscp.net/}{http://winscp.net/}. \item Putty \\ Putty ist ein Open Source Werkzeug, mit dem Sie sich von einem Windows System per SSH auf das Zielsystem verbinden k�nnen. Anschlie�end k�nnen Sie �ber die Kommandozeile auf dem Zielsystem die Befehle, die in diesem Dokument beschrieben sind, ausf�hren. F�r weitere Informationen zu Putty und dessen Gebrauch lesen Sie bitte unter folgender Adresse nach: \href{http://www.putty.org/} {http://www.putty.org/}. \end{itemize} Bitte beachten Sie, dass diese Werkzeuge nicht zur Installtion und zum Betrieb der Software selbst notwendig sind! \subsection{Systemanforderungen} \label{Systemanforderungen} \begin{itemize} \item Oracle oder PosgreSQL Datenbank inkl. Schema f�r FLYS \item SUSE Enterprise Linux 11.2 SP 1 \end{itemize} \subsection{Installationsanleitung} \label{Installationsanleitung} Nachdem Sie das Paket nun in das Heimatverzeichnis des Nutzers auf das Zielsystem kopiert haben, entpacken Sie es mit folgenden Befehlen: \begin{lstlisting} cd ~ tar xvfz flys-importer.tar.gz cd flys-importer \end{lstlisting} \subsubsection{Java} Der flys-importer ben�tigt Java Version 6 um diese zu installieren laden Sie bitte von \url{http://www.oracle.com/technetwork/java/javase/downloads/jdk6downloads-1902814.html} eine aktulle Java Version als -rpm.bin herunter. Zum Beispiel: jdk-6u41-linux-x64-rpm.bin Nach dem Herunterladen, �ffnen Sie eine konsole und wechseln in das Downloadverzeichnis. F�hren Sie nun folgende Befehle aus: \begin{lstlisting} su - # login als root sh jdk-6u41-linux-x64-rpm.bin <bestaetigen mit enter> update-alternatives --install /usr/bin/java java /usr/java/jdk1.6.0_41/bin/java 5 update-alternatives --install /etc/alternatives/jre jre /usr/java/jdk1.6.0_41/jre 5 update-alternatives --config java \end{lstlisting} \subsubsection{Python 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 proj und libgeos 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 unixODBC postgresql-libs zypper mr -d "intevation:bfg" zypper ref # Paketliste neu laden \end{lstlisting} %\subsubsection Oracle Instantclient\\ %Der Oracle Instantclient 11.2.0.2.0 wird ben�tigt, damit der Importer mittels Python %und GDAL in die bestehende Oracle Datenbqlnk schreiben kann. Wenn Sie %eine PosgreSQL Datenbank verwenden, k�nnen Sie diesen Schritt �berspringen. % %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 % \item instantclient-sdk-linux-x86-64-11.2.0.2.0.zip % \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} % 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/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 % Instantclient 11.2} erfolgreich entpackt und im Dateisystem unter % \textit{/opt/instantclient\_11\_2} abgelegt. % \subsubsection{Vorbereiten der Datenbank} Bevor die Importer verwendet werden k�nnen, ist es notwendig, dass eine leere Oracle Datenbank vorhanden ist. Anschlie�end m�ssen folgende SQL-Skripte in diese Datenbank eingespielt werden: \begin{enumerate} \item oracle.sql \\ In diesem SQL Skript befindet sich das Schema zum Speichern der hydrologischen Daten. \item oracle-minfo.sql \\ In diesem SQL Skript befindet sich das Schema zum Speichern der morphologischen Daten. \item oracle-spatial.sql \\ In diesem SQL Skript befindet sich das Schema zum Speichern der geod�tischen Daten. \item oracle-spatial\_idx.sql \\ Mittels diesem SQL Skript werden die Indizes zum geod�tischen Datenbankschema\\ hinzugef�gt. \end{enumerate} Zum Einspielen dieser Schemata setzen Sie folgende Befehle auf der Kommandozeile ab. Beachten Sie, dass $sqlplus$ im Pfad liegen muss, und der Linux-Nutzer dieses Kommando ausf�hren k�nnen muss. Au�erdem sind $benutzername$ und $passwort$ entsprechend Ihres Datenbank-Zugangs anzupassen. SQLPlus befindet sich in /opt/instantclient\_11\_2 um es verf�gbar zu machen f�hren Sie im Importer Verzeichnis folgende Befehle aus: \begin{lstlisting} export LD_LIBRARY_PATH=opt/instantclient\_11\_2/lib:$LD_LIBRARY_PATH export PATH=opt/instantclient\_11\_2:$PATH \end{lstlisting} Damit alle in den UTF8-codierten SQL-Skripten vorhandenen Zeichen (also z.B.\ auch Umlaute) korrekt in die Datenbank eingelesen werden k�nnen, f�hren Sie folgenden Befehl aus: \begin{lstlisting} export NLS_LANG=.AL32UTF8 \end{lstlisting} Nun erstellen Sie das Schema: \begin{lstlisting} sqlplus benutzername/passwort @schema/oracle.sql sqlplus benutzername/passwort @schema/oracle-minfo.sql sqlplus benutzername/passwort @schema/oracle-spatial.sql sqlplus benutzername/passwort @schema/oracle-spatial_idx.sql \end{lstlisting}