IP Library Granted Patent US 12,299,477
Granted Patent B2
US 12,299,477 · App. 18/237,257 · Granted May 13, 2025

Systems and methods for determining data migration using an automated query analyzer tool

Inventors: Hari Vuppala (Concord, NC); Rahul Shashidhar Phadnis (Charlotte, NC); Pratap Dande (Saint Johns, FL); Sailesh Vezzu (Hillsborough, NJ); Amer Ali (Jersey City, NJ); Rahul Yaksh (Austin, TX); Elvis Nyamwange (Little Elm, TX); Brian Neal Jacobson (Los Angeles, CA); Erik Dahl (Newark, DE)
Assignee: BANK OF AMERICA CORPORATION
G06F9/485G06F16/24575
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,299,477
App. No.
18/237,257
Granted
May 13, 2025
Kind
B2
Abstract

Systems, computer program products, and methods are described herein for determining data migration using an automated query analyzer tool. The present disclosure is configured to identify at least one input data set associated with at least one application; analyze, by an automated query analyzer tool, the at least one input data set; classify data of the at least one data set as at least one of a standard classification or a non-standard classification; determine at least one metric for the data of the at least one data set; generate a query complexity score for the at least one application; generate an application migration complexity report and an application migration complexity report interface component; and transmit the application migration complexity report interface component to a user device and configure a graphical user interface of the user device with the application migration complexity report interface component.

Claims (58)

1. A system for determining data migration using an automated query analyzer tool, the system comprising:

a memory device with computer-readable program code stored thereon;

at least one processing device, wherein executing the computer-readable code is configured to cause the at least one processing device to perform the following operations:

identify at least one input data set associated with at least one application;

analyze, by an automated query analyzer tool, the at least one input data set;

classify, by the automated query analyzer tool, data of the at least one data set as at least one of a standard classification or a non-standard classification;

determine, by the automated query analyzer tool, at least one metric for the data of the at least one data set;

generate, based on the at least one metric, a query complexity score for the at least one application;

generate, based on the query complexity score for the at least one application, an application migration complexity report and an application migration complexity report interface component; and

transmit the application migration complexity report interface component to a user device and configure a graphical user interface of the user device with the application migration complexity report interface component.

2. The system of claim 1 , wherein the at least one input data set is identified from at least one of a database, an index, or a query log associated with the at least one application.

3. The system of claim 1 , wherein the standard classification comprises an American National Standard Institute (ANSI) classification, and wherein the non-standard classification comprises a non-ANSI classification.

4. The system of claim 1 , wherein the data comprises a query, and wherein the at least one metric for the data of the at least one data set comprises a metric for at least one of query join counts, datatype count, function count, or keyword count of the query.

5. The system of claim 1 , wherein the computer-readable code is configured to cause the at least one processing device to perform the following operations:

receive a user input identifying the at least one application for migration to a target database, wherein the user input comprises an identification of at least one input data type for the input data set; and

trigger, based on receiving the user input identifying the at least one application, the automated query analyzer tool to analyze the at least one input data set.

6. The system of claim 1 , wherein the computer-readable code is configured to cause the at least one processing device to perform the following operations:

generate a knowledgebase comprising training data associated with the at least one application, wherein the training data comprises at least one of a database specific keyword, a function, a datatype, the standard classification, or the non-standard classification;

apply the training data to the automated query analyzer tool; and

train, based on applying the training data, the automated query analyzer tool.

7. The system of claim 6 , wherein the training data comprises at least one user input.

8. The system of claim 1 , wherein the query complexity score is generated by a query complexity scoring model, and wherein the query complexity scoring model is specific for a database identifier of the at least one application.

9. The system of claim 1 , wherein the application migration complexity report is interactive.

10. The system of claim 1 , wherein the application migration complexity report comprises a ranked list of the at least one application based on the query complexity score.

11. A computer program product for determining data migration using an automated query analyzer tool, wherein the computer program product comprises at least one non-transitory computer-readable medium having computer-readable program code portions embodied therein, the computer-readable program code portions which when executed by a processing device are configured to cause the processor to perform the following operations:

identify at least one input data set associated with at least one application;

analyze, by an automated query analyzer tool, the at least one input data set;

classify, by the automated query analyzer tool, data of the at least one data set as at least one of a standard classification or a non-standard classification;

determine, by the automated query analyzer tool, at least one metric for the data of the at least one data set;

generate, based on the at least one metric, a query complexity score for the at least one application;

generate, based on the query complexity score for the at least one application, an application migration complexity report and an application migration complexity report interface component; and

transmit the application migration complexity report interface component to a user device and configure a graphical user interface of the user device with the application migration complexity report interface component.

12. The computer program product of claim 11 , wherein the data comprises a query, and wherein the at least one metric for the data of the at least one data set comprises a metric for at least one of query join counts, datatype count, function count, or keyword count of the query.

