IP Library Granted Patent US 12,236,360
Granted Patent B2
US 12,236,360 · App. 17/023,679 · Granted Feb 25, 2025

Shiftleft topology construction and information augmentation using machine learning

Inventors: Jinho Hwang (Ossining, NY); Larisa Shwartz (Greenwich, CT); Srinivasan Parthasarathy (White Plains, NY); Qing Wang (Chappaqua, NY); Michael Elton Nidd (Zurich, CH); Frank Bagehorn (Dottikon, CH); Jakub Krchák (Jindrichuv Hradec, CZ); Ota Sandr (Prague, CZ); Tomáš Ondrej (Prague, CZ); Michal Mýlek (Vrané nad Vltavou, CZ); Altynbek Orumbayev (Prague, CZ); Randall M George (Austin, TX)
Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
G06N5/04G06N20/00
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,236,360
App. No.
17/023,679
Granted
Feb 25, 2025
Kind
B2
Abstract

A method, a computer system, and a computer program product for a shiftleft topology construction is provided. Embodiments of the present invention may include collecting datasets. Embodiments of the present invention may include extracting topological entities from the datasets. Embodiments of the present invention may include correlating a plurality of data from the topological entities. Embodiments of the present invention may include mapping the topological entities. Embodiments of the present invention may include marking entry points for a plurality of subgraphs of the topological entities. Embodiments of the present invention may include constructing a topology graph.

Claims (54)

1. A method for implementing microservices using a shiftleft topology construction, the method comprises:

determining, based on collected datasets, operational characteristics associated with different microservices in a microservice framework to create predictive results for constructing topologies for the different microservices, wherein the determining further comprises training and using a machine learning model to retrieve the collected datasets and learn the operational characteristics;

extracting topological entities from the collected datasets using the machine learning (ML) model, wherein extracting the topological entities includes using machine learning algorithms associated with the machine learning model to identify keywords and topics that are distributed among the collected datasets and to determine pertinent topics among the identified topics associated with the different microservices;

correlating a plurality of data from the topological entities, wherein the correlating further comprises matching a same topological entity from a plurality of different sources associated with the collected datasets and identifying a correlation of the topological entities between the different microservices and to application program interface (API) routes;

mapping the topological entities, wherein the mapping further comprises mapping the topological entities to source code and identifying relationships from the mapped topological entities;

marking entry points for a plurality of subgraphs of the topological entities;

based on the correlating, the mapping, and the marking of the entry points for the topological entities, constructing an entire topology graph using the machine learning model, wherein nodes represent service endpoints and edges represent dependencies between the service endpoints; and

implementing the microservices using the constructed entire topology graph, wherein the implementing further comprises using the machine learning model to detect changes to the microservices based on updated datasets, updating the constructed entire topology graph based on the updated datasets, and subsequently predicting construction of other entire topology graphs and dependencies between the microservices.

2. The method of claim 1 , further comprising:

updating the datasets using static data; and

validating the updated datasets continuously.

3. The method of claim 2 , wherein validating the updated datasets continuously occurs when a configuration change occurs.

4. The method of claim 1 , further comprising:

updating the datasets using real-time data from subject matter experts (SMEs) as an active learning feedback model; and

validating the updated datasets continuously.

5. The method of claim 1 , wherein extracting the topological entities includes extracting information from authorization entities, login entities, frontend entities, elastic search entities and graph database entities.

6. The method of claim 1 , wherein marking the entry points for the plurality of subgraphs includes marking central processing units (CPUs) cycles of subgraphs for each of the entry points.

7. The method of claim 1 , wherein a learning model is used to obtain meta information from the plurality of subgraphs.

8. A computer system for implementing microservices using a shiftleft topology construction, the computer system comprises:

one or more processors, one or more computer-readable memories, one or more computer-readable tangible storage media, and program instructions stored on at least one of the one or more computer-readable tangible storage media for execution by at least one of the one or more processors via at least one of the one or more computer-readable memories, wherein the computer system is capable of performing a method comprising:

determining, based on collected datasets, operational characteristics associated with different microservices in a microservice framework to create predictive results for constructing topologies for the different microservices, wherein the determining further comprises training and using a machine learning model to retrieve the collected datasets and learn the operational characteristics;

extracting topological entities from the collected datasets using the machine learning (ML) model, wherein extracting the topological entities includes using machine learning algorithms associated with the machine learning model to identify keywords and topics that are distributed among the collected datasets and to determine pertinent topics among the identified topics associated with the different microservices;

correlating a plurality of data from the topological entities, wherein the correlating further comprises matching a same topological entity from a plurality of different sources associated with the collected datasets and identifying a correlation of the topological entities between the different microservices and to application program interface (API) routes;

mapping the topological entities, wherein the mapping further comprises mapping the topological entities to source code and identifying relationships from the mapped topological entities;

marking entry points for a plurality of subgraphs of the topological entities;

based on the correlating, the mapping, and the marking of the entry points for the topological entities, constructing an entire topology graph using the machine learning model, wherein nodes represent service endpoints and edges represent dependencies between the service endpoints; and

