Data Processing for AIOps

AIOPS USES DEEP NEURAL NETWORKS AND FOR SECURITY IT

RELIES ON GRAPH NEURAL NETWORKS, BOTH PRODUCE MODELS FOR

ADVANCED DATA PROCESSING

Data Processing for AIOps

AIOps relies on machine learning models, such as Deep Neural Networks, to control operations within a Kubernetes cluster. For a machine learning model to effectively learn a given task, it is pivotal that the input data provided to the model is pre-processed in a way that preserves and organizes the encoded information for efficient learning and inference. A Kubernetes cluster presents itself as a collection of resources of various types. Resources can be related to one another. The relationship between two resources depends upon their type. For instance, two types of resources are Deployments and Pods. A Deployment can be configured to manage particular Pods. This defines the relationship between a Pod and a Deployment. A Kubernetes cluster is best represented as an undirected graph of nodes connected by edges, where each node represents a cluster resource, and each edge represents a relationship between two resources. For a Graph Neural Network model, nodes are represented as n-dimensional arrays of numbers that encode metadata of the resource and associated telemetry, such as metrics, logs, and traces. The graph is represented as a time-series, with each timestep containing a version of the graph that represents the cluster at that point in time. After the data has been pre-processed in this way, combinations of Graph Neural Network and Transformer Models can be utilized for model training and inference.


The output of an AIOps model depends on the specific task it is performing. There are two main types of model outputs. The first type of output is a signal that indicates a particular action needs to be taken via an API operation. With this type of model, one or more API operations are defined as model responses. Each response encodes an optional signal to execute the corresponding API operation, as well as any related parameters taken by the API. The second type of output is the production of a resource configuration. A neural network model can receive and/or produce data that encodes serialized data, such as JSON or YAML. Fully connected layers can encode ordered collections like lists and tuples, while attention layers encode unordered collections like sets and dictionaries. Through this style of encoding, models can produce complete resource configurations.