Patent US6446059B1 successfully refreshed from Google Patents.
← Back to Patent Explorer
US6446059B1 Expired / Lapsed US ⏱️ 0.0 years remaining

Record for a multidimensional database with flexible paths

Assignee: Microsoft Technology Licensing LLC
•
Filing: 1999-06-22
•
Granted: 2002-09-03
•
Expires: 2019-06-22
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract Creating and maintaining cell data records in a multidimensional database is disclosed using flexible dimension paths is disclosed. The systems and methods of the invention define an efficient mechanism to specify a cell's location within the multidimensional database where there are hierarchies of levels within a dimension. The flexible dimension path does not change when a member is moved from a first point to a second point on a dimension thereby avoiding the need to rebuild the OLAP database. The format used lends itself well to indexing, and also to creating aggregations of the cell data.

Inventors

  • 👤 Alexander Berger
  • 👤 Amir Netz
  • 👤 Mosha Pasumansky

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-27 23:22
CPC Classifications
G; G06; G06F; G06F16/00; G06F16/20; G06F16/28; G06F16/283; Y; Y10; Y10S; Y10S707/00; Y10S707/99931; Y10S707/99932; Y10S707/99933; Y10S707/99934; Y10S707/99935

Claims Analysis

Total Claims: 28
Claim 1
Independent Claim 133 words
A computerized method for creating a cell record for a multidimensional database, the method comprising: maintaining a set of mappings from a rigid dimension path to a unique memberid; receiving a measurement data item for a cell, said cell identified by a first member, said first member having a first dimension and a first level; determining a first rigid dimension path for the first member; if the first rigid path is in the set of mappings, inserting a first flexible dimension path corresponding to the unique memberid mapped to the first rigid dimension path into a system path field of the cell record, otherwise inserting the first rigid dimension path into a system path field of the cell record; and inserting the measurement data item into a measurement field of the cell record.
Claim 2
Dependent Claim 133 words
A computerized method for creating a cell record for a multidimensional database, the method comprising: maintaining a set of mappings from a rigid dimension path to a unique memberid; receiving a measurement data item for a cell, said cell identified by a first member, said first member having a first dimension and a first level; determining a first rigid dimension path for the first member; if the first rigid path is in the set of mappings, inserting a first flexible dimension path corresponding to the unique memberid mapped to the first rigid dimension path into a system path field of the cell record, otherwise inserting the first rigid dimension path into a system path field of the cell record; and inserting the measurement data item into a measurement field of the cell record.
Claim 3
Dependent Claim 74 words
The computerized method of claim 1 , wherein determining the first rigid dimension path comprises: determining a set of dimension members on a path between the first dimension member and a top-level member, said path including the top-level member and the first dimension member; and for each dimension member in the set of dimension members, performing the tasks of: determining a member number, and concatenating the member number into the first rigid dimension path.
Claim 4
Dependent Claim 26 words
The computerized method of claim 2 , wherein the member number is determined by the dimension member's order among a set of siblings for the member.
Claim 5
Dependent Claim 85 words
The computerized method of claim 1 , wherein the cell is further identified by a second member, said second member having a second dimension and a second level, and further comprising: determining a second rigid dimension path for the second member; and concatenating a second flexible dimension path corresponding to the unique memberid mapped to the second rigid path into the system path field if the second rigid path is in the set of mappings, otherwise concatenating the second rigid path into the system path.
Claim 6
Dependent Claim 74 words
The computerized method of claim 4 , wherein determining the second rigid dimension path comprises: determining a set of dimension members on a path between the second dimension member and a top-level member, said path including the top-level member and the second dimension member; and for each dimension member in the set of dimension members, performing the tasks of: determining a member number, and concatenating the member number into the second rigid dimension path.
Claim 7
Dependent Claim 26 words
The computerized method of claim 4 , wherein the member number is determined by the dimension member's order among a set of siblings for the member.
Claim 8
Dependent Claim 156 words
A computerized method for determining an aggregation measure, the method comprising: identifying an aggregation measure and an aggregation system path, said aggregation system path specifying an aggregation dimension and an aggregation level; if a flexible dimension path exists in the aggregation dimension then converting the flexible dimension path to a rigid dimension path; for each record of a plurality of records, each record having a system path, said system path having a rigid dimension path, said rigid dimension path having a plurality of level components, performing the following tasks: setting a level component corresponding to the aggregation level to a null value, and setting each level component corresponding to a level below the aggregation level to the null value; selecting a subset of the plurality of records where the system path equals the aggregation system path; and summing a measure corresponding to the aggregation measure in each record of the subset to create an aggregated measure.
Claim 9
Dependent Claim 156 words
A computerized method for determining an aggregation measure, the method comprising: identifying an aggregation measure and an aggregation system path, said aggregation system path specifying an aggregation dimension and an aggregation level; if a flexible dimension path exists in the aggregation dimension then converting the flexible dimension path to a rigid dimension path; for each record of a plurality of records, each record having a system path, said system path having a rigid dimension path, said rigid dimension path having a plurality of level components, performing the following tasks: setting a level component corresponding to the aggregation level to a null value, and setting each level component corresponding to a level below the aggregation level to the null value; selecting a subset of the plurality of records where the system path equals the aggregation system path; and summing a measure corresponding to the aggregation measure in each record of the subset to create an aggregated measure.
Claim 10
Dependent Claim 23 words
The method of claim 7 , further comprising restoring to a previous value each of the level components set to a null value.
Claim 11
Dependent Claim 18 words
The method of claim 8 , wherein restoring to a previous value comprises rolling back a database transaction.
Claim 12
Dependent Claim 28 words
The method of claim 8 , wherein an aggregation record having the aggregation system path and a measure corresponding to the aggregated measure is stored in a cache.
Claim 13
Dependent Claim 129 words
A computer-readable medium having computer-executable instructions for performing a method comprising: maintaining a set of mappings from a rigid dimension path to a unique memberid; receiving a measurement data item for a cell, said cell identified by a first member, said first member having a first dimension and a first level; determining a first rigid dimension path for the first member; if the first rigid path is in the set of mappings, inserting a first flexible dimension path corresponding to the unique memberid mapped to the first rigid dimension path into a system path field of the cell record, otherwise inserting the first rigid dimension path into a system path field of the cell record; and inserting the measurement data item into a measurement field of the cell record.
Claim 14
Dependent Claim 129 words
A computer-readable medium having computer-executable instructions for performing a method comprising: maintaining a set of mappings from a rigid dimension path to a unique memberid; receiving a measurement data item for a cell, said cell identified by a first member, said first member having a first dimension and a first level; determining a first rigid dimension path for the first member; if the first rigid path is in the set of mappings, inserting a first flexible dimension path corresponding to the unique memberid mapped to the first rigid dimension path into a system path field of the cell record, otherwise inserting the first rigid dimension path into a system path field of the cell record; and inserting the measurement data item into a measurement field of the cell record.
Claim 15
Dependent Claim 74 words
The computer-readable medium of claim 11 , wherein determining the first rigid dimension path comprises: determining a set of dimension members on a path between the first dimension member and a top-level member, said path including the top-level member and the first dimension member; and for each dimension member in the set of dimension members, performing the tasks of: determining a member number, and concatenating the member number into the first rigid dimension path.
Claim 16
Dependent Claim 26 words
The computer-readable medium of claim 12 , wherein the member number is determined by the dimension member's order among a set of siblings for the member.
Claim 17
Dependent Claim 85 words
The computer-readable medium of claim 11 , wherein the cell is further identified by a second member, said second member having a second dimension and a second level, and further comprising: determining a second rigid dimension path for the second member; and concatenating a second flexible dimension path corresponding to the unique memberid mapped to the second rigid path into the system path field if the second rigid path is in the set of mappings, otherwise concatenating the second rigid path into the system path.
Claim 18
Dependent Claim 74 words
The computer-readable medium of claim 14 , wherein determining the second rigid dimension path comprises: determining a set of dimension members on a path between the second dimension member and a top-level member, said path including the top-level member and the second dimension member; and for each dimension member in the set of dimension members, performing the tasks of: determining a member number, and concatenating the member number into the second rigid dimension path.
Claim 19
Dependent Claim 26 words
The computer-readable medium of claim 14 , wherein the member number is determined by the dimension member's order among a set of siblings for the member.
Claim 20
Dependent Claim 156 words
A computer-readable medium having computer-executable instructions for performing a method comprising: identifying an aggregation measure and an aggregation system path, said aggregation system path specifying an aggregation dimension and an aggregation level; if a flexible dimension path exists in the aggregation dimension then converting the flexible dimension path to a rigid dimension path; for each record of a plurality of records, each record having a system path, said system path having a rigid dimension path, said rigid dimension path having a plurality of level components, performing the following tasks: setting a level component corresponding to the aggregation level to a null value, and setting each level component corresponding to a level below the aggregation level to the null value; selecting a subset of the plurality of records where the system path equals the aggregation system path; and summing a measure corresponding to the aggregation measure in each record of the subset to create an aggregated measure.
Claim 21
Dependent Claim 156 words
A computer-readable medium having computer-executable instructions for performing a method comprising: identifying an aggregation measure and an aggregation system path, said aggregation system path specifying an aggregation dimension and an aggregation level; if a flexible dimension path exists in the aggregation dimension then converting the flexible dimension path to a rigid dimension path; for each record of a plurality of records, each record having a system path, said system path having a rigid dimension path, said rigid dimension path having a plurality of level components, performing the following tasks: setting a level component corresponding to the aggregation level to a null value, and setting each level component corresponding to a level below the aggregation level to the null value; selecting a subset of the plurality of records where the system path equals the aggregation system path; and summing a measure corresponding to the aggregation measure in each record of the subset to create an aggregated measure.
Claim 22
Dependent Claim 24 words
The computer-readable medium of claim 17 , further comprising restoring to a previous value each of the level components set to a null value.
Claim 23
Dependent Claim 19 words
The computer-readable medium of claim 18 , wherein restoring to a previous value comprises rolling back a database transaction.
Claim 24
Dependent Claim 29 words
The computer-readable medium of claim 18 , wherein an aggregation record having the aggregation system path and a measure corresponding to the aggregated measure is stored in a cache.
Claim 25
Dependent Claim 136 words
A computerized system comprising: a processor and a computer-readable medium; an operating environment executing on the processor from the computer-readable medium; a map table; a fact data store; a local data store; and an OLAP server executing under the control of the operating environment and operative to perform the tasks of: reading a plurality of detail records from the fact data store, for each of the plurality of detail records performing the tasks of: determining a system path to the cell record, said system path including a flexible dimension record if a rigid dimension path associated with the cell record appears in the map table, creating a cell record having a system path and at least one measure corresponding to a value from the detail record, and storing the cell record in the local data store.
Claim 26
Dependent Claim 136 words
A computerized system comprising: a processor and a computer-readable medium; an operating environment executing on the processor from the computer-readable medium; a map table; a fact data store; a local data store; and an OLAP server executing under the control of the operating environment and operative to perform the tasks of: reading a plurality of detail records from the fact data store, for each of the plurality of detail records performing the tasks of: determining a system path to the cell record, said system path including a flexible dimension record if a rigid dimension path associated with the cell record appears in the map table, creating a cell record having a system path and at least one measure corresponding to a value from the detail record, and storing the cell record in the local data store.
Claim 27
Dependent Claim 16 words
The computerized system of claim 21 , wherein the fact data store is a relational database.
Claim 28
Dependent Claim 17 words
The computerized system of claim 21 , wherein the local data store is a relational database system.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2005-09-02 2006-03-04 2006-09-03 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2009-09-02 2010-03-04 2010-09-03 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2013-09-02 2014-03-04 2014-09-03 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag