Partitioned Storage Subsystems for Independent I/O and Upgrades
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional storage systems face inefficiencies due to shared resources among hosts, leading to resource competition and the need for active allocation, which affects overall performance and requires system-wide changes for upgrades or modifications, impacting multiple hosts and partitions.
Innovation Solution
A storage array with partitioned storage subsystems, each having its own directors with local and global memory, an interconnect fabric for metadata correlation, and DMA-enabled interfaces, allowing independent I/O operations and parallel upgrades without affecting other partitions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If storage systems use shared resources among hosts, then resource utilization is improved, but resource competition and active allocation overhead increase
Solution Approach 1:
The storage system is segmented into multiple independent partitions, each with its own dedicated resources (directors, memory, I/O channels). This segmentation eliminates resource competition between partitions while maintaining high utilization within each partition, as resources are allocated statically at partition creation rather than requiring dynamic active allocation.
Solution Approach 2:
The patent introduces a new dimension of resource allocation by creating isolated partition spaces where resources are dedicated rather than shared. This dimensional change from shared-resource to dedicated-resource architecture resolves the contradiction by allowing each partition to fully utilize its allocated resources without competition, while the overall system maintains high productivity through parallel operation of multiple partitions.
2Reliability
If storage systems implement partitioning to improve failure isolation, then reliability is improved, but device complexity increases
Solution Approach 1:
The storage system is divided into isolated partitions with dedicated directors, memory spaces, and I/O channels. This segmentation provides failure isolation where problems in one partition cannot affect other partitions, improving reliability. The complexity is managed through a standardized partition template that can be replicated, making the partition structure systematic rather than ad-hoc.
Solution Approach 2:
Partitions are pre-configured with dedicated resources and isolation boundaries during system initialization or creation. This preliminary action establishes failure isolation boundaries before any operations occur, ensuring that reliability is built-in from the start rather than requiring complex runtime management of isolation, thereby reducing operational complexity.
3Stability of the object's composition
If storage systems allow system-wide changes for upgrades, then consistency is maintained, but productivity is reduced due to downtime
Solution Approach 1:
The storage system is segmented into independent partitions that can be upgraded individually. This allows upgrades to be performed on one partition at a time while other partitions continue operating, maintaining productivity. Each partition maintains its own consistency independently, eliminating the need for system-wide downtime while still ensuring data integrity within each partition.
Solution Approach 2:
The system allows dynamic upgrading of individual partitions without requiring the entire system to be taken offline. Partitions can be upgraded, modified, or maintained independently based on operational needs, enabling continuous productivity while maintaining consistency within each partition through controlled, incremental changes rather than monolithic system-wide updates.
4Ease of operation
If storage systems use centralized memory access, then coordination is simplified, but access speed decreases due to bottlenecks
Solution Approach 1:
Memory is segmented into partition-specific memory spaces associated with each director. This eliminates the bottleneck of centralized memory access by allowing each director to access its own memory directly without competing for shared memory resources. Coordination is simplified through clear memory boundary definitions, while speed is improved through direct, dedicated access paths for each partition.
Data Source
AI summary
A storage array includes a plurality of directors, each having at least one processor thereon and a global memory distributed among the plurality of directors. A different portion of the global memory is provided on each of the directors. A interconnect fabric is coupled to each of the directors. Global memory accesses performed by one director to access memory of another director through the interconnect fabric. The storage array also includes a plurality of partitioned storage subsystems, each including a separate subset of the directors, where each of the partitioned storage subsystems handles I/O operations for a plurality of logical devices independently of I/O operations for logical devices of other ones of the partitioned storage subsystems, the I/O operations using metadata provided in the global memory of the corresponding directors and containing information that correlates logical device data with physical device data.


