Non-Relational Database Virtual Division for Relational Driver Compatibility
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current methods fail to adapt non-relational data models to appear as relational data models, preventing standard drivers like ODBC and JDBC from accessing data stored in non-relational databases and making data tables appear as if stored in a relational database.
Innovation Solution
The method involves identifying columns in a column-oriented non-relational database, virtually dividing it based on column types, and generating a normalized relational model, including catalog information to represent parent and child tables, allowing standard drivers to access and translate queries between relational and non-relational query languages.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If non-relational database stores data with different column types in the same row, then data flexibility and storage efficiency are improved, but compatibility with standard relational database drivers is lost
Solution Approach 1:
The patent introduces a driver as an intermediary layer between the non-relational database and standard relational database drivers. This driver translates relational database operations into non-relational database operations, enabling compatibility without compromising the underlying non-relational data model. The driver handles column type variations and data serialization/deserialization, allowing standard drivers to interact with non-relational databases as if they were relational.
2Adaptability or versatility
If non-relational database allows dynamic columns with different types, then data modeling flexibility is improved, but data redundancy and complexity increase
Solution Approach 1:
The patent changes the parameter of column type representation by serializing different column types (maps, lists, sets) into a unified string format. This allows the database to store heterogeneous data types in a consistent manner, reducing redundancy while maintaining flexibility. The serialization approach enables the same storage structure to accommodate varying data types without creating duplicate storage mechanisms.
3Speed
If non-relational database stores all data in wide rows, then read performance is improved, but data organization and query efficiency deteriorate
Solution Approach 1:
The patent segments the wide row data model into logical groupings based on column types and relationships. By dividing the data structure into organized segments (parent tables, child tables, map columns, list columns), the system maintains the performance benefits of wide rows while improving data organization and query efficiency. This segmentation allows for more targeted data retrieval and manipulation operations.
Data Source
AI summary
A system and method are disclosed for modeling a non-relational database as a normalized relational database. In one embodiment, the system identifies a column having a first type in a column-oriented, non-relational database; determines whether the column-oriented, non-relational database includes at least one column having a second type and identifies the one or more columns having the second type; virtually divides the column-oriented, non-relational database based on column type; and generates a normalized, relational model based on the virtual division of the column-oriented, non-relational database, the normalized, relational model including catalog information representing a parent table including the column having the first type and, when the column-oriented, non-relational database includes at least one column having the second type, catalogue information representing a child table, the parent table and child table both represented as relational tables.


