Data Source Identity for Connection Pooling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In large business systems with multiple applications and data resources, there is an inefficient use of system communication resources due to the lack of a standard method for discovering whether multiple data source entities refer to the same backend data resource, leading to redundant connections and the use of burdensome two-phase commit protocols.

Innovation Solution

A networked computer system where each data source is associated with a unique identity, allowing the application server to compare identities of requested data sources with existing connections, and provide either an existing or new connection based on matches, thereby facilitating connection sharing and optimizing transaction protocols.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If multiple data source objects are instantiated for different abstract names, then each abstract name can be handled independently, but redundant connections are created to the same backend data resource

Engineering Contradiction:
Improveability to handle different abstract namesVSAvoidnumber of connections
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent merges multiple data source objects that reference the same backend data resource by introducing a data source identity mechanism. When two data source objects are found to have the same identity (based on configuration parameters like database URL, username, password), they are combined to share a single physical connection to the backend resource, thereby reducing connection redundancy while maintaining the ability to handle different abstract names independently

Inventive Principle:
Principle #5Merging (Combining)

2Reliability

If redundant connections are created to the same data resource, then connection availability is increased, but system communication resources are wasted

Engineering Contradiction:
Improveconnection availabilityVSAvoidsystem communication resources
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent implements a feedback mechanism through the data source identity comparison process. Before creating a new connection, the system checks whether an existing connection with the same identity already exists. This feedback loop prevents the creation of redundant connections, thereby conserving system communication resources while ensuring that connection availability is maintained through proper connection pooling and sharing

Inventive Principle:
Principle #23Feedback

3Quantity of substance

If connection redundancy exists, then connection pooling is improved, but two-phase commit protocols are unnecessarily used

Engineering Contradiction:
Improveconnection poolingVSAvoidtransaction protocol complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary mechanism (data source identity comparison) that acts as a mediator between connection management and transaction protocol selection. By accurately identifying whether multiple data source objects refer to the same backend resource, the system can make informed decisions about transaction protocol selection, avoiding unnecessary two-phase commit protocols when connections are to the same resource, thus reducing transaction protocol complexity

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS8521875B2Identity for data sources
Publication Date: 2013.08.27 ORACLE AMERICAN INC
  • US8521875B2 patent drawing
  • US8521875B2 patent drawing
  • US8521875B2 patent drawing

AI summary

Various embodiments of a networked computer system in which an application server associates an identity with each data source included in the system are disclosed. The networked computer system may include several backend systems, each including one or more data resources, and the identity of a data source may be unique to a data resource. When an application requests a connection to a data resource, the application server may ascertain the identity of the associated data source and compare this identity to identities of data sources with existing connections. If a match is found, the application server may provide an existing connection to the application, whereas if no match is found the application server may provide a new connection. The identity of a data source may include one or more data source configuration properties. In some embodiments, the identity may include database name, URL, and user name.