Export-Ziele
Man muss einem automatisch ablaufendem Job ein Ziel geben, in das er seine abgefragten Daten ablegen kann. Derzeit gibt es zwei mögliche Zielarten.
WARNING
Derzeit kann man einmal angelegte Ziele nicht mehr löschen.
Jedes Exportziel hat eine maximale "Vertraulichkeit" konfiguriert, die von den exportierten Daten nicht überschritten werden darf. Es dürfen also z.B. keine Daten mit Stufe "Vertraulich" in ein Exportziel mit Stufe "Intern" exportiert werden.
Benutzer werden davon abgehalten, Export-Jobs zu erstellen, welche sensiblere Daten exportieren würden als vom Exportziel erlaubt (Die GUI gibt einen Fehler aus).
Konfigurierbare Parameter
Exportziele definieren sich durch die folgenden Parameter (alle sind Pflichtfelder):
- Typ: Staging-Datenbank schreibt die exportierten Werte in eine MSSQL-Datenbank, Dateibasiert verpackt in ein Zip-Archiv und legt sie in einem konfigurierten Verzeichnis ab. Je nach Typ werden andere Exportziel-Parameter verwendet.
- Name: Der eindeutige Bezeichner des Exportziels. Dieser Name taucht überall auf, wo das Exportziel referenziert wird.
- Vertraulichkeit: Das obere Limit für die Vertraulichkeit der Daten, die in das Exportziel geschrieben werden dürfen.
- Datenbank: Die Export-Datenbank, in die geschreiben werden soll. Sie haben zur Zeit die Auswahl zwischen der regulären MSSQL
ExportDBDatenbank sowie der PostgreSQL-basiertenTimescale-Datenbank.TIP
Streng vertrauliche Daten (Vertraulichkeit SV) können nicht in ein Exportziel geschrieben werden. Nutzen Sie dafür den direkten Export in der Preview.
Nur für dateibasierte Exportziele
- Dateipfad: Das Verzeichnis, in dem die gezippten CSV-Dateien abgelegt werden sollen. Muss mit
/var/spool/dds/beginnen. - CSV-Export-Optionen: Die generierten CSV-Dateien werden diesen Parametern entsprechend formatiert. Gleiche GUI wie in der Daten-Preview.
CSV-Export-Optionen
Diese Optionen beeinflussen das Format des resultierenden CSVs.
- Dezimaltrennzeichen: Welches Zeichen zum Trennen von Vorkomma- und Nachkommastellen benutzt werden soll.
- Trennzeichen: Welches Zeichen die einzelnen Spalten abtrennt. Darf nicht mit Dezimaltrennzeichen übereinstimmen, und sollte möglichst selten in den Werten oder Spaltennamen vorkommen. Beispiele: ; (Semikolon), — (Em-Dash).
- Feldbegrenzer-Zeichen:
- Escape-Zeichen: Wird benutzt, um Sonderzeichen (wie etwa Trennzeichen und Feldbegrenzerzeichen), welche im Text vorkommen, zu markieren, damit sie vom CSV-Parser nicht als diese Zeichen interpretiert werden. Üblicherweise \ (Backslash).
- Datum/Uhrzeit-Format: Wie die Zeitstempel formatiert werden sollen. dd = Tag, MM = Monat, yyyy = Jahr, HH = Stunden, mm = Minuten, ss = Sekunden.
- Zeitzone: In welcher Zeitzone die Zeitstempel sein sollen.
- Varietäten-Anordnung: Wie die Werte der Varietäten im resultierenden CSV angeordnet werden. Dafür gibt es im Moment 2 Optionen: Horizontal und vertikal.
- Horizontal: Das CSV ist nach Zeitstempel geordnet. 'Horizontal' daher, weil die Varietäten nebeneinander als Spalten im Header vorkommen, und ihre Werte pro Zeitstempel eingetragen werden. Wenn es für einen Zeitstempel für eine Varietät keinen Wert gibt, bleibt die Zelle leer.

- Vertikal: Jede Zeile ist genau einer der Zeitwerte für eine der Varietäten. Der Name der Varietät ist daher eine eigene Spalte, genau wie die benutzte Einheit. Die Varietäten werden untereinander ins CSV geschrieben, daher 'vertikal'.

