Zum Hauptinhalt springen

Datenbankmodell

Dieses Dokument beschreibt, wo und in welcher Form der AI-Stack Daten speichert. Es gibt vier Repositories mit unterschiedlichen Rollen. Betriebsverfahren finden Sie unter Datenbankverwaltung.

Die meisten gehören nicht zum AI-Stack

PostgreSQL und Cassandra werden gemeinsam mit der PlantPulse-Plattform-Installation genutzt. Der AI-Stack betreibt keine eigene Datenbank. Daher überlappen sich „AI-Backup" und „Plattform-Backup" — ohne klare Abgrenzung entstehen Lücken, in denen beide Seiten ausfallen.

RepositoryBesitzerInhalt
PostgreSQL chAI (separate DB in Plattform-PG)Chat · Incidents · Konfiguration · MCP
Cassandra piAIFeature Store · Anomalieerkennung-Ausgaben
Cassandra ppPlattform (Lesezugriff nur)Rohe Sensoren · Alarme · OEE
Neo4jAIOntologie-Wissensgraph
QdrantAIDokument-Embedding-Vektoren

PostgreSQL ch — Chat und Betriebszustand

Separate Datenbank ch in der Plattform-PostgreSQL (jdbc:postgresql://<platform-host>:5432/ch).

GruppeTabellen
Chatchats · chat_messages · prompts · prompt_history
Benutzerusers · user_roles · employees · web_push_subscription
Incidentsincident · incident_event · assignees
Anomalieerkennung Betriebanomaly_mute · hourly_anomaly · asset_tag_profile
MCPmcp_server · mcp_tool_call_log · mcp_tool_pref
RAG-Integrationrag_asset_card · rag_asset_doc_sync · rag_sync_run
Konfigurationconfig · config_audit_log · metadata
Chat-Verlauf hat hier die einzige Quelle der Wahrheit

Vor der Umstellung im Juli 2026 gab es auch Chat-Verlauf in Cassandra. Jetzt ist chat_messages die Single Source of Truth. Suchen Sie nicht in Cassandra, wenn Sie alte Dokumentation lesen.


Cassandra pi — Feature Store

12 Tabellen, die der Zeitreihen-Insights-Service besitzt und erzeugt. Präfix ist tsi_.

GruppeTabellen
Featurestsi_tag_feature_hourly · tsi_tag_feature_daily · tsi_asset_feature_hourly · tsi_asset_feature_daily
Kontext · Profiletsi_asset_context_daily · tsi_asset_profile
Anomalien · Ausfälletsi_anomaly_embedding · tsi_failure_signature · tsi_precursor_alert
Pipelinetsi_pipeline_status · tsi_pipeline_history · tsi_backfill_status

Tabellen werden beim Service-Start idempotent erzeugt. Allerdings erstellt die App den Keyspace pi selbst nicht — das ist Sache des Installations-Skripts (provision-platform-db.sh).

Leere Features lassen die Analyse-Ansicht verschwinden

Die Analyse- und Prognose-Bildschirme der Verwaltungskonsole lesen alle aus diesen Tabellen. Wenn die Ergebnisse leer sind, schauen Sie zuerst die Pipeline, nicht das Modell → Pipeline Status · Run History in der Admin-Konsole (AI Admin-Konsole).

Old pp.ti_* existiert nicht mehr

Am 30. Juli 2026 wurde pp keyspace zu pi migriert und die alten Tabellen gelöscht. Die alte Bezeichnung gibt keine Treffer.


Cassandra pp — Plattform-Quelle (Lesezugriff nur)

Der AI-Stack liest nur die von der Plattform erfassten Daten. Er schreibt hier nicht.

TabelleVerwendung
tm_asset_data_based_second / _minute / _hourAnlage-Sensor-Zeitreihen
tm_tag_pointTag-Datenpunkte
tm_asset_alarmAlarme
tm_asset_oee_historyOEE
tm_asset_ram · tm_asset_ems_historyRAM · EMS
tm_monitor_platform_statusSystemressourcen (CPU · Speicher · Festplatte)

Partitionsschlüssel unterscheiden sich nach Auflösung

second : PRIMARY KEY ((asset_id, date, hour), timestamp)
minute : PRIMARY KEY ((asset_id, date), timestamp)
hour : PRIMARY KEY (asset_id, timestamp)
Langsame Abfragen? Zuerst die Auflösung prüfen

Sekunden-Auflösung teilt Partitionen nach Anlage · Datum · Uhrzeit. Über lange Zeiträume im Sekunden-Modus greifen Sie auf Tausende Partitionen zu. Verwenden Sie _hour für breite Zeiträume und _second nur für enge Fenster.

Das komplette Schema der Plattform finden Sie unter Plattform-Datenbankmodell.


Neo4j · Qdrant — Wissensgraph und Vektoren

RepositoryInhalt
Neo4jOntologie — Relationsgraph von Anlagen · Prozessen · Dokumenten
QdrantEmbedding-Vektoren von Dokument-Chunks

Die RAG-Engine (LightRAG) ist so konfiguriert, dass sie den Graph in Neo4j und Vektoren in Qdrant speichert (LIGHTRAG_GRAPH_STORAGE=Neo4JStorage, LIGHTRAG_VECTOR_STORAGE=QdrantVectorDBStorage).

Dokumente müssen neu hochgeladen werden zur Wiederherstellung

Diese beiden sind Ableitungen aus Originaldokumenten. Ohne Backup gibt es keine Wiederherstellung außer durch erneutes Hochladen der Originaldatei und Neuindexierung — die Archivierung der Originaldate ist praktisch das Backup.

Ontologie-Konzepte finden Sie unter Ontologie verstehen.


Backup-Umfang überblicken

RepositoryWer sichertAuswirkung ohne Backup
PostgreSQL chAI-Seite muss selbst sichernChat · Incidents · Konfiguration gehen verloren
Cassandra piAI-Seite muss selbst sichernFeatures verschwinden, Analyse-Bildschirme werden leer (Neuberechnung möglich, aber zeitaufwändig)
Cassandra ppPlattform-Backup
Neo4j · QdrantAIDokument-Index geht verloren (kann aus Original rekonstruiert werden)

Verfahren finden Sie unter Datenbankverwaltung.


Verwandte Dokumentation