1. A method for data integration comprising: receiving a first request for a first subset of data, wherein said data includes at least one of raw data and data elements relating to said raw data, and wherein said data includes said first subset; receiving data from a data source; assessing said data for integration into an enterprise data architecture; integrating said first subset into said enterprise data architecture based upon said step of assessing; creating metadata related to said data and based upon said step of assessing; caching said data and said metadata to create cached data and cached metadata; receiving a second request for a second subset of data; reading cached metadata; and, integrating said second subset into said enterprise data architecture based upon said metadata.