🏗️ Schema Architecture
SysManage implements a comprehensive relational schema designed for scalability, performance, and data integrity.
Authentication & Authorization: Complete user management system with secure password hashing, JWT tokens, role-based access control, user groups, and profile management including image uploads and account locking mechanisms.
Infrastructure Tracking: Comprehensive host information including hardware specifications, operating system details, network interfaces, storage devices, certificate management, and real-time status monitoring.
Software Inventory: Complete package tracking system including installed packages, available packages, update operations, dependency management, and package operation history with detailed execution logs.
Automation Framework: Script repository with version control, execution tracking, parameter management, result storage, and comprehensive audit trails for all script operations.
Communication Infrastructure: Persistent message queuing system with delivery tracking, retry logic, expiration handling, and comprehensive message lifecycle management.
Flexible Categorization: Dynamic tagging system for hosts and resources with hierarchical organization, color coding, and advanced filtering capabilities.
🗄️ Entity Relationship Diagram
The following diagram shows the complete database schema with all tables, relationships, and key constraints:
Click diagram to open full-size version
Key Diagram Features
User, Host, BearerToken
StorageDevice, NetworkInterface
Packages, Updates, Operations
MessageQueue, QueueMetrics
Users, Tokens, Groups
📊 Core Table Relationships
Central user registry with authentication credentials, profile information, and account management features.
Complete host inventory with hardware specs, OS information, network configuration, and status tracking.
Installed package inventory with version tracking, installation dates, and dependency relationships.
Package repository information with available versions, descriptions, and OS compatibility.
Package operation history including installs, updates, removals with execution status and logs.
Script repository with content, parameters, execution history, and version management.
Persistent message storage with delivery tracking, retry logic, and expiration management.
Dynamic tagging system for flexible resource organization and advanced filtering.
Network configuration tracking with IP addresses, MAC addresses, and interface status.
Storage hardware inventory with capacity, usage, health status, and performance metrics.
Role-based access control with group memberships and permission inheritance.
JWT token management with expiration tracking and revocation capabilities.
⚡ Indexing Strategy
Performance-Optimized Database Indexes
🚀 Advanced Features
Native PostgreSQL JSON support for flexible schema evolution, metadata storage, and complex configuration data.
Built-in PostgreSQL text search capabilities for efficient content searching across multiple columns and tables.
Strict referential integrity with CASCADE options ensuring data consistency across related tables.
SQLAlchemy connection pooling with configurable pool sizes and connection lifecycle management.
Proper timezone handling with UTC storage and automatic timezone conversion for global deployments.
Full ACID transaction support ensuring data integrity even during complex multi-table operations.