Common Data Platform Object-Relational Mapping Across Frameworks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data platforms struggle to provide rich data access and manipulation services integrated with programming environments, especially in multi-tier application architectures handling structured, semi-structured, and unstructured data, and fail to bridge the gap between different application frameworks.

Innovation Solution

A common data platform (CDP) architecture that maps tables to objects, providing a unified data storage component for structured, semi-structured, and unstructured data, with an API for object-relational mapping, query mapping, and constraint/security enforcement, enabling data sharing across disparate application frameworks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If data is manipulated in multiple tiers with memory-resident data, then data access speed is improved, but data consistency and synchronization across tiers become more difficult

Engineering Contradiction:
Improvedata access speedVSAvoiddata consistency
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The platform implements feedback mechanisms through events and notifications that propagate data changes across all tiers. When data is modified in any tier, the system generates notifications that trigger appropriate synchronization actions, ensuring all tiers remain consistent without requiring constant polling or manual synchronization.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The platform establishes data access patterns and synchronization protocols in advance through the defined data model. Change tracking and event propagation mechanisms are pre-configured to handle multi-tier data operations, so synchronization actions are automatically initiated when changes occur, rather than requiring reactive coordination.

Inventive Principle:
Principle #10Preliminary action

2Ease of operation

If object-relational mapping is implemented to bridge application objects and database tables, then ease of data manipulation is improved, but complexity of the data platform architecture increases

Engineering Contradiction:
Improvedata manipulation easeVSAvoiddata platform architecture
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The platform extracts the object-relational mapping functionality into a dedicated middle tier that handles all mapping concerns centrally. This separates the mapping complexity from individual applications, allowing them to work with pure objects while the platform layer manages the translation to and from relational storage structures.

Inventive Principle:
Principle #2Taking out (Extraction)

3Adaptability or versatility

If a unified data model is created to support multiple frameworks, then data sharing across frameworks is improved, but the complexity of supporting diverse data types increases

Engineering Contradiction:
Improvedata sharing capabilityVSAvoiddata model complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The unified data model is segmented into hierarchical levels: a core framework-agnostic data structure at the foundation, with framework-specific extensions and specializations built layer by layer. This allows the platform to support diverse data types (objects, files, XML) through a structured hierarchy rather than a monolithic complex model.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS7853961B2Platform for data services across disparate application frameworks
Publication Date: 2010.12.14 MICROSOFT TECHNOLOGY LICENSING LLC
  • US7853961B2 patent drawing
  • US7853961B2 patent drawing
  • US7853961B2 patent drawing

AI summary

Data management between a common data store and multiple applications of multiple disparate application frameworks. A data storage component is provided that facilitates the storage of data, which data includes structured, semi-structured, and unstructured data. A common data platform interfaces to the data storage component to provide data services accessible by a plurality of disparate application frameworks, which data services allow a corresponding application of the different frameworks to access the data.