IP Library Granted Patent US 12,430,285
Granted Patent B2
US 12,430,285 · App. 17/083,993 · Granted Sep 30, 2025

System and method for planning and configuring a file system migration

Inventors: Alfred G. Prinz, III (Austin, TX); Fountain L Ray, III (Austin, TX); Douglas Tharon Heath (Austin, TX)
Assignee: NetApp, Inc.
G06F16/119
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 12,430,285
App. No.
17/083,993
Granted
Sep 30, 2025
Kind
B2
Abstract

A migration plan is created that is based at least in part on an operator input. The resources of a destination file system are provisioned based on the migration plan. One or more processes to migrate the source file system for the provisioned resources of the destination file system are then configured based on the migration plan.

Claims (45)

1. A method comprising:

identifying a plurality of file system objects of a source file system for migration to a destination file system based upon a migration plan constructed for transforming one or more source file system objects from a source file context path and a source file type to a destination file context path and a destination file type as one or more migrated file system objects;

reformatting a logical structure of a source policy collection for the one or more source file system objects based upon the migration plan to create a destination policy collection for the one or more migrated file system objects for optimizing the destination file system, wherein the reformatting comprises:

de-duplicating policy entries within the source policy collection to create an equivalent set of policy statements for inclusion within the destination policy collection based on how an architecture of a destination filer hosting the destination file system applies policy entries to defined file system objects, wherein the de-duplicating groups multiple policy entries into a logically equivalent policy entry formatted according to a structure and syntax of how the destination file system applies the policy entries to defined file system objects; and

migrating, based upon the migration plan, the plurality of file system objects from the source file system to the destination file system as migrated file system objects which includes the one or more migrated file system objects.

2. The method of claim 1 , wherein the source file system has a different architecture than the destination file system.

3. The method of claim 1 , comprising:

migrating the plurality of file system objects over a plurality of sessions.

4. The method of claim 1 , comprising:

generating multiple sessions for migrating the plurality of file system objects.

5. The method of claim 1 , comprising:

migrating a first subset of file system objects, of the plurality of file system objects, corresponding to a first object container during a first session.

6. The method of claim 5 , comprising:

migrating a second subset of file system objects, of the plurality of file system objects, corresponding to a second object container during a second session.

7. The method of claim 1 , comprising:

migrating a first file system object from an object container on the source file system to a corresponding object container on the destination file system.

8. The method of claim 1 , comprising:

executing a walker to evaluate resources of a source filer hosting the source file system to identify the plurality of file system objects.

9. The method of claim 8 , wherein the walker executes an interface to access a log to identify the plurality of file system objects.

10. The method of claim 8 , wherein the walker executes a representational state transfer (REST) interface to access a health file to identify the plurality of file system objects.

11. The method of claim 8 , comprising:

executing the walker to identify structure information about the plurality of file system objects.

12. The method of claim 8 , comprising:

executing the walker to identify organization information about the plurality of file system objects.

13. The method of claim 8 , wherein the walker executes a Zephyr Application Program Interface (ZAPI) to identify export files associated with the source filer.

14. The method of claim 13 , comprising:

utilizing the export files to identify the source policy collection on the source filer for the one or more source file system objects.

15. A non-transitory computer-readable medium that stores instruction being executable by a processor of a computer system to cause the computer system to perform operations that comprise:

identifying a plurality of file system objects of a source file system for migration to a destination file system based upon a migration plan constructed for transforming one or more source file system objects from a source file context path and a source file type to a destination file context path and a destination file type as one or more migrated file system objects;

reformatting a logical structure of a source policy collection for the one or more source file system objects based upon the migration plan to create a destination policy collection for the one or more migrated file system objects for optimizing the destination file system, wherein the reformatting comprises:

de-duplicating policy entries within the source policy collection to create an equivalent set of policy statements for inclusion within the destination policy collection based on how an architecture of a destination filer hosting the destination file system applies policy entries to defined file system objects, wherein the de-duplicating groups multiple policy entries into a logically equivalent policy entry formatted according to a structure and syntax of how the destination file system applies the policy entries to defined file system objects; and

migrating, based upon the migration plan, the plurality of file system objects from the source file system to the destination file system as migrated file system objects which includes the one or more migrated file system objects.

16. The non-transitory computer-readable medium of claim 15 , wherein the operations comprise:

executing a walker to evaluate resources of a source filer hosting the source file system to identify the plurality of file system objects.

17. The non-transitory computer-readable medium of claim 16 , wherein the operations comprise:

