Datenquellen
DATAMIMIC unterstützt mehrere Datenquellentypen zum Lesen und Schreiben von Daten.
Datenquellen-Übersicht
| Quellentyp |
Lesen |
Schreiben |
Encoding-Konfiguration |
Trennzeichen-Konfiguration |
| Projektdateien |
✓ |
Via UI |
Automatisch erkannt |
Automatisch erkannt |
| Objektspeicher |
✓ |
✓ |
Konfigurierbar |
Konfigurierbar |
| Datenbanken |
✓ |
✓ |
N/A |
N/A |
| MongoDB |
✓ |
✓ |
N/A |
N/A |
| Kafka |
✓ |
✓ |
Konfigurierbar |
N/A |
Projektdateien
Dateien innerhalb deines Projekts (hochgeladen über UI):
| <generate name="customers" source="data/customers.ent.csv" target="mem"/>
|
- Upload: Beliebige Kodierung/Trennzeichen (automatisch erkannt)
- Download: Verwendet Projekteinstellungen (Kodierung + Trennzeichen)
- Unterstützte Typen:
.ent.csv, .wgt.csv, .optl.csv, .xml, .json
- Hinweis: Alle Spalten aus der Datei sind bereits im Kontext.
<key> nur zum Überschreiben/Hinzufügen.
Beliebiges Format hochladen
Du kannst CSV-Dateien mit beliebiger Kodierung oder Trennzeichen hochladen. Die Plattform erkennt und konvertiert sie automatisch.
Objektspeicher
Externe Dateien von S3, Azure Blob oder MinIO:
| <object-storage id="s3" />
<generate name="legacy"
source="s3"
bucket="imports"
sourceUri="data/legacy.csv"
encoding="windows-1252"
separator=","/>
|
- Encoding: Konfigurierbar über
encoding-Attribut
- Trennzeichen: Konfigurierbar über
separator-Attribut
- Anwendungsfall: Legacy-Systeme, gemeinsame Daten, große Dateien
Kurzüberblick (Lesen vs Schreiben)
| Szenario |
Attribut(e) |
Bedeutung |
| Lesen aus Objektspeicher |
source + sourceUri |
source wählt Client‑ID; sourceUri ist Objektpfad |
| Schreiben in Objektspeicher |
storageId + exportUri |
storageId wählt Client; exportUri ist nur Pfad/Prefix |
Objektspeicher-Attribute (Lesen)
| Attribut |
Beschreibung |
Pflicht |
source |
Object-Storage-Client-ID (<object-storage id="...">) |
Ja |
bucket / container |
Bucket (S3/MinIO) oder Container (Azure) |
Ja |
sourceUri |
Pfad/Objekt im Bucket |
Ja |
encoding |
Zeichencodierung |
Nein (Standard: UTF-8) |
separator |
CSV-Trennzeichen |
Nein (Standard: aus Runtime) |
Objektspeicher schreiben
Für Datei‑Exporter (CSV/JSON/XML/Template) wählst Du den Storage‑Client über storageId und den Ziel‑Pfad über
exportUri. exportUri ist nur Pfad/Prefix; Dateiname kommt aus name oder targetEntity, Endung aus dem Exporter.
| <object-storage id="s3" />
<generate name="orders_export"
target="CSV"
storageId="s3"
bucket="exports"
exportUri="daily/">
<key name="id" generator="IncrementGenerator"/>
</generate>
|
Datenbanken
SQL-Datenbanken (PostgreSQL, Oracle, MySQL, MSSQL):
| <database id="source" system="production_db" />
<generate name="customers"
source="source"
selector="SELECT * FROM customers">
</generate>
|
- Encoding: Wird vom Datenbanktreiber verwaltet
- Anwendungsfall: Live-Daten, transaktionale Systeme
Datenbank-Attribute
| Attribut |
Beschreibung |
Pflicht |
source |
Datenbank-Client-ID |
Ja |
selector |
SQL-Abfrage |
Ja (oder Tabellenname verwenden) |
type |
Zieltabelle für Iteration |
Nein |
MongoDB
Dokumentendatenbank:
| <mongodb id="mongo" system="mongodb" />
<generate name="orders"
source="mongo"
selector="find: 'orders', filter: {'status': 'active'}">
</generate>
|
MongoDB-Operationen
| Operation |
Selector-Format |
| Find |
find: 'collection', filter: {...} |
| Aggregate |
aggregate: 'collection', pipeline: [...] |
Kafka
Nachrichtenstreaming:
| <kafka-importer id="events" system="kafka" />
<generate name="events" source="events"/>
|
- Encoding: Konfigurierbar über Umgebungseinstellungen
- Anwendungsfall: Echtzeit-Daten, Event-Verarbeitung
Zukünftige Quellen
Geplante Unterstützung für:
- FTP/SFTP
- HTTP/REST APIs
- WebDAV
Datenquelle auswählen
| Szenario |
Empfohlene Quelle |
| Statische Referenzdaten |
Projektdateien |
| Große externe Datensätze |
Objektspeicher |
| Live-Transaktionsdaten |
Datenbank |
| Dokumentdaten |
MongoDB |
| Echtzeit-Events |
Kafka |
| Legacy-Systeme mit spezifischer Kodierung |
Objektspeicher |
Encoding-Priorität
Beim Lesen aus externen Quellen wird das Encoding in dieser Reihenfolge aufgelöst:
| Priorität |
Quelle |
Beispiel |
| 1 |
Element-Attribut |
encoding="windows-1252" |
| 2 |
Setup-Standardwerte |
<setup defaultEncoding="ISO-8859-1"> |
| 3 |
Runtime-Konfiguration (UI) |
Einstellungen → Runtime-Konfiguration |
| 4 |
Fallback |
UTF-8 |
Trennzeichen-Priorität
Für CSV-Quellen wird das Trennzeichen in dieser Reihenfolge aufgelöst:
| Priorität |
Quelle |
Beispiel |
| 1 |
Element-Attribut |
separator=";" |
| 2 |
Setup-Standardwerte |
<setup defaultSeparator=";"/> |
| 3 |
Runtime-Konfiguration (UI) |
Einstellungen → Runtime-Konfiguration |
| 4 |
Fallback |
Pipe (\|) |