Dynamic Cloud Pipeline Data Sharing via Key-Value Store

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current cloud service management systems face challenges in dynamic and persistent data sharing between infrastructure provisioning and application deployment pipelines, leading to human errors and limited flexibility due to ad-hoc information passing and predefined pipeline relationships.

Innovation Solution

Implementing a dynamic and persistent key-value store that allows direct access from pipeline stages for sharing configuration data, enabling flexible and automated data sharing without requiring a predefined parent-child relationship between pipelines, with versioning and immutability for rollback capabilities.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of information

If configuration data is manually copied between pipelines, then information can be passed between provisioning and deployment pipelines, but human error increases and automation is broken

Engineering Contradiction:
Improveconfiguration data accuracyVSAvoiddeployment automation
Core Design Contradiction:
Loss of informationVSExtent of automation

Solution Approach 1:

The patent introduces a shared data store as an intermediary between the provisioning pipeline and deployment pipeline. This data store automatically receives configuration data from the provisioning pipeline and makes it available to the deployment pipeline, eliminating the need for manual copying while maintaining data accuracy and preserving automation throughout the process.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent merges the data storage and sharing functionality into a common infrastructure that both pipelines access. By combining the provisioning and deployment pipelines through a shared data store, the system eliminates the separation that necessitated manual data transfer, thereby preventing human error while maintaining full automation.

Inventive Principle:
Principle #5Merging (Combining)

2Loss of information

If pipelines are configured to process the same binary artifacts, then artifacts can be shared between pipelines, but flexibility is limited

Engineering Contradiction:
Improveartifact sharing capabilityVSAvoidpipeline flexibility
Core Design Contradiction:
Loss of informationVSAdaptability or versatility

Solution Approach 1:

The shared data store is designed with a universal interface that can store and retrieve various types of data including configuration data, binary artifacts, and other pipeline information. This universal access mechanism allows different pipeline types (provisioning, deployment, testing) to share data without requiring identical configuration, thereby maintaining flexibility while enabling comprehensive data sharing.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Loss of information

If a predefined parent-child relationship is established between pipelines, then direct communication is possible, but flexibility and adaptability are reduced

Engineering Contradiction:
Improveinformation passing capabilityVSAvoidpipeline relationship flexibility
Core Design Contradiction:
Loss of informationVSAdaptability or versatility

Solution Approach 1:

The patent segments the pipeline architecture by introducing an independent shared data store layer between pipelines. This segmentation allows each pipeline to operate independently while accessing the same data source, eliminating the need for rigid parent-child relationships and enabling flexible, dynamic pipeline configurations that can adapt to different deployment scenarios.

Inventive Principle:
Principle #1Segmentation

4Loss of information

If manual copying of configuration data is used, then data can be transferred between pipelines, but human error increases

Engineering Contradiction:
Improveconfiguration data transferVSAvoiddeployment reliability
Core Design Contradiction:
Loss of informationVSReliability

Solution Approach 1:

The shared data store enables pipelines to automatically retrieve the configuration data they need without human intervention. The provisioning pipeline writes configuration data to the data store, and the deployment pipeline automatically reads it, creating a self-service mechanism that eliminates manual copying and associated human errors, thereby improving deployment reliability.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS20240394113A1Dynamic and persistent data sharing for cloud service pipelines
Publication Date: 2024.11.28 SALESFORCE INC
  • US20240394113A1 patent drawing
  • US20240394113A1 patent drawing
  • US20240394113A1 patent drawing

AI summary

Apparatus and method for dynamic and persistent data sharing between cloud services. To address limitations in existing systems, resource provisioning and application deployment pipelines are configured with calls to share data using a configuration service. In some implementations, the configuration service includes an API, which is called by one or more stages of the resource provisioning pipeline to write configuration data in key-value pairs (e.g., data related to resource provisioning). One or more stages of the application deployment pipeline are configured with calls to access the configuration data. The stages then use the configuration data for application deployment. The configuration service manages the key-value store using versioning, repeatability, and immutability, to ensures that a configuration generated by any pipeline execution can be automatically re-used by another pipeline, at execution time. Thus, the configuration service is a dynamic, single source of truth for sharing pipeline configuration data.