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