IP Library Granted Patent US 7,333,982
Granted Patent B2
US 7,333,982 · App. 10/314,904 · Granted Feb 19, 2008

Information system having a mode of operation in which queries form one or more clients are serviced using aggregated data retrieved from a plurality of different types of data storage structures for improved query performance

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,333,982
App. No.
10/314,904
Granted
Feb 19, 2008
Kind
B2
Abstract

A customer relationship management (CRM) system with integrated data aggregation engine comprising a database management system (DBMS) including a relational datastore storing data in tables. An aggregation module, operatively coupled to the relational datastore aggregates the data stored in the tables of the relational datastore and storing the resultant aggregated data in a non-relational datastore. A reference generating mechanism generates a first reference to data stored in the relational datastore and a second reference to aggregated data generated by the aggregation module and stored in the non-relational datastore. A query processing mechanism processes query statements, wherein, upon identifying that a given query statement is on the second reference, the query processing mechanism communicates with the aggregation module to retrieve portions of aggregated data identified by the reference that are relevant to the given query statement.

Claims (43)

1. 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.

2. The information system of claim 1 , wherein said multi-dimensional aggregated data is logically organized in said non-relational multi-dimensional data store in the form of an array structure.

3. The information system of claim 1 , wherein said client is an analytical program.

4. The information system of claim 1 , wherein said client is a spreadsheet modeling program.

5. The information system of claim 1 , wherein said client is a reporting tool.

6. The information system of claim 1 , wherein said aggregation module and said query servicing mechanism are implemented using a common platform.

7. The information system of claim 1 , wherein said aggregation module further includes control logic which, upon determining that a given query statement that was routed to said aggregation module cannot be serviced from data stored in said non-relational multi-dimensional data store, automatically directs the aggregation of data required to service the given query statement.

8. The information system of claim 1 , wherein said query interface is supported by a relational database management system (RDBMS) managing said relational data store.

9. An information system having a mode of operation in which queries from one or more clients are serviced using data retrieved from a plurality of different types of data storage structures for improved query performance, the information system comprising:

a database management system (DBMS) including a relational data store storing data in relational tables;

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 said one or more clients, 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.

10. The information system of claim 9 , wherein said multi-dimensional aggregated data is logically organized in said non-relational multi-dimensional data store in the form of an array structure.

11. The information system of claim 9 , wherein said aggregation module, said query interface and said query servicing mechanism are implemented using a common platform.

12. The information system of claim 9 , wherein said client is an analytical program.

13. The information system of claim 9 , wherein said client is a spreadsheet modeling program.

14. The information system of claim 9 , wherein said client is a reporting tool.

15. The information system of claim 9 , wherein, during the servicing a given query statement, said aggregation module is capable of dynamically aggregating data in said non-relational multi-dimensional data store so as build up a store of aggregated data sufficient to service the given query statement.

16. The information system of claim 9 , wherein said query interface is supported by a relational database management system (RDBMS) managing said relational data store.

17. A business information system having a mode of operation in which queries from one or more clients are serviced from a plurality of different types of data structures for improved query performance, said business information system comprising:

a client query tool for an end-user at a client computer to generate queries from a graphical user interface, said client query tool including a query interface for converting queries into query statements; and

an information platform, comprising:

an aggregation module adapted to service query statements requiring aggregated data, said aggregation module operatively coupled to different types of data structure including a relational data store, and non-relational multi-dimensional data store storing multi-dimensional data logically organized in a memory storage structure, for storing aggregated data generated by said aggregation module;

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 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 structures, and a query processing mechanism for processing query statements using data retrieved from said plurality of different data structures and in a maimer 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 client query tool; 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 client query tool.

18. The business information system of claim 17 , wherein said client is an analytical program.

19. The business information system of claim 17 , wherein said client is a spreadsheet modeling program.

20. The business information system of claim 17 , wherein said client is a reporting tool.

21. The business information system of claim 17 , which further comprises at least one adaptor to perform conversions between different data formats.

22. The business information system of claim 17 , wherein said query servicing mechanism receives query statements from said query interface, identifies whether a given query statement is to be serviced from aggregated data generated by said aggregation module or from data stored in said relational data store, routes the given query statement to either said relational data store or said aggregation module, receives retrieved data from said relational data store or from said aggregation module, and returns the retrieved data to said client query tool.

23. The information system of claim 17 , wherein said query interface is supported by a relational database management system (RDBMS) managing said relational data store.

Assignments (11)
SECURITY INTEREST Recorded Oct 15, 2020
From: BYLAS DISTRICT ECONOMIC ENTERPRISE, LLC
To: INTELLECTUAL VENTURES ASSETS 119 LLC; INTELLECTUAL VENTURES ASSETS 114 LLC
Reel/Frame 054089/0864 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 23, 2019
From: BYLAS DISTRICT ECONOMIC ENTERPRISE LLC
To: MEC MANAGEMENT, LLC
Reel/Frame 050144/0638 →
NUNC PRO TUNC ASSIGNMENT Recorded Dec 18, 2018
From: TAMIRAS PER PTE. LTD., LLC
To: INTELLECTUAL VENTURES ASSETS 114 LLC
Reel/Frame 047809/0516 →
MERGER Recorded Nov 2, 2015
From: YANICKLO TECHNOLOGY, L.L.C.
To: TAMIRAS PER PTE. LTD., LLC
Reel/Frame 036938/0644 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 22, 2010
From: HR ASSET HOLDINGS, INC.
To: YANICKLO TECHNOLOGY LIMITED LIABILITY COMPANY
Reel/Frame 025178/0516 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 12, 2010
From: BAKALASH, REUVEN; SHAKED, GUY; CASPI, JOSEPH
To: HYPERROLL ISRAEL, LTD.
Reel/Frame 025123/0140 →
CHANGE OF NAME Recorded Jan 28, 2010
From: HYPERROLL, INC.
To: HR ASSET HOLDINGS, INC.
Reel/Frame 023861/0460 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 10, 2009
From: HYPERROLL ISRAEL, LTD.
To: HYPERROLL, INC.
Reel/Frame 023486/0795 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 3, 2009
From: BAKALASH, REUVEN; SHAKED, GUY; CASPI, JOSEPH
To: HYPERROLL ISRAEL, LTD.
Reel/Frame 023456/0705 →
LICENSE Recorded Oct 27, 2009
From: HYPERROLL, INC.
To: HYPERION SOLUTIONS CORPORATION
Reel/Frame 023427/0597 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 26, 2009
From: BAKALASH, REUVEN; SHAKED, GUY; CASPI, JOSEPH
To: HYPERROLL, ISRAEL LIMITED
Reel/Frame 022878/0294 →