Topology-Aware Distributed Storage via Hierarchical Ring Flattening
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
As distributed data storage networks grow in size and complexity, managing vast amounts of data across tens of thousands of simultaneous clients and thousands of storage servers while maintaining performance becomes a significant challenge, particularly in scaling and fault tolerance.
Innovation Solution
A topology-aware distributed storage system that employs a hierarchical ring topology, where user-defined storage policies specify replica locations and numbers, and a storage manager and metadata store coordinate data retrieval and storage, using a hash function to identify replica sets for key-value data storage and retrieval.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If conventional DHTs are used for data storage, then data can be distributed across network nodes, but the system becomes difficult to manage as it scales to tens of thousands of clients and thousands of storage servers
Solution Approach 1:
The system segments the storage network into a hierarchical ring topology with multiple levels (root ring, regional rings, local rings) organized by data centers and racks. This segmentation allows the system to manage large numbers of storage servers by dividing the management space into smaller, more manageable units, each with its own ring structure and responsible for specific segments of the global key space.
Solution Approach 2:
The patent introduces a hierarchical dimension to the traditional flat DHT ring structure. Instead of a single-level ring, the system implements a multi-level hierarchy where rings are nested within data centers and racks. This dimensional transformation enables scalable management by adding organizational layers that structure the complexity of large-scale distributed storage.
2Reliability
If data replication is implemented to improve retrieval speed and fault tolerance, then system reliability improves, but network bandwidth is consumed and storage management complexity increases
Solution Approach 1:
The system implements local quality by placing replica copies of data at specific locations determined by user-defined storage policies. Instead of uniform replication, the system allows different replication strategies for different data segments, placing replicas in specific data centers or racks based on accessibility requirements and failure modes to be mitigated.
Solution Approach 2:
The system performs preliminary action by pre-computing and storing a flattened global ring mapping in the metadata store that associates keys with their replica sets. This pre-computed mapping enables fast lookup of replica locations without real-time complex queries, allowing the system to handle replication management efficiently even as the number of storage servers grows.
3Productivity
If a hierarchical ring topology is computed and flattened to enable scalable data storage, then system performance improves, but computational complexity and metadata management increase
Solution Approach 1:
The system performs preliminary computation by pre-flattening the hierarchical ring topology into a single global ring mapping and storing it in the metadata store. This pre-computed flattened ring contains the complete mapping from keys to replica sets, eliminating the need for complex real-time topology computations during data storage operations and enabling high-throughput processing.
Solution Approach 2:
The system creates a copy of the hierarchical ring structure by flattening it into a single global ring representation. This flattened copy preserves all the topological relationships and replica mappings while presenting a simplified, linear structure that is easier to store, access, and process, thereby reducing computational complexity while maintaining scalability.
Data Source
AI summary
A topology aware distributed storage system includes a plurality of storage nodes, at least one client node, and a storage manager and metadata store. A user-defined storage policy specifies where data is stored within a topological hierarchy of nodes within the network. A hierarchical ring topology including a hierarchical structure of rings representing an organizational structure of nodes is computed and flattened into a single global ring divided into segments corresponding to a unique range of integers and associated with a replica set responsible for storing a key corresponding to one of the integers. A hash function is performed on a user key received from the client node, and the hashed key is looked up on the flattened global ring stored on each storage node to identify the replica set responsible for storing data corresponding to the hashed key.


