ETL Metadata Caching for Offline Component Editing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing ETL (extract, transform, load) projects with statically defined metadata during design time face challenges when disconnected from data sources, as they cannot edit components or define new columns without an active upstream flow, and lack the ability to cache data type information independently.

Innovation Solution

Implementing a method that allows caching metadata about source and destination components, enabling ETL developers to work with placeholders and propagate them, even when disconnected, and automatically updating metadata cache for downstream components.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If ETL projects use statically defined metadata during design time, then data transformation can be performed with strong data type validation, but developers cannot edit components or define new columns when disconnected from data sources

Engineering Contradiction:
ImproveComponent editing capabilityVSAvoidMetadata management complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The system performs preliminary action by caching metadata about source and destination components before the ETL project is executed. This allows developers to edit components and define columns independently of actual data sources, as the cached metadata provides the necessary type information in advance.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The cached metadata acts as an intermediary between the ETL project components and the actual data sources. Instead of requiring direct connections to sources for editing, the cached metadata mediates by providing sufficient information (data types, column names) to enable component editing and column definition.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of manufacture

If ETL projects dynamically infer metadata at runtime, then no metadata needs to be stored and data types can be auto-converted, but the system cannot provide strong data contracts or resolve column references at design time

Engineering Contradiction:
ImproveData integration implementationVSAvoidData contract enforcement
Core Design Contradiction:
Ease of manufactureVSReliability

Solution Approach 1:

The system retrieves and caches metadata about source and destination components before execution, allowing data contracts to be defined and enforced at design time. This preliminary metadata retrieval enables column reference resolution and data type validation before the actual ETL run, improving reliability while maintaining ease of implementation.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If developers must remain connected to upstream flows to edit components, then data type information is always accurate, but development efficiency decreases due to continuous connection requirements

Engineering Contradiction:
ImproveDevelopment efficiencyVSAvoidData type information availability
Core Design Contradiction:
ProductivityVSLoss of information

Solution Approach 1:

The system performs preliminary action by retrieving and caching metadata about upstream components before the developer needs to edit anything. This allows developers to work independently without continuous connections, as all necessary data type information is already cached and available for editing operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system creates a copy of the necessary metadata information (data types, column names) and stores it in the cache. This copied information allows developers to edit components as if the upstream flows were still connected, maintaining productivity while eliminating the need for continuous connections.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS8874622B2Flexible order of authoring for data integration solutions
Publication Date: 2014.10.28 MICROSOFT TECHNOLOGY LICENSING LLC
  • US8874622B2 patent drawing
  • US8874622B2 patent drawing
  • US8874622B2 patent drawing

AI summary

A method includes connecting an integration process to a first set of inputs. The first set of inputs may include one or more inputs. The integration process includes one or more data transformation operations using the inputs. The method further includes receiving metadata about one or more of the inputs in the first set of inputs. The metadata about one or more of the inputs in the first set of inputs is cached. The integration process is then connected to a second set of inputs based on the cached metadata about one or more of the inputs in the first set of inputs.