phone icon nav Call Us 888-690-3282    Follow Us
phone icon nav Call Us 888-690-3282    Follow Us

Vendor-Driven Cloud Migration: How to Preserve Internal Reporting Capabilities

The Challenge

The client’s vendor was forcing them to move their primary database to the vendor’s cloud, but the client still needed to perform internal reporting, which required a local copy of the database to support the business intelligence dashboards and reports.

Several challenges arise when moving the primary database to a vendor’s cloud while maintaining a local copy for reporting. Let’s explore these:

  1. Data Consistency and Synchronization:

    • Issue: Keeping two copies of the database (cloud and local) introduces the risk of data inconsistencies.
    • Challenge: Ensuring that changes made in one copy are accurately reflected in the other.
    • Solution: Implement “view only” privileges on the local database.
  1. Latency and Performance:

    • Concern: Accessing the local copy for reporting may introduce latency due to network communication.
    • Impact: Slow reporting queries can affect user experience and productivity.
    • Mitigation: Optimize queries, consider caching strategies, and choose appropriate reporting tools to minimize latency.
  1. Security and Compliance:

    • Risk: Storing sensitive data locally requires robust security measures.
    • Challenge: Ensuring compliance with data protection regulations (e.g., GDPR, HIPAA) for cloud and local copies.
    • Recommendation: Encrypt data, restrict access, and regularly audit security controls.
  1. Cost Management:

    • Scenario: Running a local database involves infrastructure costs (hardware, maintenance).
    • Balancing Act: Evaluate the cost-effectiveness of maintaining a local copy versus relying solely on the cloud.
    • Advice: Consider long-term expenses and scalability when making decisions.
  1. Reporting Tool Compatibility:

    • Issue: Reporting tools may be optimized for specific database systems.
    • Challenge: Ensuring that the chosen reporting tools work seamlessly with both cloud and local databases.
    • Solution: Test reporting tools thoroughly and address any compatibility issues.
  1. Backup and Disaster Recovery:

    • Risk: Relying on a single cloud copy may expose the organization to data loss.
    • Precaution: Regularly back up the cloud database and have a disaster recovery plan.
    • Best Practice: Maintain off-site backups for both cloud and local databases.
  1. Vendor Dependencies and Exit Strategy:

    • Concern: Vendor lock-in remains a challenge, even with a local copy.
    • Mitigation: Develop an exit strategy that allows switching vendors or migrating away from the cloud if needed.
    • Advice: Negotiate terms with the vendor to ensure data portability and minimize dependencies.

In summary, balancing the benefits of cloud scalability and accessibility with the need for local reporting requires thoughtful planning, technical expertise, and a clear understanding of the organization’s requirements.

The Solution

The Performance One Data Solutions team implemented a nightly process to apply SQL Server transaction log files in order and open a local database read-only for daily reporting. Powershell scripts were created to drive the process, and SQL Server stored procedures were developed to apply the transaction log files.

Let’s describe the solution step by step:

  1. Objective:

    • The goal is to maintain both a vendor copy (in the cloud) and a local copy of the primary business database.
    • The local copy is used for daily reporting, while the vendor copy remains the authoritative source.
  2. Components:

    • SQL Server Transaction Log Files:

      • These files record all changes (inserts, updates, deletes) made to the database.
      • They serve as a detailed history of database modifications.
    • Nightly Process:

      • A scheduled task runs every night to process the transaction log files.
      • The order of log files matters to maintain consistency.
    • Powershell Scripts:

      • These scripts automate the process.
      • They read the transaction log files and apply changes to the local copy.
    • SQL Server Stored Procedures:

      • Custom procedures are developed to handle the application of transaction log data.
      • These procedures ensure that changes are correctly applied to the local database.
  3. Workflow:

    • Nightly Process Execution:

      • The nightly process begins at a predetermined time.
      • It identifies the next transaction log file to process (based on order).
      • The Powershell script reads the log file and extracts changes (inserts, updates, deletes).
      • The script applies these changes to the local database.
      • This process repeats for all transaction log files.
    • Database State:

      • To apply the transaction logs, the database will be unavailable for the transaction log restore process.  In the customers case that is 30 minutes daily.
      • Users can query the local copy for reporting purposes.
      • Any changes made to the local copy are temporary and do not affect the vendor copy.
  1. Considerations:

    • Security:

      • Ensure that the Powershell scripts and stored procedures have appropriate access rights.
      • Protect sensitive data during the transfer.
    • Monitoring and Alerts:

      • Set up monitoring to detect any failures in the nightly process.
      • Receive alerts if the local copy falls out of sync with the vendor copy.

The Results

A reliable nightly process to enable customer reports to be executed was implemented, tested, and rolled out to the enterprise.

Benefits included:

  • Data Consistency:

    • By applying transaction log changes in order, the local copy stays consistent with the vendor copy.
  • Reporting Efficiency:

    • Users can run reports directly against the local database without impacting the vendor’s cloud resources.
  • Vendor Independence:

    • The local copy provides resilience against vendor outages or changes.
    • If needed, the organization can switch vendors without losing historical data.

This solution combines automation, scripting, and database procedures to maintain a local reporting copy while keeping the vendor copy in the cloud up-to-date. It balances data consistency, reporting needs, and vendor requirements.

Contact-Us

Let's Talk

Use our expertise to propel your business to the next level.