Method and apparatus for storing, retrieving, and processing multi-dimensional customer-oriented data sets
First Claim
1. A method for obtaining desired information from data representative of a number of data items, comprising the steps of:
- storing in a first memory portion of a computer memory a plurality of cells being represented as a multi-dimensional storage structure that is defined by a plurality of dimensions, wherein each of said dimensions includes a plurality of members for identifying said desired information, each of said cells corresponding to at least one of said members;
storing in a second memory portion of said computer memory a plurality of data lists, each of said data lists comprising a plurality of records for storing said desired information;
linking each said cell with a respective data list such that each respective cell represents a multi-dimensional index to the corresponding data list, whereby each said data list is identified by said at least one of said members; and
wherein each said data item corresponds to a customer such that said desired information selectively represents at least one transaction carried out by said customer or demographic data about said customer, said one transaction or demographic data being selectively defined by said at least one of said members.
9 Assignments
0 Petitions
Accused Products
Abstract
Method and apparatus for storing, retrieving, and processing customer-oriented data sets in which relatively large sets of customers and their transactions or the like may be quickly and efficiently analyzed. A multi-dimensional access structure is utilized in which each cell representing one dimension element or a combination of dimension elements may include a list of customers who have made purchases or other transactions associated with that cell. Each customer record in a list may summarize predetermined information pertaining to that customer'"'"'s behavior in the cell. Such records may be sorted by customer number to enable efficient combining of multiple lists. In applications wherein the number of such cells is prohibitively large, only a portion of these cells may actually include materialized lists. Additionally, a user-specified subset of the cells may be efficiently populated from input data, and lists which are not materialized may be materialized on demand from other lists in an efficient manner.
275 Citations
30 Claims
-
1. A method for obtaining desired information from data representative of a number of data items, comprising the steps of:
-
storing in a first memory portion of a computer memory a plurality of cells being represented as a multi-dimensional storage structure that is defined by a plurality of dimensions, wherein each of said dimensions includes a plurality of members for identifying said desired information, each of said cells corresponding to at least one of said members;
storing in a second memory portion of said computer memory a plurality of data lists, each of said data lists comprising a plurality of records for storing said desired information;
linking each said cell with a respective data list such that each respective cell represents a multi-dimensional index to the corresponding data list, whereby each said data list is identified by said at least one of said members; and
wherein each said data item corresponds to a customer such that said desired information selectively represents at least one transaction carried out by said customer or demographic data about said customer, said one transaction or demographic data being selectively defined by said at least one of said members. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for generating a plurality of data lists in a multi-dimensional storage structure for storing desired information obtained from data representative of data items, said desired information having been stored in a first memory portion of a computer memory as a plurality of cells being represented as said multi-dimensional storage structure that is defined by a plurality of dimensions, wherein each of said dimensions includes a plurality of members for identifying said desired information, each of said cells corresponding to at least one of said members, said desired information having been further stored in a second memory portion of said computer memory as a plurality of data lists, each of said data lists comprising a plurality of records for storing said desired information and an identifier for each said data item, said method comprising the steps of:
-
sorting said data by using said identifier;
extracting from the sorted data intra-data item summary information which is obtained by processing said desired information for each corresponding data item without referring to other data items in a respective data list;
supplying the extracted intra-data item summary information to respective records in each said data list;
accessing each said data list for determining inter-data item summary information which is obtained by processing the extracted intra-data item summary information for the corresponding data item by referring to said other data items in said respective data list;
supplying said inter-data item summary information to said respective records;
linking each said cell with said respective data list such that each said cell represents a multi-dimensional index to each said data list, whereby each said data list is identified by said at least one of said members; and
wherein each said data item corresponds to a customer such that said data selectively represents at least one said transaction carried out by said customer, said one transaction or demographic data being selectively defined by said at least one of said members. - View Dependent Claims (9, 10, 11, 12, 13)
-
-
14. An apparatus for obtaining desired information from data representative of a number of data items, comprising:
-
means for storing in a first memory portion of a computer memory a plurality of cells being represented as a multi-dimensional storage structure that is defined by a plurality of dimensions, wherein each of said dimensions includes a plurality of members for identifying said desired information, each of said cells corresponding to at least one of said members;
means for storing in a second memory portion of said computer memory a plurality of data lists, each of said data lists comprising a plurality of records for storing said desired information;
means for linking each said cell with a respective data list such that each respective cell represents a multi-dimensional index to the corresponding data list, whereby each said data list is identified by said at least one of said members; and
wherein each said data item corresponds to a customer such that said data selectively represents at least one transaction carried out by said customer or demographic data about said customer, said one transaction or demographic data being selectively defined by said at least one of said members. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
-
21. An apparatus for generating, in response to a user query, at least one data list in a multi-dimensional storage structure for storing desired information obtained from data representative of data items, said desired information being stored in a first memory portion of a computer memory as a plurality of cells being represented as said multi-dimensional storage structure that is defined by a plurality of dimensions, wherein each of said dimensions includes a plurality of members for identifying said desired information, each of said cells corresponding to at least one of said members, said desired information being further stored in a second memory portion of said computer memory as a plurality of data lists, each of said data lists comprising a plurality of records for storing said desired information and an identifier for each said data item, said apparatus comprising:
-
means for sorting said data by using said identifier;
means for extracting from the sorted data intra-data item summary information which is obtained by processing said desired information for each corresponding data item without referring to other data items in a respective data list;
means for supplying the extracted intra-data item summary information to respective records in each said list;
means for supplying the extracted intra-data item summary to respective records in each said data list;
means for accessing each said data list for determining inter-data item summary information which is obtained by processing the extracted intra-data item summary information for the corresponding data item by referring to said other data items in said respective data list;
means for supplying said inter-data item summary information to said respective records;
means for linking each said cell with said respective data list such that each said cell represents a multi-dimensional index to the corresponding data list whereby each said data list is identified by said at least one of said members;
means for outputting said data lists, and wherein each said data item corresponds to a customer such that said data selectively represents at least one transaction carried out by said customer or demographic data about said customer, said one transaction or demographic data being selectively defined by said at least one of said members. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28)
-
-
29. An apparatus for generating, in response to a user query, at least one data list in a multi-dimensional storage structure for storing desired information obtained from data representative of data items, said apparatus comprising:
-
means for storing said desired information as a plurality of cells being represented as said multi-dimensional storage structure that is defined by a plurality of dimensions, wherein each of said dimensions includes a plurality of members for identifying said desired information, each of said cells corresponding to at least one of said members;
means for further storing said desired information as a plurality of data lists, each of said data lists comprising a plurality of records for storing said desired information and an identifier for each said data item;
means for sorting said data by using said identifier;
means for extracting from the sorted data intra-data item summary information which is obtained by processing said desired information for each corresponding data item without referring to other data items in a respective data list;
means for supplying the extracted intra-data item summary information to respective records in each said data list;
means for accessing each said data list for determining inter-data item summary information which is obtained by processing the extracted intra-data item summary information for the corresponding data item by referring to said other data items in said respective data list;
means for supplying said inter-data item summary information to said respective records;
means for linking each said cell with said respective data list such that each said cell represents a multi-dimensional index to the corresponding data list, whereby each said data list is identified by said at least one of said members; and
means for outputting said data lists.
-
-
30. A method for generating, in response to a user query, at least one data list in a multi-dimensional storage structure for storing desired information obtained from data representative of data items, said method comprising the steps of:
-
storing said desired information as a plurality of cells being represented as said multi-dimensional storage structure that is defined by a plurality of dimensions, wherein each of said dimensions includes a plurality of members for identifying said desired information, each of said cells corresponding to at least one of said members;
storing said desired information as a plurality of data lists, each of said data lists comprising a plurality of records for storing said desired information and an identifier for each said data item;
sorting said data by using said identifier;
extracting from the sorted data intra-data item summary information which is obtained by processing said desired information for each corresponding data item without referring to other data items in a respective data list;
supplying the extracted intra-data item summary information to respective records in each said data list;
accessing each said data list for determining inter-data item summary information which is obtained by processing the extracted intra-data item summary information for the corresponding data item by referring to said other data items in said respective data list;
supplying said inter-data item summary information to said respective records;
linking each said cell with said respective data list such that each said cell represents a multi-dimensional index to the corresponding data list, whereby each said data list is identified by said at least one of said members; and
outputting said data lists.
-
Specification