Layered Services Architecture Rules Engine Workflow Sequencing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

High-availability storage systems become increasingly complex, leading to overwhelming programming requirements as the number of complex tasks increases, making it difficult to efficiently execute these tasks.

Innovation Solution

A computer-implemented method using a layered services architecture with a rules engine to process control plane requests by identifying mandatory services and sequencing them into a workflow, which includes services such as navigator, transit, copier, zero detect, and IO coordinator services to manage data operations and conflicts.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If the number of complex tasks performed on high-availability storage systems increases, then the system capability improves, but the programming complexity becomes overwhelming

Engineering Contradiction:
Improvesystem capabilityVSAvoidprogramming complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments complex storage tasks into discrete, independently manageable service components within a service graph architecture. Each service (e.g., copy service, migrate service, zero-copy service) represents a modular unit that can be independently programmed, deployed, and maintained. This segmentation allows the system to handle complex tasks by composing multiple simple service units rather than programming monolithic complex logic, thereby improving system capability while keeping individual service programming manageable.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a service graph as an intermediary layer between the control plane and data plane, which automatically orchestrates and coordinates multiple discrete services. The service graph acts as a mediator that manages the complexity of task execution by handling service discovery, routing, and coordination automatically. This intermediary architecture enables the system to execute complex workflows without requiring direct programming of complex coordination logic, thus improving versatility while reducing programming burden.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If more discrete services are added to the layered services architecture, then the system can perform more complex tasks, but the complexity of managing and sequencing these services increases

Engineering Contradiction:
Improvetask complexityVSAvoidservice management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements a dynamic service graph that can automatically adapt its structure and routing based on real-time system conditions and task requirements. The service graph dynamically selects and sequences appropriate services from the available discrete services based on the specific task at hand, rather than following fixed predetermined paths. This dynamic approach allows the system to leverage multiple discrete services for enhanced capability while the service graph automatically manages the complexity of service selection and sequencing.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The service graph employs self-service mechanisms where services automatically register themselves, discover their dependencies, and configure their own routing paths within the service graph. Each discrete service can independently declare its capabilities and requirements, and the service graph automatically integrates them into appropriate workflows. This self-organizing behavior reduces the manual management overhead despite having numerous discrete services available.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10782997B1Storage management system and method
Publication Date: 2020.09.22 EMC IP HLDG CO LLC
  • US10782997B1 patent drawing
  • US10782997B1 patent drawing
  • US10782997B1 patent drawing

AI summary

A method, computer program product, and computing system for receiving an control plane request on a layered services architecture that includes a plurality of discrete services and a rules engine. The control plane request is processed with the rules engine to identify one or more mandatory services, chosen from the plurality of discrete services, required to process the control plane request. The one or more mandatory services are sequenced to form a services workflow. The control plane request is processed based upon the services workflow.