- Horizontal: Das CSV ist nach Zeitstempel geordnet. 'Horizontal' daher, weil die Varietäten nebeneinander als Spalten im Header vorkommen, und ihre Werte pro Zeitstempel eingetragen werden. Wenn es für einen Zeitstempel für eine Varietät keinen Wert gibt, bleibt die Zelle leer.
Nur für Staging-DB Exportziele
- Schema-Name: Schema-Name, unter dem die Tabellen angelegt werden, in die die Daten exportiert werden. Muss ein gültiger Bezeichner für ein MSSQL-Schema sein und nicht länger als 40 Zeichen.
MSSQL Datenbank "Staging"
In einer zentral konfigurierten EXPORTDB Zieldatenbank können mehrere SQL Schemata angelegt werden, die hier mit der jeweiligen Vertraulichkeit (maximal "Vertraulich") konfiguriert werden.
Sie müssen in der Export-Datenbank das für das Exportziel konfigurierte Schema bereits angelegt haben, sowie dem Export-Benutzer in der Datenbank Schreibberechtigungen darauf erteilt haben, damit ein Export stattfinden kann.
Alternative Export-Datenbank Timescale
Seit Release 4.1.0 unterstützt das DDS eine alternative Export-Datenbank, welche PSQL mit dem Timescale-Plugin benutzt statt MSSQL. Diese zeichnet sich dadurch aus, dass sie besonders bei sehr dichten Datenwertmengen sehr performant ist.
Sie können zwischen Export-DB (MSSQL) und Timescale im Edit-Dialog von Exportzielen wählen.
Erklärung des Exportdatenbank-Schemas
Die Daten, sowie einige Metadaten, werden in der Exportdatenbank in definierte Tabellen und Views geschrieben. Diese liegen allesamt unter dem definierten Schema-Namen.
Erläuterungen zu den Annotationen und anderen Spalten, die spezifisch zur Quelldatenbank sind, können in der Exportspalten-Beschreibung festgehalten werden.
<schema_name>.data- info_variant_id: Interne Datenbank-ID der Varietät
- timestampts: Zeitstempel des Datenwerts
- numbervalue: Falls vorhanden, der numerische Datenwert
- message: Falls vorhanden, der textuelle Datenwert bzw. Meldung
- annotation[1...4]: Werte der zugewiesenen Annotationen in der Datenquelle.
<schema_name>.info_datapoint- info_exportjob_id: Interne Datenbank-ID des Exportjobs
- ddsdatasource: Name der zugehörigen Datenbank
- ddsdatapoint: Primärattribut des zugehörigen Datenpunkts (eindeutig)
- metadata: Zugehörige Metametadaten des Datenpunkts
<schema_name>.info_variant- ddsvariant: Primärattribut der Datenvarietät (eindeutig)
- metadata: Metametadaten der Datenvarietät. Unter dem Schlüssel
VariantDescriptionfinden Sie etwaige Varietätenbezeichnungen .
<schema_name>.info_exportjobinstanz- dds_job_id: Interne Datenbank-ID des Exportjobs
- dds_instance: Interne Datenbank-ID der Jobinstanz/Jobdurchlauf
- user_name: Name des Benutzers, der die Jobinstanz eingeleitet hat (Ersteller des Jobs, wenn automatisiert)
- jobstarttime: UTC-Zeitstempel, wann die Jobinstanz gestartet ist
- jobenddtime: UTC-Zeitstempel, wann die Jobinstanz fertig war (kann leer sein, wenn der Job abgebrochen wurde)
- jobname: Name des Exportjobs
- periodhint: Gibt das Exportintervall des Jobs an.
- templatename: Name der für den Exportjob benutzen Vorlage.
- fromts: UTC-Zeitstempel, wo die exportierten Datenwerte anfangen bzw. Start des Exportzeitraums
- tots: UTC-Zeitstempel für das Ende des Exportzeitraums
Unter dem View <schema_name>.datawithmetadata werden alle diese Metadaten für jeden Datenwert zusammengefasst, wobei jede Spalte den Tabellennamen noch mitenthält, also z.B. exportjobinstanz_fromts für die Spalte fromts im Table <schema_name>.exportjobinstanz.
Kombinierter Export von numerischen Werten und Meldungen
Manche Datenquellen unterstützen pro Zeitstempel sowohl reguläre numerische Datenwerte als auch Meldungen.
Wenn Sie diese Datenquellen exportieren, wird im CSV pro Varietät jeweils eine Spalte erstellt für den numerischen und den Meldungswert.
In der Staging-DB werden in diesem Fall einfach numbervalue und message simultan eingefüllt.
Archivdateien in Exportverzeichnis
DDS erstellt CSV- & Metadaten-Dateien und stellt sie komprimiert zum Download unter einer randomisierten (UUID) URL bereit. In der finalen Job-E-Mail werden diese Links mit angegeben. Zudem wird der Downloadlink im Export-Popup angezeigt, falls der Export AdHoc durchgeführt wurde.
Technisch ist dies Volume-basiert.
Ändern der Vertraulichkeit
Die Vertraulichkeitsstufe eines Exportziels kann auch im Nachhinein noch angepasst werden, das kann aber Folgen auf die Ausführung von Jobs haben, die dieses Exportziel ansteuern.
Insbesondere wenn Sie die maximale Vertraulichkeitsstufe eines Exportzieles verringern (SV -> V -> I -> O), können Jobs, deren Vertraulichkeitsstufe darüber hinausgeht, ihre Exporte nicht mehr durchführen. Es ist also empfehlenswert, diese Jobs danach anzupassen.