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.
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.
| Repository | Besitzer | Inhalt |
|---|---|---|
PostgreSQL ch | AI (separate DB in Plattform-PG) | Chat · Incidents · Konfiguration · MCP |
Cassandra pi | AI | Feature Store · Anomalieerkennung-Ausgaben |
Cassandra pp | Plattform (Lesezugriff nur) | Rohe Sensoren · Alarme · OEE |
| Neo4j | AI | Ontologie-Wissensgraph |
| Qdrant | AI | Dokument-Embedding-Vektoren |
PostgreSQL ch — Chat und Betriebszustand
Separate Datenbank ch in der Plattform-PostgreSQL
(jdbc:postgresql://<platform-host>:5432/ch).
| Gruppe | Tabellen |
|---|---|
| Chat | chats · chat_messages · prompts · prompt_history |
| Benutzer | users · user_roles · employees · web_push_subscription |
| Incidents | incident · incident_event · assignees |
| Anomalieerkennung Betrieb | anomaly_mute · hourly_anomaly · asset_tag_profile |
| MCP | mcp_server · mcp_tool_call_log · mcp_tool_pref |
| RAG-Integration | rag_asset_card · rag_asset_doc_sync · rag_sync_run |
| Konfiguration | config · config_audit_log · metadata |
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_.
| Gruppe | Tabellen |
|---|---|
| Features | tsi_tag_feature_hourly · tsi_tag_feature_daily · tsi_asset_feature_hourly · tsi_asset_feature_daily |
| Kontext · Profile | tsi_asset_context_daily · tsi_asset_profile |
| Anomalien · Ausfälle | tsi_anomaly_embedding · tsi_failure_signature · tsi_precursor_alert |
| Pipeline | tsi_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).
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).
pp.ti_* existiert nicht mehrAm 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.
| Tabelle | Verwendung |
|---|---|
tm_asset_data_based_second / _minute / _hour | Anlage-Sensor-Zeitreihen |
tm_tag_point | Tag-Datenpunkte |
tm_asset_alarm | Alarme |
tm_asset_oee_history | OEE |
tm_asset_ram · tm_asset_ems_history | RAM · EMS |
tm_monitor_platform_status | Systemressourcen (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)
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
| Repository | Inhalt |
|---|---|
| Neo4j | Ontologie — Relationsgraph von Anlagen · Prozessen · Dokumenten |
| Qdrant | Embedding-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).
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
| Repository | Wer sichert | Auswirkung ohne Backup |
|---|---|---|
PostgreSQL ch | AI-Seite muss selbst sichern | Chat · Incidents · Konfiguration gehen verloren |
Cassandra pi | AI-Seite muss selbst sichern | Features verschwinden, Analyse-Bildschirme werden leer (Neuberechnung möglich, aber zeitaufwändig) |
Cassandra pp | Plattform-Backup | — |
| Neo4j · Qdrant | AI | Dokument-Index geht verloren (kann aus Original rekonstruiert werden) |
Verfahren finden Sie unter Datenbankverwaltung.
Verwandte Dokumentation
- Datenbankverwaltung — Zugang · Inspektion · Betrieb
- AI Admin-Konsole — Pipeline-Status überprüfen
- Service-Port-Übersicht
- Plattform-Datenbankmodell