1. A method, comprising: receiving data from a first data source; converting the data into data packets having a common format using a user-defined metadata schema; filtering the data packets using the user-defined metadata schema, wherein filtering the data packets includes: replacing data in a first portion of the data packets with data from database tables of a second data source; and storing a second portion of the data packets in a third data source; aggregating the first portion of the data packets into star schema objects, based on the user-defined metadata schema; storing the star schema objects into a star schema database; and wherein the metadata schema defines how the data is converted into data packets, filtering criteria, and the star schema objects.