13. The computer program product of claim 11 , wherein the processing device is configured to cause the processor to perform the following operations:

receive a user input identifying the at least one application for migration to a target database, wherein the user input comprises an identification of at least one input data type for the input data set; and

trigger, based on receiving the user input identifying the at least one application, the automated query analyzer tool to analyze the at least one input data set.

14. The computer program product of claim 11 , wherein the processing device is configured to cause the processor to perform the following operations:

generate a knowledgebase comprising training data associated with the at least one application, wherein the training data comprises at least one of a database specific keyword, a function, a datatype, the standard classification, or the non-standard classification;

apply the training data to the automated query analyzer tool; and

train, based on applying the training data, the automated query analyzer tool.

15. The computer program product of claim 11 , wherein the query complexity score is generated by a query complexity scoring model, and wherein the query complexity scoring model is specific for a database identifier of the at least one application.

16. A computer implemented method for determining data migration using an automated query analyzer tool, the computer implemented method comprising:

identifying at least one input data set associated with at least one application;

analyzing, by an automated query analyzer tool, the at least one input data set;

classifying, by the automated query analyzer tool, data of the at least one data set as at least one of a standard classification or a non-standard classification;

determining, by the automated query analyzer tool, at least one metric for the data of the at least one data set;

generating, based on the at least one metric, a query complexity score for the at least one application;

generating, based on the query complexity score for the at least one application, an application migration complexity report and an application migration complexity report interface component; and

transmitting the application migration complexity report interface component to a user device and configure a graphical user interface of the user device with the application migration complexity report interface component.

17. The computer implemented method of claim 16 , wherein the data comprises a query, and wherein the at least one metric for the data of the at least one data set comprises a metric for at least one of query join counts, datatype count, function count, or keyword count of the query.

18. The computer implemented method of claim 16 , the computer implemented method further comprising:

receiving a user input identifying the at least one application for migration to a target database, wherein the user input comprises an identification of at least one input data type for the input data set; and

triggering, based on receiving the user input identifying the at least one application, the automated query analyzer tool to analyze the at least one input data set.

19. The computer implemented method of claim 16 , the computer implemented method further comprising:

generating a knowledgebase comprising training data associated with the at least one application, wherein the training data comprises at least one of a database specific keyword, a function, a datatype, the standard classification, or the non-standard classification;

applying the training data to the automated query analyzer tool; and

training, based on applying the training data, the automated query analyzer tool.

20. The computer implemented method of claim 16 , wherein the query complexity score is generated by a query complexity scoring model, and wherein the query complexity scoring model is specific for a database identifier of the at least one application.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 23, 2023
From: VUPPALA, HARI; PHADNIS, RAHUL SHASHIDHAR; DANDE, PRATAP; VEZZU, SAILESH; ALI, AMER; YAKSH, RAHUL; NYAMWANGE, ELVIS; JACOBSON, BRIAN NEAL; DAHL, ERIK
To: BANK OF AMERICA CORPORATION
Reel/Frame 064687/0872 →
Continuity (1)
Related Publication 20250068461A1 · Feb 27, 2025
References Cited (25)
US 7991893B2 · Kudo · 2011 [cited by applicant]
US 8285849B2 · Oeda · 2012 [cited by applicant]
US 8533415B2 · Suzuki · 2013 [cited by applicant]
US 8875160B2 · Hunt · 2014 [cited by applicant]
US 8914789B2 · Barros · 2014 [cited by applicant]
US 9461969B2 · Watt · 2016 [cited by applicant]
US 9594590B2 · Hsu · 2017 [cited by applicant]
US 9648134B2 · Frank · 2017 [cited by applicant]
US 9686281B2 · Bulusu · 2017 [cited by applicant]
US 9971622B2 · Bjorkengren · 2018 [cited by applicant]
US 10135749B2 · Soni · 2018 [cited by examiner]
US 10489344B1 · Shaw · 2019 [cited by examiner]
US 10555146B2 · Zhu · 2020 [cited by applicant]
US 10594789B2 · Bai · 2020 [cited by applicant]
US 10684999B2 · Mayer · 2020 [cited by examiner]
US 11153394B1 · Eberlein · 2021 [cited by examiner]
US 11483384B2 · Ranjan · 2022 [cited by applicant]
US 11582165B1 · Suit · 2023 [cited by applicant]
US 11797395B2 · Wang · 2023 [cited by applicant]
US 20180191599A1 · Balasubramanian · 2018 [cited by applicant]
US 20200409904A1 · Jha · 2020 [cited by examiner]
US 20210028981A1 · Subramanian · 2021 [cited by applicant]
AU 2015256010A1 · 2016 [cited by applicant]
AU 2019340314A1 · 2020 [cited by applicant]
CN 112153098A · 2020 [cited by applicant]