IP Library › Granted Patent US 8,275,748
Granted Patent B2
US 8,275,748 · App. 12/268,328 · Granted Sep 25, 2012

Semantic data migration

Assignee: EMC Corporation
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,275,748
App. No.
12/268,328
Filed
Nov 10, 2008
Granted
Sep 25, 2012
Kind
B2
Art Unit
2169
USPC
707/661
Abstract

Migrating data within a storage area network is disclosed. A migration plan is created, the migration plan to move data stored in the storage area network, wherein each element of data is to be moved from a source location to a destination location according to a mapping therebetween. A virtual identifier is assigned to each mapping according to the migration plan. The migration plan is executed. Upon completion of the movement of an element of data, the virtual identifier for the mapping of that element of data is assigned to a resultant location to which that element of data is moved. Upon completion of the execution of the migration plan, the movement of the data is verified by comparing, for each element of data, the virtual identifier of the mapping and the virtual identifier of the resultant location.

Claims (78)

1. A method of migrating data within a storage area network, comprising:

creating a migration plan, the migration plan to move data stored in the storage area network, wherein each element of data is to be moved from a source location to a destination location according to a mapping therebetween;

assigning a virtual identifier to each mapping according to the migration plan, each virtual identifier associated with the source location and the destination location according to the mapping of each respective element of data;

executing the migration plan, wherein upon completion of the movement of an element of data, the virtual identifier for the mapping of that element of data is assigned to a resultant location to which that element of data is moved; and

verifying, upon completion of the execution of the migration plan, the movement of the data by comparing, for each element of data, the virtual identifier of the mapping and the virtual identifier of the resultant location.

2. The method of claim 1 wherein creating comprises:

receiving a selection of the data to be moved within the storage area network;

identifying operations required to perform the movement of each element of the selected data, wherein the operations required to move a particular element of the selected data are grouped as a task; and

creating an operational order for all operations within each task and all tasks.

3. The method of claim 2 wherein identifying comprises:

identifying operations required to perform the movement of the selected data by accessing a relational mapping of the storage area network and its components stored within a repository.

4. The method of claim 1 comprising:

tracking movement of data during the execution of the migration plan by referring to the virtual identifiers associated with data being moved; and

storing the tracked movement in a track record.

5. The method of claim 4 comprising:

detecting an error during execution of the migration plan;

halting execution of the migration plan;

undoing any actions that resulted in the error by consulting the track record;

refining the migration plan to avoid the detected error; and

resuming execution of the migration plan as refined.

6. The method of claim 5 wherein detecting comprises:

detecting an error during execution of the migration plan, wherein the error includes movement of an element of data to a location that is not the destination location for that element of data;

and wherein undoing comprises:

undoing any actions that resulted in the error by consulting the track record and identifying differences between the destination location for an element of data and the resultant location for that element of data by examining the related virtual identifiers.

7. The method of claim 1 wherein creating and assigning are performed through use of a migration and task schema, wherein executing is performed through use of an operational schema, and wherein verifying is performed through use of a verification schema.

8. A computer system comprising:

a memory;

a processor;

a display; and

an interconnection mechanism coupling the memory, the processor and the display, allowing communication there between;

wherein the memory of the computer system is encoded with a semantic data migration application, that when executed in the processor, provides a semantic data migration process that migrates data within a storage area network by causing the computer system to perform operations of:

creating a migration plan, the migration plan to move data stored in the storage area network, wherein each element of data is to be moved from a source location to a destination location according to a mapping therebetween;

assigning a virtual identifier to each mapping according to the migration plan, each virtual identifier associated with the source location and the destination location according to the mapping of each respective element of data;

executing the migration plan, wherein upon completion of the movement of an element of data, the virtual identifier for the mapping of that element of data is assigned to a resultant location to which that element of data is moved; and

verifying, upon completion of the execution of the migration plan, the movement of the data by comparing, for each element of data, the virtual identifier of the mapping and the virtual identifier of the resultant location.

