comparison backend/doc/documentation/de/importer-hydr-morph.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-hydr-morph.tex@4f65d833680f
children 45e6635ef7f5
comparison
equal deleted inserted replaced
5837:d9901a08d0a6 5838:5aa05a7a34b7
1 \section{Fachdatenimport}
2
3 Der Fachdatenimporter dient dazu, hydrologische und morphologische Gewässerdaten
4 aus dem Dateisystem in die FLYS3-Datenbank zu importieren. Das Werkzeug
5 orientiert sich hierbei an der Dateihierachie, so wie sie auch von Desktop-FLYS
6 ausgelesen wird. Der Import Vorgang ist in zwei Phasen unterteilt:
7
8 \begin{itemize}
9 \item Lesen aller Daten eines Gewässers aus dem Dateisystem.
10 \item Schreiben der erfolgreich eingelesenen Daten in die Datenbank.
11 \end{itemize}
12
13 Sollte beim Lese- oder Schreib-Vorgang eines Gewässers ein Fehler auftreten, so
14 werden sämtliche Daten des Gewässers verworfen. Beide Phasen zusammen bilden
15 somit eine Transaktion.
16
17 \textbf{Hinweis}
18 \\Der Import geht wie auch Desktop-FLYS davon aus, dass die Dateien Latin-1
19 encodiert vorliegen! Stellen Sie also sicher, dass das von Ihnen verwendete
20 Encoding korrekt ist. Andernfalls ist es möglich, dass es während des Imports zu
21 unerwarteten Problemen kommt.
22
23 Der Importer ist ein in Java geschriebenes Werkzeug und kann von der Konsole aus
24 gestartet werden. Sämtlich Konfigurationen können über sogenannte
25 \textit{System-Properties} übergeben werden. Eine \textit{System-Property} wird
26 dabei mittels \textit{-Dkey=value} beim Start übergeben. Im folgenden Beispiel
27 würde der Importer mit einer Konfiguration \textit{flys.backend.importer.dry.run},
28 welche den Wert \textit{true} gesetzt hat, gestartet.
29
30 \begin{lstlisting}
31 java -Dflys.backend.importer.dry.run=true de.intevation.flys.importer.Importer
32 \end{lstlisting}
33
34 Auf gleiche Weise können dem Importer sämtliche Optionen zur Konfiguration
35 beim Start mitgegeben werden. Im Folgenden werden die möglichen System-Properties und
36 ihre Auswirkung auf den Import genauer beschrieben. In den Kapiteln
37 \ref{configuration} und \ref{start-hydr} wird zur Einfachheit jedoch ein
38 Shellskript verwendet, das eine Standardkonfiguration vorgibt und den Importer
39 mit allen erforderlichen Konfigurationen startet.
40
41
42 \subsection{Importierte Daten}
43 In diesem Kapitel werden die Datentypen aufgelistet und erläutert, wie sie vom
44 Importer eingelesen werden.
45
46 \subsubsection{Streckenfavoriten (*.km-Dateien)}
47 Der Import der Streckenfavoriten kann mit \textbf{-Dflys.backend.importer.skip.annotations=true}
48 unterdrückt werden.
49
50 Zur Klassifikation von Streckenfavoriten muss mittels\\
51 \textbf{-Dflys.backend.importer.annotation.types=DATEI} der Pfad zu einer
52 XML-Datei angegeben werden. In dieser Datei werden die Typen und Regeln
53 festgelegt, anhand derer die Klassifikation während des Import-Vorgangs
54 vorgenommen wird. Details hierzu befinden sich im Kapitel \ref{annotation-types}.
55
56 \subsubsection{Bundeswasserstraßen-IDs}
57 Der Import und die Zuweisung der Bundeswasserstraßen-IDs kann mit
58 \textbf{-Dflys.backend.importer.skip.bwastr=true} unterbunden werden.
59 Beim Import wird davon ausgegangen dass sich die Datei \textbf{BWASTR\_ID.csv}
60 neben der oder den zu importierenden gew-Dateien befindet.
61
62 \subsubsection{Pegel, Stammdaten (*.glt, *.sta-Dateien)}
63 Der Import von Pegel- und Stammdaten kann mit \textbf{'-Dflys.backend.importer.skip.gauges=true'}
64 unterdrückt werden. Die .glt-Datei, die neben der .wst-Datei liegt, wird zuerst
65 ausgelesen. Es werden nur *.sta-Datei von Pegeln geladen, die in der .glt-Datei
66 vermerkt sind.
67
68 \subsubsection{Historische Abflusstafeln (*.at-Dateien)}
69 Der Import von historischen Abflusstafeln kann mit
70 \textbf{'-Dflys.backend.importer.skip.historical.discharge.tables=true'}
71 unterdrückt werden. Diese Flagge wird nur ausgewertet, wenn überhaupt
72 Pegel-Daten (siehe oben) importiert werden.
73
74 Mittels \textbf{-Dflys.backend.sta.parse.gauge.numbers=true} wird versucht, die
75 offiziellen Pegelnummern aus den Stammdaten zu extrahieren.
76 \textbf{Dies ist mit Vorsicht zu behandeln, denn die meisten STA-Dateien
77 enthalten invalide Pegelnummern.}
78
79 Die System-Property \textbf{flys.backend.main.value.types} kann einen String
80 mit gültigen Typen von Stammdaten enthalten. Vorbelegt ist \textit{QWTD}. In der
81 Praxis ist \textit{QWD} eine sinnvolle Belegung.
82
83 \subsubsection{Basis-Wasserstände (gewaesser.wst-Dateien)}
84 Der Import von Wasserständen kann mit \textbf{-Dflys.backend.importer.skip.wst=true} unterdrückt werden.
85
86 \subsubsection{Zusätzliche Längsschnitte (*.zus, *.wst-Dateien)}
87 Der Import von zusätzlichen Längsschnitten kann mit \textbf{-Dflys.backend.importer.skip.extra.wsts=true}
88 unterdrückt werden. Es werden die *.zus- und *.wst-Dateien aus dem Verzeichnis
89 \textit{../Zus.Längsschnitte} relativ zur gewaesser.wst-Datei betrachtet.
90
91 \subsubsection{Fixierungen (*.wst-Dateien)}
92 Der Import von Fixierungen kann mit \textbf{-Dflys.backend.importer.skip.fixations=true}
93 unterdrückt werden. Es werden die *.wst-Dateien aus dem Verzeichnis
94 \textit{../Fixierungen} relativ zur gewaesser.wst-Datei betrachtet.
95
96 \subsubsection{Amtliche Linien (*.wst-Dateien)}
97 Der Import von amtlichen Linien kann mit \textbf{-Dflys.backend.importer.skip.official.lines=true}
98 unterdrückt werden. Es werden die \textit{Amtl\_Linien.wst}-Dateien aus dem
99 Verzeichnis \textit{../Basisdaten} und \textit{../Fixierungen} relativ zur
100 \textit{gewaesser.wst}-Datei betrachtet.
101
102 \subsubsection{Profilspuren (*.prf-Dateien)}
103 Der Import von Profilspuren kann mit \textbf{-Dflys.backend.importer.skip.prfs=true}
104 unterdrückt werden. Es werden rekursiv alle *.prf-Dateien aus \textit{../../..}
105 relativ zur gewaesser.wst-Datei betrachtet. Vor dem Import werden mit Hilfe
106 eines Längen- und eines MD5-Summen-Vergleichs inhaltliche Duplikate
107 ausgeschlossen.
108
109 \subsubsection{Profilspuren (*.w80-Dateien)}
110 Der Import von W80-Profilspuren kann mit \textbf{-Dflys.backend.importer.skip.w80=true}
111 unterdrückt werden. Es werden rekursiv alle *.w80-Dateien aus \textit{../../..}
112 relativ zur gewaesser.wst-Datei betrachtet. Vor dem Import werden mit Hilfe
113 eines Längen- und eines MD5-Summen-Vergleichs inhaltliche Duplikate
114 ausgeschlossen.
115
116 \subsubsection{Hydraulische Kennzahlen (*.hyk)}
117 Der Import von hydraulischen Kennzahlen kann mit \textbf{-Dflys.backend.importer.skip.hyks=true} unterdrückt
118 werden. Es werden rekursiv alle *.hyk-Dateien aus \textit{../../..} relativ zur
119 gewaesser.wst-Datei betrachtet. Vor dem Import werden mit Hilfe eines Längen- und
120 eines MD5-Summen-Vergleichs inhaltliche Duplikate ausgeschlossen.
121
122 \subsubsection{Hochwassermarken (*.zus, *.wst)}
123 Der Import von Hochwassermarken kann mit \textbf{-Dflys.backend.importer.skip.flood.water=true}
124 unterdrückt werden. Es werden die *.zus- und *.wst-Dateien aus dem Verzeichnis
125 \textit{../HW-Marken} relativ zur gewaesser.wst-Datei betrachtet.
126
127 \subsubsection{Hochwasserschutzanlagen (*.zus)}
128 Der Import von Hochwasserschutzanlagen kann mit \textbf{-Dflys.backend.importer.skip.flood.protection=true}
129 unterdrückt werden. Es werden die *.zus- und *.wst-Dateien aus dem Verzeichnis
130 \textit{../HW-Schutzanlagen} relativ zur \textit{gewaesser.wst}-Datei betrachtet.
131
132 \subsubsection{Sohlhöhen (Peilungen)}
133 Der Import von Sohlhöhen-Peilungen kann mit \textbf{-Dflys.backend.importer.skip.bed.height.single=true}
134 unterdrückt werden. Es werden die Dateien aus dem Verzeichnis
135 \textit{Morphologie/Sohlhoehen/Einzeljahre} geladen.
136
137 \subsubsection{Sohlhöhen (Epochen)}
138 Der Import Sohlhöhen-Epochen kann mit \textbf{-Dflys.backend.importer.skip.bed.height.epoch=true}
139 unterdrückt werden. Es werden die Dateien aus dem Verzeichnis
140 \textit{Morphologie/Sohlhoehen/Epochen} geladen.
141
142 \subsubsection{Sedimentdichte}
143 Der Import der Sedimentdichte kann mit
144 \textbf{-Dflys.backend.importer.skip.sediment.density=true}
145 unterdrückt werden. Es werden alle Dateien aus dem Verzeichnis
146 \textit{Morphologie/Sedimentdichte} geladen.
147
148 \subsubsection{Morphologische Breite}
149 Der Import der morphologischen Breite kann mit
150 \textbf{-Dflys.backend.importer.skip.morphological.width=true}
151 unterdrückt werden. Es werden alle Dateien aus dem Verzeichnis
152 \textit{Morphologie/morphologische\_Breite} geladen.
153
154 \subsubsection{Fließgeschwindigkeit}
155 Der Import der Fließgeschwindigkeit kann mit
156 \textbf{-Dflys.backend.importer.skip.flow.velocity=true}
157 unterdrückt werden. Es werden alle Modellrechnungen aus dem Verzeichnis\\
158 \textit{Morphologie/Geschwindigkeit\_Schubspannung/Modellrechnungen} und\\
159 \textit{Morphologie/Geschwindigkeit\_Schubspannung/v-Messungen} geladen.
160
161 \subsubsection{Sedimentfracht}
162 Der Import der Sedimentfracht kann mit
163 \textbf{-Dflys.backend.importer.skip.sediment.yield=true}
164 unterdrückt werden. Es werden alle Dateien aus dem Verzeichnis
165 \textit{Morphologie/Fracht} geladen. Dabei werden die Dateien aus dem
166 Unterverzeichnissen \textit{Einzeljahre} und \textit{Epochen} entsprechend als
167 \textit{Einzeljahre} und \textit{Epochen} vermerkt.
168
169 \subsubsection{Wasserspiegellagen für MINFO}
170 Der Import der MINFO spezifischen Wasserspiegellagen kann mit\\
171 \textbf{-Dflys.backend.importer.skip.waterlevels=true}
172 unterdrückt werden. Es werden alle Dateien aus dem Verzeichnis
173 \textit{Morphologie/Fixierungsanalyse/Wasserspiegellagen} geladen.
174
175 \subsubsection{Wasserspiegeldifferenzen für MINFO}
176 Der Import der Wasserspiegellagendifferenzen kann mit\\
177 \textbf{-Dflys.backend.importer.skip.waterlevel.differences=true}
178 unterdrückt werden. Es werden alle Dateien aus dem Verzeichnis
179 \textit{Morphologie/Fixierungsanalyse/Wasserspiegeldifferenzen} geladen.
180
181 \subsubsection{Transport Abfluss Beziehung}
182 Der Import der Daten für die Transport Abfluss Beziehung kann mit\\
183 \textbf{flys.backend.importer.skip.sq.relation=true} unterdrückt
184 werden. Es werden alle Dateien unter
185 \textit{Feststofftransport-Abfluss-Beziehung} geladen.
186
187
188 \subsection{Klassifikation von Streckenfavoriten}
189 \label{annotation-types}
190 Streckenfavoriten werden aus KM-Dateien importiert. Um die einzelnen Einträge
191 einer Kategorie (Brücke, Pegel, etc.) zuzuordnen, kann eine XML angegeben werden,
192 in der Regeln für diese Klassifikation definiert werden. Schematisch gliedert
193 sich diese Datei in die zwei Bereiche 'types' und 'patterns':
194
195 \begin{lstlisting}
196 <annotation>
197 <types>
198 <type>...</type>
199 <type>...</type>
200 ...
201 </types>
202 <patterns>
203 <pattern>...</pattern>
204 <pattern>...</pattern>
205 ...
206 </patterns>
207 </annotation>
208 \end{lstlisting}
209
210 In der Sektion \textit{types} werden die Kategorien vereinbart, in die klassifiziert
211 werden soll. Dies geschieht mit entsprechenden Zeilen in der XML Datei. Es folgt
212 ein Auszug aus einer solchen Datei:
213
214 \begin{lstlisting}
215 <type name="Pegel"/>
216 <type name="Brücke"/>
217 ...
218 <type name="Sonstige" default="true"/>
219 \end{lstlisting}
220
221 Das Attribut 'default' darf maximal einmal vergeben werden und besagt, dass diese
222 Kategorie gewählt werden soll, wenn keine andere Kategorie zugeordnet werden kann.
223
224 In der Sektion 'patterns' werden dann die Regeln definiert, die einzelne Einträge
225 den zuvor definierten Kategorien zuordnet. Hierfür können zwei Arten von
226 Definitionen angegeben werden:
227
228 \begin{lstlisting}
229 <file pattern="^Brücken$" type="Brücke"/>
230 \end{lstlisting}
231
232 oder
233
234 \begin{lstlisting}
235 <line pattern="^Brücke[:\s].*$" type="Brücke"/>
236 \end{lstlisting}
237
238 Die erste Variante bestimmt die Kategorie, die pro KM-Datei gelten soll.
239 \textit{pattern} ist hierbei ein regulärer Ausdruck, der auf den Dateinamen
240 angewandt wird. Passt der Name der Datei auf den regulären Ausdruck, wird
241 \textit{type} als Vorgabe angenommen. Treffen mehrere \textit{file}-Regeln zu,
242 wird der erste Treffer angewandt. Findet keine der \textit{file}-Regeln Anwendung, wird
243 die Kategorie ausgewählt, die in der \textit{types}-Section das Attribut
244 \textit{default} gesetzt hat.
245
246 Die zweite Regel-Variante \textit{line} wird auf jeden Eintrag innerhalb einer KM-Datei
247 auf den Bezeichner der Streckenfavoriten angewandt. Als Muster dient auch hier
248 ein regulärer Ausdruck, der über das Attribut \textit{pattern} definiert wird.
249 Die Kategorie wird im Trefferfall über das Attribut \textit{type} bestimmt.
250 Treffen mehrere Regeln zu, wird die Kategorie gewählt, die zum ersten Treffer
251 gehört. Trifft keine Regel zu wird der Eintrag der Kategorie zugeteilt, die für
252 die beinhaltende Datei als Vorgabe gilt.
253
254
255 \subsection{Konfiguration}
256 \label{configuration}
257 Zum Starten des Importers ist es notwendig, in der Datei
258 \textit{contrib/run\_hydr\_morph.sh} die Variablen am Anfang der Datei
259 anzupassen. Im folgenden werden notwendige und optionale Einstellungen
260 beschrieben, die beim Starten des Importers berücksichtigt werden. Folgende
261 Einstellungen sind zwangsläufig an die bestehende Umgebung anzupassen:
262
263 \textbf{INFO\_GEW}
264 \\Diese Option muss auf eine valide *.gew Datei verweisen (bekannt aus
265 Desktop-FLYS). Wichtig für den Importer sind in dieser Datei die Zeilen, die mit
266 \textit{WSTDatei:} beginnen. In ihnen wird der Pfad zu der zentralen WST-Datei
267 des jeweiligen Gewässers angegeben. Alle anderen importierten Dateien werden in
268 ihrer Lage im Dateisystem relativ zur Lage dieser Datei betrachtet.
269
270 \textbf{BACKEND\_USER}
271 \\Der Nutzername, der zum Verbinden zur Datenbank verwendet werden soll.
272
273 \textbf{BACKEND\_PASS}
274 \\Das Passwort, welches in Kombination mit \textbf{BACKEND\_USER} zum Verbinden
275 zur Datenbank verwendet werden soll.
276
277 \textbf{BACKEND\_HOST}
278 \\Der Datenbank-Host. In der Regel sollte hier \textit{localhost} eingetragen
279 werden, da es empfohlen wird, den Importer auf dem selben Host zu starten, auf
280 dem auch die Datenbank läuft.
281
282 \textbf{BACKEND\_PORT}
283 \\Der Port auf dem die Datenbank zu erreichen ist. Bei einer Oracle XE Instanz
284 z.B.: \textit{1521}, sofern nicht anders konfiguriert.
285
286 \textbf{BACKEND\_NAME}
287 \\Der Name der Datenbank Instanz. Beispielsweise \textit{XE} bei einer Oracle XE
288 Instanz.
289
290 \textbf{BACKEND\_DB\_PREFIX}
291 \\Der Präfix zum Aufbau einer Datenbankverbindung. Für Oracle z.B.: \textit{jdbc:oracle:thin:@}.
292
293 \textbf{BACKEND\_DB\_DRIVER}
294 \\Der Name des JDBC-Treibers, der es erlaubt das Protokoll der Datenbank zu
295 sprechen. Im Falle einer Oracle XE wäre dies z.B.: \textit{oracle.jdbc.OracleDriver}.
296
297 \textbf{BACKEND\_DB\_DIALECT}
298 \\Der Hibernate-Dialekt, den die Datenbank versteht. Im Falle einer Oracle-XE
299 wäre dies z.B.: \textit{org.hibernate.dialect.OracleDialect}.
300
301
302 Weitere Details zum Verbinden zu einer Oracle Datenbank finden Sie unter\\
303 \href{http://www.orafaq.com/wiki/JDBC}{http://www.orafaq.com/wiki/JDBC}. Alle weiteren Einstellungen sind
304 optional anpassbar:
305
306 \textbf{LOG4J\_CONFIG}
307 \\Der Fachdatenimport verwendet die externe Bibliothek \textit{Apache Log4J} zum Loggen
308 von Informationen. Dazu ist es notwendig eine entsprechende Konfiguration beim
309 Start anzugeben. \textit{LOG4J\_CONFIG} verweist in diesem Fall auf eine externe
310 Datei zur Konfiguration von Log4J. Im Standardfall wird die Datei
311 \textit{conf/log4j.properties} verwendet, welche eine sinnvolle Standardkonfiguration
312 enthält. Sollten Sie diese Konfiguration verwenden, wird beim Import eine
313 Log-Datei namens \textit{import.log} erstellt, die maximal 100 MB groß werden
314 kann. Sollte die Log-Datei größer als 100 MB anwachsen, wird die aktuelle Datei
315 nach \textit{import.log.1} umbenannt und eine neue Datei \textit{import.log}
316 wird begonnen. Maximal werden 10 Log-Dateien gespeichert. Für weitere Details
317 zu Log4J siehe Online Dokumentation unter
318 \href{http://logging.apache.org/log4j/1.2/}{http://logging.apache.org/log4j/1.2/}
319
320
321 \textbf{IMPORTER\_MAINVALUE\_TYPES}
322 \\Diese Einstellung erlaubt die Angabe eines Textes, der aus den gültigen Typen
323 für Hauptwerte zusammengesetzt ist. \textit{QWTD} ist standardmäßig gesetzt.
324
325 \textbf{IMPORTER\_ANNOTATION\_TYPES}
326 \\Diese Einstellung verweist auf eine Datei (relativ zum Ort der \textit{run.sh}
327 im Dateisystem), die die möglichen Typen von Streckenfavoriten und deren Regeln
328 definiert. Siehe hierzu auch Kapitel \ref{annotation-types}.
329
330
331 Die im folgenden beschriebenen Einstellungen können jeweils die Werte
332 \textit{true} oder \textit{false} annehmen und sind optional anzupassen.
333
334 \textbf{IMPORTER\_DRY\_RUN}
335 \\Falls \textit{true} gesetzt wird, wird der Import nur simuliert. Es werden
336 keine Daten in die Datenbank geschrieben. Dies kann z.B.: zum Ermitteln
337 potentieller Dateninkonsistenzen sinnvoll sein.
338
339 \textbf{IMPORTER\_SKIP\_GAUGES}
340 \\Wenn \textit{true} gesetzt ist werden keine Pegel- und Stammdaten bearbeitet.
341
342 \textbf{IMPORTER\_SKIP\_ANNOTATIONS}
343 \\Wenn \textit{true} gesetzt ist werden keine Streckenfavoriten bearbeitet.
344
345 \textbf{IMPORTER\_SKIP\_WST}
346 \\Wenn \textit{true} gesetzt ist werden keine WST Dateien bearbeitet.
347
348 \textbf{IMPORTER\_SKIP\_PRFS}
349 \\Wenn \textit{true} gesetzt ist werden keine Querprofilspuren bearbeitet.
350
351 \textbf{IMPORTER\_SKIP\_HYKS}
352 \\Wenn \textit{true} gesetzt ist werden keine HYK Dateien bearbeitet.
353
354 \textbf{IMPORTER\_SKIP\_EXTRA\_WST}
355 \\Wenn \textit{true} gesetzt ist werden keine zusätzlichen Längsschnitte
356 bearbeitet.
357
358 \textbf{IMPORTER\_SKIP\_FIXATIONS}
359 \\Wenn \textit{true} gesetzt ist werden keine Fixierungen bearbeitet.
360
361 \textbf{IMPORTER\_SKIP\_OFFICIAL\_LINES}
362 \\Wenn \textit{true} gesetzt ist werden keine offiziellen Linien bearbeitet.
363
364 \textbf{IMPORTER\_SKIP\_FLOOD\_WATER}
365 \\Wenn \textit{true} gesetzt ist werden keine Hochwassermarken bearbeitet.
366
367 \textbf{IMPORTER\_SKIP\_FLOOD\_PROTECTION}
368 \\Wenn \textit{true} gesetzt ist werden keine Hochwasserschutzanlagen
369 bearbeitet.
370
371 \textbf{IMPORTER\_SKIP\_BED\_HEIGHT\_SINGLE}
372 \\Wenn \textit{true} gesetzt ist werden keine mittleren Sohlhöhen (Peilungen) bearbeitet.
373
374 \textbf{IMPORTER\_SKIP\_BED\_HEIGHT\_EPOCH}
375 \\Wenn \textit{true} gesetzt ist werden keine mittleren Sohlhöhen (Epochen)
376 bearbeitet.
377
378 \textbf{IMPORTER\_SKIP\_SEDIMENT\_DENSITY}
379 \\Wenn \textit{true} gesetzt ist werden keine Dateien zur Sedimentdichte
380 bearbeitet.
381
382 \textbf{IMPORTER\_SKIP\_MORPHOLOGICAL\_WIDTH}
383 \\Wenn \textit{true} gesetzt ist wird keine morphologische Breite bearbeitet.
384
385 \textbf{IMPORTER\_SKIP\_FLOW\_VELOCITY}
386 \\Wenn \textit{true} gesetzt ist werden keine Fließgeschwindigkeiten bearbeitet.
387
388 \textbf{IMPORTER\_SKIP\_SEDIMENT\_YIELD}
389 \\Wenn \textit{true} gesetzt ist werden keine Sedimentfrachten bearbeitet.
390
391 \textbf{IMPORTER\_SKIP\_WATERLEVELS}
392 \\Wenn \textit{true} gesetzt ist werden keine Wasserspiegellagen für MINFO bearbeitet.
393
394 \textbf{IMPORTER\_SKIP\_WATERLEVEL\_DIFFERENCES}
395 \\Wenn \textit{true} gesetzt ist werden keine Wasserspiegellagendifferenzen für
396 MINFO bearbeitet.
397
398 \textbf{IMPORTER\_SKIP\_SQ\_RELATION}
399 \\Wenn \textit{true} gesetzt ist werden keine Daten für die Berechnungsart
400 SQ-Beziehung bearbeitet.
401
402
403
404 \subsection{Fehler und Warnungen}
405
406 \subsubsection{Fehler}
407
408 \textbf{error while parsing gew}
409 \\Die GEW-Datei ist fehlerhaft oder konnte nicht geöffnet werden.
410
411 \textbf{File 'XYZ' is broken!}
412 \\Die Datei XYZ ist inkonsistent und führt zu Fehlern.
413
414 \textbf{Error while parsing file for morph. width.}
415 \\Beim Lesen der morphologischen Breite trat ein Fehler auf.
416
417 \textbf{Error while storing flow velocity model.}
418 \\Beim Schreiben eines Fließgeschwindigkeitsmodells trat ein Fehler auf.
419
420 \textbf{Error while storing flow velocity measurement.}
421 \\Beim Schreiben einer Fließgeschwindigkeitsmessung trat ein Fehler auf.
422
423 \textbf{Error while storing sediment yield.}
424 \\Beim Schreiben einer Sedimentablagerung trat ein Fehler auf.
425
426 \textbf{Error while storing waterlevel diff.}
427 \\Beim Schreiben einer Wasserspiegeldifferenz trat ein Fehler auf.
428
429 \textbf{Error while storing sq relation.}
430 \\Beim Schreiben einer S(Q) Beziehung trat ein Fehler auf.
431
432 \textbf{Error reading PRF file.}
433 \\Beim Lesen einer PRF-Datei trat ein Fehler auf.
434
435 \textbf{Error closing PRF file.}
436 \\Beim Schließen einer PRF-Datei trat ein Fehler auf.
437
438 \textbf{HYK 1: not enough elements in line \#}
439 \\Eine Zeile in einer HYK-Datei hat nicht genügend Elemente.
440
441 \textbf{HYK 2: not enough elements in line \#}
442 \\Eine Zeile in einer HYK-Datei hat nicht genügend Elemente.
443
444 \textbf{HYK 5: not enough elements in line \#}
445 \\Eine Zeile in einer HYK-Datei hat nicht genügend Elemente.
446
447 \textbf{HYK 6: not enough elements in line \#}
448 \\Eine Zeile in einer HYK-Datei hat nicht genügend Elemente.
449
450 \textbf{HYK: parsing num zones, bottom or top height failed in line \#}
451 \\Die Anzahl der Zonen oder Daten über die Zonen sind nicht korrekt.
452
453 \textbf{HYK: HYK: number of flow zones mismatches in line \#}
454 \\Die Anzahl der Zonen oder Daten über die Zonen sind nicht korrekt.
455
456 \textbf{HYK: cannot parse number in line \#}
457 \\Eine Zahl wurde erwartet.
458
459 \textbf{HYK: Error reading file.}
460 \\Beim Lesen einer HYK-Datei trat ein Fehler auf.
461
462 \textbf{HYK: Error closing file.}
463 \\Beim Schließen einer HYK-Datei trat ein Fehler auf.
464
465 \subsubsection{Warnungen}
466 \textbf{annotation type file 'XYZ' is not readable.}
467 \\Die Datein XYZ kann nicht gelesen werden.
468
469 \textbf{cannot parse annotation types file.}
470 \\Während der Verarbeitung der Annotationsdatei ist Fehler aufgetreten.
471
472 \textbf{Cannot read directory.}
473 \\Verzeichnis konnte nicht gelesen werden.
474
475 \textbf{no official lines wst file found}
476 \\Keine Datei mit amtlichen Linien gefunden.
477
478 \textbf{cannot read fixations wst file directory}
479 \\Das Verzeichnis mit den Fixierungen kann nicht gelesen werden.
480
481 \textbf{cannot read extra longitudinal wst file directory}
482 \\Das Verzeichnis mit den zusätzlichen Längsschnitten kann nicht gelesen werden.
483
484 \textbf{cannot read gauges from 'XYZ'}
485 \\Die Pegelgültigkeiten können nicht gelesen werden.
486
487 \textbf{HYK file 'XYZ' seems to be a duplicate.}
488 \\Die HYK-Datei wurde unter anderem Namen aber gleichen Inhalts bereits
489 gefunden.
490
491 \textbf{PRF file 'XYZ' seems to be a duplicate.}
492 \\Die PRF-Datei wurde unter anderem Namen aber mit gleichem Inhalt bereits
493 gefunden.
494
495 \textbf{Skip invalid SedimentYield: time interval or unit null!}
496 \\Eine Sedimentablagerung ist ungültig und wurde ausgelassen.
497
498 \textbf{skip flow velocity model: No discharge zone specified.}
499 \\Da kein Abflussbereich angegeben wurde, wurde das Fließgeschwindigkeitsmodell ausgelassen.
500
501 \textbf{skip invalid waterlevel - no unit set!}
502 \\Ein einheitenloser Wasserstand wurde ausgelassen.
503
504 \textbf{Cannot parse time range.}
505 \\Das Zeitformat wurde nicht erkannt.
506
507 \textbf{skip invalid data line \#}
508 \\Ungültige Datenzeile wurde ausgelassen.
509
510 \textbf{Error while parsing sq relation row \#}
511 \\Eine Zeile in der S(Q)-Beziehung ist ungültig.
512
513 \textbf{GLT: no gauge found in line \#}
514 \\In der GLT-Datei wurde ein Pegel erwartet, aber nicht gefunden.
515
516 \textbf{GLT: line \# has not enough columns.}
517 \\Eine Zeile in der Pegelgültigkeitsdatei hat nicht genug Spalten.
518
519 \textbf{Error while parsing flow velocity values.}
520 \\Invalide Datenzeile in einer Datei mit einer Fliessgeschwindigkeitsmessung.
521
522 \textbf{skip invalid data line: \#}
523 \\Invalide Datenzeile in einer Datei mit einer Fliessgeschwindigkeitsmessung.
524
525 \textbf{skip invalid waterlevel line: \#}
526 \\Invalide Datenzeile in einer Datei mit Wasserstandsdifferenzen.
527
528 \textbf{Error while parsing value: \#}
529 \\Invalide Datenzeile in einer Datei mit Wasserstandsdifferenzen.
530
531 \textbf{Error while parsing station: \#}
532 \\Invalide Datenzeile in einer Datei mit Wasserstandsdifferenzen.
533
534 \textbf{skip invalid MainValue part: \#}
535 \\Invalide Datenzeile in einer Datei Fließgeschwindigkeitsmodellen.
536
537 \textbf{skip invalid gauge part: \#}
538 \\Invalide Datenzeile in einer Datei Fließgeschwindigkeitsmodellen.
539
540 \textbf{Error while parsing Q value: $<Q>$}
541 \\Invalide Datenzeile in einer Datei Fließgeschwindigkeitsmodellen.
542
543 \textbf{skip invalid data line: \#}
544 \\Invalide Datenzeile in einer Datei Fließgeschwindigkeitsmodellen.
545
546 \textbf{Error while parsing flow velocity values.}
547 \\Invalide Datenzeile in einer Datei Fließgeschwindigkeitsmodellen.
548
549 \textbf{Error while parsing number from data row: \#}
550 \\In der eingelesenen Zeile konnte keine Zahl gefunden werden.
551
552 \textbf{Unknown meta line: \#}
553 \\Invalide Datenzeile in einer Datei mit Sedimentdichten.
554
555 \textbf{Error while parsing numbers in: \#}
556 \\Invalide Datenzeile in einer Datei mit Sedimentdichten.
557
558 \textbf{skip invalid data line: \#}
559 \\Invalide Datenzeile in einer Datei mit Sedimentdichten.
560
561 \textbf{Error while parsing numbers in \#}
562 \\Invalide Datenzeile in einer Datei mit Sedimentdichten.
563
564 \textbf{STA file is empty}
565 \\Stammdatendatei ist leer oder hat zu wenige Zeilen.
566
567 \textbf{STA file has not enough lines}
568 \\Stammdatendatei ist leer oder hat zu wenige Zeilen.
569
570 \textbf{STA file is too short}
571 \\Stammdatendatei ist leer oder hat zu wenige Zeilen.
572
573 \textbf{First line in STA file is too short.}
574 \\Die erste Zeile der Stammdaten ist zu kurz.
575
576 \textbf{STA: second line is too short}
577 \\Die zweite Zeile ist zu kurz.
578
579 \textbf{STA: parsing of the datum of the gauge failed}
580 \\Das Datum in der Stammdatendatei konnte nicht gelesen werden.
581
582 \textbf{STA: 'XYZ' is not a valid long number.}
583 \\Die Pegelnummer ist invalide.
584
585 \textbf{STA: Not enough columns for aeo and datum}
586 \\AEO und Pegelnullpunkt können nicht ermittelt werden.
587
588 \textbf{STA: cannot parse aeo or datum.}
589 \\AEO oder Pegelnullpunkt sind invalide.
590
591 \textbf{STA: value not parseable in line \#}
592 \\Wert ist nicht als Zahl zu interpretieren.
593
594 \textbf{PRF: cannot open file $<FILE>$}
595 \\Die PRF kann nicht geöffnet werden.
596
597 \textbf{PRF: file is empty}\\
598 \textbf{PRF: First line does not look like a PRF data pattern.}\\
599 \textbf{PRF: premature EOF. Expected integer in line 2}\\
600 \textbf{PRF: Expected $<num>$ in line 2}\\
601 \textbf{PRF: invalid integer in line 2}\\
602 \textbf{PRF: premature EOF. Expected pattern for km extraction}\\
603 \textbf{PRF: line 4 does not look like a PRF km extraction pattern.}\\
604 \textbf{PRF: premature EOF. Expected skip row count.}\\
605 \textbf{PRF: line 5 is not an positive integer.}\\
606 \textbf{PRF: cannot extract km in line \#}
607 \\Das PRF-Format ist komplex. Bei oben genannten Fehlern sollten weitere
608 Information zur genaueren Analyse herangezogen werden.
609
610 \textbf{cannot access WST file $FILE$}
611 \\Die WST-Datei konnte nicht gefunden werden.
612
613 \textbf{Found an invalid row in the AT file.}
614 \\Eine Zeile in einer AT-Datei ist nicht korrekt.
615
616 \textbf{AT: invalid number $XYZ$}
617 \\Eine Zahl wurde erwartet aber nicht gefunden.
618
619 \textbf{Try to add Q range without waterlevel!}
620 \\Q-Bereich ohne Wasserstand gefunden.
621
622 \textbf{Error while parsing Q range: \#}
623 \\Invalider Q-Bereich
624
625 \textbf{skip invalid waterlevel line: \#}
626 \\Ungültige Wasserstandslinie
627
628 \textbf{Error while parsing number values: \#}
629 \\Ungültige Zahlenwerte.
630
631 \textbf{ANN: not enough columns in line \#}
632 \\Nicht genug Zeichenspalten in KM-Datei
633
634 \textbf{ANN: invalid number in line \#}
635 \\Ungültige Zahl.
636
637 \textbf{ANN: cannot parse 'Unterkante' in line \#}
638 \\Die Unterkante in einer KM-Datei konnte nicht gelesen werden.
639
640 \textbf{ANN: cannot parse 'Unterkante' or 'Oberkante' in line \#}
641 \\Unter- oder Oberkannte liegen in einem falschen Format vor.
642
643 \textbf{ANN: duplicated annotation 'XYZ' in line \#}
644 \\Ein Duplikat eines Streckenfavoriten wurde gefunden.
645
646 \textbf{ANN: 'XYZ' is not a directory.}
647 \\Unterverzeichnis konnte nicht geöffnet werden.
648
649 \textbf{ANN: cannot list directory 'XYZ'}
650 \\Unterverzeichnis konnte nicht durchsucht werden.
651
652 \textbf{BHP: Meta line did not match any known type: \#}
653 \\Unbekannter Typ.
654
655 \textbf{BHP: Error while parsing timeinterval!}
656 \\Ungültiges Zeitinterval.
657
658 \textbf{BHP: Error while parsing year!}
659 \\Ungültige Jahresangabe.
660
661 \textbf{BHP: Error while parsing sounding width!}
662 \\Unbekannte Peilungsbreite.
663
664 \textbf{BHP: Error while parsing range!}
665 \\Bereichsangabe fehlerhaft.
666
667 \textbf{MWP: Unknown meta line: \#}
668 \\Meta-Informationen ungültig.
669
670 \textbf{MWP: skip invalid data line: \#}
671 \\Ungültige Datenzeile wurde übersprungen.
672
673 \textbf{MWP: Error while parsing numbers in \#}
674 \\Falsche Zahlenformat.
675
676 \textbf{ANNCLASS: rule has no name}
677 \\Klassifizierungsregel für Streckenfavoriten hat keinen Namen.
678
679 \textbf{ANNCLASS: pattern has no 'pattern' attribute.}
680 \\Klassifizierungsmuster für Streckenfavoriten hat kein Muster.
681
682 \textbf{ANNCLASS: pattern has unknown type 'XYZ'}
683 \\Klassifizierungsmuster für Streckenfavoriten konnte keinem Typ zugeordnet werden.
684
685 \textbf{ANNCLASS: pattern 'XYZ' is invalid.}
686 \\Klassifizierungsmuster für Streckenfavoriten ist ungültig.
687
688 \textbf{BSP: Error while parsing data row.}
689 \\Ungültige Datenzeile.
690
691 \textbf{SYP: Unknown meta line: \#}
692 \\Ungültige Metadatenzeile.
693
694 \textbf{SYP: skip invalid data line \#}
695 \\Ungültige Datenzeile wurde übersprungen.
696
697 \textbf{SYP: Error while parsing numbers in \#}
698 \\Ungültige Zahlenformatierung.
699
700 \textbf{SYP: Unknown time interval string 'XYZ'}
701 \\Falsches Datumformat.
702
703 \textbf{SYP: Error while parsing years 'XYZ'}
704 \\Falsches Jahreszahlformat.
705
706 \textbf{SYP: Error while parsing ranges of 'XYZ'}
707 \\Bereichsangaben fehlerhaft.
708
709 \textbf{SYP: Unknown grain fraction 'XYZ'}
710 \\Unbekannte Kornfraktion.
711
712 \textbf{WST: invalid number.}
713 \\Ungültige Zahl.
714
715 \textbf{WST: km $km$ ($<Zeile>$) found more than once. $->$ ignored.}
716 \\Ein Kilometer ist doppelt in einer WST-Datei enthalten.
717
718 \textbf{HYK: zone coordinates swapped in line \#}
719 \\Fließzonenkordinaten wurden in umgekehrter Reihenfolge angeben.
720
721 \textbf{BHS: Skip invalid file 'XYZ'}
722 \\Die Inhalte der Datei sind ungültig.
723
724 \textbf{ISQ: Unable to store sq relation value.}
725 \\S(Q) Beziehung konnte nicht gespeichert werden.
726
727 \textbf{ISQ: Cannot determine sq relation without time interval.}
728 \\Einer S(Q)-Beziehung ist keine zeitliche Gültigkeit zugeordnet.
729
730 \textbf{IWD: skip invalid waterlevel difference - no unit set!}
731 \\Wasserstandsdifferenz hat keine Einheit.
732
733 \textbf{BHE: Skip file - invalid current elevation model.}
734 \\Höhenmodell ungültig.
735
736 \textbf{BHE: Skip file - invalid time range.}
737 \\Zeitbereich ungültig.
738
739 \textbf{BHE: Skip file - invalid km range.}
740 \\Kilometerbereich ungültig.
741
742
743 \subsection{Hinweise zum Betrieb}
744 Aufgrund des hohen Speicherverbrauchs des Importers wird empfohlen, der JVM
745 mindestens 8 GiB Hauptspeicher zuzuordnen. Dies kann beim Starten des Java
746 Prozesses mittels folgendem Parameter '-Xmx8192m' getan werden. Das
747 Shellskript zum Starten des Importers setzt diesen Wert standardmäßig.
748 Besonders speicherintensiv ist der Import der HYKs und der PRFs.
749 Hier ist es unter Umständen empfehlenswert, diese in zwei oder drei
750 Schritten zu importieren. Zuerst die sonstigen hydrologischen Daten importieren;
751 anschließend einen Import-Vorgang ausschließlich für HYKs starten; anschließend
752 einen Import-Vorgang für PRFs starten. Siehe Kapitel \ref{configuration} für
753 weitere Informationen zum Aktivieren/Deaktivieren einzelner Dateitypen beim
754 Import.
755
756
757 \subsection{Starten des Fachdaten Importers}
758 \label{start-hydr}
759 Der Fachdaten Importer wird mit Hilfe eines Shellskripts von einer Konsole
760 gestartet. Dazu führen folgenden Befehl aus:\\
761
762 \begin{lstlisting}
763 ./run_hydr_morph.sh
764 \end{lstlisting}
765
766 Nachdem der Prompt der Konsole zurückkehrt, ist der Import abgeschlossen oder es
767 ist ein Fehler aufgetreten. Weitere Informationen entnehmen Sie der Log-Datei.
768

http://dive4elements.wald.intevation.org