The Database and Middleware Management System is a comprehensive software solution designed to streamline the management of databases, middleware, and related infrastructure for multiple clients. The system aggregates several functionalities into one cohesive platform, including AWR report analysis, infrastructure tracking, error logging, employee certification management, and more. This system is developed for MillenniumIT ESP to enhance their operational efficiency and provide actionable insights for database performance and infrastructure management.
- Add, Update, and Delete Companies: Admins can manage client companies by adding, updating, or deleting company records. Each company record includes details such as the company name, description, and an icon.
- View Company List: Admins can view a list of all companies in the system.
- Admin and User Roles: The system supports two types of users: Admin and User.
- User Permissions: Admins can create users, assign permissions, and manage user roles.
- Password Management: New users receive a default password via email and are prompted to change it upon their first login.
- Upload AWR Reports: Users can upload AWR reports via drag-and-drop or a dedicated upload button.
- Automated Report Generation: The system parses the uploaded AWR report using a Python microservice, extracts key metrics, and generates a PDF analysis report.
- LLM-Powered Recommendations: A Large Language Model (LLM) provides recommendations based on the extracted metrics.
- Report Storage and Download: Generated PDFs are stored in object storage and can be downloaded by users.
- Report Filtering and Search: Users can filter and search reports by company, quarter, year, and status.
- Interactive Graphs: Users can visualize key metrics (e.g., average query execution time, CPU usage) using interactive graphs (line charts, bar charts, scatter plots).
- Filtering Options: Users can filter data by company, time period, and metric category (e.g., performance metrics, capacity metrics).
- Comparison Feature: Compare metrics between two companies in the same graph.
- Track Database and Middleware Details: Admins can track database versions, middleware versions, patch levels, and other configuration details for each client.
- Add, Update, and Delete Records: Admins can manage infrastructure records through a user-friendly interface.
- Search and Filter: Users can search and filter infrastructure records by company, database version, middleware version, and more.
- Log OCI Errors: Users can log Oracle Cloud Infrastructure (OCI) errors, including error codes, messages, and resolutions.
- Link to Infrastructure: Logs can be linked to specific infrastructure records for better traceability.
- Search and Filter Logs: Users can search and filter logs by error code, date, or linked infrastructure.
- Track Employee Certifications: The system tracks employee qualifications, certifications, and biodata.
- Tender Document Parsing: Users can upload tender documents, and the system extracts requirements using an LLM model.
- Filter Employees: Employees can be filtered based on tender requirements (e.g., certifications, qualifications).
- Add and Manage Employees: Admins can add new employees and manage their details, including certifications and profile pictures.
The project follows an Incremental Model approach to ensure structured development and continuous improvements.
The system is built using the following components:
- Frontend: A responsive web interface for user interaction.
- Backend: Handles business logic, database interactions, and microservice integrations.
- Database: Stores company, user, AWR report, infrastructure, error log, and employee data.
- Microservices:
- Python microservice for AWR report parsing and analysis.
- LLM microservice for generating recommendations and parsing tender documents.
- Object Storage: Stores generated PDF reports and uploaded tender documents.
- Frontend: React
- Backend: Next.js
- Database: Oracle Database
- Microservices: Python, LLM integration (e.g., OpenAI GPT)
- Object Storage: Oracle Cloud
- Version Control: GitHub
- Development Tools: Jira (for project management)
This project is developed as part of a university assessment by a team of EngineX.