Skip to content

DimitraDern/Cloud-Backup-Disaster-Recovery

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

34 Commits
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

☁️Cloud Backup & Disaster Recovery for University Management System (Azure SQL)

πŸ“Œ Project Overview

This project focuses on the design and implementation of a complete Cloud Backup & Disaster Recovery system for a university management information system, built specifically using Azure SQL Database.

The main objectives are:

  • Creating and inserting records and indexes
  • Disaster Recovery capability
  • Secure and reliable backup strategy
  • Monitoring and alerting infrastructure

πŸ—οΈ System Architecture

The system includes the following components:

  • Primary Azure SQL Database (production)
  • Geo-replicated Secondary Database (DR region)
  • Azure Blob Storage for backups
  • Azure Monitor & Log Analytics Workspace for monitoring

πŸ“Œ Architecture Diagram:

image

πŸ“Š Phase 1 β€” Design & Setup

1. ER Diagram

A relational database schema was designed with 10 tables including proper primary and foreign key relationships.

πŸ“Œ ER diagram:

image

2. Azure Setup

  • Created Azure Free Tier subscription
  • Created Resource Group

πŸ—„οΈ Phase 2 β€” Production Database Setup

1. Azure SQL Database Provisioning

  • Created SQL Server (logical server)
  • Deployed Azure SQL Database (Basic tier)
  • Configured firewall rules (IP whitelisting)
  • Connected using SSMS / Azure Data Studio

2. Performance Baseline

  • Configured Azure Monitor metrics
  • Tracked DTU / vCore usage
  • Monitored active connections

πŸ“Œ Monitoring Dashboard (Baseline):

Untitled Project

πŸ’Ύ Phase 3 β€” Backup Strategy

1. Automated Backups (Azure Native)

The Azure SQL Database provides automatic backups:

  • Full backups
  • Differential backups
  • Transaction log backups

Retention policies:

  • Short-term retention
  • Long-term retention

πŸ“Œ Backup Configuration:

image

2. Manual Backup (BACPAC Export)

  • Exported database as .bacpac file
  • Stored backup in azure blob storage
  • Verified file in storage container

πŸ“Œ Blob Storage:

image

🌍 Phase 4 β€” Geo-Replication & High Availability

1. Active Geo-Replication

  • Created a secondary server in a different Azure region
  • Configured active geo-replication
  • Monitored replication status and lag

πŸ“Œ Geo-Replication Topology:

image

➱This architecture represents a geo-replication setup where an application interacts with a primary database responsible for all read and write operations, while a secondary database in a different region is asynchronously synchronized as a read-only replica. The secondary database is used for disaster recovery and can take over in case of primary failure, improving system availability and reducing downtime through failover capability.

➱RPO: Near-zero (typically < 1 minute) due to asynchronous replication between primary and secondary regions.

➱RTO: 1–5 minutes due to fast failover capability to the secondary region. RPO and RTO are not fixed values but depend on the Azure SQL Database geo-replication configuration; typically RPO is under 1 minute and RTO is between 1–5 minutes. This ensures minimal data loss and fast recovery in case of failure.

πŸ“Œ Disaster Recovery Architecture:

image

♻️ Phase 5 β€” Restore Process

1. Point-in-Time Restore

  • Simulated incident using accidental DELETE/UPDATE operations
  • Restored database to a previous safe timestamp
  • Verified data integrity using SQL queries

πŸ“Œ Incident Example:

  • In this incident example, a database table named "Grades" was accidentally dropped, causing an issue with key distribution. The table was restored using point-in-time restoration (PITR).
image

πŸ“Œ Restore Process:

The database was restored using Azure SQL Database's Point-in-Time Restore feature.

Configuration:

  • Source Database: UniversityDB
  • Restore Point: Before the incident
  • Restored Database: UniversityDB-Restore
image

πŸ“Œ Verification

After the restoration completed successfully, SQL queries confirmed that all deleted grades records had been recovered.

Verification included:

  • Record count comparison
  • Query comparison before and after restore
Screenshot 2026-07-01 121651

πŸ“‘ Phase 6 β€” Monitoring & Alerting

  • Configured Azure Monitor alerts
  • Created Log Analytics Workspace
  • Built dashboards for key performance metrics

πŸ“Œ Monitoring Dashboard:

image

πŸ“Œ Alert Rules:

  • CPU overworking alert which alerts admins if the CPU is usage is 80% or more so as to check the condition of the database
image
  • Data Usage alert indicating excessive usage of data prompting the user to chech the database
image

Β© Copyright

This project was created by:

Dimitra Dernektsi
Dimitra Dernektsi
Vladimiro Pozidi
Vladimiros Pozidis

Β© 2026 Dimitra Dernektsi & Vladimiros Pozidis. All rights reserved.


About

This project implements a cloud-based backup and disaster recovery solution for a University Management System using Microsoft Azure SQL Database. It demonstrates backup, geo-replication, monitoring, and recovery features to ensure data protection.

Topics

Resources

License

Stars

2 stars

Watchers

0 watching

Forks

Contributors

Languages