Dynamic Schema Generation for Semi-Structured Data Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data storage systems face inefficiencies in handling semi-structured data that does not conform to a static, predefined format, as they require predefined schemas and are not robust enough to handle dynamic data formats, leading to processing errors and difficulties in data analysis.

Innovation Solution

The system dynamically generates schemas for semi-structured data items, allowing them to be stored in an efficient data format without pre-defined schema requirements, enabling efficient storage and query processing by mapping key-value pairs to locations and associating them with schemas, thus facilitating data analysis and quality assessment.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If predefined schemas are used for data storage, then data structure consistency is maintained, but the system cannot handle dynamic semi-structured data formats

Engineering Contradiction:
Improveability to handle dynamic data formatsVSAvoiddata structure consistency
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent implements dynamic schema generation that automatically adapts to incoming semi-structured data formats. Instead of using static predefined schemas, the system dynamically creates and updates schemas based on the actual data structure encountered, allowing it to handle evolving data formats while maintaining consistency through automated schema validation and evolution.

Inventive Principle:
Principle #15Dynamics

2Productivity

If semi-structured data is stored without encoding, then data flexibility is maintained, but storage space efficiency and query performance deteriorate

Engineering Contradiction:
Improvestorage efficiency and query performanceVSAvoiddata encoding and schema mapping complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies preliminary encoding and schema mapping to semi-structured data before storage. By pre-processing the data to encode it in an efficient format and establish schema mappings in advance, the system optimizes storage space and query performance while managing complexity through automated encoding processes that occur during data ingestion.

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If dynamic schema generation is implemented, then adaptability to diverse data formats improves, but system complexity increases

Engineering Contradiction:
Improveschema adaptabilityVSAvoidschema generation and validation complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements self-service schema generation where the system automatically analyzes incoming semi-structured data and generates appropriate schemas without requiring manual intervention. The system serves itself by autonomously creating, validating, and updating schemas based on data patterns, reducing the operational complexity despite the sophisticated schema generation capabilities.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS20240220538A1Storing semi-structured data
Publication Date: 2024.07.04 GOOGLE LLC
  • US20240220538A1 patent drawing
  • US20240220538A1 patent drawing
  • US20240220538A1 patent drawing

AI summary

Methods, systems, and apparatus, including computer programs encoded on computer storage media, for storing semi-structured data. One of the methods includes maintaining a plurality of schemas; receiving a first semi-structured data item; determining that the first semi-structured data item does not match any of the schemas in the plurality of schemas; and in response to determining that the first semi-structured data item does not match any of the schemas in the plurality of schemas: generating a new schema, encoding the first semi-structured data item in the first data format to generate the first new encoded data item in accordance with the new schema, storing the first new encoded data item in the data item repository, and associating the first new encoded data item with the new schema.