Transparent Data Migration via Proxy Service
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing data migration techniques in storage systems often disrupt client access by requiring application interruptions or introducing additional failure points, such as external appliances, when migrating data from a source to a destination storage system.
Innovation Solution
A data migration technique that employs a copy engine to migrate data using a file-based protocol and a proxy service to translate client requests, ensuring seamless access and eliminating the need for external appliances by proxying protocol-specific requests and replies between the client and destination storage system.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If an external storage appliance is introduced to enable data migration with client access continuity, then client access to data during migration is maintained, but the system complexity increases and additional failure points are introduced
Solution Approach 1:
The source storage system acts as an intermediary between the client and destination storage system. The source storage system receives client access requests for migrated data and forwards them to the destination storage system, eliminating the need for external appliances while maintaining client access continuity throughout the migration process
Solution Approach 2:
The migration functionality is merged into the source storage system itself, combining data migration capabilities with existing client access handling. This integration eliminates external appliances and reduces system complexity while preserving the ability to maintain client access during migration
2Productivity
If data migration is performed using symbolic links or automount maps, then data can be copied from source to destination, but client access must be interrupted to update namespace references
Solution Approach 1:
The system maintains continuous client access to migrated data by having the source storage system forward access requests to the destination storage system throughout the migration process. This eliminates interruptions that would otherwise occur when updating symbolic links or automount maps, allowing data migration to proceed without stopping client operations
Solution Approach 2:
The source storage system serves as a mediator that translates client namespace references to destination storage system references in real-time. This allows the namespace to remain unchanged from the client perspective while seamlessly redirecting access to the destination, avoiding the need to interrupt clients for namespace updates
3Productivity
If locks are not properly managed during data migration, then migration speed increases, but data consistency and reliability deteriorate
Solution Approach 1:
The system implements lock status feedback mechanisms where the source storage system monitors lock states on migrated data and communicates this information to the destination storage system. This feedback loop ensures that locks are properly transferred and maintained during migration, preserving data consistency and reliability without significantly impacting migration speed
Solution Approach 2:
The system performs preliminary lock management actions before data migration begins, including identifying and transferring lock states from source to destination. This preliminary setup ensures that locks are already in place on the destination storage system when data arrives, maintaining reliability while enabling efficient migration
Data Source
AI summary
In one embodiment, a data migration technique enables a source storage system to efficiently and reliably migrate data to a destination storage system. The source storage system includes a copy engine that is configured to migrate or copy a set of data, e.g., one or more files, to the destination storage system using a file-based protocol over a network. The copy engine is also configured to ensure that any locks associated with the migrated data set are reclaimed at the destination storage system using a lock-based protocol. The source storage system further includes a proxy service that is configured to translate client requests to access the migrated data set to access requests executable (i.e., discernable) by the destination storage system. The proxy service then forwards or proxies the translated requests over the network to the destination storage system for processing. In essence, the proxy service interacts with the copy engine to proxy protocol specific requests and replies between a client and the destination storage system after copying of the migrated data set has completed, thus rendering data migration transparent to the client.