executing the walker to identify information regarding types of the plurality of file system objects.

18. The non-transitory computer-readable medium of claim 16 , wherein a first file system object of the plurality of file system objects comprises a container.

19. A computer system comprising:

a memory that stores a set of instructions; and

a processor that executes the instructions to:

identify a plurality of file system objects of a source file system for migration to a destination file system based upon a migration plan constructed for transforming one or more source file system objects from a source file context path and a source file type to a destination file context path and a destination file type as one or more migrated file system objects; and

reformat a logical structure of a source policy collection for the one or more source file system objects based upon the migration plan to create a destination policy collection for the one or more migrated file system objects for optimizing the destination file system, wherein the reformatting comprises:

de-duplicate policy entries within the source policy collection to create an equivalent set of policy statements for inclusion within the destination policy collection based on how an architecture of a destination filer hosting the destination file system applies policy entries to defined file system objects, wherein the de-duplicating groups multiple policy entries into a logically equivalent policy entry formatted according to a structure and syntax of how the destination file system applies the policy entries to defined file system objects; and

migrate, based upon the migration plan, the plurality of file system objects from the source file system to the destination file system as migrated file system objects which includes the one or more migrated file system objects.

20. The computer system of claim 19 , wherein a first file system object of the plurality of file system objects comprises a container.

