Prosecution Insights
Last updated: April 19, 2026
Application No. 18/052,078

CLOUD COMPUTING RESOURCE MANAGEMENT

Non-Final OA §103
Filed
Nov 02, 2022
Examiner
CASTANEDA, IVAN ALEXANDER
Art Unit
2195
Tech Center
2100 — Computer Architecture & Software
Assignee
SAP SE
OA Round
3 (Non-Final)
67%
Grant Probability
Favorable
3-4
OA Rounds
3y 9m
To Grant
99%
With Interview

Examiner Intelligence

Grants 67% — above average
67%
Career Allow Rate
2 granted / 3 resolved
+11.7% vs TC avg
Strong +100% interview lift
Without
With
+100.0%
Interview Lift
resolved cases with interview
Typical timeline
3y 9m
Avg Prosecution
34 currently pending
Career history
37
Total Applications
across all art units

Statute-Specific Performance

§101
14.7%
-25.3% vs TC avg
§103
52.8%
+12.8% vs TC avg
§102
6.9%
-33.1% vs TC avg
§112
18.6%
-21.4% vs TC avg
Black line = Tech Center average estimate • Based on career data from 3 resolved cases

Office Action

§103
DETAILED ACTION This Office Action is in response to claims filed on 02/02/2026. Claims 1 and 6-24 are pending. Notice of Pre-AIA or AIA Status The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . Response to Arguments Applicant’s arguments, see pages 9-10, filed 01/23/2026, with respect to 35 U.S.C 101 rejection of claims 1-20 have been fully considered and are persuasive. The rejection of 12/04/2025 has been withdrawn. Applicant’s arguments with respect to claims 1, 8, and 15 have been considered but are moot because the new ground of rejection does not rely on any reference applied in the prior rejection of record for any teaching or matter specifically challenged in the argument. Claim Rejections - 35 USC § 103 The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action: A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made. Claims 1 and 6-24 are rejected under 35 U.S.C. 103 as being unpatentable over Nor et al. Pub. No. US 2018/0032588 A1 (hereinafter Nor) in view of Tiwary et al. Pub. No. US 2022/0154227 A1 (hereinafter Tiwary) in view of Nagpal et al. Pub. No. US 2022/0156114 A1 (hereinafter Nagpal). With regard to claim 1, Nor teaches one or more non-transitory computer-readable media storing computer executable instructions that, when executed by at least one processor, perform a method for tracking ephemeral assets …, the method comprising ([0015], The present disclosure provides a system and technique for data analysis suitable for these applications and others. Many examples are capable of mining large databases of time-varying data (ephemeral assets) to look for direct relationships as well as higher order relationships; [0075], In some examples, a processing resource utilizes instructions stored on a non-transitory computer-readable memory resource to perform at least some of these processes): creating a … graph model of the ephemeral assets implemented by the plurality of virtual machines provisioned by the cloud system, wherein the knowledge graph comprises a plurality of nodes ([0024], Referring first to FIG. 1A, the environment 100 includes a plurality of entities (nodes) 102. Each entity 103 may represent any suitable element capable of having a relationship with another entity) and a plurality of relationships between the plurality of nodes ([0025], The entities 102 may have various relationships with one another, and property, event, or interaction between entities 102 may give rise to a relationship. For example, a relationship may exist between two or more entities 102 that are interacting (e.g., communicating) with each other); determining properties of the … graph model ([0030], The adjacency lists 206 include entries 208 that recorded relationship data for relationships between the associated entity and another entity. In various example where the relationship pertains to communication sessions between entities 102, an entry (property of the node) 208 in an adjacency list 206 records at least one of: a timestamp associated with a request or response, a network identifier such as a Media Access Control (MAC) address, a protocol identifier, a protocol version, a transaction identifier, a Domain name Service Flag, a nameserver identifier, and/or other relevant data) for a first node at a first time ([0031], Entries 208 of the adjacency lists 206 may be stored in order according to the temporal attribute. In example FIG. 2A, elements are added to the right-hand side of the adjacency lists 206, and within an adjacency list 206, an element to the right represents a newer relationship than an element to the left; [0063], Referring to block 706, the query engine 310 or other suitable computing resource identifies the start of the window of time within the adjacency list 206 associated with the first entity 102. Referring to block 708, the query engine 310 may use the start to identify a first entry of the adjacency list 206 for analysis. The first entry of the adjacency list 206 is checked in block 710 to determine whether it occurs within the window of time by comparing a time associated with the first entry with an end of the window); creating a first adjacency list for the first node at the first time, ([0064], If the first entry is within the window of time, the query engine 310 updates a first order set 306 (first adjacency list associated with the first window of time) based on the entry as shown in block 712 of FIG. 7A. The first order set 306 may record an identifier of the entity 102 having the relationship with the first entity (first node) 102, information regarding the relationship, and/or other suitable information) wherein the first adjacency list includes properties of the knowledge graph model ([0025], The entities 102 may have various relationships with one another, and property, event, or interaction between entities 102 may give rise to a relationship. For example, a relationship may exist between two or more entities 102 that are interacting (e.g., communicating) with each other. A relationship may exist when two or more entities 102 experience a particular event. A relationship may exist between two or more entities 102 that share a common property) for the first node at the first time ([0030], The adjacency list 206 include entries 208 that record relationship da for relationships between the associated entity and another entity … an entry 08 in an adjacency list 206 records at least one of: a timestamp associated with a request or response, a network identifier such as a media access control (MAC) address, a protocol identifier, a protocol, version, a transaction identifier, a Domain Name Service flag, a nameserver identifier, and/or other relevant data (Examiner notes: Properties recorded at a first time period); determining properties of the … graph model for the first node at a second time, wherein the second time is after the first time ([0066], The method 700 may proceed to block 710, where the query engine 310 may analyze the next entry to determine whether it occurs within the window time substantially as described above … In the alternative, if it is determined in block 710 that the entry is after the end of the window of time, then the first order set 306 already contains information regarding all of the relationships within the first entity 102 within the time window (if any); [0067], When the first order set 306 has been populated with the direct relationship with the first entity … the method may proceed to block 718 of FIG. 7B, where the query engine 310 determines whether to continue to obtain higher order relationships (second time) based on a depth associated with the query. If the query depth specifies a higher order relationship, the query engine 310 or other computing resource may identify direct relationships with entities 102 identified in the last iteration of blocks 706-716. To do so, in block 720, the query engine 310 identifies an adjacency list 206 associated with an entity 102 in the lower order set compiled in the previous iteration of blocks 706-716. In an example, the query engine 310 identifies second order relationships using an adjacency list 206 associated with of an entity 102 in the first order set 306); creating a second adjacency list for the first node at the second time, ([0068], Referring to block 722, the query engine 310 may determine the start of the window of time in the adjacency list 206 associated with the lower order set. This may be performed substantially as described in block 706; [0069], Once the window of time has been located, the query engine may identify entries of the adjacency list 206 for analysis and determine whether to update a higher order set (e.g., second order set 308) based on the entries. As shown in block 724, this may be substantially as described in blocks 708-714) wherein the second adjacency list includes the properties of the knowledge graph model ([0030], In various examples where the relationships pertain to communication sessions between entries 102, an entry 208 in an adjacency list records at least one of: a timestamp associated with a request or response) for the first node at the second time ([0031], each entry 208 may record one or more temporal attributes (e.g., a timestamp, a start time, an end time, a duration, etc.) that represent a time associated with the respective relationship (Examiner notes: such that an adjacency list for a node maintaining properties are temporally recorded for multiple time periods); and comparing the first adjacency list to the second adjacency list to determine at least one change that occurred between the first time and the second time ([0027], It is noted that interactions, properties, and other attributes that affect relationships may be dynamic and change over time. Entities are added and lost. Communication is started and stopped Program are launched and terminated. Accordingly, in a time-varying environment, the state of the relationships at first point in time may differ significantly from the state of relationships at a second point in time. In that regard, whereas FIG. 1 represents the state of the environment 100 at a first point in time, FIG. 1B represents the state of the environment 100 at a second point in time. Comparing the figures, the lines 104 that represent the state of the relationships between the entities 102 at the second point in time may be significantly different from the lines 104 at the first point in time; [0071], In such examples, different markers represent different types of entities 102. For example, a first type of marker may be used to represent the first and second entities 102 specified by the query. A second type of marker 804 may be used to represent any entities having a first order relationship with the specified entities 102 (e.g., the entities 102 of the first order set 306). A third type of marker 806 may be used to represent any entities having a second order relationship with the specified entities 102 (e.g., the entities 102 of the second order set 308); [0074], The time controls 824 may include buttons 826 and 828 to increment and decrement the currently displayed time, respectively, as well as a button 830 to control an animated presentation of the relationships that automatically moves through the time window of time. As the animated presentation is played, markers representing entities and lines representing relationships may appear and disappear (changes that have occurred between the first and second time) and the information pane(s) 812 may be updated accordingly) Nor teaches the study of computers and their relationships with their peers over time and the desirability to monitor such communication between computing entities to balance network load or identify points of failure, for example (Nor, [0013]). However, Nor does not explicitly teach that the networked system of computers is within a cloud environment or that their graph model is explicitly a knowledge graph model in a cloud environment. Tiwary teaches a cloud environment ([0064], FIG. 8 depicts an example cloud computing environment 800 in which the described technologies can be implemented, including, e.g., the system disclosed above and other systems herein), the method comprising: providing a cloud system that implements the cloud environments ([0064], FIG. 8, FIG. 8 depicts an example cloud computing environment 800 in which the described technologies can be implemented, including, e.g., the system disclosed above and other systems herein. The cloud computing environment 800 comprises cloud computing services 810), wherein the cloud system comprises a plurality of physical computer systems that each include a processor and a memory ([0064], The cloud computing services 810 can comprise various types of cloud computing resources, such as a computer server, data storage repositories, networking resources, etc. The cloud computing services 810 can be centrally located (E.g., provided by a data center of a business or organization) or distributed different locations, such as different data centers and/or located in different cities or countries); … a knowledge graph ([0033], Generally, a knowledge graph is a special type of database that maintains knowledge or information in a graph form. A typical knowledge graph includes a plurality of nodes (also referred to as "vertices") representing objects and a plurality of edges connecting the nodes, wherein the edges represent relationship between the objects; [0070], constructing a tenancy knowledge graph comprising a plurality of tenant nodes representing respective tenants in a multitenant computing environment) of the ephemeral assets implemented by the plurality of virtual machines provisioned by the cloud system ([0033], Generally, a knowledge graph is a special type of database that maintains knowledge or information in a graph form. A typical knowledge graph includes a plurality of nodes (also referred to as “vertices”) representing objects and a plurality of edges connecting the nodes, wherein the edges represent relationship between the objects) … managing the ephemeral assets implemented by the plurality of virtual machines provisioned by the cloud system ([0011], Often a multitenant computing system needs to decide the placement of a tenant across a number of host machines or placement points … if the tenants are placed on application containers which run on a virtual machine, then the placement points can be virtual machines, along with physical machines) in accordance with the at least one change having been determined ([0044], After transforming tenant property nodes to property vectors, the tenant nodes can also be converted into vector representations, i.e., tenant vectors, which can then be grouped into one or more clusters based on similarity assessment of tenant vectors; [0048], tenant nodes within one cluster are determined to be more similar to each other than to other tenant nodes outside the cluster. Thus, tenant represented by the tenant nodes within a cluster can be deemed to be similar tenants in terms of their behaviors such as issues, performance metrics, workload. FO example, if Tenant A incurred a specific read heavy workload and Tenant B also incurred the same workload, the neural network 630 can embed Tenant A and Tenant B to corresponding tenant vectors that are in close or near-by vector space (Examiner notes: such that management of these assets can be rearranged in response to load condition changes). It would have been obvious to one of ordinary skill in the art at the time the invention was filed to apply the teachings of Tiwary with the teachings of Nor in order to provide a computer readable medium that teaches a knowledge base in a cloud environment. The motivation for applying Tiwary teaching with Nor teaching is to provide a computer readable medium that allows for the advantages of a cloud computing environment directed towards reduced cost, improved efficiency, and flexibility to leverage an intelligent tenant management system that predictably improves resource savings through appropriate computing placement and increases security (Tiwary, [0012]). Nor and Tiwary are analogous art directed towards graph analysis. Therefore, it would have been obvious for one of ordinary skill in the art to combine Tiwary with Nor to teach the claimed invention in order to provide a system that leverages the improvements of analyzing entity behavior and relationships over time, with the benefits of using a dynamic cloud environment. Tiwary reasonably teaches intelligent management of a multitenant computing system that comprises a cloud computing environment (Tiwary, FIG. 8 and [0064]). However, the combination does not explicitly teach a cloud computing system provisioning a plurality of virtual machines implementing ephemeral container assets. Nagpal teaches provisioning, by the cloud system, a plurality of virtual machines ([0021], FIG. 2 illustrates a clustered virtualization environment 200 according to particular embodiments … The clustered virtualization environment 200 includes user virtual machines (VMs) 212-222 executing on host machines 202, 204, and 206), wherein the plurality of virtual machines implements the ephemeral assets of the cloud system ([0021], The user VMs may be workloads executing at the clustered virtualization environment and monitored by the manager 108 of the central computing system 108), wherein the plurality of virtual machines implements a plurality of containers ([0027], Workloads instantiated at the hyperconverged cluster 200 may be, in various examples, user VMs, containers, or other abstractions providing access to resources of the hyperconverged cluster), and wherein each ephemeral asset is associated with a given container of a given virtual machine ([0042], The workload data 440 may include various information about the workloads of applications managed by the workload manager 432. For example, workload data 440 may include characteristics of the workload (e.g., whether the workload is stateful or stateless), demand patterns of the workload, a fingerprint of the workload, performance indicators of the workload in various computing environments, location of data used by the workload, security of privacy parameters, existing instances of the workload, available configurations of the workload (e.g., container or VM), etc.) It would have been obvious to one of ordinary skill in the art at the time the invention was filed to apply the teachings of Nagpal with the teachings of Nor and Tiwary in order to provide a computer readable medium that teaches a cloud system comprising of a plurality of virtual machines associated with a plurality of containers and ephemeral cloud assets. The motivation for applying Nagpal teaching with Nor and Tiwary teaching is to provide a computer readable medium that allows for the known techniques of routine cloud management operations of virtual machines and containers to be integrated with a knowledge graph model tracking ephemeral cloud assets in a predictable manner, with reasonable expectation of success. Nor, Tiwary, and Nagpal are analogous art directed towards resource allocation. Therefore, it would have been obvious for one of ordinary skill in the art to combine Nagpal with Nor and Tiwary to teach the claimed invention in order to provide a cloud computing environment capable of performing routine cloud management operations with respect to resource recommendations generated by a machine learning apparatus. With regard to claim 21, Nagpal teaches wherein managing the ephemeral asset includes adding a new ephemeral asset, wherein the new ephemeral asset is implemented by the plurality of virtual machines provisioned by the cloud system ([0064], At block 606, the workload manager 432 generates, for each subset of workloads, a suggested instance for the workload based on the computing resource usage. For example, the workload manager may utilize the performance indicators and the provisioning model 436 to generate a suggested instance for a workload. For each inefficient workload, the workload manager 432 may utilize the provisioning model 436 and the performance indicators to identify one or more comparable workloads and generate a suggested resource allocation for the workload based on characteristics of the one or more comparable workloads). Rationale to claim 1 applied here. With regard to claim 22, Nagpal teaches wherein managing the ephemeral assets includes removing one of the ephemeral assets implemented by the plurality of virtual machines provisioned by the cloud system ([0064], At block 606, the workload manager 432 generates, for each subset of workloads, a suggested instance for the workload based on the computing resource usage … For example, the workload manager 432 may utilize the provisioning model 436 to suggest an instance of a workload with fewer allocated resources at the same computing environment for an overprovisioned workload (Examiner notes: such that requires suspending/deallocating the overprovisioned workload instance). Rationale to claim 1 applied here. With regard to claim 23, Nagpal teaches wherein managing the ephemeral assets includes provisioning a new virtual machine, wherein the plurality of virtual machines including the new virtual machine implement the ephemeral assets of the cloud system ([0050], Workload instances (e.g., workload instances 408 and 414) generally execute at a host machine through a host interface to access computing resources (e.g., memory and processing) of the host machine and/or computing resources available to the host machine, such as processors of other computing nodes in a cluster of computing nodes or processors or a cloud computing environment. For example, workload instances may be configured as a virtual machines running on a hypervisor acting as a host). Rationale to claim 1 applied here. With regard to claim 24, Tiwary teaches providing a machine learning model (FIG. 1, Neural Network 146; [0015], The tenant analyzer 140 can include a property vectorization engine 142, which is configured to transform the plurality of property nodes to corresponding property vectors. The tenant analyzer 140 can also have a random walk engine 144, which is configured to perform random walks traversing the tenancy knowledge graph, starting from the plurality of tenant nodes. Such random walks can be fed into a neural network 146 of the tenant analyzer 140 to generate a plurality of tenant vectors corresponding to the plurality of tenant nodes); and inputting the knowledge graph model into the machine learning model ([0045], In the depicted example, the tenancy knowledge graph 610 includes a plurality of tenant nodes 612, 614, 616, 618. The property nodes 618 can be transformed into respective property vectors, as noted above. In an example embodiment, the tenant vectorization and tenant clustering can be implemented by using a random walk graph network (GNN) 640 mechanism), wherein the machine learning model outputs a recommendation ([0049], As described herein, intelligent tenant management can be achieved based on the results of tenant clustering; [0050], For example, a tenant placement module (e.g., 162) can be configured to make intelligent tenant clustering.), Tiwary reasonable discusses tenant cluster placement based upon inputting a knowledge graph model of the cloud system into a machine learning model. However, Nor and Tiwary do not explicitly discuss that the recommendation includes the addition or removal of ephemeral assets. Nagpal teaches wherein the recommendation is one of adding a new ephemeral asset and removing one of the ephemeral assets ([0013], Various methods, described herein may also provide for automatic right sizing of instances. For example, once a recommendation is obtained, a new instance (e.g., virtual machine and/or container) for the workload may be deployed based on the recommendation; [0020], The manager 108 may make such recommendations responsive to user request and/or responsive to determination that the performance of the workload has fallen below a threshold and/or that performance improvement may be expected by movement to a different environment … The manager 108 may accordingly include and/or utilize a trained neural network). Rationale to claim 1 applied here. With regard to claim 6, Nor teaches the benefits of efficiently analyzing the behavior of computing entities for the purpose of backward-looking analysis and forward-looking predictions (Nor, [0012]). However, Nor does not explicitly teach the performance of providing a recommendation for node placement on a cloud environment based on knowledge graph analysis using machine learning. Tiwary teaches the non-transitory computer-readable media of claim 1, wherein the method further comprises: providing a recommendation to a user for where to add a new node to the cloud environment ([0050], For example, a tenant placement module (e.g., 162) can be configured to make intelligent tenant placement, i.e., based at least in part of the results of tenant clustering. In one embodiment, two tenants can be placed in two different host machines when two tenant nodes representing the two tenants are in the same tenant cluster. For example, if two tenants exhibit similar performance metrics and incurred similarly high workloads, these two tenants may be deemed to be similar based on the results tenant clustering. Accordingly, the two tenants can be assigned to two different host machines so that they would not compete for computing resources) based on analysis of the knowledge graph model using machine learning ([0047], In certain embodiments, the sequence of nodes traversed by a random walk starting from a tenant node can be fed into a neural network 630 (which can be one example embodiment of 146 depicted in FIG. 1) to generate a tenant vector corresponding to the tenant node. In one example embodiment, the neural network 630 can be configured to implement an embedding learning algorithm (e.g., word2vec, doc2vec) to convert the sequence of nodes traversed by a random walk into a corresponding tenant vector. As described herein, the neural network 630 is a self-supervised learning algorithm which can be trained to learn the relationships each node has with its adjoining nodes in a knowledge graph. Specifically, the neural network 630 can generate node embedding (i.e., a vector representing the node) based on local neighborhood of the node by aggregating information from the node's neighbors. The neural network 630 can be trained to learn a function which captures the relationship between the node and its local neighborhood, and the hidden layer of such neural network can return a vector representing the node (i.e., node embedding); [0048], Thus, a tenant classifier 650 (which can be one example embodiment of 148 depicted in FIG. 1) implementing a data clustering algorithm (e.g., DBSCAN, K-means, OPTICS, etc.) can be used to group the tenant nodes (e.g., 612, 614, 616, etc.) into one or more tenant clusters 660 (e.g., 662, 664, etc.) based on similarity assessment of the corresponding tenant vectors ( e.g., 642, 644, 646, etc.)). It would have been obvious to one of ordinary skill in the art at the time the invention was filed to apply the teachings of Tiwary with the teachings of Nor in order to provide a computer readable medium that teaches a recommendation for optimal location provisioning in accordance with analysis of the knowledge graph using machine learning. The motivation for applying Tiwary teaching with Nor teaching is to provide a computer readable medium that allows for tenant nodes to be properly clustered by behavior similarity, enabling optimization of computing resources, runtime tuning, and tenant security (Tiwary, [0053]). Nor and Tiwary are analogous art directed towards graph analysis. Therefore, it would have been obvious for one of ordinary skill in the art to combine Tiwary with Nor to teach the claimed invention in order to provide intelligent tenant management and placement through clustering tenant nodes of a knowledge graph. With regard to claim 7, Nor teaches the non-transitory computer-readable media of claim 1, wherein the method further comprises: determining properties of the … graph model for a second node at the first time ([0063], Referring to block 706, the query engine 310 or other suitable computing resource identifies the start of the window of time within the adjacency list 206 associated with the first entity 102. Referring to block 708, the query engine 310 may use the start to identify a first entry of the adjacency list 206 for analysis. The first entry of the adjacency list 206 is checked in block 710 to determine whether it occurs within the window of time by comparing a time associated with the first entry with an end of the window; [0066], The method may then proceed to block 716, where the processes of block 706-714 are repeated for an adjacency list 206 associated with the second entity (second node of the first determined time) 102); creating a first adjacency list for the second node at the first time ([0064], If the first entry is within the window of time, the query engine 310 updates a first order set 306 (first adjacency list associated with the first window of time) based on the entry as shown in block 712 of FIG. 7A. The first order set 306 may record an identifier of the entity 102 having the relationship with the first entity 102, information regarding the relationship, and/or other suitable information); determining properties of the … graph model for the second node at the second time ([0066], The method 700 may proceed to block 710, where the query engine 310 may analyze the next entry to determine whether it occurs within the window time substantially as described above … In the alternative, if it is determined in block 710 that the entry is after the end of the window of time, then the first order set 306 already contains information regarding all of the relationships within the first entity 102 within the time window (if any); [0067], When the first order set 306 has been populated with the direct relationship with the first entity … the method may proceed to block 718 of FIG. 7B, where the query engine 310 determines whether to continue to obtain higher order relationships based on a depth associated with the query. If the query depth specifies a higher order relationship, the query engine 310 or other computing resource may identify direct relationships with entities 102 identified (second node) in the last iteration of blocks 706-716 (Examiner notes: Inclusion of method step 716 demonstrates that instructions for creating a higher order set will additionally be repeated for the second node at the same times indicated in the query). To do so, in block 720, the query engine 310 identifies an adjacency list 206 associated with an entity 102 (second node) in the lower order set compiled in the previous iteration of blocks 706-716. In an example, the query engine 310 identifies second order relationships using an adjacency list 206 associated with of an entity 102 in the first order set 306); creating a second adjacency list for the second node at the second time ([0068], Referring to block 722, the query engine 310 may determine the start of the window of time in the adjacency list 206 associated with the lower order set. This may be performed substantially as described in block 706; [0069], Once the window of time has been located, the query engine may identify entries of the adjacency list 206 for analysis and determine whether to update a higher order set (e.g., second order set 308) based on the entries. As shown in block 724, this may be substantially as described in blocks 708-714); and comparing the first adjacency list for the second node to the second adjacency list for the second node to determine at least one change that occurred between the first time and the second time at the second node ([0071], In such examples, different markers represent different types of entities 102. For example, a first type of marker may be used to represent the first and second entities 102 specified by the query. A second type of marker 804 may be used to represent any entities having a first order relationship with the specified entities 102 (e.g., the entities 102 of the first order set 306). A third type of marker 806 may be used to represent any entities having a second order relationship with the specified entities 102 (e.g., the entities 102 of the second order set 308); [0074], The time controls 824 may include buttons 826 and 828 to increment and decrement the currently displayed time, respectively, as well as a button 830 to control an animated presentation of the relationships that automatically moves through the time window of time. As the animated presentation is played, markers representing entities and lines representing relationships may appear and disappear and the information pane(s) 812 may be updated accordingly). However, Nor does not explicitly that their graph model is a knowledge graph. Tiwary teaches the knowledge graph model ([0033], Generally, a knowledge graph is a special type of database that maintains knowledge or information in a graph form. A typical knowledge graph includes a plurality of nodes (also referred to as "vertices") representing objects and a plurality of edges connecting the nodes, wherein the edges represent relationship between the objects) which is substantially similar to claim 1, and therefore rejected with similar rationale. Examiner notes: It would be obvious for one of ordinary skill in the art to recognize that the computer-readable medium of claim 7 is being substantially recited again for a second node of the graph model in a cloud environment for the computer readable medium of claim 1. With regard to claim 8, Nor teaches a method for tracking ephemeral …, the method comprising ([0015], The present disclosure provides a system and technique for data analysis suitable for these applications and others. Many examples are capable of mining large databases of time-varying data to look for direct relationships as well as higher order relationships): creating a … graph model of the ephemeral assets implemented by the plurality of virtual machines provisioned by the cloud system, wherein the knowledge graph model comprises a plurality of nodes ([0024], Referring first to FIG. 1A, the environment 100 includes a plurality of entities (nodes) 102. Each entity 103 may represent any suitable element capable of having a relationship with another entity) and a plurality of relationships between the plurality of nodes ([0025], The entities 102 may have various relationships with one another, and property, event, or interaction between entities 102 may give rise to a relationship. For example, a relationship may exist between two or more entities 102 that are interacting (e.g., communicating) with each other); determining properties of the … graph model ([0030], The adjacency lists 206 include entries 2087 that recorded relationship data for relationships between the associated entity and another entity. In various example where the relationship pertains to communication sessions between entities 102, an entry (property of the node) 208 in an adjacency list 206 records at least one of: a timestamp associated with a request or response, a network identifier such as a Media Access Control (MAC) address, a protocol identifier, a protocol version, a transaction identifier, a Domain name Service Flag, a nameserver identifier, and/or other relevant data) for a first node at a first time ([0031], Entries 208 of the adjacency lists 206 may be stored in order according to the temporal attribute. In example FIG. 2A, elements are added to the right-hand side of the adjacency lists 206, and within an adjacency list 206, an element to the right represents a newer relationship than an element to the left; [0063], Referring to block 706, the query engine 310 or other suitable computing resource identifies the start of the window of time within the adjacency list 206 associated with the first entity 102. Referring to block 708, the query engine 310 may use the start to identify a first entry of the adjacency list 206 for analysis. The first entry of the adjacency list 206 is checked in block 710 to determine whether it occurs within the window of time by comparing a time associated with the first entry with an end of the window); creating a first adjacency list for the first node at the first time ([0064], If the first entry is within the window of time, the query engine 310 updates a first order set 306 (first adjacency list associated with the first window of time) based on the entry as shown in block 712 of FIG. 7A. The first order set 306 may record an identifier of the entity 102 having the relationship with the first entity 102, information regarding the relationship, and/or other suitable information), wherein the first adjacency list includes properties of the knowledge graph model ([0025], The entities 102 may have various relationships with one another, and property, event, or interaction between entities 102 may give rise to a relationship. For example, a relationship may exist between two or more entities 102 that are interacting (e.g., communicating) with each other. A relationship may exist when two or more entities 102 experience a particular event. A relationship may exist between two or more entities 102 that share a common property) for the first node at the first time ([0030], The adjacency list 206 include entries 208 that record relationship da for relationships between the associated entity and another entity … an entry 08 in an adjacency list 206 records at least one of: a timestamp associated with a request or response, a network identifier such as a media access control (MAC) address, a protocol identifier, a protocol, version, a transaction identifier, a Domain Name Service flag, a nameserver identifier, and/or other relevant data (Examiner notes: Properties recorded at a first time period); determining properties of the … graph model for the first node at a second time, wherein the second time is after the first time ([0066], The method 700 may proceed to block 710, where the query engine 310 may analyze the next entry to determine whether it occurs within the window time substantially as described above … In the alternative, if it is determined in block 710 that the entry is after the end of the window of time, then the first order set 306 already contains information regarding all of the relationships within the first entity 102 within the time window (if any); [0067], When the first order set 306 has been populated with the direct relationship with the first entity … the method may proceed to block 718 of FIG. 7B, where the query engine 310 determines whether to continue to obtain higher order relationships based on a depth associated with the query. If the query depth specifies a higher order relationship, the query engine 310 or other computing resource may identify direct relationships with entities 102 identified in the last iteration of blocks 706-716. To do so, in block 720, the query engine 310 identifies an adjacency list 206 associated with an entity 102 in the lower order set compiled in the previous iteration of blocks 706-716. In an example, the query engine 310 identifies second order relationships using an adjacency list 206 associated with of an entity 102 in the first order set 306); creating a second adjacency list for the first node at the second time ([0068], Referring to block 722, the query engine 310 may determine the start of the window of time in the adjacency list 206 associated with the lower order set. This may be performed substantially as described in block 706; [0069], Once the window of time has been located, the query engine may identify entries of the adjacency list 206 for analysis and determine whether to update a higher order set (e.g., second order set 308) based on the entries. As shown in block 724, this may be substantially as described in blocks 708-714), wherein the second adjacency list includes the properties of the knowledge graph model ([0030], In various examples where the relationships pertain to communication sessions between entries 102, an entry 208 in an adjacency list records at least one of: a timestamp associated with a request or response) for the first node at the second time ([0031], each entry 208 may record one or more temporal attributes (e.g., a timestamp, a start time, an end time, a duration, etc.) that represent a time associated with the respective relationship (Examiner notes: such that an adjacency list for a node maintaining properties are temporally recorded for multiple time periods); and comparing the first adjacency list to the second adjacency list to determine at least one change that occurred between the first time and the second time ([0027], It is noted that interactions, properties, and other attributes that affect relationships may be dynamic and change over time. Entities are added and lost. Communication is started and stopped Program are launched and terminated. Accordingly, in a time-varying environment, the state of the relationships at first point in time may differ significantly from the state of relationships at a second point in time. In that regard, whereas FIG. 1 represents the state of the environment 100 at a first point in time, FIG. 1B represents the state of the environment 100 at a second point in time. Comparing the figures, the lines 104 that represent the state of the relationships between the entities 102 at the second point in time may be significantly different from the lines 104 at the first point in time; [0071], In such examples, different markers represent different types of entities 102. For example, a first type of marker may be used to represent the first and second entities 102 specified by the query. A second type of marker 804 may be used to represent any entities having a first order relationship with the specified entities 102 (e.g., the entities 102 of the first order set 306). A third type of marker 806 may be used to represent any entities having a second order relationship with the specified entities 102 (e.g., the entities 102 of the second order set 308); [0074], The time controls 824 may include buttons 826 and 828 to increment and decrement the currently displayed time, respectively, as well as a button 830 to control an animated presentation of the relationships that automatically moves through the time window of time. As the animated presentation is played, markers representing entities and lines representing relationships may appear and disappear and the information pane(s) 812 may be updated accordingly). Nor teaches the study of computers and their relationships with their peers over time and the desirability to monitor such communication between computing entities to balance network load or identify points of failure, for example (Nor, [0013]). However, Nor does not explicitly teach that the networked system of computers is within a cloud environment or that their graph model is explicitly a knowledge graph model in a cloud environment. Tiwary teaches a cloud environment ([0064], FIG. 8 depicts an example cloud computing environment 800 in which the described technologies can be implemented, including, e.g., the system disclosed above and other systems herein), the method comprising: providing a cloud system that implements the cloud environment ([0064], FIG. 8, FIG. 8 depicts an example cloud computing environment 800 in which the described technologies can be implemented, including, e.g., the system disclosed above and other systems herein. The cloud computing environment 800 comprises cloud computing services 810), wherein the cloud system comprises a plurality of physic computer systems that each include a processor and a memory ([0064], The cloud computing services 810 can comprise various types of cloud computing resources, such as a computer server, data storage repositories, networking resources, etc. The cloud computing services 810 can be centrally located (E.g., provided by a data center of a business or organization) or distributed different locations, such as different data centers and/or located in different cities or countries); … a knowledge graph model ([0033], Generally, a knowledge graph is a special type of database that maintains knowledge or information in a graph form. A typical knowledge graph includes a plurality of nodes (also referred to as "vertices") representing objects and a plurality of edges connecting the nodes, wherein the edges represent relationship between the objects; [0070], constructing a tenancy knowledge graph comprising a plurality of tenant nodes representing respective tenants in a multitenant computing environment) of the ephemeral assets implemented by the plurality of virtual machines provisioned by the cloud system ([0033], Generally, a knowledge graph is a special type of database that maintains knowledge or information in a graph form. A typical knowledge graph includes a plurality of nodes (also referred to as “vertices”) representing objects and a plurality of edges connecting the nodes, wherein the edges represent relationship between the objects) … managing the ephemeral assets implemented by the plurality of virtual machines provisioned by the cloud system ([0011], Often a multitenant computing system needs to decide the placement of a tenant across a number of host machines or placement points … if the tenants are placed on application containers which run on a virtual machine, then the placement points can be virtual machines, along with physical machines) in accordance with the at least one change having been determined ([0044], After transforming tenant property nodes to property vectors, the tenant nodes can also be converted into vector representations, i.e., tenant vectors, which can then be grouped into one or more clusters based on similarity assessment of tenant vectors; [0048], tenant nodes within one cluster are determined to be more similar to each other than to other tenant nodes outside the cluster. Thus, tenant represented by the tenant nodes within a cluster can be deemed to be similar tenants in terms of their behaviors such as issues, performance metrics, workload. FO example, if Tenant A incurred a specific read heavy workload and Tenant B also incurred the same workload, the neural network 630 can embed Tenant A and Tenant B to corresponding tenant vectors that are in close or near-by vector space (Examiner notes: such that management of these assets can be rearranged in response to load condition changes) which is substantially similar to claim 1, and therefore rejected with similar rationale. Tiwary reasonably teaches intelligent management of a multitenant computing system that comprises a cloud computing environment (Tiwary, FIG. 8 and [0064]). However, the combination does not explicitly teach a cloud computing system provisioning a plurality of virtual machines implementing ephemeral container assets. Nagpal teaches provisioning, by the cloud system, a plurality of virtual machines ([0021], FIG. 2 illustrates a clustered virtualization environment 200 according to particular embodiments … The clustered virtualization environment 200 includes user virtual machines (VMs) 212-222 executing on host machines 202, 204, and 206), wherein the plurality of virtual machines implements the ephemeral assets of the cloud system ([0021], The user VMs may be workloads executing at the clustered virtualization environment and monitored by the manager 108 of the central computing system 108), wherein the plurality of virtual machines implements a plurality of containers ([0027], Workloads instantiated at the hyperconverged cluster 200 may be, in various examples, user VMs, containers, or other abstractions providing access to resources of the hyperconverged cluster), and wherein each ephemeral asset is associated with a given container of a given virtual machine ([0042], The workload data 440 may include various information about the workloads of applications managed by the workload manager 432. For example, workload data 440 may include characteristics of the workload (e.g., whether the workload is stateful or stateless), demand patterns of the workload, a fingerprint of the workload, performance indicators of the workload in various computing environments, location of data used by the workload, security of privacy parameters, existing instances of the workload, available configurations of the workload (e.g., container or VM), etc.) which is substantially similar to claim 1, and therefore rejected with similar rationale. Examiner notes: It would be obvious for one of ordinary skill in the art to recognize that the method of claim 8 is being substantially recited again as the method for the computer readable medium of claim 1. With regard to claim 9, Nor teaches the method of claim 8, wherein the properties include a timestamp corresponding to when the first node was added to the … graph model ([0031], Additionally or in the alternative, each entry 208 may record one or more temporal attributes (e.g., a timestamp, a start time, and end time, a duration, etc.) that represents a time associated with the respective relationships). However, Nor does not explicitly that their graph model is a knowledge graph. Tiwary teaches the knowledge graph model ([0033], Generally, a knowledge graph is a special type of database that maintains knowledge or information in a graph form. A typical knowledge graph includes a plurality of nodes (also referred to as "vertices") representing objects and a plurality of edges connecting the nodes, wherein the edges represent relationship between the objects) which is substantially similar to claim 2, and therefore rejected with similar rationale. Examiner notes: It would be obvious for one of ordinary skill in the art to recognize that the method of claim 9 is being substantially recited again as the method for the computer readable medium of claim 2. With regard to claim 10, Nor teaches the method of claim 9, further comprising displaying the at least one change to a user via a user interface ([0041], Accordingly, the user interface 316 may be operable to provide output to a user by way of any number of output devices including a monitor or other graphical display, a printer, a speaker, a haptic feedback device, etc. In various examples, the user interface 316 provides a representation of the entities 102 and their relationships recorded in the set of relationship instances 304, the first order set 306, the second order set 308, and/or other higher order sets of relationship instances by any suitable modality including graphically via a monitor or other display device; [0071], FIG. 8 is a schematic representation of a Graphical User Interface (GUI) 800 displaying a representation of a set of entries 102 and their relationships according to some examples of the present disclosure. The GUI 800 may be presented by a user interface 316 of FIG. 3 or other computing resource). With regard to claim 11, Nor teaches the method of claim 8, further comprising: saving the at least one change to a database for access by a user (FIG. 3, Relationship Data Store 302; [0037], The computing system 300 may include a relationship data store 302, which in turn, may include an aggregation of any number, capacity, and type of memory devices … The memory devices of the relationship data store 302 may store time-varying data structure 200 that records relationship between entities 102 as described above; [0038], The relationship data store 302 may also store a set of relationship instances 304 that records specific instances of a relationship between two or more entities 102 at various points in time. A technique for obtaining the set of relationship instances 304 from the time-varying data structure 200 is described in detail below. The relationship data store 302 may also store higher order sets of relationship instances (e.g., first order set 306, second order set 308, etc.). The higher order sets may store information regarding those entities 102 having a relationship with an entity in a lower order set in order to trace a chain of relationships through a number of hops) via a user interface ([0041], The user interface 316 of the computing system 300 is operable to receive the set of relationship instances 304, the first order set 306, the second order set 308, and/or higher order sets of relationship instances from the query engine 310 and/or the relationship data store 302 and to display a representation of this data to a user). With regard to claim 12, Nor teaches that nodes maintain entries of their properties (Nor, [0025]). Nor does not explicitly teach that those properties include at least one of CPU usage, memory usage, and cost. Tiwary teaches the method of claim 11, wherein the properties for each node include at least one of CPU usage, RAM usage, and cost ([0021], Certain tenant properties can also include performance metrics exhibited by the tenants 110. In one example embodiment, the performance metrics may include utilization rate of computing resources (e.g., CPUs, memories, etc.). For example, the performance metric of a tenant at a specific time instance may be characterized as 38% CPU utilization and 55% memory utilization, or denoted as {cpu: 38, mem: 55}) which is substantially similar to claim 5, and therefore rejected with similar rationale. Examiner notes: It would be obvious for one of ordinary skill in the art to recognize that the method of claim 12 is being substantially recited again as the method for the computer readable medium of claim 5. With regard to claim 13, Nor teaches the benefits of efficiently analyzing the behavior of computing entities for the purpose of backward-looking analysis and forward-looking predictions (Nor, [0012]). However, Nor does not explicitly teach the performance of providing a recommendation for node placement on a cloud environment based on knowledge graph analysis using machine learning Tiwary teaches the method of claim 8, further comprising: providing a recommendation to a user for where to add a new node to the cloud environment ([0050], For example, a tenant placement module (e.g., 162) can be configured to make intelligent tenant placement, i.e., based at least in part of the results of tenant clustering. In one embodiment, two tenants can be placed in two different host machines when two tenant nodes representing the two tenants are in the same tenant cluster. For example, if two tenants exhibit similar performance metrics and incurred similarly high workloads, these two tenants may be deemed to be similar based on the results tenant clustering. Accordingly, the two tenants can be assigned to two different host machines so that they would not compete for computing resources) based on analysis of the knowledge graph model using machine learning ([0047], In certain embodiments, the sequence of nodes traversed by a random walk starting from a tenant node can be fed into a neural network 630 (which can be one example embodiment of 146 depicted in FIG. 1) to generate a tenant vector corresponding to the tenant node. In one example embodiment, the neural network 630 can be configured to implement an embedding learning algorithm (e.g., word2vec, doc2vec) to convert the sequence of nodes traversed by a random walk into a corresponding tenant vector. As described herein, the neural network 630 is a self-supervised learning algorithm which can be trained to learn the relationships each node has with its adjoining nodes in a knowledge graph. Specifically, the neural network 630 can generate node embedding (i.e., a vector representing the node) based on local neighborhood of the node by aggregating information from the node's neighbors. The neural network 630 can be trained to learn a function which captures the relationship between the node and its local neighborhood, and the hidden layer of such neural network can return a vector representing the node (i.e., node embedding); [0048], Thus, a tenant classifier 650 (which can be one example embodiment of 148 depicted in FIG. 1) implementing a data clustering algorithm (e.g., DBSCAN, K-means, OPTICS, etc.) can be used to group the tenant nodes (e.g., 612, 614, 616, etc.) into one or more tenant clusters 660 (e.g., 662, 664, etc.) based on similarity assessment of the corresponding tenant vectors ( e.g., 642, 644, 646, etc.)) which is substantially similar to claim 6, and therefore rejected with similar rationale. Examiner notes: It would be obvious for one of ordinary skill in the art to recognize that the method of claim 13 is being substantially recited again as the method for the computer readable medium of claim 6. With regard to claim 14, the method of claim 8, further comprising: determining properties of the … graph model for a second node at the first time ([0063], Referring to block 706, the query engine 310 or other suitable computing resource identifies the start of the window of time within the adjacency list 206 associated with the first entity 102. Referring to block 708, the query engine 310 may use the start to identify a first entry of the adjacency list 206 for analysis. The first entry of the adjacency list 206 is checked in block 710 to determine whether it occurs within the window of time by comparing a time associated with the first entry with an end of the window; [0066], The method may then proceed to block 716, where the processes of block 706-714 are repeated for an adjacency list 206 associated with the second entity (node) 102); creating a first adjacency list for the second node at the first time ([0064], If the first entry is within the window of time, the query engine 310 updates a first order set 306 (first adjacency list associated with the first window of time) based on the entry as shown in block 712 of FIG. 7A. The first order set 306 may record an identifier of the entity 102 having the relationship with the first entity 102, information regarding the relationship, and/or other suitable information); determining properties of the knowledge graph model for the second node at the second time ([0066], The method 700 may proceed to block 710, where the query engine 310 may analyze the next entry to determine whether it occurs within the window time substantially as described above … In the alternative, if it is determined in block 710 that the entry is after the end of the window of time, then the first order set 306 already contains information regarding all of the relationships within the first entity 102 within the time window (if any); [0067], When the first order set 306 has been populated with the direct relationship with the first entity … the method may proceed to block 718 of FIG. 7B, where the query engine 310 determines whether to continue to obtain higher order relationships based on a depth associated with the query. If the query depth specifies a higher order relationship, the query engine 310 or other computing resource may identify direct relationships with entities 102 identified (second node) in the last iteration of blocks 706-716 (Examiner notes: Inclusion of method step 716 demonstrates that instructions for creating a higher order set will additionally be repeated for the second node at the same times indicated in the query). To do so, in block 720, the query engine 310 identifies an adjacency list 206 associated with an entity 102 (second node) in the lower order set compiled in the previous iteration of blocks 706-716. In an example, the query engine 310 identifies second order relationships using an adjacency list 206 associated with of an entity 102 in the first order set 306); creating a second adjacency list for the second node at the second time ([0068], Referring to block 722, the query engine 310 may determine the start of the window of time in the adjacency list 206 associated with the lower order set. This may be performed substantially as described in block 706; [0069], Once the window of time has been located, the query engine may identify entries of the adjacency list 206 for analysis and determine whether to update a higher order set (e.g., second order set 308) based on the entries. As shown in block 724, this may be substantially as described in blocks 708-714); and comparing the first adjacency list for the second node to the second adjacency list for the second node to determine at least one change that occurred between the first time and the second time at the second node ([0071], In such examples, different markers represent different types of entities 102. For example, a first type of marker may be used to represent the first and second entities 102 specified by the query. A second type of marker 804 may be used to represent any entities having a first order relationship with the specified entities 102 (e.g., the entities 102 of the first order set 306). A third type of marker 806 may be used to represent any entities having a second order relationship with the specified entities 102 (e.g., the entities 102 of the second order set 308); [0074], The time controls 824 may include buttons 826 and 828 to increment and decrement the currently displayed time, respectively, as well as a button 830 to control an animated presentation of the relationships that automatically moves through the time window of time. As the animated presentation is played, markers representing entities and lines representing relationships may appear and disappear and the information pane(s) 812 may be updated accordingly). However, Nor does not explicitly that their graph model is a knowledge graph. Tiwary teaches the knowledge graph model ([0033], Generally, a knowledge graph is a special type of database that maintains knowledge or information in a graph form. A typical knowledge graph includes a plurality of nodes (also referred to as "vertices") representing objects and a plurality of edges connecting the nodes, wherein the edges represent relationship between the objects) which is substantially similar to claim 7, and therefore rejected with similar rationale. Examiner notes: It would be obvious for one of ordinary skill in the art to recognize that the method of claim 14 is being substantially recited again as the method for the computer readable medium of claim 7. With regard to claim 15, Nor teaches a system for tracking ephemeral assets …, the system comprising ([0015], The present disclosure provides a system and technique for data analysis suitable for these applications and others. Many examples are capable of mining large databases of time-varying data to look for direct relationships as well as higher order relationships): at least one processor ([0076], The computing system 300 may include one or more processing resources 902 operable to perform any combination of the functions described above); and at least one non-transitory memory storing computer executable instructions that when executed by the at least one processor cause the system to carry out actions comprising ([0076], The non-transitory computer-readable memory resource 904 may store instructions that cause processing resource 902 to perform any process of any block of methods): creating a … graph model of the ephemeral assets implemented by the plurality of virtual machines provisioned by the cloud system, wherein the knowledge graph model comprises a plurality of nodes ([0024], Referring first to FIG. 1A, the environment 100 includes a plurality of entities (nodes) 102. Each entity 103 may represent any suitable element capable of having a relationship with another entity) and a plurality of relationships between the plurality of nodes ([0025], The entities 102 may have various relationships with one another, and property, event, or interaction between entities 102 may give rise to a relationship. For example, a relationship may exist between two or more entities 102 that are interacting (e.g., communicating) with each other); determining properties of the … graph model ([0030], The adjacency lists 206 include entries 2087 that recorded relationship data for relationships between the associated entity and another entity. In various example where the relationship pertains to communication sessions between entities 102, an entry (property of the node) 208 in an adjacency list 206 records at least one of: a timestamp associated with a request or response, a network identifier such as a Media Access Control (MAC) address, a protocol identifier, a protocol version, a transaction identifier, a Domain name Service Flag, a nameserver identifier, and/or other relevant data) for a first node at a first time ([0031], Entries 208 of the adjacency lists 206 may be stored in order according to the temporal attribute. In example FIG. 2A, elements are added to the right-hand side of the adjacency lists 206, and within an adjacency list 206, an element to the right represents a newer relationship than an element to the left; [0063], Referring to block 706, the query engine 310 or other suitable computing resource identifies the start of the window of time within the adjacency list 206 associated with the first entity 102. Referring to block 708, the query engine 310 may use the start to identify a first entry of the adjacency list 206 for analysis. The first entry of the adjacency list 206 is checked in block 710 to determine whether it occurs within the window of time by comparing a time associated with the first entry with an end of the window); creating a first adjacency list for the first node at the first time ([0064], If the first entry is within the window of time, the query engine 310 updates a first order set 306 (first adjacency list associated with the first window of time) based on the entry as shown in block 712 of FIG. 7A. The first order set 306 may record an identifier of the entity 102 having the relationship with the first entity 102, information regarding the relationship, and/or other suitable information), wherein the first adjacency list includes properties of the knowledge graph model ([0025], The entities 102 may have various relationships with one another, and property, event, or interaction between entities 102 may give rise to a relationship. For example, a relationship may exist between two or more entities 102 that are interacting (e.g., communicating) with each other. A relationship may exist when two or more entities 102 experience a particular event. A relationship may exist between two or more entities 102 that share a common property) for the first node at the first time ([0030], The adjacency list 206 include entries 208 that record relationship da for relationships between the associated entity and another entity … an entry 08 in an adjacency list 206 records at least one of: a timestamp associated with a request or response, a network identifier such as a media access control (MAC) address, a protocol identifier, a protocol, version, a transaction identifier, a Domain Name Service flag, a nameserver identifier, and/or other relevant data (Examiner notes: Properties recorded at a first time period); determining properties of the knowledge graph model for the first node at a second time, wherein the second time is after the first time ([0066], The method 700 may proceed to block 710, where the query engine 310 may analyze the next entry to determine whether it occurs within the window time substantially as described above … In the alternative, if it is determined in block 710 that the entry is after the end of the window of time, then the first order set 306 already contains information regarding all of the relationships within the first entity 102 within the time window (if any); [0067], When the first order set 306 has been populated with the direct relationship with the first entity … the method may proceed to block 718 of FIG. 7B, where the query engine 310 determines whether to continue to obtain higher order relationships based on a depth associated with the query. If the query depth specifies a higher order relationship, the query engine 310 or other computing resource may identify direct relationships with entities 102 identified in the last iteration of blocks 706-716. To do so, in block 720, the query engine 310 identifies an adjacency list 206 associated with an entity 102 in the lower order set compiled in the previous iteration of blocks 706-716. In an example, the query engine 310 identifies second order relationships using an adjacency list 206 associated with of an entity 102 in the first order set 306); creating a second adjacency list for the first node at the second time ([0068], Referring to block 722, the query engine 310 may determine the start of the window of time in the adjacency list 206 associated with the lower order set. This may be performed substantially as described in block 706; [0069], Once the window of time has been located, the query engine may identify entries of the adjacency list 206 for analysis and determine whether to update a higher order set (e.g., second order set 308) based on the entries. As shown in block 724, this may be substantially as described in blocks 708-714); and comparing the first adjacency list to the second adjacency list to determine at least one change that occurred between the first time and the second time ([0027], It is noted that interactions, properties, and other attributes that affect relationships may be dynamic and change over time. Entities are added and lost. Communication is started and stopped Program are launched and terminated. Accordingly, in a time-varying environment, the state of the relationships at first point in time may differ significantly from the state of relationships at a second point in time. In that regard, whereas FIG. 1 represents the state of the environment 100 at a first point in time, FIG. 1B represents the state of the environment 100 at a second point in time. Comparing the figures, the lines 104 that represent the state of the relationships between the entities 102 at the second point in time may be significantly different from the lines 104 at the first point in time; [0071], In such examples, different markers represent different types of entities 102. For example, a first type of marker may be used to represent the first and second entities 102 specified by the query. A second type of marker 804 may be used to represent any entities having a first order relationship with the specified entities 102 (e.g., the entities 102 of the first order set 306). A third type of marker 806 may be used to represent any entities having a second order relationship with the specified entities 102 (e.g., the entities 102 of the second order set 308); [0074], The time controls 824 may include buttons 826 and 828 to increment and decrement the currently displayed time, respectively, as well as a button 830 to control an animated presentation of the relationships that automatically moves through the time window of time. As the animated presentation is played, markers representing entities and lines representing relationships may appear and disappear and the information pane(s) 812 may be updated accordingly). Nor teaches the study of computers and their relationships with their peers over time and the desirability to monitor such communication between computing entities to balance network load or identify points of failure, for example (Nor, [0013]). However, Nor does not explicitly teach that the networked system of computers is within a cloud environment or that their graph model is explicitly a knowledge graph model in a cloud environment. Tiwary teaches a cloud environment ([0064], FIG. 8 depicts an example cloud computing environment 800 in which the described technologies can be implemented, including, e.g., the system disclosed above and other systems herein), the cloud environment implemented by a cloud system ([0064], FIG. 8, FIG. 8 depicts an example cloud computing environment 800 in which the described technologies can be implemented, including, e.g., the system disclosed above and other systems herein. The cloud computing environment 800 comprises cloud computing services 810) having a plurality of physical computer systems that each include a processor and a memory ([0064], The cloud computing services 810 can comprise various types of cloud computing resources, such as a computer server, data storage repositories, networking resources, etc. The cloud computing services 810 can be centrally located (E.g., provided by a data center of a business or organization) or distributed different locations, such as different data centers and/or located in different cities or countries) … a knowledge graph ([0033], Generally, a knowledge graph is a special type of database that maintains knowledge or information in a graph form. A typical knowledge graph includes a plurality of nodes (also referred to as "vertices") representing objects and a plurality of edges connecting the nodes, wherein the edges represent relationship between the objects; [0070], constructing a tenancy knowledge graph comprising a plurality of tenant nodes representing respective tenants in a multitenant computing environment) of the ephemeral assets implemented by the plurality of virtual machines provisioned by the cloud system ([0033], Generally, a knowledge graph is a special type of database that maintains knowledge or information in a graph form. A typical knowledge graph includes a plurality of nodes (also referred to as “vertices”) representing objects and a plurality of edges connecting the nodes, wherein the edges represent relationship between the objects) … managing the ephemeral assets implemented by the plurality of virtual machines provisioned by the cloud system ([0011], Often a multitenant computing system needs to decide the placement of a tenant across a number of host machines or placement points … if the tenants are placed on application containers which run on a virtual machine, then the placement points can be virtual machines, along with physical machines) in accordance with the at least one change having been determined ([0044], After transforming tenant property nodes to property vectors, the tenant nodes can also be converted into vector representations, i.e., tenant vectors, which can then be grouped into one or more clusters based on similarity assessment of tenant vectors; [0048], tenant nodes within one cluster are determined to be more similar to each other than to other tenant nodes outside the cluster. Thus, tenant represented by the tenant nodes within a cluster can be deemed to be similar tenants in terms of their behaviors such as issues, performance metrics, workload. FO example, if Tenant A incurred a specific read heavy workload and Tenant B also incurred the same workload, the neural network 630 can embed Tenant A and Tenant B to corresponding tenant vectors that are in close or near-by vector space (Examiner notes: such that management of these assets can be rearranged in response to load condition changes) which is substantially similar to claim 1 and therefore rejected with similar rationale. Tiwary reasonably teaches intelligent management of a multitenant computing system that comprises a cloud computing environment (Tiwary, FIG. 8 and [0064]). However, the combination does not explicitly teach a cloud computing system provisioning a plurality of virtual machines implementing ephemeral container assets. Nagpal teaches provisioning, by the cloud system, a plurality of virtual machines ([0021], FIG. 2 illustrates a clustered virtualization environment 200 according to particular embodiments … The clustered virtualization environment 200 includes user virtual machines (VMs) 212-222 executing on host machines 202, 204, and 206), wherein the plurality of virtual machines implements the ephemeral assets of the cloud system ([0021], The user VMs may be workloads executing at the clustered virtualization environment and monitored by the manager 108 of the central computing system 108), wherein the plurality of virtual machines implements a plurality of containers ([0027], Workloads instantiated at the hyperconverged cluster 200 may be, in various examples, user VMs, containers, or other abstractions providing access to resources of the hyperconverged cluster), and wherein each ephemeral asset is associated with a given container of a given virtual machines ([0042], The workload data 440 may include various information about the workloads of applications managed by the workload manager 432. For example, workload data 440 may include characteristics of the workload (e.g., whether the workload is stateful or stateless), demand patterns of the workload, a fingerprint of the workload, performance indicators of the workload in various computing environments, location of data used by the workload, security of privacy parameters, existing instances of the workload, available configurations of the workload (e.g., container or VM), etc.) which is substantially similar to claim 1 and therefore rejected with similar rationale. Examiner notes: It would be obvious for one of ordinary skill in the art to recognize that the system of claim 15 is being substantially recited again as the system for the computer readable medium of claim 1. With regard to claim 16, Nor teaches the system of claim 15, wherein the properties include a timestamp corresponding to when the first node was added to the … graph model ([0031], Additionally or in the alternative, each entry 208 may record one or more temporal attributes (e.g., a timestamp, a start time, and end time, a duration, etc.) that represents a time associated with the respective relationships). However, Nor does not explicitly that their graph model is a knowledge graph. Tiwary teaches the knowledge graph model ([0033], Generally, a knowledge graph is a special type of database that maintains knowledge or information in a graph form. A typical knowledge graph includes a plurality of nodes (also referred to as "vertices") representing objects and a plurality of edges connecting the nodes, wherein the edges represent relationship between the objects) which is substantially similar to claim 2 and therefore rejected with similar rationale. Examiner notes: It would be obvious for one of ordinary skill in the art to recognize that the system of claim 16 is being substantially recited again as the system for the computer readable medium of claim 2. With regard to claim 17, Nor teaches the system of claim 15, wherein the actions further comprise: displaying the at least one change to a user via a user interface ([0041], Accordingly, the user interface 316 may be operable to provide output to a user by way of any number of output devices including a monitor or other graphical display, a printer, a speaker, a haptic feedback device, etc. In various examples, the user interface 316 provides a representation of the entities 102 and their relationships recorded in the set of relationship instances 304, the first order set 306, the second order set 308, and/or other higher order sets of relationship instances by any suitable modality including graphically via a monitor or other display device; [0071], FIG. 8 is a schematic representation of a Graphical User Interface (GUI) 800 displaying a representation of a set of entries 102 and their relationships according to some examples of the present disclosure. The GUI 800 may be presented by a user interface 316 of FIG. 3 or other computing resource). With regard to claim 18, Nor teaches the system of claim 15, wherein the actions further comprise: saving the at least one change to a database for access by a user (FIG. 3, Relationship Data Store 302; [0037], The computing system 300 may include a relationship data store 302, which in turn, may include an aggregation of any number, capacity, and type of memory devices … The memory devices of the relationship data store 302 may store time-varying data structure 200 that records relationship between entities 102 as described above; [0038], The relationship data store 302 may also store a set of relationship instances 304 that records specific instances of a relationship between two or more entities 102 at various points in time. A technique for obtaining the set of relationship instances 304 from the time-varying data structure 200 is described in detail below. The relationship data store 302 may also store higher order sets of relationship instances (e.g., first order set 306, second order set 308, etc.). The higher order sets may store information regarding those entities 102 having a relationship with an entity in a lower order set in order to trace a chain of relationships through a number of hops) via a user interface ([0041], The user interface 316 of the computing system 300 is operable to receive the set of relationship instances 304, the first order set 306, the second order set 308, and/or higher order sets of relationship instances from the query engine 310 and/or the relationship data store 302 and to display a representation of this data to a user). With regard to claim 19, Nor teaches that nodes maintain entries of their properties (Nor, [0025]). Nor does not explicitly teach that those properties include at least one of CPU usage, memory usage, and cost. Tiwary teaches the system of claim 18, wherein the properties for each node include at least one of CPU usage, RAM usage, and cost ([0021], Certain tenant properties can also include performance metrics exhibited by the tenants 110. In one example embodiment, the performance metrics may include utilization rate of computing resources (e.g., CPUs, memories, etc.). For example, the performance metric of a tenant at a specific time instance may be characterized as 38% CPU utilization and 55% memory utilization, or denoted as {cpu: 38, mem: 55}) which is substantially similar to claim 5, and therefore rejected with similar rationale. Examiner notes: It would be obvious for one of ordinary skill in the art to recognize that the system of claim 19 is being substantially recited again as the system for the computer readable medium of claim 5. With regard to claim 20, Nor teaches the benefits of efficiently analyzing the behavior of computing entities for the purpose of backward-looking analysis and forward-looking predictions (Nor, [0012]). However, Nor does not explicitly teach the performance of providing a recommendation for node placement on a cloud environment based on knowledge graph analysis using machine learning. Tiwary teaches the system of claim 15, wherein the actions further comprise: providing a recommendation to a user for where to add a new node to the cloud environment ([0050], For example, a tenant placement module (e.g., 162) can be configured to make intelligent tenant placement, i.e., based at least in part of the results of tenant clustering. In one embodiment, two tenants can be placed in two different host machines when two tenant nodes representing the two tenants are in the same tenant cluster. For example, if two tenants exhibit similar performance metrics and incurred similarly high workloads, these two tenants may be deemed to be similar based on the results tenant clustering. Accordingly, the two tenants can be assigned to two different host machines so that they would not compete for computing resources) based on analysis of the knowledge graph model using machine learning ([0047], In certain embodiments, the sequence of nodes traversed by a random walk starting from a tenant node can be fed into a neural network 630 (which can be one example embodiment of 146 depicted in FIG. 1) to generate a tenant vector corresponding to the tenant node. In one example embodiment, the neural network 630 can be configured to implement an embedding learning algorithm (e.g., word2vec, doc2vec) to convert the sequence of nodes traversed by a random walk into a corresponding tenant vector. As described herein, the neural network 630 is a self-supervised learning algorithm which can be trained to learn the relationships each node has with its adjoining nodes in a knowledge graph. Specifically, the neural network 630 can generate node embedding (i.e., a vector representing the node) based on local neighborhood of the node by aggregating information from the node's neighbors. The neural network 630 can be trained to learn a function which captures the relationship between the node and its local neighborhood, and the hidden layer of such neural network can return a vector representing the node (i.e., node embedding); [0048], Thus, a tenant classifier 650 (which can be one example embodiment of 148 depicted in FIG. 1) implementing a data clustering algorithm (e.g., DBSCAN, K-means, OPTICS, etc.) can be used to group the tenant nodes (e.g., 612, 614, 616, etc.) into one or more tenant clusters 660 (e.g., 662, 664, etc.) based on similarity assessment of the corresponding tenant vectors ( e.g., 642, 644, 646, etc.)) which is substantially similar to claim 6, and therefore rejected with similar rationale. Examiner notes: It would be obvious for one of ordinary skill in the art to recognize that the system of claim 20 is being substantially recited again as the system for the computer readable medium of claim 6. Conclusion The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. US 2014/0222745 A1 teaches Dynamic Model-Based Analysis of Data Centers US 12,355,626 B1 teaches Tracking Infrastructure as Code (IaC) Asset Lifecycles Any inquiry concerning this communication or earlier communications from the examiner should be directed to IVAN A CASTANEDA whose telephone number is (571)272-0465. The examiner can normally be reached Monday-Friday 9:30AM-5:30PM EST. Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice. If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Aimee Li can be reached at (571) 272-4169. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300. Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000. /I.A.C./Examiner, Art Unit 2195 /Aimee Li/Supervisory Patent Examiner, Art Unit 2195
Read full office action

Prosecution Timeline

Nov 02, 2022
Application Filed
Jun 09, 2025
Non-Final Rejection — §103
Sep 15, 2025
Response Filed
Nov 28, 2025
Final Rejection — §103
Feb 02, 2026
Response after Non-Final Action
Feb 27, 2026
Request for Continued Examination
Mar 09, 2026
Response after Non-Final Action
Mar 17, 2026
Non-Final Rejection — §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12585483
MANAGING DEPLOYMENT AND MIGRATION OF VIRTUAL COMPUTING INSTANCES
2y 5m to grant Granted Mar 24, 2026
Study what changed to get past this examiner. Based on 1 most recent grants.

AI Strategy Recommendation

Get an AI-powered prosecution strategy using examiner precedents, rejection analysis, and claim mapping.
Powered by AI — typically takes 5-10 seconds

Prosecution Projections

3-4
Expected OA Rounds
67%
Grant Probability
99%
With Interview (+100.0%)
3y 9m
Median Time to Grant
High
PTA Risk
Based on 3 resolved cases by this examiner. Grant probability derived from career allow rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month