1. A method of creating and managing a plurality of OLAP cubes in real time, from one or more different tabular data sources, comprising: receiving by a server a plurality of requests for a data, each in the form of a user query; in response to said requests, initiating the generation of a temporary OLAP cube for each request; automatically defining for each one of a plurality of cubes the table columns as either dimensions or measures of the cube using at least one of predefined semantics and data formats; generating the plurality of cubes using said defined dimensions and measures; populating a cube with data by applying the initiating query of the cube to the cube's data source; continuously and automatically identifying that data underlying one or more cubes has changed; automatically and in real-time updating the semantics of said one or more cubes; and managing said temporary cubes in a cache memory, said managing including cleaning up said cache by ongoing automatic deletion of cubes in said cache according to predefined criteria.