Virtual Session Management for Database State Persistence

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional database server sessions fail when connections between clients and servers are interrupted, resulting in the loss of session state information and requiring the establishment of new sessions, which impairs system performance and increases burdens on applications and servers.

Innovation Solution

Implementing a virtual session mechanism that allows multiple physical sessions to share session state information, enabling seamless reconnection and continuation of work without losing state data, even after a connection failure, by using virtual session IDs and repositories to persist state information across sessions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a conventional database server session is established, then the application can communicate with the database server, but the session fails and state information is lost when the connection is interrupted

Engineering Contradiction:
Improvesession continuityVSAvoidsession state information
Core Design Contradiction:
ReliabilityVSLoss of information

Solution Approach 1:

The patent divides the session into two parts: a persistent virtual session that maintains state information and a transient physical connection that may fail. The virtual session acts as a container that holds session state independently of the physical connection, allowing the session to survive connection failures.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The virtual session serves as an intermediary between the application and the physical connection to the database server. It mediates the relationship by maintaining session state information even when the physical connection fails, enabling seamless transition between connections.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If a new session is established after connection failure, then the application can continue operating, but system performance is impaired and additional burdens are placed on the application and server

Engineering Contradiction:
Improvesystem performanceVSAvoidsession reestablishment time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The virtual session performs preliminary action by maintaining session state information in advance before connection failures occur. This pre-established state information is immediately available when the physical connection is restored, eliminating the need to re-establish session state and reducing reconnection time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent allows the physical connection to be discarded when it fails, while the virtual session and its state information are recovered and preserved. When the physical connection is restored, the virtual session is reactivated with its state information intact, avoiding the need to discard and re-establish the entire session.

Inventive Principle:
Principle #34Discarding and recovering

3Reliability

If multiple physical sessions share a virtual session, then session state information is preserved across connection failures, but the system complexity increases

Engineering Contradiction:
Improvesession state persistenceVSAvoidsession management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The virtual session is designed with multi-functionality to serve multiple physical sessions and handle various connection states. It can manage multiple physical connections simultaneously, facilitate failover between connections, and maintain session state across different physical sessions, making it a universal solution for connection management.

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

Data Source

PatentUS9239868B2Virtual session management and reestablishment
Publication Date: 2016.01.19 MICROSOFT TECHNOLOGY LICENSING LLC
  • US9239868B2 patent drawing
  • US9239868B2 patent drawing
  • US9239868B2 patent drawing

AI summary

Systems and methods are described that establish and maintain a virtual session between a client and one or more database servers. A database server establishes a first session with a client wherein establishing the virtual session with the client comprises associating a virtual session identifier (ID) with the first session, generates state information in association with the first session, and stores the state information in a repository in association with the virtual session ID. After the first session fails, a same or different database server establishes a second session with the client wherein establishing the second session with the client comprises receiving the virtual session ID from the client, accesses the state information that was stored in the repository in association with the virtual session ID, and associates the state information with the second session.