1. A computer-implemented method comprising: providing definitions, by one or more computer processors, for collection methods for a set of monitoring data, wherein the monitoring data is collected from agents running at monitoring computers in a software asset management system, wherein the monitoring data includes software license metrics, and wherein each item of monitoring data has at least one respective collection method; in response to receiving a user query, determining, by one or more computer processors, a subset of monitoring data to be updated; identifying, by one or more computer processors, collection methods corresponding to the subset of monitoring data; triggering, by one or more computer processors, the agents running at the monitoring computers to collect monitoring data using the identified collection methods; storing, by one or more computer processors, the monitoring data in a table, wherein the table includes columns for a system ID, a software ID, a number of instances, and software name; annotating, by one or more computer processors, a column of the table with a collection method and a cost corresponding to the collection of the monitoring data in the column; translating, by one or more computer processors, the received user query into an SQL query; querying, by one or more processors, the table with the translated SQL query; and responding, by one or more computer processors, to the user query with collected monitoring data from the table, based on the query of the table with the translated SQL query.