Continuity (2)
Continuation 14456978 · Aug 11, 2014
Related Publication 20210109890A1 · Apr 15, 2021
References Cited (197)
US 5432912A · Kihara · 1995 [cited by applicant]
US 5592611A · Midgely et al. · 1997 [cited by applicant]
US 5710885A · Bondi · 1998 [cited by applicant]
US 5778389A · Pruett et al. · 1998 [cited by applicant]
US 5893140A · Vahalia · 1999 [cited by applicant]
US 5937406A · Balabine et al. · 1999 [cited by applicant]
US 6324581B1 · Xu et al. · 2001 [cited by applicant]
US 6377958B1 · Orcutt · 2002 [cited by applicant]
US 6401093B1 · Anand et al. · 2002 [cited by applicant]
US 6658540B1 · Sicola et al. · 2003 [cited by applicant]
US 6658650B1 · Bates · 2003 [cited by applicant]
US 6938039B1 · Bober et al. · 2005 [cited by applicant]
US 7035907B1 · Decasper et al. · 2006 [cited by applicant]
US 7069278B2 · Telkowski et al. · 2006 [cited by applicant]
US 7149858B1 · Kiselev · 2006 [cited by applicant]
US 7197490B1 · English · 2007 [cited by applicant]
US 7203731B1 · Coates et al. · 2007 [cited by applicant]
US 7444335B1 · Colrain et al. · 2008 [cited by applicant]
US 7571168B2 · Bahar et al. · 2009 [cited by applicant]
US 7574443B2 · Bahar et al. · 2009 [cited by applicant]
US 7603372B1 · Honicky, Jr. et al. · 2009 [cited by applicant]
US 7653699B1 · Colgrove et al. · 2010 [cited by applicant]
US 7698306B2 · Watanabe et al. · 2010 [cited by applicant]
US 7769723B2 · Zheng et al. · 2010 [cited by applicant]
US 7814131B1 · Haynes · 2010 [cited by examiner]
US 7844584B1 · Griess · 2010 [cited by applicant]
US 7904466B1 · Valencia · 2011 [cited by examiner]
US 7925629B2 · Webman et al. · 2011 [cited by applicant]
US 7953819B2 · Liang et al. · 2011 [cited by applicant]
US 8078816B1 · Thoppai et al. · 2011 [cited by applicant]
US 8117244B2 · Marinov et al. · 2012 [cited by applicant]
US 8281360B2 · Flewallen et al. · 2012 [cited by applicant]
US 8285817B1 · Balasubramanian et al. · 2012 [cited by applicant]
US 8326798B1 · Driscoll et al. · 2012 [cited by applicant]
US 8346966B1 · Phatak et al. · 2013 [cited by applicant]
US 8452856B1 · Lent · 2013 [cited by examiner]
US 8484164B1 · Sivakumar et al. · 2013 [cited by applicant]
US 8655848B1 · Leverett et al. · 2014 [cited by applicant]
US 8676980B2 · Kreeger et al. · 2014 [cited by applicant]
US 9116914B1 · Muthirisavenugopal et al. · 2015 [cited by applicant]
US 9305071B1 · Bono et al. · 2016 [cited by applicant]
US 10853333B2 · Beard et al. · 2020 [cited by applicant]
US 10860529B2 · Prinz, III et al. · 2020 [cited by applicant]
US 20020032751A1 · Bharadwaj · 2002 [cited by applicant]
US 20020059451A1 · Haviv · 2002 [cited by applicant]
US 20020078174A1 · Sim et al. · 2002 [cited by applicant]
US 20020124079A1 · Pulsipher · 2002 [cited by applicant]
US 20020133491A1 · Sim et al. · 2002 [cited by applicant]
US 20020143984A1 · Hudson Michel · 2002 [cited by applicant]
US 20020156613A1 · Geng et al. · 2002 [cited by applicant]
US 20020174194A1 · Mooney et al. · 2002 [cited by applicant]
US 20030009480A1 · Lin et al. · 2003 [cited by applicant]
US 20030028514A1 · Lord et al. · 2003 [cited by applicant]
US 20030078946A1 · Costello et al. · 2003 [cited by applicant]
US 20030097454A1 · Yamakawa et al. · 2003 [cited by applicant]
US 20030158862A1 · Eshel et al. · 2003 [cited by applicant]
US 20030177107A1 · Brown et al. · 2003 [cited by applicant]
US 20030182313A1 · Federwisch et al. · 2003 [cited by applicant]
US 20040049702A1 · Subramaniam et al. · 2004 [cited by applicant]
US 20040054850A1 · Fisk · 2004 [cited by applicant]
US 20040078467A1 · Grosner et al. · 2004 [cited by applicant]
US 20040123154A1 · Lippman et al. · 2004 [cited by applicant]
US 20040133577A1 · Miloushev et al. · 2004 [cited by applicant]
US 20040250113A1 · Beck · 2004 [cited by applicant]
US 20040267830A1 · Wong et al. · 2004 [cited by applicant]
US 20050010838A1 · Davies et al. · 2005 [cited by applicant]
US 20050075856A1 · Wozniak et al. · 2005 [cited by applicant]
US 20050125503A1 · Iyengar et al. · 2005 [cited by applicant]
US 20050192918A1 · DeLorme et al. · 2005 [cited by applicant]
US 20050193245A1 · Hayden et al. · 2005 [cited by applicant]
US 20060004765A1 · Anderson et al. · 2006 [cited by applicant]
US 20060010445A1 · Peterson et al. · 2006 [cited by applicant]
US 20060015507A1 · Butterworth et al. · 2006 [cited by applicant]
US 20060015584A1 · Ocko et al. · 2006 [cited by applicant]
US 20060064474A1 · Feinleib et al. · 2006 [cited by applicant]
US 20060069665A1 · Yamakawa et al. · 2006 [cited by applicant]
US 20060179037A1 · Turner et al. · 2006 [cited by applicant]
US 20060206603A1 · Rajan et al. · 2006 [cited by applicant]
US 20060212481A1 · Stacey et al. · 2006 [cited by applicant]
US 20060224843A1 · Rao et al. · 2006 [cited by applicant]
US 20070022121A1 · Bahar et al. · 2007 [cited by applicant]
US 20070022129A1 · Bahar et al. · 2007 [cited by applicant]
US 20070038697A1 · Zimran et al. · 2007 [cited by applicant]
US 20070055703A1 · Zimran et al. · 2007 [cited by applicant]
US 20070083570A1 · Fineberg · 2007 [cited by applicant]
US 20070088702A1 · Fridella et al. · 2007 [cited by applicant]
US 20070094354A1 · Soltis · 2007 [cited by applicant]
US 20070150936A1 · Maes · 2007 [cited by applicant]
US 20070156791A1 · Everhart · 2007 [cited by examiner]
US 20070156989A1 · Man et al. · 2007 [cited by applicant]
US 20070168046A1 · Misawa et al. · 2007 [cited by applicant]
US 20070183224A1 · Erofeev · 2007 [cited by examiner]
US 20070185938A1 · Prahlad et al. · 2007 [cited by applicant]
US 20070198722A1 · Kottomtharayil et al. · 2007 [cited by applicant]
US 20070220248A1 · Bittlingmayer · 2007 [cited by examiner]
US 20070299975A1 · Daschakowsky et al. · 2007 [cited by applicant]
US 20080010411A1 · Yang et al. · 2008 [cited by applicant]
US 20080028007A1 · Ishii et al. · 2008 [cited by applicant]
US 20080040385A1 · Barrall et al. · 2008 [cited by applicant]
US 20080235300A1 · Nemoto et al. · 2008 [cited by applicant]
US 20080281908A1 · McCanne et al. · 2008 [cited by applicant]
US 20080294748A1 · Brown et al. · 2008 [cited by applicant]
US 20080306986A1 · Doyle, Sr. · 2008 [cited by applicant]
US 20090043823A1 · Iftode et al. · 2009 [cited by applicant]
US 20090067440A1 · Chadda et al. · 2009 [cited by applicant]
US 20090106255A1 · Lacapra et al. · 2009 [cited by applicant]
US 20090150593A1 · Hamilton et al. · 2009 [cited by applicant]
US 20090157846A1 · Shimozono et al. · 2009 [cited by applicant]
US 20090182835A1 · Aviles et al. · 2009 [cited by applicant]
US 20090182836A1 · Aviles et al. · 2009 [cited by applicant]
US 20090182945A1 · Aviles et al. · 2009 [cited by applicant]
US 20090222509A1 · King et al. · 2009 [cited by applicant]
US 20090240784A1 · Soltis · 2009 [cited by applicant]
US 20090271412A1 · Lacapra et al. · 2009 [cited by applicant]
US 20090300739A1 · Nice et al. · 2009 [cited by applicant]
US 20090319586A1 · Clifton et al. · 2009 [cited by applicant]
US 20100023674A1 · Aviles · 2010 [cited by applicant]
US 20100054129A1 · Kuik et al. · 2010 [cited by applicant]
US 20100082774A1 · Pitts · 2010 [cited by applicant]
US 20100083675A1 · Merritt · 2010 [cited by applicant]
US 20100095348A1 · Foster et al. · 2010 [cited by applicant]
US 20100121945A1 · Gerber et al. · 2010 [cited by applicant]
US 20100217869A1 · Esteban et al. · 2010 [cited by applicant]
US 20100274825A1 · Nemoto et al. · 2010 [cited by applicant]
US 20100274981A1 · Ichikawa · 2010 [cited by applicant]
US 20100293412A1 · Sakaguchi et al. · 2010 [cited by applicant]
US 20100312861A1 · Kolhi et al. · 2010 [cited by applicant]
US 20100332401A1 · Prahlad et al. · 2010 [cited by applicant]
US 20110016085A1 · Kuo et al. · 2011 [cited by applicant]
US 20110022812A1 · Van Der Linden et al. · 2011 [cited by applicant]
US 20110055299A1 · Phillips · 2011 [cited by applicant]
US 20110066668A1 · Guarraci · 2011 [cited by applicant]
US 20110082836A1 · Wang et al. · 2011 [cited by applicant]
US 20110138116A1 · Lipinski et al. · 2011 [cited by applicant]
US 20110184907A1 · Schrock et al. · 2011 [cited by applicant]
US 20110196842A1 · Timashev et al. · 2011 [cited by applicant]
US 20110213813A1 · Leventhal et al. · 2011 [cited by applicant]
US 20110231458A1 · Sutoh et al. · 2011 [cited by applicant]
US 20110289287A1 · Yamamoto et al. · 2011 [cited by applicant]
US 20110320436A1 · Hokanson · 2011 [cited by applicant]
US 20120005193A1 · Nemoto et al. · 2012 [cited by applicant]
US 20120011176A1 · Aizman · 2012 [cited by applicant]
US 20120011254A1 · Jamjoom et al. · 2012 [cited by applicant]
US 20120016838A1 · Arai et al. · 2012 [cited by applicant]
US 20120041829A1 · Rothschild et al. · 2012 [cited by applicant]
US 20120059864A1 · Bandyopadhyay et al. · 2012 [cited by applicant]
US 20120102286A1 · Holt et al. · 2012 [cited by applicant]
US 20120117328A1 · Mckean et al. · 2012 [cited by applicant]
US 20120131289A1 · Taguchi et al. · 2012 [cited by applicant]
US 20120143825A1 · Boehm et al. · 2012 [cited by applicant]
US 20120150799A1 · Matsuzawa · 2012 [cited by applicant]
US 20120324110A1 · Kohli · 2012 [cited by applicant]
US 20130007216A1 · Fries et al. · 2013 [cited by applicant]
US 20130019301A1 · Reddy et al. · 2013 [cited by applicant]
US 20130036128A1 · Ben-Tsion et al. · 2013 [cited by applicant]
US 20130054530A1 · Baker et al. · 2013 [cited by applicant]
US 20130097680A1 · Bendapudi et al. · 2013 [cited by applicant]
US 20130110778A1 · Taylor et al. · 2013 [cited by applicant]
US 20130132544A1 · Krishnan et al. · 2013 [cited by applicant]
US 20130155902A1 · Feng et al. · 2013 [cited by applicant]
US 20130227048A1 · Xie et al. · 2013 [cited by applicant]
US 20130232312A1 · Kono · 2013 [cited by examiner]
US 20130290542A1 · Watt et al. · 2013 [cited by applicant]
US 20130322298A1 · Alexander, Jr. et al. · 2013 [cited by applicant]
US 20130325804A1 · Bachar et al. · 2013 [cited by applicant]
US 20130332612A1 · Cai et al. · 2013 [cited by applicant]
US 20130339547A1 · Nath et al. · 2013 [cited by applicant]
US 20140052812A1 · Ozawa · 2014 [cited by applicant]
US 20140059013A1 · Chao · 2014 [cited by examiner]
US 20140129667A1 · Ozawa · 2014 [cited by applicant]
US 20140133577A1 · Lim et al. · 2014 [cited by applicant]
US 20140165176A1 · Ow · 2014 [cited by applicant]
US 20140281514A1 · Erofeev · 2014 [cited by examiner]
US 20140298454A1 · Heng et al. · 2014 [cited by applicant]
US 20150019479A1 · Buehne · 2015 [cited by examiner]
US 20150020059A1 · Davis · 2015 [cited by applicant]
US 20150207872A1 · Stiemerling et al. · 2015 [cited by applicant]
US 20150356078A1 · Kishimoto et al. · 2015 [cited by applicant]
US 20150373105A1 · Okada et al. · 2015 [cited by applicant]
US 20160004720A1 · Tabaaloute · 2016 [cited by examiner]
US 20160041995A1 · Prinz, III et al. · 2016 [cited by applicant]
US 20160041996A1 · Prinz, III et al. · 2016 [cited by applicant]
US 20160179795A1 · Beard et al. · 2016 [cited by applicant]
US 20160246648A1 · Kamath et al. · 2016 [cited by applicant]
US 20160321338A1 · Isherwood et al. · 2016 [cited by applicant]
US 20210026819A1 · Beard et al. · 2021 [cited by applicant]
WO 2013022582A2 · 2013 [cited by applicant]
“Power4System Design for High Reliability”, Mar. 2002, Douglas C. Bossen, Joel M. Tendler and Kevin Reick, IEEE Micro Magazine, vol. 22 (2), pp. 16-24. [cited by applicant]
Int. Search Report/Written Opinion cited in Application No. PCT/US2014/053011 dated Dec. 11, 2014, 10 pgs. [cited by applicant]
“Managing Data Retention Policies at Scale”, Oct. 2012, J. Li, S.Singhal, R. Swantimathan and A.H. Karp, IEEE Transactions on Browse Journals & Magazines Network & Service Man, vol. 9 (4), pp. 393-406. [cited by applicant]
Microsoft Computer Dictionary, Fifth Edition (5th ed.), Microsoft Press, Redmond, WA, USA, 2002, p. 348. [cited by applicant]
“NSF Version 3: Design and Implementation”, 1994, Brian Pawlowski, Chet Jaszczak, Peter Staubach, Carl Smith, Diane Lebel and David Hitz, In Proceedings of the Summer 1994 USENIX Technical Conference, Reprinted from the… [cited by applicant]
“Security Considerations When Designing a Distributed File System Using Object Storage Devices”, 2002, Benjamin C. Reed, Mark A. Smith and Dejan Diklie, First International Security in Storage Workshop, Reprinted from t… [cited by applicant]
“DoublePlay: Parallelizing Sequential Logging and Replay”, Feb. 2012, Kaushik Veeraraghavan, Dongyoon Lee, Benjamin Wester, Jessica Ouyang, Peter M. Chen, Jason F. Flinn and Satish Narayanasamy, ACM Transactions Compute… [cited by applicant]
“On Asynchronous Enforcement of Security Policies in ”Nomadic“ Storage Facilities”, May 2013, Ilsun You, Luigi Catuogno, Auiello Castiglione and Giuseppe Cattaneo, Published in: Industrial Electronics (ISIE), IEEE Inter… [cited by applicant]
“The Multi-Queue Replacement Algorithm for Second Level Buffer Caches”, Jun. 2001, Yuanyuan Zhou and James F. Philbin, Proceedings of the 2001 USENIX Annual Technical Conference, 15 pgs. [cited by applicant]
Notice of Allowance mailed on May 17, 2023 for U.S. Appl. No. 17/060,519, filed Oct. 1, 2020, 2 pages. [cited by applicant]