-
Notifications
You must be signed in to change notification settings - Fork 1
architecture_ecosystem
Stand: 17. November 2025
Zweck: Zentrale Übersicht über alle ThemisDB-Komponenten, APIs, Tools und SDKs
Das ThemisDB-Ökosystem besteht aus mehreren Komponenten:
- Core Database - Die Hauptdatenbank (themis_server)
- Client SDKs - Programmatische Zugriffsbibliotheken
- Admin Tools - Desktop-Anwendungen für Verwaltung und Monitoring
- Adapters - Daten-Ingestion und Integration
- APIs - HTTP REST Endpoints
Verzeichnis: src/server/
Binary: themis_server / themis_server.exe
Port: 8765 (Standard)
- Multi-Model Database (Relational, Graph, Vector, Time-Series)
- MVCC Transactions mit Snapshot Isolation
- HNSW Vector Search mit Persistenz
- AQL Query Language
- Prometheus Metrics Export
- Change Data Capture (CDC)
- deployment.md - Installation und Deployment
- operations_runbook.md - Operations-Guide
- observability/prometheus_metrics.md - Monitoring
Verzeichnis: clients/python/
Paket: themis-db (PyPI - geplant)
Status: ✅ Experimentell/MVP
Features:
- Topologie-Discovery (Multi-Node Support)
- CRUD Operations
- Query Execution (AQL)
- Vector Search
- Batch Operations
- Cursor Pagination
Installation:
cd clients/python
pip install -e .Beispiel:
from themis import ThemisClient
client = ThemisClient(["http://localhost:8765"], namespace="default")
print(client.health())
# Entity CRUD
client.put_entity("users:alice", {"name": "Alice", "age": 30})
entity = client.get_entity("users:alice")
# Query
results = client.query("FOR u IN users FILTER u.age > 25 RETURN u")
# Vector Search
results = client.vector_search([0.1, 0.2, ...], k=10)Dokumentation:
-
clients/python/README.md- Quickstart - docs/clients/python_sdk_quickstart.md - Vollständiger Guide (geplant)
Verzeichnis: clients/javascript/
Paket: @themisdb/client (npm - geplant)
Status: ⏳ In Entwicklung
Features (geplant):
- TypeScript-Typen
- Query Execution
- Vector Search
- Batch Operations
- ESLint/TSC Setup
Installation (geplant):
npm install @themisdb/clientDokumentation:
clients/javascript/README.md- docs/clients/javascript_sdk_quickstart.md - Vollständiger Guide (geplant)
Verzeichnis: clients/rust/
Crate: themis-client (crates.io - geplant)
Status: ⏳ Alpha
Features:
- Topologie-Cache
- CRUD Operations
- Query & Vector Search
- Cargo Library Configuration
Installation (geplant):
[dependencies]
themis-client = "0.1.0"Dokumentation:
- docs/clients/rust_sdk_quickstart.md - Vollständiger Guide
- Java SDK - Geplant für Enterprise-Integration
- C++ SDK - Für High-Performance Anwendungen
- Go SDK - Für Cloud-Native Deployments
Verzeichnis: tools/
Plattform: Windows (.NET 8)
Status: ✅ MVP AuditLogViewer abgeschlossen
Features:
- Anzeige verschlüsselter Audit-Logs
- Zeitbereichsfilter, Benutzerfilter, Aktionsfilter
- Paginierung (100 Einträge pro Seite)
- CSV-Export
- Moderne WPF-UI mit DataGrid
Architektur:
- MVVM-Pattern (CommunityToolkit.Mvvm)
- Dependency Injection
- Async/Await für API-Calls
Voraussetzungen:
- .NET 8 SDK
- Zugriff auf themis_server API (
/api/audit)
Installation:
cd tools
dotnet restore
dotnet build
cd Themis.AuditLogViewer
dotnet runDokumentation:
- tools/README.md - Vollständiger Guide
- tools/STATUS.md - Entwicklungsstand
| Tool | Status | Beschreibung |
|---|---|---|
| Themis.SAGAVerifier | ⏳ Geplant | Manipulationsschutz-Verifikation |
| Themis.PIIManager | ⏳ Geplant | PII-Detection und Redaction Management |
| Themis.KeyRotationDashboard | ⏳ Geplant | Encryption Key Management |
| Themis.RetentionManager | ⏳ Geplant | Retention Policy Management |
| Themis.ClassificationDashboard | ⏳ Geplant | Data Classification Viewer |
| Themis.ComplianceReports | ⏳ Geplant | DSGVO/eIDAS Compliance Reports |
Shared Library:
- Themis.AdminTools.Shared - HTTP-Client, DTOs, Utilities
Verzeichnis: adapters/covina_fastapi_ingestion/
Typ: Python FastAPI Application
Port: 8001 (Standard)
Status: ✅ Produktiv
Features:
- File-Upload (
POST /ingest/file) - Text/PDF/DOCX → THEMIS - JSON-Direktimport (
POST /ingest/json) - Optional: Embedding-Erzeugung (sentence-transformers)
- Minimal Dependencies (ohne UDS3-Framework)
Use Cases:
- Text-Dokumente ingestion
- Content/Chunks/Edges automatisch erzeugen
- Preprocessing für Vector Search
Installation:
cd adapters\covina_fastapi_ingestion
python -m venv .venv
.\.venv\Scripts\Activate.ps1
pip install -r requirements.txt
$env:THEMIS_URL = "http://127.0.0.1:8765"
uvicorn app:app --host 127.0.0.1 --port 8001 --reloadBeispiel:
# Textdatei ingestieren
Invoke-WebRequest -Uri http://127.0.0.1:8001/ingest/file `
-Method POST -InFile .\document.txt -ContentType "text/plain"Dokumentation:
- Kafka Adapter - Stream-Processing Integration
- S3 Adapter - Cloud Storage Ingestion
- Database Sync Adapter - PostgreSQL/MySQL CDC
Endpoints:
-
GET /entities/{key}- Entity abrufen -
PUT /entities/{key}- Entity erstellen/aktualisieren -
DELETE /entities/{key}- Entity löschen -
POST /entities/batch- Batch-Operationen
Dokumentation: apis/rest_api.md - Geplant
Endpoints:
-
POST /query- AQL Query ausführen -
POST /query/explain- Query-Plan anzeigen
Beispiel:
POST /query
{
"query": "FOR u IN users FILTER u.age > 25 RETURN u",
"bind_vars": {}
}Dokumentation:
Endpoints:
-
POST /vector/search- k-NN Suche -
POST /vector/batch_insert- Batch-Insert -
DELETE /vector/by-filter- Löschen nach Filter -
POST /vector/index/save- Index speichern -
POST /vector/index/load- Index laden -
GET /vector/index/config- Konfiguration abrufen -
PUT /vector/index/config- Konfiguration ändern
Dokumentation: vector_ops.md
Endpoints:
-
POST /ts/put- DataPoint hinzufügen -
POST /ts/query- Zeitreihen abfragen -
POST /ts/aggregate- Aggregationen berechnen -
GET /ts/config- Konfiguration abrufen
Dokumentation: time_series.md
Endpoints:
-
POST /admin/backup- Backup erstellen -
POST /admin/restore- Backup wiederherstellen -
GET /api/audit- Audit-Logs abrufen -
GET /api/audit/export/csv- Audit-Logs als CSV
Dokumentation:
- deployment.md
- tools/README.md - Audit API
Endpoints:
-
GET /metrics- Prometheus Metrics -
GET /health- Health Check -
GET /stats- System-Statistiken -
GET /config- Server-Konfiguration
Dokumentation: observability/prometheus_metrics.md
debug_graph_keys.cpp - Graph Key Debugging Tool
- Verzeichnis:
tools/ - Kompilieren: Manuell mit g++/clang++
- Verwendung: Debugging von Graph-Index-Keys
sign_pii_engine.py - PII Engine Signatur Tool
- Verzeichnis:
tools/ - Python-Script für PKI-Signaturen
- Verwendung: PII Detection Engine signieren
publish_wiki.py - Wiki Publishing Tool
- Verzeichnis:
tools/ - Automatisiertes Wiki-Publishing
- GitHub Wiki Integration
Datei: config/config.json
Beispiel:
{
"server": {
"host": "0.0.0.0",
"port": 8765
},
"storage": {
"data_path": "./data/themis_server",
"block_cache_size_mb": 2048
},
"vector_index": {
"save_path": "./data/vector_index",
"auto_save": true
},
"features": {
"timeseries": true,
"cdc": true
}
}Dokumentation: deployment.md
Unit Tests:
- Verzeichnis:
tests/ - Framework: Google Test
- Ausführen:
ctestoderthemis_tests.exe
Integration Tests:
- Python-basierte Tests
- Docker Compose Stack
CI/CD:
- GitHub Actions Workflows
.github/workflows/ci.yml.github/workflows/code-quality.yml
- Core Database Dokumentation
- Prometheus Metrics Reference
- Vector Operations Guide
- Time-Series Guide
- Backup/Restore Guide
- Admin Tools README
- API Referenz (OpenAPI/Swagger)
- Client SDK Tutorials
- Adapter Entwicklungs-Guide
- Video-Tutorials
- Architektur-Diagramme (aktualisiert)
- Performance-Tuning Guide
- Migration Guide
- Disaster Recovery Playbook
- GitHub Pages: https://makr-code.github.io/ThemisDB/
- Wiki: https://github.com/makr-code/ThemisDB/wiki
- PDF: themisdb-docs-complete.pdf
- Repository: https://github.com/makr-code/ThemisDB
- Issues: GitHub Issues
- Pull Requests: Contributions willkommen
Siehe Hauptprojekt-Lizenz
| Komponente | Dokumentation | Status |
|---|---|---|
| Core Database | deployment.md | ✅ Produktiv |
| Python SDK | clients/python/README.md | ✅ MVP |
| Admin Tools | tools/README.md | ✅ MVP |
| Covina Adapter | adapters/covina_fastapi_ingestion/README.md | ✅ Produktiv |
| Vector Search | vector_ops.md | ✅ Produktiv |
| Time-Series | time_series.md | ✅ Produktiv |
| Prometheus Metrics | observability/prometheus_metrics.md | ✅ Produktiv |
| AQL Syntax | aql_syntax.md | ✅ Produktiv |
Letzte Aktualisierung: 17. November 2025
Version: 1.0
Status: Production Ready
- Architecture-ACCESS-MODEL-IMPLEMENTATION-SUMMARY
- Architecture-ADR-003-pg-dump-sql-parser
- Architecture-BASEENTITY-PRINCIPLE
- Architecture-CACHE-STORAGE-INTEGRATION
- Architecture-CMAKE-ARCHITECTURE
- Architecture-CMAKE-FLAGS-REFERENCE
- Architecture-CMAKE-MODULAR-ARCHITECTURE
- Architecture-CONCERNS-ARCHITECTURE-DIAGRAM
- Architecture-CONCERNS-IMPLEMENTATION-SUMMARY
- Architecture-CONTENT-MODEL
- Architecture-COPILOT-THEMISDB-GRAPH-RAG-BACKEND-ARCHITECTURE
- Architecture-CRYPTO-AND-KEYS
- Architecture-FEATURE-FLAGS-REFERENCE
- Architecture-GPU-ARCHITECTURE-REVIEW-TEMPLATE
- Architecture-HTTP-SHUTDOWN-HARDENING
- Architecture-MIGRATION-GUIDE-CONCERNS
- Architecture-MIGRATION-GUIDE-v13-v14
- Architecture-MODULARIZATION-GUIDE
- Architecture-MODULAR-ARCHITECTURE-ROADMAP
- Architecture-MODULE-ARCHITECTURE-INDEX
- Architecture-P1D01-ISSMPLUGIN-DESIGN-REVIEW
- Architecture-P1-D01-ISSMPLUGIN-DESIGN-REVIEW
- Architecture-P1-D08-MAMBA-GOVERNANCE-CONTRACT
- Architecture-P1-P2-IMPLEMENTATION-COMPLETION-INDEX
- Architecture-PHASE0-COMPLETION-ASSESSMENT
- Architecture-PHASE3-QUERYENGINE-DI-ARCHITECTURE
- Architecture-PHASE4-INDEX-MANAGER-DI
- Architecture-POSTGRESQL-WIRE-PROTOCOL
- Architecture-QUERYENGINE-IMPLEMENTATION-GUIDE
- Architecture-QUERY-SCHEDULING
- Architecture-RAFT-CONSENSUS-DESIGN
- Architecture-README
- Architecture-README-SSM-HYBRID-IMPLEMENTATION
- Architecture-REFACTORING-SUMMARY
- Architecture-RESOURCE-POOLING
- Architecture-SOURCE-DIRECTORY-GUIDE
- Architecture-THEMIS-CORE-GUIDE
- Architecture-UNIFIED-ACCESS-MODEL
- Architecture-WAL-GRPC-MTLS-CONFIGURATION
- Architecture-WIRE-PROTOCOL-RETRY
- Architecture-boltzmann-observability-draft
- Architecture-experimental-logarithmic-vector-storage
- Architecture-llm-wiki-mvp-adr
- Architecture-rewrite-engine-architecture
- Architecture-rope-api-architecture
- Architecture-ssm-gguf-mamba-status
- Architecture-ssm-hybrid-analysis
- Architecture-ssm-hybrid-rollout-plan
- Architecture-ssm-plugin-interface-design-review
- Architecture-transaction-coordinators
- Architecture-wiki-secondary-index
- Architecture-wire-protocol
- Governance-DISABLED-STUB-POLICY
- Governance-DOCS-PR-POLICY
- Governance-GA-PROMOTION-SIGN-OFF
- Governance-GITHUB-MILESTONES-SETUP
- Governance-MATURITY-CLAIM-VERIFICATION-CHECKLIST
- Governance-MATURITY-EVIDENCE-REGISTRY
- Governance-MERGE-GATE-BOT-CONFIG
- Governance-MERGE-GATE-STATUS-LIVE
- Governance-PHASE3-ENFORCEMENT-RUNBOOK
- Governance-PHASE-1-CLOSURE-REPORT
- Governance-PHASE-CLOSURE-POLICY
- Governance-PHASE-DEPENDENCY-GRAPH
- Governance-PLUGIN-SUBMODULE-ROLLBACK
- Governance-PRODUCTION-READY-2026-DELIVERY-PLAN
- Governance-PR-VERSION-TARGETING
- Governance-PR-VERSION-TARGETING-BACKFILL
- Governance-QUERY-MODULE-STATUS
- Governance-README
- Governance-RELEASE-PROMOTION-GATE-POLICY
- Governance-RELEASE-VALIDATION-CHECKLIST
- Governance-SECURITY-MODULE-5671-EVIDENCE-SUMMARY
- Governance-SHARDING-P6-RESIDUAL-RISK-ACCEPTANCE
- Governance-SOURCECODE-COMPLIANCE-GOVERNANCE
- Governance-UPDATES-DEVELOPMENT-STATUS-SIGN-OFF
- Governance-WAVE-C-IMPLEMENTATION-COMPLETE
- Module-acceleration-Roadmap
- Module-access-model-Roadmap
- Module-ai-Roadmap
- Module-analytics-Roadmap
- Module-api-Roadmap
- Module-aql-Roadmap
- Module-auth-Roadmap
- Module-base-Roadmap
- Module-cache-Roadmap
- Module-cdc-Roadmap
- Module-chaos-Roadmap
- Module-chimera-Roadmap
- Module-config-Roadmap
- Module-content-Roadmap
- Module-core-Roadmap
- Module-distributed-knowledge-Roadmap
- Module-distributed-tensor-Roadmap
- Module-document-Roadmap
- Module-ethics-ai-Roadmap
- Module-evaluation-Roadmap
- Module-execution-Roadmap
- Module-exporters-Roadmap
- Module-failover-Roadmap
- Module-geo-Roadmap
- Module-governance-Roadmap
- Module-gpu-Roadmap
- Module-graph-Roadmap
- Module-image-analysis-Roadmap
- Module-importers-Roadmap
- Module-index-Roadmap
- Module-ingestion-Roadmap
- Module-llama-cpp-Roadmap
- Module-llm-Roadmap
- Module-llm-streaming-Roadmap
- Module-llm-wiki-Roadmap
- Module-maintenance-Roadmap
- Module-metadata-Roadmap
- Module-network-Roadmap
- Module-observability-Roadmap
- Module-onnx-clip-Roadmap
- Module-performance-Roadmap
- Module-plugins-Roadmap
- Module-process-Roadmap
- Module-projects-Roadmap
- Module-prompt-engineering-Roadmap
- Module-query-Roadmap
- Module-rag-Roadmap
- Module-replication-Roadmap
- Module-retrieval-Roadmap
- Module-rpc-grpc-Roadmap
- Module-scheduler-Roadmap
- Module-scraper-Roadmap
- Module-search-Roadmap
- Module-security-Roadmap
- Module-server-Roadmap
- Module-sharding-Roadmap
- Module-stable-diffusion-Roadmap
- Module-storage-Roadmap
- Module-temporal-Roadmap
- Module-tensor-Roadmap
- Module-themis-Roadmap
- Module-timeseries-Roadmap
- Module-toolbox-Roadmap
- Module-training-Roadmap
- Module-transaction-Roadmap
- Module-updates-Roadmap
- Module-user-storage-encrypted-Roadmap
- Module-utils-Roadmap
- Module-vector-search-Roadmap
- Module-voice-Roadmap
- Module-whisper-Roadmap