Source: https://patents.justia.com/patent/10691654
Timestamp: 2020-08-07 01:53:52
Document Index: 494240178

Matched Legal Cases: ['art 700', 'Application No. 201480035250', 'Application No. 201480035259', 'Application No. 201480039080', 'Application No. 201480039083', 'Application No. 201480039070', 'Application No. 14745028', 'Application No. 201480035250', 'Application No. 201480039073', 'Application No. 14745012', 'Application No. 201480035349', 'Application No. 201480039070', 'Application No. 14745029', 'Application No. 18187354', 'Application No. 201480035250', 'Application No. 201430039070', 'Application No. 14745029', 'Application No. 201480035349']

US Patent for Automated database migration architecture Patent (Patent # 10,691,654 issued June 23, 2020) - Justia Patents Search
Justia Patents Data Extraction, Transformation, And Loading (etl)US Patent for Automated database migration architecture Patent (Patent # 10,691,654)
Jun 8, 2018 - Oracle
The present application is a continuation of U.S. patent application Ser. No. 13/937,868, filed Jul. 9, 2013, the entire contents of which are hereby incorporated by reference for all purposes. The present application is also related to the following co-pending and commonly assigned U.S. Patent Applications:
U.S. patent application Ser. No. 13/937,977, filed Jul. 9, 2013 by Higginson and entitled “METHOD AND SYSTEM FOR REDUCING INSTABILITY WHEN UPGRADING SOFTWARE;”
U.S. patent application Ser. No. 13/938,061, filed Jul. 9, 2013 by Davis and entitled “CONSOLIDATION PLANNING SERVICES FOR SYSTEMS MIGRATION;”
U.S. patent application Ser. No. 13/938,066, filed Jul. 9, 2013 by Davis and entitled “MIGRATION SERVICES FOR SYSTEMS;”
U.S. patent application Ser. No. 13/937,885, filed Jul. 9, 2013 by Higginson et al. and entitled “DATABASE MODELING AND ANALYSIS;”
U.S. patent application Ser. No. 13/937,344, filed Jul. 9, 2013 by Raghunathan et al. and entitled “CLOUD SERVICES LOAD TESTING AND ANALYSIS;”
U.S. patent application Ser. No. 13/937,483, filed Jul. 9, 2013 by Raghunathan et al. and entitled “CLOUD SERVICES PERFORMANCE TUNING AND BENCHMARKING;”
U.S. patent application Ser. No. 13/937,988, filed Jul. 9, 2013 by Buehne et al. and entitled “SOLUTION TO GENERATE A SCRIPTSET FOR AN AUTOMATED DATABASE MIGRATION;”
U.S. patent application Ser. No. 13/937,545, filed Jul. 9, 2013 by Buehne et al. and entitled “ONLINE DATABASE MIGRATION;”
U.S. patent application Ser. No. 13/937,486, filed Jul. 9, 2013 by Buehne et al. and entitled “DYNAMIC MIGRATION SCRIPT MANAGEMENT;” and
U.S. patent application Ser. No. 13/937,970, filed Jul. 9, 2013 by Masterson et al. and entitled “ADVANCED CUSTOMER SUPPORT SERVICES—ADVANCED SUPPORT CLOUD PORTAL,”
In some embodiments, the support gateway 306 may collect performance information and configuration data related to the source and/or target databases 304, 308, and the remote operations center 312 may then use that performance information to perform a pre-migration analysis, generate migration scripts, and generate a migration plan that are customized for the customer IT infrastructure 302. As will be described below, the customer may be be able to provide and/or adjust parameters that influence the migration plan in order to customize the database migration. The remote operations center 312 may provide an interface referred to herein as a “cloud portal,” “support cloud portal,” and/or “portal” 314. The portal 314 may present the customer with an interface to select the source/target databases 304, 308, view the migration plan and pre-migration analysis, provide parameters to adjust the migration plan, and review the final migration plan before migration begins.
FIG. 7 illustrates a flowchart 700 of a method for performing a pre-migration analysis and generating a migration plan, according to one embodiment. The pre-migration analysis may be used to analyze the source databases and to identify ways in which they can be reconfigured on the target databases in order to optimize performance. In some embodiments, the method for performing pre-migration analysis may receive inputs from a cloud modeling service. This service allows users to specify target and source databases, and as a result, the modeling service provides an analysis of how the data objects on the source system can be configured to operate on the target database systems. For example, the modeling service may provide recommendations that certain databases should be combined onto a single system, such as an Exedata system from Oracle™. This may be part of a Platform-as-a-Service (PaaS) and/or a Database-as-a-Service (DaaS) product, where the cloud service can combine several databases into a single database on a managed platform. It will be understood that any aspect of the cloud modeling service may be used as part of the pre-migration analysis. The full details of the cloud-based modeling service are described in the co-assigned U.S. patent application Ser. No. 13/937,885, entitled “Database Modeling and Analysis for Prospective Migration” and filed concurrently with the present application on Jul. 9, 2013, the entire disclosure of which is hereby incorporated by reference for all purposes.
receiving, at a cloud-based system, data associated with the one or more source databases and the one or more target databases;
generating, at the cloud-based system, a plurality of migration scripts that transfer a plurality of objects from the one or more source databases to the one or more target databases, based on the data associated with the one or more source databases and the one or more target databases;
displaying, through a user interface, a migration plan comprising: an order in which the plurality of migration scripts will be executed during migration to minimize downtime during migration of the one or more source databases; and indications of which of the plurality of migration scripts can be executed in parallel;
while migrating the plurality of objects, receiving an input through the user interface adjusting an amount of parallel processing during the migration; and
while migrating the plurality of objects, scaling up or down the number of migration scripts executed in parallel based on the input received through the user interface.
2. The method of claim 1, wherein the migration plan displayed through the user interface further comprises a graph illustrating:
an amount of data in the one or more source databases that can be compressed on the one or more target databases; and
an amount of data in the one or more source databases that cannot be compressed on the one or more target databases.
3. The method of claim 2, wherein the migration plan displayed through the user interface further comprises a table illustrating how much of the amount of data in the one or more source databases that can be compressed on the one or more target databases includes compressed indexes.
4. The method of claim 1, wherein the migration plan displayed through the user interface further comprises a graph illustrating a total number of import/export jobs in the migration plan.
5. The method of claim 1, wherein the migration plan displayed through the user interface further comprises a graph illustrating:
a number of tables in the one or more source databases that will be transferred by boat export/import;
a number of tables in the one or more source databases that will be transferred by datapump; and
a number of tables in the one or more source databases that will be transferred by separate scripts.
6. The method of claim 1, further comprising generating a pre-migration analysis for the plurality of objects stored in the one or more source databases based on the data associated with the one or more source databases and the one or more target databases.
7. The method of claim 6, wherein the pre-migration analysis comprises:
classifying the of plurality objects, identifying installed database options, and identifying complex objects that require special handling while migrating the plurality of objects; and
8. The method of claim 1, wherein the cloud-based system is located remotely from the source databases and from the target databases and is configured to collect and analyze data from the source databases and from the target databases through a gateway.
9. The method of claim 1, wherein the migration plan further comprises timing constraints that dictate when each of the plurality of migration scripts can be executed.
10. The method of claim 1, further comprising, after migrating the plurality of objects, validating the plurality of objects on the one or more target databases.
12. The method of claim 1, further comprising presenting a real-time migration report through the user interface, wherein the real-time migration report indicates progress while migrating the plurality of objects from the one or more source databases to one or more target databases according to the migration plan.
14. The method of claim 1 further comprising determining, based on the data associated with the one or more source databases and the one or more target databases, which of the plurality of migration scripts can be executed in parallel during migration.
15. A non-transitory computer-readable memory comprising a sequence of instructions which, when executed by one or more processors, causes the one or more processors to perform operations comprising:
receiving, at a cloud-based system, data associated with one or more source databases and one or more target databases;
16. The non-transitory computer-readable memory of claim 15, comprising additional instructions that cause the one or more processors to perform additional operations comprising presenting a post-migration report through the user interface, wherein the post-migration report comprises data resulting from validating of the plurality of objects on the one or more target databases.
17. The non-transitory computer-readable memory of claim 15, comprising additional instructions that cause the one or more processors to perform additional operations comprising presenting a real-time migration report through the user interface, wherein the real-time migration report indicates progress while migrating the plurality of objects from the one or more source databases to one or more target databases according to the migration plan.
a memory communicatively coupled with and readable by the one or more processors and comprising a sequence of instructions which, when executed by the one or more processors, cause the one or more processors to perform operations comprising: receiving, at a cloud-based system, data associated with one or more source databases and one or more target databases; generating, at the cloud-based system, a plurality of migration scripts that transfer a plurality of objects from the one or more source databases to the one or more target databases, based on the data associated with the one or more source databases and the one or more target databases; displaying, through a user interface, a migration plan comprising: an order in which the plurality of migration scripts will be executed during migration to minimize downtime during migration of the one or more source databases; and indications of which of the plurality of migration scripts can be executed in parallel; while migrating the plurality of objects, executing a number of migration scripts in parallel, according to the migration plan; while migrating the plurality of objects, receiving an input through the user interface adjusting an amount of parallel processing during the migration; and while migrating the plurality of objects, scaling up or down the number of migration scripts executed in parallel based on the input received through the user interface.
19. The system of claim 18, wherein the memory comprises additional instructions that cause the one or more processors to perform additional operations comprising:
determining that one or more index files for the source databases should not be copied to the target databases; and
20. The system of claim 18, wherein migrating the plurality of objects is performed in response to a customer request for data migration, and
wherein the migration plan is generated preemptively, prior to the customer request for data migration, based on the data associated with the one or more source databases and the one or more target databases.
9176773 November 3, 2015 Fries et al.
9602599 March 21, 2017 Bhattacharya et al.
9736013 August 15, 2017 Markley et al.
9811527 November 7, 2017 Esposito et al.
10198255 February 5, 2019 Higginson et al.
10248671 April 2, 2019 Buehne et al.
20090012981 January 8, 2009 Kogoh
20120158821 June 21, 2012 Barros
20140195636 July 10, 2014 Karve
20150363396 December 17, 2015 Sengupta et al.
20160269371 September 15, 2016 Coimbatore
20180060313 March 1, 2018 Buehne et al.
20180157653 June 7, 2018 Wadhwa et al.
20180285353 October 4, 2018 Ramohalli Gopala Rao et al.
1545674 November 2004 CN
101322113 December 2008 CN
102662757 September 2012 CN
103297492 September 2013 CN
103530290 January 2014 CN
105324756 June 2019 CN
105324769 June 2019 CN
105359146 July 2019 CN
105393250 July 2019 CN
105359147 August 2019 CN
1611532 October 2008 EP
3019976 December 2018 EP
3418921 December 2018 EP
U.S. Appl. No. 13/937,868, Final Office Action date Apr. 22, 2016, 23 pages.
Charles, Bug Severity vs. Priority, Quality Intelligence Blog, Available Online at: http://quality-intelligence. blogspot.com/2010/08/bug-severity-vs-priority.html, Aug. 22, 2010, 6 pages.
Chinese Application No. CN201480035255.X, Notice of Decision to Grant dated Aug. 29, 2017.
Chinese Application No. CN201480035255.X, Office Action dated Feb. 27, 2017, 11 pages. (5 pages for the original document and 6 pages for the English translation).
Chinese Application No. CN201480035257.9, Notice of Decision to Grant dated Oct. 11, 2017.
Chinese Application No. CN201480035257.9, Office Action dated Apr. 6, 2017, 10 pages (5 pages for the original document and 5 pages for the English translation).
Chinese Application No. CN201480035259.8, Office Action dated Nov. 14, 2017, 17 pages (10 pages for the original document and 7 pages for the English translation).
Das et al., Albatross: Lightweight Elasticity in Shared Storage Databases for the Cloud Using Live Data Migration, 37th International Conference on Very Large Data Bases, Proceedings of the VLDB Endowment, vol. 4, No. 8, Available Online at: http://www.cs.ucsb.eduj-sudiptojpapers/albatross.pdf, Aug. 29, 2011, 12 pages.
European Application No. EP14745013.4, Office Action dated Apr. 30, 2018, 6 pages.
European Application No. EP14745014.2, Notice of Decision to Grant dated Feb. 22, 2018, 2 pages.
European Application No. EP14745014.2, Office Action dated Jan. 18, 2017, 8 pages.
European Application No. EP14745014.2, Office Action dated Apr. 5, 2017, 9 pages.
European Application No. EP14745015.9, Office Action dated May 14, 2018, 5 pages.
Miller, How to Score Customer Feedback/Bugs and Stores (for Agile), Configuration Management, May 17, 2013, pp. 1-15.
International Application No. PCT/US2014/040692, International Preliminary Report on Patentability dated Oct. 8, 2015, 7 pages.
To et al., Best Practices for Database Consolidation on Exadata Database Machine, Oracle, Oracle White Paper, Oct. 2013, 35 pages.
Vengurlekar, Best Practices for Database Consolidation in Private Clouds, Oracle, Oracle White Paper, Mar. 2012, 20 pages.
Wilton, A Look at Real Application Testing From a Customer's Perspective, Available online at: http://www.oracle.com/technetwork/oem/gridcontrol/overview/ratcust-perspectives-white-paper-o-132919.pdf, Jan. 1, 2007, 12 pages.
CN Application No. 201480035250.7 received an office action dated Jul. 5, 2018, 12 pages.
CN Application No. 201480035259.8 received an office action dated Jun. 14, 2018, 19 pages.
CN Application No. 201480039080.X received an office action dated Jul. 5, 2018, 19 pages.
CN Application No. 201480039083.3 received an office action dated Jul. 10, 2018, 30 pages.
U.S. Appl. No. 15/250,522, Corrected Notice of Allowability dated Jan. 11, 2019, 3 pages.
Chinese Application No. 201480039070.6, Office Action dated Jan. 14, 2019, 25 pages (10 pages of the original document and 15 pages of the English translation).
European Application No. 14745028.2, Office Action dated Feb. 13, 2019, 6 pages.
U.S. Appl. No. 13/937,885, Final Office Action dated Mar. 21, 2019, 23 pages.
U.S. Appl. No. 13/938,061, Final Office Action dated Mar. 8, 2019, 25 pages.
U.S. Appl. No. 15/175,213, Advisory Action dated Mar. 21, 2019, 5 pages.
Chinese Application No. 201480035250.7, Notice of Decision to Grant dated Mar. 7, 2019, 2 pages.
Chinese Application No. 201480039073.X, Notice of Decision to Grant dated Mar. 26, 2019, 2 pages.
European Application No. 14745012.6, Office Action dated Mar. 5, 2019, 4 pages.
Chinese Application No. 201480035349.7, Office Action dated Apr. 10, 2019, 7 pages (3 pages of Original Document and 4 pages of English Translation).
Chinese Application No. 201480039070.6, Office Action dated Mar. 26, 2019, 21 pages (9 pages of Original Document and 12 pages of English Translation).
U.S. Appl. No. 15/250,522 received a Corrected Notice of Allowability, dated Sep. 27, 2018, 2 pages.
European Application No. 14745029.0 received an Office Action dated Sep. 18, 2018, 8 pages.
European Application No. 18187354.8 received an Extended European Search Report dated Sep. 12, 2018, 6 pages.
Chinese Application No. 201480035250.7, Office Action dated Aug. 3, 2018, (7 pages of original document and 7 pages of English translation).
Chinese Application No. 201430039070.6 office action dated Aug. 6. 2018, 21 pages.
European Application No. EP14736122.4, received a Notice of Decision to Grant, dated Aug. 17, 2018, 2 pages.
U.S. Appl. No. 15/789,049, Final Office Action dated Sep. 6, 2018, 6 pages.
U.S. Appl. No. 13/938,061, Advisory Action dated May 24, 2019, 16 pages.
U.S. Appl. No. 15/670,473, Final Office Action dated Jun. 6, 2019, 12 pages.
European Application No. 14745029.0, Summons to Attend Oral Proceedings dated Apr. 25, 2019, 12 pages.
CN201480035259.8, Office Action dated Dec. 3, 2018, 15 pages.
CN201480039073.X, Office Action dated Dec. 10, 2018, 6 pages.
CN201480039083.3, Office Action dated Dec. 10, 2018, 6 pages.
EP14745029.0, Office Action dated Sep. 18, 2018, all pages.
PCT/US2017/032620, International Preliminary Report on Patentability dated Dec. 20, 2018, 10 pages.
U.S. Appl. No. 15/670,473, Non-Final Office Action dated Dec. 18, 2018, 12 pages.
U.S. Appl. No. 15/789,049, Notice of Allowance dated Nov. 15, 2018, 5 pages.
CN Patent Application No. CN201480039070.6, Office Action dated Jul. 31, 2019, 20 pages.
U.S. Appl. No. 13/937,885, Advisory Action dated Jul. 31, 2019, 17 pages.
Chinese Application No. 201480035349.7, Office Action dated Sep. 4, 2019, 8 pages (3 pages of Original Document and 5 pages of English Translation).
U.S. Appl. No. 15/175,213, Non-Final Office Action dated Sep. 19, 2019, 33 pages.
U.S. Appl. No. 15/670,473, Notice of Allowance dated Sep. 18, 2019, 8 pages.
Patent Publication Number: 20180293233
Inventors: Antony Higginson (Widnes), John Masterson (Navan), Sean Fitzpatrick (Brittas Bay), Peter Robertshaw (London), Elmar Spiegelberg (Bedburg), Stephan Buhne (Essen), Michael Weick (Heddesheim), Nick Balch (High Wycombe), Florin Popescu (Bucharest)
Primary Examiner: Van H Oberly
Application Number: 16/003,557
International Classification: G06F 16/21 (20190101);