US 11,842,176 B2
System and method for performing parallel and distributed analysis of program code to generate dependency graphs for executing extract transform load transformations
Malik Faisal Ahmed, Agoura Hills, CA (US); Manoj S. Daniel, Maharashtra (IN); Sachin Dev, Telangana (IN); Rakesh Reddy Karra, Westlake Village, CA (US); Kushvanth Kondabolu, Oak Park, CA (US); and Srinivasa Varada Pawan Kumar Kodakandla Sesha, Telangana (IN)
Assigned to BANK OF AMERICA CORPORATION, Charlotte, NC (US)
Filed by BANK OF AMERICA CORPORATION, Charlotte, NC (US)
Filed on Nov. 12, 2021, as Appl. No. 17/525,035.
Prior Publication US 2023/0153086 A1, May 18, 2023
Int. Cl. G06F 8/41 (2018.01)
CPC G06F 8/433 (2013.01) [G06F 8/427 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A system for performing parallel and distributed analysis of program code to generate directed graphs for executing extract transform load transformations, the system comprising:
at least one network communication interface;
at least one non-transitory storage device; and
at least one processing device coupled to the at least one non-transitory storage device and the at least one network communication interface, wherein the at least one processing device is configured to:
identify that a user has initiated request for analysis of a program code, via a compiler interface associated with a compiler;
extract a syntax tree associated with the program code from the compiler;
perform parallel and distributed analysis of the program code based on the syntax tree;
generate a directed graph based on performing parallel and distributed analysis of the program code, wherein the directed graph comprises metadata associated with the program code and calculations associated with each of one or more nodes associated with the directed graph;
store the directed graph in a cache memory,
identify that the user has initiated a second request for analysis of the program code, via the compiler interface;
determine, via a smart detection module, if cached directed graph stored in the cache memory is valid; and
allow or deny usage of the cached directed graph for performing transformation of data associated with the program code based on determining if the cached directed graph is valid.