A method, comprising: receiving, by a network analytics controller in a computer network, a specification of a network analysis task; creating, by the network analytics controller, a plurality of maplets, each maplet: corresponding to a particular agent executing on a particular network node in the computer network; and specifying network data collection configuration, collected data processing, and processed data reporting to be performed to support the specified network analysis task at the particular network node executing the corresponding agent; communicating, by the network analytics controller over the computer network, to each particular agent executing on a particular network node, the one or more maplets corresponding to the particular agent, configuring, by each agent receiving a communicated maplet, the network node corresponding to the agent receiving the maplet for network data collection, collected data processing, and processed data reporting in accordance with the maplet received by the agent; collecting network data and processing the collected network data, by each agent receiving a maplet, in accordance with the configuration; and reporting, to the network analytics controller, by each agent receiving a maplet, the processed data in accordance with the configuration; and aggregating, by the network analytics controller, the data reported from each agent receiving a maplet, as a result of the specified network analysis task; and wherein the method further comprises each agent receiving a respective first maplet adapting at least one of the network data collection configuration, collected data processing, and processed data reporting at the network node of the respective first maplet to the processed data reported in accordance with a respective second maplet. receiving, by a network analytics controller in a computer network, a specification of a network analysis task; creating, by the network analytics controller, a plurality of maplets, each maplet: corresponding to a particular agent executing on a particular network node in the computer network; and specifying network data collection configuration, collected data processing, and processed data reporting to be performed to support the specified network analysis task at the particular network node executing the corresponding agent; corresponding to a particular agent executing on a particular network node in the computer network; and specifying network data collection configuration, collected data processing, and processed data reporting to be performed to support the specified network analysis task at the particular network node executing the corresponding agent; communicating, by the network analytics controller over the computer network, to each particular agent executing on a particular network node, the one or more maplets corresponding to the particular agent, configuring, by each agent receiving a communicated maplet, the network node corresponding to the agent receiving the maplet for network data collection, collected data processing, and processed data reporting in accordance with the maplet received by the agent; collecting network data and processing the collected network data, by each agent receiving a maplet, in accordance with the configuration; and reporting, to the network analytics controller, by each agent receiving a maplet, the processed data in accordance with the configuration; and aggregating, by the network analytics controller, the data reported from each agent receiving a maplet, as a result of the specified network analysis task; and wherein the method further comprises each agent receiving a respective first maplet adapting at least one of the network data collection configuration, collected data processing, and processed data reporting at the network node of the respective first maplet to the processed data reported in accordance with a respective second maplet.