Patent ID: 7333982

Claim:
An information system having a mode of operation in which queries from one or more clients are serviced using aggregated data retrieved from a plurality of different types of data storage structures for improved query performance, said plurality of different types of data storage structures including (i) a relational data store for storing aggregated data in relational tables and (ii) a non-relational multi-dimensional data store for storing aggregated data in a logically organized memory structure, said information system comprising: an aggregation module adapted to service queries requiring aggregated data, said aggregation module operatively coupled to said relational data store and including a non-relational multi-dimensional data store for storing, in a logically organized memory structure, multi-dimensional aggregated data generated by said aggregation module using data obtained from said relational data store; a query interface adapted to receive queries from end-users of said information system, and in response thereto, generate query statements corresponding to said queries; a query servicing mechanism for receiving said query statements from said query interface, and servicing the query statements using aggregated data retrieved from said plurality of different data storage structures in a manner transparent to said clients; said query servicing mechanism including at least one query handling mechanism for supporting servicing of the query statements using aggregated data retrieved from said different types of data storage structures, and a query processing mechanism for processing query statements using data retrieved from said plurality of different data stores and in a manner transparent to said clients; wherein, in response to said query servicing mechanism determining that a given query statement is serviceable using aggregated data generated by said aggregation module, said query processing mechanism automatically retrieving aggregated data generated by said aggregation module, and returning retrieved aggregated data to said query interface; and wherein, in response to query servicing mechanism determining that a given query statement is not serviceable using aggregated data generated by said aggregation module, said query processing mechanism automatically retrieving aggregated data stored in at least one other data source including said relational data store, and returning retrieved aggregated data to said query interface.