Backup and Restore Policy

  1. Introduction

The purpose of this Backup and Restore Policy is to explain our procedures for the systematic and secure backup and restoration of User Content within Patently.

  1. Scope

This policy applies to all third-party service providers who have access to the Services.

Services

User Content

Customer Configuration Data

permissions, schemas and user config settings.

  1. Backup Procedures & Schedules

a) ElasticSearch

  • Daily Snapshots

    • Purpose: To capture a comprehensive snapshot of the entire ElasticSearch database on a daily basis.

    • Execution Time: Daily snapshots will be initiated during non-peak hours to minimize any impact on system performance.

  • Hourly Snapshots

    • Purpose: To provide granular recovery options and minimize potential data loss by capturing changes at an hourly frequency.

    • Execution Time: Hourly snapshots will be scheduled throughout the day, with consideration for workload patterns to avoid peak operational hours.

b) MySQL

  • Daily Backups

    • The data management protocol involves the creation of backups at daily intervals.

    • These backups encapsulate the User Content and Customer Configuration Data within the MySQL database.

    • The daily backups provide a detailed and up-to-date representation of the database content.

    • Purpose: To enable rapid restoration in case of operational issues or data loss.

    • Hourly backups contribute to the overall resilience of the data storage system.

  • Weekly Backups

    • Purpose: To provide comprehensive snapshots of the MySQL database, ensuring a broader temporal scope.

    • These backups are stored securely on a cloud server hosted by LDeX.

    • The weekly backup frequency addresses the need for mid-term data recovery and operational stability.

    • LDeX's secure cloud server ensures the confidentiality and integrity of the weekly backup data.

  • Monthly Backups

    • A monthly backup strategy complements the more frequent hourly and weekly backups.

    • Purpose: To provide a longer-term perspective and a strategic point for data recovery.

    • The User Content and Customer Configuration Data from the MySQL database is included in these backups.

    • Monthly backups contribute to a comprehensive disaster recovery plan.

    • The secure storage of monthly backups on LDeX's cloud server further enhances data reliability and accessibility.

c) Microsoft SQL Server

  • Automated Backups

    • Azure SQL Managed Instances provide automated backups, eliminating the need for manual intervention.

    • Backups are taken regularly, ensuring the continuous protection of data without requiring explicit user actions.

  • Point-in-Time Restore

    • The Service supports point-in-time restore capabilities, allowing users to restore databases to specific moments in time.

    • This feature is valuable for recovering from accidental data changes or errors.

  1. Backup Storage

We utilise Microsoft Azure Storage, to store snapshots securely. Ensuring that the backup storage solution meets compliance and security standards.

  1. Data Encryption

Backups are encrypted transparently, providing an additional layer of security for sensitive data during the backup process.

  1. Retention Periods

ElasticSearch hourly snapshots are retained for 7 days, conversely ElasticSearch Daily snapshots will be retained for an indefinite timescale, ensuring historical data availability for recovery purposes. 

Our managed SQL Instances offer 35 day rolling retention periods for backups, providing extended historical data protection.

MySQL daily data is retained for 14 days.

  1. Testing and Verification

We regularly test backup and restore procedures to validate their effectiveness. Conducting periodic recovery drills to ensure that data can be restored successfully within acceptable time frames.

  1. Restore Procedures

a) ElasticSearch

  • Access Snapshot Repository

  • Stop Writes to the Index (Optional)

  • List Available Snapshots

  • Close Index(es) (Optional)

  • Restore Daily/Monthly Snapshot

  • Open Index(es)

  • Verify Data Integrity

  • Resume Writes (Optional)

b) Microsoft SQL Server

  • Access Backup Files

  • Connect to the SQL Server Managed Instance

  • Verify Backup Integrity

  • Identify the Target Database

  • Restore Database Structure

  • Restore Database Data

  • Adjust Configuration (If Necessary)

  • Verify and Test

  • Monitor and Optimize

  • Backup the Restored Database (Optional)

c) MySQL

  • Access Backup Files

  • Stop MySQL Server

  • Copy Backup Files

  • Verify Backup Integrity

  • Create a Backup of Existing Data

  • Restore Database Structure

  • Restore Database Data

  • Adjust Configuration (If Necessary)

  • Start MySQL Server

  • Test the Restored Database

  • Monitor and Optimize

  • Backup the Restored Database (Optional)