Runtime-Konfiguration¶
Mit der Runtime-Konfiguration steuerst du das Verhalten der Generierung zur Laufzeit. Du kannst Logging, Paging, Snapshot-Semantik und Tuning für Integrationen wie Kafka, Redis und Mongo an deine Workload anpassen.
Zugriff¶
- Projekt → Einstellungen → Runtime Configuration
Funktionsweise¶
Die Runtime-Configuration-Oberfläche ist capability-gesteuert. Abschnitte und Felder werden vom Server bereitgestellt, damit die UI immer zu den tatsächlich verfügbaren Backend-Funktionen passt.
Note
Änderungen werden nach kurzer Verzögerung automatisch gespeichert. Es werden nur geänderte Felder geschrieben; das Leeren eines Wertes entfernt ihn aus der Konfiguration.
Bereiche¶
Encoding & Delimiter¶
Konfiguriert Standard-Encoding und Standard-Trennzeichen für Dateidownloads und externe Datenquellen.
- Default Encoding: Zeichenkodierung für Downloads und externe Quellen. Standard:
UTF-8 - Default Separator: CSV-Trennzeichen für Downloads und externe Quellen. Standard:
;
Unterstützte Encodings¶
| Encoding | Beschreibung |
|---|---|
UTF-8 |
Unicode (Standard, empfohlen) |
UTF-16 |
Unicode 16-Bit |
ISO-8859-1 |
Latin-1 Westeuropa |
windows-1252 |
Windows Westeuropa |
ASCII |
7-Bit-ASCII |
Unterstützte Trennzeichen¶
| Trennzeichen | Zeichen | Typischer Einsatz |
|---|---|---|
| Semikolon | ; |
Standard, europäische CSV-Konvention |
| Pipe | \| |
Empfohlen für Data Interchange |
| Komma | , |
Standard-CSV, problematisch bei Kommas im Inhalt |
| Tab | \t |
Tab-separierte Werte |
Upload-Verhalten
Beim Upload von Dateien erkennt die Plattform Encoding und Trennzeichen automatisch. Diese Einstellungen wirken sich nur auf Downloads und externe Datenquellen aus.
Logging & Metrics¶
- Log Level (
INFO,DEBUG,WARNING,ERROR,CRITICAL) - Log Source Metrics (
CONTROL,PAGE,SUMMARY,LEASE) - Log Export Metrics (Exporter-/Target-Durchsatz)
Tip
Nutze DEBUG nur vorübergehend zur Analyse. Für den Normalbetrieb ist INFO meist die richtige Wahl.
Preview & Exporter¶
- Preview Record Limit (Zeilen)
- Disable Preview Exporter (deaktiviert UI-Preview-Daten)
Paging & Snapshot¶
- Page Mode (
bytes,rows,auto) - Target Bytes (MB) / Target Rows
- Snapshot Mode (
auto,rr,scn,snapshot,copy) - Statement Timeout (ms)
- Require Index
Kafka¶
- Producer- und Consumer-Tuning: Batch-Größe, Flush-Intervalle, maximale In-Flight-Requests, Poll-Timeout, Retries
Mongo¶
- Allow Aggregate Paging (erweitert)
- Heavy Advance Factor
Memstore & Flow¶
- Batch Size
- Cyclic Max Records
- Cleanup on Exit
- Parallel Fetch
- Cyclic Cache Max (MB)
Redis & Leases¶
- Disable Redis
- Socket-/Connect-Timeouts, Health-Check-Intervall
- Max Connections
- Lease Cleanup on Exit, Retention (Sekunden)
- Cleanup on Exit für Log-/Preview-/Testresult-Keyspaces
Planning & Fallback (RDBMS)¶
- Allow Unverified User Order
- Fallback Mode (
temp_rownum,cursor_only,pg_ctid) - Allow CTID Fallback (Postgres)
Platform (Client Healthcheck)¶
- Healthcheck on Registration
- Timeout (ms)
Tipps¶
- Für speichersensitive Workloads ist
Page Mode = bytesmeist die sicherste Wahl. - Für große RDBMS-Exporte ohne stabile Sortierung ist
cursor_onlyoft der konservativste Fallback.
Referenz¶
Unterstützte Runtime-Keys (Kurzüberblick)¶
| Key | Typ | Default | Beschreibung |
|---|---|---|---|
default_encoding |
str | UTF-8 |
Standard-Encoding für Downloads und externe Quellen |
default_separator |
str | ; |
Standard-CSV-Trennzeichen für Downloads und externe Quellen |
ds_log_source_metrics |
bool | false | Quellmetriken CONTROL/PAGE/SUMMARY/LEASE loggen |
ds_log_export_metrics |
bool | false | Exporter-/Target-Durchsatz loggen |
preview_record_limit |
int | 20 | Anzahl der Preview-Samples auf Root-Ebene |
disable_preview_exporter |
bool | false | UI-Preview-Exporter deaktivieren |
disable_redis |
bool | false | Redis-gestützte Handler/Leases deaktivieren |
memstore_batch_size |
int | 1000 | Flush-Schwelle für Memstore-Exporter |
memstore_cyclic_max_records |
int | 2000000 | Guardrail für zyklische Memstore-Fetches |
memstore_cleanup_on_exit |
bool | true | Entfernt Task-Memstore-Keys beim Exit |
kafka_consumer_poll_timeout_ms |
int | — | Poll-Timeout für Kafka-Consumer |
kafka_consumer_max_retries |
int | 3 | Maximale Anzahl leerer Poll-Retries |
kafka_exporter_flush_batch |
int | 100 | Puffergöße für Kafka-Exporter-Flush |
kafka_max_messages_per_sec |
float | — | Producer-Throttling (Messages/Sekunde) |
kafka_throttle_burst |
int | — | Burst-Kapazität für Throttling |
kafka_producer_flush_every |
int | — | Flush nach N Sends |
kafka_producer_flush_interval_ms |
int | — | Periodisches Flush-Intervall |
kafka_max_inflight_futures |
int | 1000 | Maximale Anzahl paralleler Producer-Futures |
kafka_future_get_timeout_ms |
int | 60000 | Timeout für future.get |
ds_page_mode |
str (bytes\|rows\|auto) |
bytes | Einheit für Paging |
ds_target_bytes_mb |
float | 128.0 | Byte-Budget pro Seite |
ds_target_rows |
int | 20000 | Zeilen pro Seite |
ds_snapshot_mode |
str (auto\|rr\|scn\|snapshot\|copy) |
auto | Snapshot-/Transaktionssemantik |
ds_statement_timeout_ms |
int | 600000 | Statement-Timeout innerhalb von Snapshot-Transaktionen |
ds_require_index |
bool | false | Fail-fast bei fehlendem Index auf Order-Key |
ds_mongo_allow_aggregate_paging |
bool | false | Source-level Paging für Aggregates erlauben |
ds_mongo_heavy_advance_factor |
int | 2 | Heuristik für Token-Range-/Advance-Entscheidungen |
Erweiterte Runtime-Keys¶
Diese Keys sind funktional, werden aber typischerweise eher von Engineers als von Operateuren angepasst.
- Redis-Client-Tuning
redis_socket_timeout_ms(int, Default 5000)redis_connect_timeout_ms(int, Default 3000)redis_health_check_interval_s(int, Default 0)redis_max_connections(int|null)- Lease-/Cleanup-Steuerung
ds_lease_cleanup_on_exit(bool, Default false)ds_lease_retention_seconds(int, Default 604800)redis_cleanup_log_on_exit(bool, Default false)redis_cleanup_preview_on_exit(bool, Default false)redis_cleanup_testresult_on_exit(bool, Default false)- Manifest-Cache
ds_manifest_cache_enable(bool, Default false)ds_manifest_cache_max_entries(int, Default 256)ds_manifest_cache_ttl_minutes(int, Default 60)- RDBMS Ordering / Fallback
ds_allow_unverified_user_order(bool, Default true)ds_fallback_mode(str:temp_rownum|cursor_only|pg_ctid, Defaulttemp_rownum)ds_pg_allow_ctid_fallback(bool, Default false)- Unload-Schwellen
ds_unload_auto_row_threshold(int, Default 50000000)ds_unload_auto_size_gb(float, Default 50.0)- Mongo / Fastops
fastops_mongo_sample_every(int, Default 8)fastops_mongo_use_server_stats(bool, Default true)- Rust / Fast Generators
rust_fast_generators(bool, Default true)rust_fast_buffer_size(int, Default 8192)- Memstore / Datenfluss
memstore_parallel_fetch(bool, Default false)ds_cyclic_cache_max_mb(float, Default 100.0)
Client Healthcheck (Preflight)¶
Prüft Konnektivität und Authentifizierung für registrierte Clients direkt bei der Registrierung. Standard ist strikt fail-fast.
client_healthcheck_on_registration(bool, Defaulttrue): Führt einen kurzen Healthcheck für jeden registrierten Client mit denselben Credentials aus, die auch im Run verwendet werden.client_healthcheck_timeout_ms(int, Default3000): Ziel-Timeout für einzelne Probes, sofern unterstützt.
Wann du diese Einstellungen nutzen solltest¶
- Logging
- Erhöhe
log_levelvorübergehend aufDEBUG, wenn du Fehler analysierst; für den Normalbetrieb istINFOmeist passend. - Aktiviere
ds_log_source_metrics/ds_log_export_metrics, wenn du Durchsatz oder Latenz untersuchen willst. - Preview & Exporter
- Senke
preview_record_limitbei sehr großen Datenmengen; deaktiviere den Preview-Exporter, um Batch-Läufe schlanker zu halten. - Paging & Snapshot
ds_page_mode:bytesbegrenzt Speicherverbrauch,rowsliefert feste Seitengrößen,autoist ein guter Standardfall.- Passe
ds_target_bytes_mboderds_target_rowsan Datensatzgröße und Downstream-Limits an. ds_snapshot_mode: nutze transaktionale Modi wierroderscn, wenn Konsistenz wichtig ist.- Kafka
- Nutze
kafka_max_messages_per_sec/kafka_throttle_burstzur Drosselung; passe Flush-Intervalle und Batch-Größen an Broker-Latenz an. - Redis & Leases
- Setze
disable_redisnur, wenn wirklich kein Redis vorhanden ist; ansonsten erhöht Redis Robustheit und Beobachtbarkeit. - Planning & Fallback (RDBMS)
- Halte
ds_require_indexin strikten Umgebungen aktiv; nutzecursor_only, wenn Indizes fehlen.
Wenn du detailliertere Empfehlungen brauchst, nenne Quelle/Ziel, Datenmengen und Latenzgrenzen. Dann lassen sich konkrete Werte ableiten.