1. A method, comprising: receiving first data from a first data source that continuously generates a first set of records with first common fields, filtering the first data by selecting a first sub-set of fields of the first common fields to form first filtered data; receiving second data from a second data source that continuously generates a second set of records with second common fields, filtering the second data by selecting a second sub-set of fields of the second common fields to form second filtered data, wherein the first filtered data and the second filtered data are generated simultaneously; applying rules to the first filtered data and the second filtered data in real-time to identify selected real-time events; and reporting the selected real-time events prior to persistently storing the first filtered data, the second filtered data and the selected real-time events.