implementing the microservices using the constructed entire topology graph, wherein the implementing further comprises using the machine learning model to detect changes to the microservices based on updated datasets, updating the constructed entire topology graph based on the updated datasets, and subsequently predicting construction of other entire topology graphs and dependencies between the microservices.

9. The computer system of claim 8 , further comprising:

updating the datasets using static data; and

validating the updated datasets continuously.

10. The computer system of claim 9 , wherein validating the updated datasets continuously occurs when a configuration change occurs.

11. The computer system of claim 8 , further comprising:

updating the datasets using real-time data from subject matter experts (SMEs) as an active learning feedback model; and

validating the updated datasets continuously.

12. The computer system of claim 8 , wherein extracting the topological entities includes extracting information from authorization entities, login entities, frontend entities, elastic search entities and graph database entities.

13. The computer system of claim 8 , wherein marking the entry points for the plurality of subgraphs includes marking central processing units (CPUs) cycles of subgraphs for each of the entry points.

14. The computer system of claim 8 , wherein a learning model is used to obtain meta information from the plurality of subgraphs.

15. A computer program product for implementing microservices using a shiftleft topology construction, the computer program product comprises:

one or more computer-readable tangible storage media and program instructions stored on at least one of the one or more computer-readable tangible storage media, the program instructions executable by a processor to cause the processor to perform a method comprising:

determining, based on collected datasets, operational characteristics associated with different microservices in a microservice framework to create predictive results for constructing topologies for the different microservices, wherein the determining further comprises training and using a machine learning model to retrieve the collected datasets and learn the operational characteristics;

extracting topological entities from the collected datasets using the machine learning (ML) model, wherein extracting the topological entities includes using machine learning algorithms associated with the machine learning model to identify keywords and topics that are distributed among the collected datasets and to determine pertinent topics among the identified topics associated with the different microservices;

correlating a plurality of data from the topological entities, wherein the correlating further comprises matching a same topological entity from a plurality of different sources associated with the collected datasets and identifying a correlation of the topological entities between the different microservices and to application program interface (API) routes;

mapping the topological entities, wherein the mapping further comprises mapping the topological entities to source code and identifying relationships from the mapped topological entities;

marking entry points for a plurality of subgraphs of the topological entities;

based on the correlating, the mapping, and the marking of the entry points for the topological entities, constructing an entire topology graph using the machine learning model, wherein nodes represent service endpoints and edges represent dependencies between the service endpoints; and

implementing the microservices using the constructed entire topology graph, wherein the implementing further comprises using the machine learning model to detect changes to the microservices based on updated datasets, updating the constructed entire topology graph based on the updated datasets, and subsequently predicting construction of other entire topology graphs and dependencies between the microservices.

16. The computer program product of claim 15 , further comprising:

updating the datasets using static data; and

validating the updated datasets continuously.

17. The computer program product of claim 15 , further comprising:

updating the datasets using real-time data from subject matter experts (SMEs) as an active learning feedback model; and

validating the updated datasets continuously.

18. The computer program product of claim 15 , wherein extracting the topological entities includes extracting information from authorization entities, login entities, frontend entities, elastic search entities and graph database entities.

19. The computer program product of claim 15 , wherein a learning model is used to obtain meta information from the plurality of subgraphs.

