1. A method comprising: receiving, from a user device, a data query request that includes one or more search parameters to be searched for within a plurality of files that are stored according to a hierarchical organizational structure, wherein each file includes at least one data record; scanning a plurality of files to determine if one or more files match a sub portion of the search parameters, wherein scanning a plurality of files results in zero or more candidate files; parsing the candidate files to determine which, if any, records included by the respective candidate files meet the search parameters, wherein scanning a plurality of files produces resultant data; generating, by one or more result analyzers, query results from the resultant data; and streaming, to the user device, the query results as at least one query result becomes available and to start streaming before the query requests have been fully generated.