1. A computer-implemented method comprising: receiving event data from a data source with an event collector, the data source registered with the event collector to transmit event data to the event collector; transmitting the received event data for analysis; saving the transmitted event data; determining whether to create or update a business intelligence view; determining whether to create or update an input schema based on the saved event data; and providing, by a computer, an input schema describing how data is represented in the database to a query generation engine.