Runtime Database Failover via Intermediary Memory Store

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Software applications face inefficiencies and user dissatisfaction when database systems crash, as they often present error messages or pause, and customizing applications to handle database unavailability is challenging for developers and inefficient for users.

Innovation Solution

A runtime database error handling mechanism that creates an alternate data store to continue operations transparently to users and developers, merging data back into the primary database once it becomes available, allowing applications to function seamlessly without interruption.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the software application waits for the database system to become available or presents error messages, then data consistency is maintained, but user satisfaction and application efficiency deteriorate

Engineering Contradiction:
Improvedata consistencyVSAvoiduser satisfaction
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent introduces an intermediary component (file system/alternate data store) between the software application and the database system. When the database is unavailable, the application continues to operate by storing data in this intermediary layer, which later synchronizes with the database when it becomes available again, thus maintaining both user satisfaction and data consistency.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent implements preliminary action by pre-configuring an alternate data store and synchronization mechanism before database unavailability occurs. The application is designed to automatically switch to using the file system as a backup data store when the database becomes unavailable, and to resume normal database operations when it becomes available again, without requiring user intervention or causing service interruption.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If the application is customized to handle database unavailability, then application functionality during downtime is improved, but development complexity and difficulty increase

Engineering Contradiction:
Improveapplication functionality during downtimeVSAvoiddevelopment complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent creates a universal failover framework that can be applied to multiple different software applications without requiring custom implementation for each. The framework provides a standardized interface and automatic failover mechanism that works across different applications, reducing development complexity while maintaining application functionality during database downtime.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent implements self-service by designing the failover mechanism to automatically detect database unavailability, switch to the alternate data store, and synchronize back when the database becomes available again. This automatic operation eliminates the need for complex manual customization and ongoing maintenance of failover logic in each application.

Inventive Principle:
Principle #25Self-service

3Reliability

If the application pauses until the database system becomes available, then data integrity is preserved, but operational efficiency and response time deteriorate

Engineering Contradiction:
Improvedata integrityVSAvoidoperational efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent uses the file system as an intermediary data store that allows the application to continue operating with local data when the database is unavailable. This intermediary layer preserves data integrity through structured storage and enables continued productivity by allowing read/write operations locally without waiting for database availability.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent ensures continuity of useful action by enabling the application to perform CRUD operations continuously on the alternate data store when the database is unavailable. The synchronization process resumes data replication to the database when it becomes available again, maintaining both data integrity and continuous operational efficiency without pauses or interruptions.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS11409605B2Failover system for database unavailability
Publication Date: 2022.08.09 SAP SE
  • US11409605B2 patent drawing
  • US11409605B2 patent drawing
  • US11409605B2 patent drawing

AI summary

Systems and methods include receiving an exception raised by a database storage system in response to a database operation requested by an application, providing, in response to the exception, the application with a pointer to a failover framework comprising a memory store, receiving, from the application and at the failover framework, a request to write first data, storing, in response to the request to write first data, the first data in a tree structure of the memory store in chronological order, receiving, from the application and at the failover framework, a request to read second data, and, in response to the request to read second data, sorting the tree structure primarily by user and secondarily by chronological order and reading the second data from the sorted tree structure.