1. A method for reducing the number of queries made to a database from an application comprising: responsive to detecting an application is ready to query a database for at least one data extraction rule, accessing, using at least one processor, a cache comprising information related to data that is newly added to the database; evaluating, using the at least one processor, each at least one data extraction rule against the information in the cache to determine whether the information is relevant to the at least one data extraction rule; responsive to detecting at least one particular data extraction rule from among the at least one data extraction rule to which the information is relevant, sending, using the at least one processor, a separate query by the application to the database for the at least one particular data extraction rule only; and synchronously adding the information related to the data that is newly added to the database for the data event to the cache.