9. The computer system of claim 8 wherein creating comprises:

receiving a selection of the data to be moved within the storage area network;

identifying operations required to perform the movement of each element of the selected data, wherein the operations required to move a particular element of the selected data are grouped as a task; and

creating an operational order for all operations within each task and all tasks.

10. The computer system of claim 8 comprising:

tracking movement of data during the execution of the migration plan by referring to the virtual identifiers associated with data being moved; and

storing the tracked movement in a track record.

11. The computer system of claim 10 comprising:

detecting an error during execution of the migration plan;

halting execution of the migration plan;

undoing any actions that resulted in the error by consulting the track record;

refining the migration plan to avoid the detected error; and

resuming execution of the migration plan as refined.

12. The computer system of claim 11 wherein detecting comprises:

detecting an error during execution of the migration plan, wherein the error includes movement of an element of data to a location that is not the destination location for that element of data;

and wherein undoing comprises:

undoing any actions that resulted in the error by consulting the track record and identifying differences between the destination location for an element of data and the resultant location for that element of data by examining the related virtual identifiers.

13. The computer system of claim 8 wherein creating and assigning are performed through use of a migration and task schema, wherein executing is performed through use of an operational schema, and wherein verifying is performed through use of a verification schema.

14. A computer program product, stored on a non-transitory computer readable medium, to create a model of a system by reconciling information that describes physical elements of the system as objects in the model, the computer program product comprising computer program code for:

creating a migration plan, the migration plan to move data stored in the storage area network, wherein each element of data is to be moved from a source location to a destination location according to a mapping therebetween;

assigning a virtual identifier to each mapping according to the migration plan, each virtual identifier associated with the source location and the destination location according to the mapping of each respective element of data;

executing the migration plan, wherein upon completion of the movement of an element of data, the virtual identifier for the mapping of that element of data is assigned to a resultant location to which that element of data is moved; and

verifying, upon completion of the execution of the migration plan, the movement of the data by comparing, for each element of data, the virtual identifier of the mapping and the virtual identifier of the resultant location.

15. The computer program product of claim 14 wherein creating comprises:

receiving a selection of the data to be moved within the storage area network;

identifying operations required to perform the movement of each element of the selected data, wherein the operations required to move a particular element of the selected data are grouped as a task; and

creating an operational order for all operations within each task and all tasks.

16. The computer program product of claim 15 wherein identifying comprises:

identifying operations required to perform the movement of the selected data by accessing a relational mapping of the storage area network and its components stored within a repository.

17. The computer program product of claim 14 comprising:

tracking movement of data during the execution of the migration plan by referring to the virtual identifiers associated with data being moved; and

storing the tracked movement in a track record.

18. The computer program product of claim 17 comprising:

detecting an error during execution of the migration plan;

halting execution of the migration plan;

undoing any actions that resulted in the error by consulting the track record;

refining the migration plan to avoid the detected error; and

resuming execution of the migration plan as refined.

19. The computer program product of claim 18 wherein detecting comprises:

detecting an error during execution of the migration plan, wherein the error includes movement of an element of data to a location that is not the destination location for that element of data;

and wherein undoing comprises:

undoing any actions that resulted in the error by consulting the track record and identifying differences between the destination location for an element of data and the resultant location for that element of data by examining the related virtual identifiers.

20. The computer program product of claim 14 wherein creating and assigning are performed through use of a migration and task schema, wherein executing is performed through use of an operational schema, and wherein verifying is performed through use of a verification schema.

Assignments (10)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061753/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061324/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 3, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL, L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058216/0001 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 29, 2016
From: EMC CORPORATION
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 040203/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040134/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 27, 2009
From: NAGARAJAN, SUNDARESAN
To: EMC CORPORATION
Reel/Frame 022163/0807 →
Continuity (1)
Related Publication 20100082543A1 · Apr 1, 2010