Assignments (2)
CORRECTIVE ASSIGNMENT TO CORRECT THE NAME OF INVENTOR #9,TOMÁ? ONDREJ, THE NAME SHOULD READ TOMÁS ONDREJ PREVIOUSLY RECORDED ON REEL 053801 FRAME 0467. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Feb 15, 2021
From: HWANG, JINHO; SHWARTZ, LARISA; PARTHASARATHY, SRINIVASAN; WANG, QING; NIDD, MICHAEL ELTON; BAGEHORN, FRANK; KRCHÁK, JAKUB; SANDR, OTA; ONDREJ, TOMÁS; MÝLEK, MICHAL; ORUMBAYEV, ALTYNBEK; GEORGE, RANDALL M
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 055301/0749 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 17, 2020
From: HWANG, JINHO; SHWARTZ, LARISA; PARTHASARATHY, SRINIVASAN; WANG, QING; NIDD, MICHAEL ELTON; BAGEHORN, FRANK; KRCHÁK, JAKUB; SANDR, OTA; ONDREJ, TOMÁ?; MÝLEK, MICHAL; ORUMBAYEV, ALTYNBEK; GEORGE, RANDALL M
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 053801/0467 →
Continuity (1)
Related Publication 20220083876A1 · Mar 17, 2022
References Cited (58)
US 8473928B2 · Park · 2013 [cited by applicant]
US 9128749B1 · Wang · 2015 [cited by examiner]
US 9152402B2 · Scheidel · 2015 [cited by applicant]
US 10346338B2 · Hamilton, II · 2019 [cited by applicant]
US 10528617B2 · Poddar et al. · 2020 [cited by applicant]
US 11516310B2 · Ge · 2022 [cited by examiner]
US 20060080417A1 · Boutboul et al. · 2006 [cited by applicant]
US 20070016592A1 · Ferla et al. · 2007 [cited by applicant]
US 20110208567A9 · Roddy · 2011 [cited by examiner]
US 20110286337A1 · Olsson · 2011 [cited by applicant]
US 20140040279A1 · Beygelzimer et al. · 2014 [cited by applicant]
US 20140169223A1 · Kampmann et al. · 2014 [cited by applicant]
US 20150081883A1 · Katz · 2015 [cited by examiner]
US 20160105350A1 · Greifeneder et al. · 2016 [cited by applicant]
US 20160124742A1 · Rangasamy · 2016 [cited by applicant]
US 20170104636A1 · Vora · 2017 [cited by examiner]
US 20170286352A1 · Kumar et al. · 2017 [cited by applicant]
US 20170337232A1 · Caspi · 2017 [cited by examiner]
US 20180287876A1 · Strobel · 2018 [cited by examiner]
US 20180309637A1 · Gill · 2018 [cited by applicant]
US 20180316568A1 · Gill · 2018 [cited by examiner]
US 20190005163A1 · Farrell · 2019 [cited by applicant]
US 20190098106A1 · Mungel · 2019 [cited by applicant]
US 20190356555A1 · Bai · 2019 [cited by applicant]
US 20200177608A1 · Okunlola · 2020 [cited by applicant]
US 20200259715A1 · Schermann · 2020 [cited by applicant]
US 20210035661A1 · Neumann · 2021 [cited by examiner]
US 20210136178A1 · Casey · 2021 [cited by examiner]
US 20210149668A1 · Gupta · 2021 [cited by examiner]
US 20210392049A1 · Jeuk · 2021 [cited by examiner]
US 20220012633A1 · Molahalli · 2022 [cited by examiner]
US 20220176201A1 · Wehba · 2022 [cited by examiner]
CN 101040486A · 2007 [cited by applicant]
CN 101223524A · 2008 [cited by applicant]
CN 102308521A · 2012 [cited by applicant]
CN 102725733A · 2012 [cited by applicant]
CN 103577514A · 2014 [cited by applicant]
CN 103636172A · 2014 [cited by applicant]
CN 106982143A · 2017 [cited by applicant]
CN 108322351A · 2018 [cited by applicant]
CN 108701110A · 2018 [cited by applicant]
CN 110472107A · 2019 [cited by applicant]
CN 116210210A · 2023 [cited by applicant]
GB 2613484A · 2023 [cited by applicant]
WO 2022058919A1 · 2022 [cited by applicant]
https://web[.]archive[.]org/web/20191220135212/https://en[.]wikipedia[.]org/wiki/Elasticsearch. Accessible Dec. 20, 2019. (Year : 2019). [cited by examiner]
Ma, Shang-Pin, et al. “Using service dependency graph to analyze and test microservices.” 2018 IEEE 42nd Annual Computer Software and Applications Conference (COMPSAC). vol. 2. IEEE, 2018. (Year: 2018). [cited by examiner]
Ribeiro, Jose Lucas, et al. “A microservice based architecture topology for machine learning deployment.” 2019 IEEE International Smart Cities Conference (ISC2). IEEE, 2019. (Year: 2019). [cited by examiner]
Kotouza, Maria Th, Fotis E. Psomopoulos, and Pericles A. Mitkas. “A dockerized framework for hierarchical frequency-based document clustering on cloud computing infrastructures.” Journal of cloud computing 9.1 (2020): 2… [cited by examiner]
Cinque et al., “Advancing Monitoring in Microservices Systems”, 2019 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW), 2019 IEEE, pp. 122-123. [cited by applicant]
Cockcroft, “Twitter microservices map looks just like the Netflix one. We called this the “Death Star” diagram. #qconlondon”, https://twitter.com/adrianco/status/441883572618948608, Accessed on Apr. 3, 2020, 2 pages. [cited by applicant]
Penchikala et al., “Adoption of Cloud-Native Architecture, Part 1: Architecture Evolution and Maturity”, https://www.infoq.com/articles/cloud-native-architecture-adoption-part1/, Accessed on Apr. 6, 2020, 20 pages. [cited by applicant]
Pina et al., “Nonintrusive Monitoring of Microservice-based Systems” 2018 IEEE, 8 pages. [cited by applicant]
Tankovic et al., “ElaClo: A Framework for Optimizing Software Application Topology in the Cloud Environment,” Preprint submitted to Expert Systems with Applications, Jul. 10, 2017, 77 pages. [cited by applicant]
Wong, “The Case for Chaos”, https://www.slideshare.net/brucewong3/the-case-for-chaos, Published on Dec. 19, 2014, SlideShare, 10 pages. [cited by applicant]
Mell et al., “The NIST Definition of Cloud Computing”, Recommendations of the National Institute of Standards and Technology, Special Publication 800-145, Sep. 2011, 7 pages. [cited by applicant]
International Searching Authority, “Notification of Transmittal of the International Search Report and the Written Opinion of the International Searching Authority, or Declaration,” Patent Cooperation Treaty, Nov. 25, 2… [cited by applicant]
Chinese Patent Office, “First Office Action issued”, Apr. 27, 2024, 16 Pages, Application No. 202180055272.X. [cited by applicant]