View Maintenance Rules for ORM Update Pipelines

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data access solutions face challenges in efficiently updating data across mappings, particularly in preserving data consistency and triggering business rules, due to the complexity of updating through database views and limited support for updatable views in commercial database systems.

Innovation Solution

The ADO.NET Entity Framework introduces a novel data access architecture that includes an Entity Framework with an Entity Data Model (EDM) and Entity SQL, enabling bidirectional mappings for queries and updates, and leveraging Language Integrated Query (LINQ) to reduce impedance mismatch between applications and databases, allowing direct programming against a conceptual layer and supporting powerful data manipulation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If updates are performed through database views, then data consistency can be maintained, but the complexity of update translation increases significantly and unique translation is rarely possible

Engineering Contradiction:
Improvedata consistencyVSAvoidupdate translation complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary layer (the view maintenance rule system) between the application and the database view. This intermediary automatically translates update operations from the view level to the base table level using pre-defined maintenance rules, eliminating the need for developers to manually handle complex update translation logic while ensuring data consistency is maintained through systematic rule-based translation.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If commercial database systems are used with built-in O/R mapping, then vendor integration is improved, but data independence is lost and migration costs increase

Engineering Contradiction:
Improvevendor integrationVSAvoiddata independence
Core Design Contradiction:
Adaptability or versatilityVSEase of manufacture

Solution Approach 1:

The patent segments the O/R mapping functionality into a separate, standalone view maintenance system that is independent of any specific database vendor. By separating the mapping logic from the database engine, the system achieves data independence while still being able to work with various database systems through standard SQL views, allowing easy migration between vendors without being locked into a specific platform.

Inventive Principle:
Principle #1Segmentation

3Productivity

If business logic runs inside the database, then transaction throughput is improved, but scale-out difficulties increase and vendor lock-in occurs

Engineering Contradiction:
Improvetransaction throughputVSAvoidscale-out capability
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent positions the view maintenance system as an intermediary layer between the application logic and the database engine. This allows business logic to remain in the application tier (enabling scale-out and vendor independence) while still achieving efficient data access and update operations through the optimized view maintenance mechanism, thus balancing throughput requirements with architectural flexibility.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10268742B2View maintenance rules for an update pipeline of an object-relational mapping (ORM) platform
Publication Date: 2019.04.23 MICROSOFT TECHNOLOGY LICENSING LLC
  • US10268742B2 patent drawing
  • US10268742B2 patent drawing
  • US10268742B2 patent drawing

AI summary

Application data is synchronized with a database where changes to object data maintained by an application is expressed according to an application schema. Changes to the object data are identified as corresponding to an entity schema. Changes to views of database tables are applied by translation rules to the set of changed entities. The database tables conforming to a database schema are thereafter updated.