البنية المعمارية¶
تتشارك أربع حاويات Docker ملف DuckDB واحدًا عبر ربط تحميل (bind mount) (docker/data/db/).
┌────────────────────────────────────────────────────────────────────────┐
│ Docker Compose │
│ │
│ ┌──────────────┐ ┌──────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ ingester │ │ agent │ │ config_viz │ │ dashboard │ │
│ │ (Rust) │ │ (Streamlit) │ │ (FastAPI+ │ │ (Superset) │ │
│ │ │ │ │ │ React) │ │ │ │
│ │ CloudTrail │ │ AI Chat │ │ Resource │ │ Visualiz │ │
│ │ AWS Config │ │ SQL gen/exec│ │ Graph │ │ │ │
│ │ ingest │ │ READ_ONLY │ │ READ_ONLY │ │ READ_ONLY │ │
│ │ READ_WRITE │ │ │ │ │ │ │ │
│ └──────┬───────┘ └──────┬───────┘ └────┬────────┘ └─────┬───────┘ │
│ └─────────────────┴───────────────┴─────────────────┘ │
│ │ │
│ ┌──────▼───────┐ │
│ │ DuckDB │ │
│ │ (Bind Mount) │ │
│ │ (SSD) │ │
│ └──────────────┘ │
└────────────────────────────────────────────────────────────────────────┘
مخطط التسلسل من البداية إلى النهاية¶
راجع doc/ARCHITECTURE.md للاطلاع على مخطط تسلسل دورة الحياة الكاملة.