Transparent Database Normalization Engine
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Database systems in provider networks face inefficiencies due to storage space requirements and performance issues caused by duplicated data, which can be exacerbated during database migrations and changes in data or application structure, necessitating effective normalization techniques without requiring updates to database clients or queries.
Innovation Solution
A normalization engine analyzes database tables to detect scenarios where normalization is beneficial, automatically normalizing tables by rewriting queries and providing transparent normalization, allowing for reduced storage space and improved performance without modifying database clients or updating their queries.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If database tables store all data values directly, then query simplicity is maintained, but storage space increases and performance decreases due to duplication
Solution Approach 1:
The patent segments database tables into multiple normalized tables, separating data that is repeatedly stored into distinct entities. This reduces storage space by eliminating duplication while the normalization engine automatically manages the complexity of relationships between segmented tables through query rewriting.
Solution Approach 2:
The normalization engine acts as an intermediary between database clients and normalized tables. It automatically rewrites queries to access normalized tables without requiring clients to understand the complex normalized structure, thus reducing storage space while hiding data structure complexity from users.
2Quantity of substance
If database tables are normalized to reduce storage, then storage space decreases, but query complexity increases requiring client updates
Solution Approach 1:
The normalization engine serves as an intermediary that automatically rewrites queries. Clients continue to use simple queries against the logical table structure, while the engine transparently translates these into appropriate queries against the normalized physical tables, maintaining query simplicity while achieving storage reduction.
Solution Approach 2:
The system creates a virtual copy of the original unnormalized table structure that clients interact with. The normalization engine maps queries from this virtual structure to the actual normalized tables, allowing clients to operate as if the simple structure exists while benefiting from the space efficiency of normalization.
3Quantity of substance
If database structure changes are made to implement normalization, then storage efficiency improves, but migration complexity and time increase
Solution Approach 1:
The normalization engine performs preliminary analysis of database tables to identify normalization opportunities before actual normalization is applied. This allows for careful planning and execution of migrations, reducing the time and complexity of actual database restructuring by preparing the transformation roadmap in advance.
Solution Approach 2:
The normalization engine acts as an intermediary layer that can be introduced during migration without requiring complete restructuring of client applications. It gradually transforms the database schema while maintaining compatibility, reducing migration time and complexity compared to traditional approaches that require complete rewrites.
4Quantity of substance
If traditional normalization requires client updates, then data redundancy is eliminated, but system adaptability decreases
Solution Approach 1:
The normalization engine acts as an intermediary that automatically adapts queries to the normalized structure. This eliminates the need for client updates while maintaining data redundancy reduction, thereby preserving system adaptability. Clients can continue to operate unchanged while the engine handles the complexity of normalized data access.
Solution Approach 2:
The system dynamically rewrites queries based on the normalized table structure without requiring static changes to client code. This dynamic adaptation allows the system to maintain both data redundancy elimination and high adaptability, as the normalization engine can adjust to different query patterns and table structures on the fly.
Data Source
AI summary
Techniques for database normalization recommendation and transparent database normalization are described. A normalization engine can analyze the data stored by database tables to determine scenarios in which normalization of the tables may be beneficial. The normalization engine can recommend normalization to an end user, such as during a database migration process. The normalization engine can alternatively perform row-by-row or complete columnar normalization and cause queries issued against normalized tables based on the previous table schema to be automatically rewritten to adhere to the updated data layout.


