A method, comprising: receiving, by a device, network data identifying data associated with network devices of a network; processing, by the device, the network data, with a concurrent discovery model, to determine a first queue identifying first discovery tasks to execute for the network devices and a second queue identifying second discovery tasks to execute for the network devices after the first discovery tasks; processing, by the device, the first queue and the second queue, with a capacity scheduler model, to determine a schedule, based on weights, for executing the first discovery tasks and the second discovery tasks; executing, by the device, the first discovery tasks and the second discovery tasks based on the schedule; calculating, by the device, progress of the executions of the first discovery tasks and the second discovery tasks; estimating, by the device, time intervals associated with completions of the executions of the first discovery tasks and the second discovery tasks; providing, by the device and to a user device, information identifying the progress of the executions of the first discovery tasks and the second discovery tasks and the time intervals associated with the completions of the executions of the first discovery tasks and the second discovery tasks; completing the executions of the first discovery tasks and the second discovery tasks; receiving additional network data based on completions of the executions of the first discovery tasks and the second discovery tasks, wherein a first portion of the additional network data is associated with known resources of network devices, and wherein a second portion of the additional network data is associated with unknown resources of network devices; and storing the additional network data in a data structure, wherein storing the additional network data in the data structure comprises: correlating the first portion of the additional network data and data about the known resources of network devices stored in the data structure; and storing the second portion of the additional network data in the data structure. receiving, by a device, network data identifying data associated with network devices of a network; processing, by the device, the network data, with a concurrent discovery model, to determine a first queue identifying first discovery tasks to execute for the network devices and a second queue identifying second discovery tasks to execute for the network devices after the first discovery tasks; processing, by the device, the first queue and the second queue, with a capacity scheduler model, to determine a schedule, based on weights, for executing the first discovery tasks and the second discovery tasks; executing, by the device, the first discovery tasks and the second discovery tasks based on the schedule; calculating, by the device, progress of the executions of the first discovery tasks and the second discovery tasks; estimating, by the device, time intervals associated with completions of the executions of the first discovery tasks and the second discovery tasks; providing, by the device and to a user device, information identifying the progress of the executions of the first discovery tasks and the second discovery tasks and the time intervals associated with the completions of the executions of the first discovery tasks and the second discovery tasks; completing the executions of the first discovery tasks and the second discovery tasks; receiving additional network data based on completions of the executions of the first discovery tasks and the second discovery tasks, wherein a first portion of the additional network data is associated with known resources of network devices, and wherein a second portion of the additional network data is associated with unknown resources of network devices; and wherein a first portion of the additional network data is associated with known resources of network devices, and wherein a second portion of the additional network data is associated with unknown resources of network devices; and storing the additional network data in a data structure, wherein storing the additional network data in the data structure comprises: correlating the first portion of the additional network data and data about the known resources of network devices stored in the data structure; and storing the second portion of the additional network data in the data structure. correlating the first portion of the additional network data and data about the known resources of network devices stored in the data structure; and storing the second portion of the additional network data in the data structure.