CA2303634C - System and method for instant consolidation, enrichment, delegation and reporting in a multidimensional database - Google Patents

System and method for instant consolidation, enrichment, delegation and reporting in a multidimensional database Download PDF

Info

Publication number
CA2303634C
CA2303634C CA002303634A CA2303634A CA2303634C CA 2303634 C CA2303634 C CA 2303634C CA 002303634 A CA002303634 A CA 002303634A CA 2303634 A CA2303634 A CA 2303634A CA 2303634 C CA2303634 C CA 2303634C
Authority
CA
Canada
Prior art keywords
data
database
value
dimension
delegation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CA002303634A
Other languages
French (fr)
Other versions
CA2303634A1 (en
Inventor
Pierre Bensoussan
Antoine De Jaegere
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Cartesis SA
Original Assignee
Cartesis SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Cartesis SA filed Critical Cartesis SA
Publication of CA2303634A1 publication Critical patent/CA2303634A1/en
Application granted granted Critical
Publication of CA2303634C publication Critical patent/CA2303634C/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2453Query optimisation
    • G06F16/24534Query rewriting; Transformation
    • G06F16/24539Query rewriting; Transformation using cached or materialised query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/283Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99943Generating database or data structure, e.g. via user interface
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99944Object-oriented database structure
    • Y10S707/99945Object-oriented database structure processing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99948Application of database or data structure, e.g. distributed, multimedia, or image

Abstract

A method, system and article of manufacture are provided which enhance the ability to aggregate, analyze and report data from a multidimensional database in a memory. The database consists of a hierarchy of data items, each item representing an account. Each account may hold either numerical data (figures) or multimedia content. The invention is particularly useful in assisting financial controllers of a multinational company or other organization in gathering data and generating reports. The invention complies with existing on-line analytical processing (OLAP) standards, and improves upon conventional OLAP methods, software and systems. The present invention includes some innovative new features, such as: incubescent data structure, joint dimensions, delegation using "datareqs," cycle preservation, enrichment and instant consolidation. Navigation and communication tools are also included.

Description

SYSTEM AND METHOD FOR INSTANT CONSOLIDATION. ENRICHMENT, DELEGATION AND REPORTING IN A MULTIDIMENSIONAL DATABASE
Background of the Invention Field of the Invention The present invention relates to the handling of data in multidimensional computer databases. More particularly, the invention uses _on-line analytical processing (OLAP) and other techniques to manage, aggregate and report data in a multidimensional database. The invention is especially useful for effectively handling numerous accounts in a large database maintained by a multinational corporation or other organization.
Background of Database TechnoloQV and OLAP
On-line analytical processing (OLAP) is an application architecture,, type or style of business intelligence computing that can support analytical applications, such as to help end users identify important business trends. OLAP is not data-warehouse technology or a database management system (DBMS).
There has been some confusion and misunderstanding about OLAP. In fact, in 1995 a group called the OLAP Council was formed in order to serve as advocacy group and an industry guide in order to educate the market about OLAP technology and provide common definitions, among other things. The OLAP Council issued certain "tenets," including the following: (1) The need of end users to analyze corporate data for the purpose of making better decisions is of paramount importance; (2) OLAP technologies are essential to delivering this end-user value and are a critical component of a broader information technology architecture;
(3) Corporate data needs to be transformed into multidimensional aggregations supporting enterprise-scale data volumes and hierarchies; (4) Fast, eonsis-tent response to cud-usei roquests is critical to rive, ad~.oc exploration, comparison arid analysis of data, regardless of database sizx sad complexity; and (~ F.ad usats must be able to manipulabc and derive data for analysis purposes bY applying saalytieal operations snob as nattos, amnulative totals, trends anal allocations acmss dimensions and across hierarchical levels. ~ ' ' OLA,P provides a numbar of key benefits that erxablo business professionals to make more e~cient managerial arid strategic decisions. Susiuess workers who require acxcss to large amounts of data in order to make t3~cir business decisions are able to use OLAP systems to flcadbly manipulate daxa quickly and effectively, thus enhancing their analytical ability In particular, OLAP shows the user to support complex analysis cuts, analyze data from a number of different perspectives (busirnass dimensions), and support complex analyses against large input (atomic-level) data seTs.
For furthar discussions of multidimensional d~atal~sc systems, OLAP and.
related concepts and technologies, see:
Gartner Group: http://wwwgartnergcoup.oom Pilot Soflwanc: http://www pilotsw.com/olap/olap.lrtm OLA.P: The panacea for the Ills of Managemart tnfozmation Systems?
http://www/sgroves.demon.oo.uWjustolaphtnnl OLAP. reference sit~cs: httpJ/www pwninu.no%-aksclh/olap.hma _ OLAP Rcpott httpJ/wwwolaprcportcom~ ..
The OLAP Council: htipJ/www.olapovuncil.org .
Soe also U.S. Patent Nos. 5,943,668; 5,642,524; 5,669,008; 5,794,059;
5,706,495;
5,799,300; 5,819,258; 5,815,155; 572,644; 5,832,182; 5,280,547; and 5,822,751.
Summary of the Invention A method, system and article of manufacture are provided which enhance the ability to aggregate, analyze and report data stored in a multidimensional database. The database consists of a hierarchy of data items, each item representing an account. Each account may hold either numerical data (figures) or multimedia content. The invention is particularly useful in assisting financial controllers of multinational corporations or other organizations in gathering data, analyzing data and generating reports. The invention complies with existing on-line analytical processing (OLAP) standards, and improves upon conventional OLAP methods, software and systems. The invention includes a self contained data model allowing shared language among finance officers across the organization or group. The invention further provides a full-featured database, and organizes data in the form of a multidimensional matrix of up to 32 dimensions.
The present invention includes some innovative new features, such as:
incubescent data structure, joint dimensions, delegation using "datareqs," cycle preservation, enrichment and instant consolidation. Navigation and communication tools are also included.
Brief Description of the Drawines Referring now to the drawings, in which like reference numbers represent corresponding parts throughout:
FIG. 1 is a pictorial diagram and flowchart showing a typical prior art management structure and reporting flow in a large corporation.
FIG. 2 is a general flowchart showing the invention as applied to reporting flows in a large corporation.
FIG. 3 is a block diagram of the technical organization in which the present invention operates.
FIG. 4 is a pictorial diagram of the data structure of a core cube used in the present invention.
FIG. 5 is pictorial diagram showing a core cube and a typical sub-cube used in the structure of FIG. 4.
FIG. 6 is a pictorial diagram showing typical joint dimensions in the structure of FIG. 4.
FIG. 7 is a flowchart of the delegation feature of the present invention.
FIG. 8 is a screenshot showing the delegation feature of the present invention.
FIG. 9 is a pictorial diagram showing the "cycle" feature of the present invention, showing "before" and "after" views, and comparing a prior art method with the method of the present invention.
FIG. 10 is a pictorial diagram showing the "cycle" feature of the present invention, and in particular showing mufti-structural comparisons.
FIG. 11 is a pictorial diagram and flowchart showing the "enrichment" and "delegation"
features of the present invention.
FIG. 12 is a flowchart showing the instant consolidation algorithm of the present invention, and comparing it with the prior art.
FIG. 13 is a pictorial structural diagram showing the "instant consolidation"
feature of the present invention, and more particularly the "data indexing" feature.
FIG. 14 is a flowchart of the primary steps of the "instant consolidation"
method of the present invention.
FIG. 15 is a flowchart of the "get amount" series of steps of the method of FIG. 14.
FIGS. 16-25 are screenshots of typical computer display screens that a user sees when he or she operates the method of the present invention using a personal computer.
In particular:
FIG. 16 is a screenshot of a typical "home page."
FIG. 17 is a screenshot of the task scheduler feature of the invention.
FIG. 18 is a screenshot showing a multidimensional analysis and chart.
FIG. 19 is a screenshot of a representative graphical analysis.
FIG. 20 is a screenshot of a delegation window.
FIG. 21 is a screenshot of a delegate edition window.
FIG. 22 is a screenshot showing the breakdown of a cube and core-cube.
FIG. 23 is a screenshot of an instant consolidation operation, specifically currency conversion.
FIG. 24 is a screenshot of an instant consolidation operation, specifically intercompany elimination.
FIG. 25 is a screenshot of an instant consolidation operation, specifically time aggregation.
Detailed Description of the Preferred Embodiments The present invention, which is sometimes referred to herein by its project name, CyanTM, is a computer software package primarily designed to aid' the finance controllers of a company, organization or group of entities to aggregate data and facilitate reporting.
The present invention facilitates the communication of financial information between the controllers of various group entities. It automates some recurring calculations required for the -S-consolidation process, and offers tools to navigate around and report on collected data. Financial information is composed of figures identified through accounts. They are traditionally organized as "accounts." An "account" is the accepted industry term for a unit of accounting information.
A significant part of financial information is not numeric, but rather consists of free-form multimedia data and comments. The present invention can handle this form of data as well.
Summary of Features The Cyan product of the present invention includes some innovative new features, such as: incubescent data structure, joint dimensions, delegation using "datareqs,"
cycle preservation, enrichment and instant consolidation.
Incubescent data structure Cyan provides an integrated data model (set of dimensions), which defines a framework of financial reporting, using an OLAP structure, and financial intelligence.
It is an integrated process for use with an OLAP database. OLAP tools tend to represent the world as a large cube.
The present invention employs a new data structure where data are always identified by an account. This account determines the set of dimensions that can be used to break data down.
This data structure retains the benefits of the traditional chart of accounts, as organized in a hierarchy, but avoids the pitfalls of presenting a huge, unfamiliar datacube to users. Instead, the invention presents them first with a chart of accounts in the format they are used to.
Joint dimensions The present invention further improves upon OLAP by introducing joint dimensions.
This is a list of all pertinent combinations of some dimensions. For example, all products may not be sold in all countries. A joint dimension will enforce such a restriction, guiding users through data entry. . Another interesting usage of joint dimensions is that a large number of dimensions can be joined to present only few joint dimensions to users. A user can then either browse data through the joint dimensions, which are simple to understand, or break a joint dimension into its constituents, enabling a richer, but more complex, navigation.
Delegation Using "Dataregs"~ Communication of Delegation Communication between those performing management reporting is often organized around requests for data, or "datareqs." A datareq is used, for example, by a manager to delegate responsibilities to others within a large corporation or other organization.
At the highest level, the person responsible for reporting has to fill in a huge amount of data describing the entire group. This task can be handled by the responsible person, or delegated to others. To accomplish that, the present invention dispatches datareqs to others.
Each datareq contains a description of the task and its constraints. A datareq also contains the description of all the resources needed to fulfill it. For example, the chart of accounts, the exchange rates, the group structure, the chart of accounts' documentation, current generally accepted accounting practices that should be applied when entering figures, etc. Datareqs promote a decentralized, ad hoc, organization of the delegation of work when they can more closely adhere to the repartition of knowledge and responsibility in the group than any centralized scheme.
The delegation scheme used by the present invention can be seen as a specialized workflow, tuned to optimize the fast production of accurate financial data.
The present invention can define a way to delegate work in an organization or team of people. In addition, the invention improves upon the communication of delegation. Email communication permits offline working. Moreover, the invention replicates logical structure, not just a file of data. The invention generalizes email messages and sends them to the user with file attachments consisting of logical structures of reporting that is delegated.
Cycle Preservation (Preservation of Historical Data Structures) The Cyan invention promotes a close integration of data and structure through the concept of "cycle." A cycle gathers together a structure (chart of accounts, group structure, exchange rates, etc.) and a set of data coherent with this structure. When the structure changes, all the data in the cycle are updated. If that is not what was intended, the user can create a new cycle and start afresh. Cycles also allow the preservation of historical data with historical structure, but this is not available in any known prior art system or method.
Prior art systems normally keep only one active version of the structure, and force the user to see old data within the current structure. By contrast, the present invention includes built-in features to compare cycles, store old versions of structures and analyze the impact of the structure changes on the data.
Enrichment As mentioned earlier, those who are performing a reporting task can delegate part or all of their work to another. One additional feature of the Cyan invention is called "enrichment."
Enrichment means that one can ask others for more information than what one was asked to enter. For example, if asked about sales in a particular region, one could ask each delegate or sales representative in each area to enter sales broken down by product. The breakdown by product is an enrichment of the initial structure. A huge benefit of the present invention is that one can only add to what one was asked, but can't modify or delete parts of the datareq received.
_g_ This guarantees that all actors in the reporting chain speak a common language.
Instant Consolidation Consolidation is the process of aggregating gained information of various group entities in order to make a picture of the group as a whole. In the context of a multinational company having sales all over the world, this process involves aggregating data across the group structure and converting foreign currencies, while avoiding the "double counting" of intragroup operations. A consolidated reporting should represent group operations with the rest of the world, and thus must eliminate any exchange occurnng between group entities.
Cyan supports consolidation through these built-in operations: (1) Aggregation of all elements into a hierarchy node; (2) Currency conversion, supporting accounting standards subtleties; (3) Intragroup elimination; and (4) Allocation, allowing for example, the dispatching of group costs to be allocated to each subsidiary.
Consolidation computation may be run interactively (i.e., in less than two seconds), allowing the same mode of usage as a spreadsheet. Contrary to many prior art systems, Cyan does not force users to be connected online to a central system. It can be used asynchronously, like email.
Thus, Cyan retains the ease-of use of current practice (email and spreadsheets), but is far more structured and thus maintained. It can be run "on-the-fly." As mentioned above, examples of specific benefits of this feature include automatic currency translation in real-time and elimination of intercompany sales in real-time. The above operations are performed "live" and not using a batch process. Time aggregation and hierarchical aggregation can be performed on each dimension. The results are continuously displayed on the screen for the user.

Other Features.
Communication tools similar to email are integrated into Cyan providing a more rigid coupling environment than the juxtaposition of the spreadsheet and email. Cyan also supports all communications through a mechanism of subscription, where any person may register interest in some information published by someone else.
Navigation using the present invention is also fully supported. In fact, Cyan support of hierarchies on every dimension, even of multiple hierarchies on one dimension, provides a rich tool. Reports can be edited through the navigation tool. More complex ones are delegated to spreadsheets.
Cyan lies on top of transactional systems. It is not intended to replace them.
It provides detailed information on day-to-day business, and provides aggregate information summarizing operations over a time period such as a day, week, month, or year.
Cyan provides a reporting language throughout the group, independent of the underlying transactional systems. It can be used to provide reports and to navigate around collected data.
A purpose of the present invention is to build a reporting framework to be used by a group based upon financial intelligence that is put into the cube database.
The present invention may be used not only in the area of finance but also in other areas.
For example, it may support the collection of any kind of figures by a group of people. The invention also provides flexibility, and it is easy to roll out across an organization.
Discussion of Drawings Turning now the drawings, FIG. 1 is a pictorial diagram and flowchart showing a typical prior art management structure and reporting flow in a large corporation.
Today, large corporations and other organizations such as accounting firms are multinational in scope.
Typically, they include a corporate center 10, which is usually housed in a corporate headquarters building. The corporation may also be divided into several regional divisions or zones. For example, as shown in FIG. I , there are shown four zones, namely zone # 1, zone #2, zone #3, and zone #4. These zones may, for example, represent different geographical areas, or may represent different product lines or corporate functions (such as research, manufacturing, etc.) The organization may further be divided into separate physical offices in different countries, such as country # 1.1 through country # l .n. Furthermore, each country office may serve several business units such as business unit # l .n. l through business unit # l .n.m. Finally, each business unit may manage one or more local offices or sub-entities, such as sub-entity # l .n.m.
l through sub-entity #l .n.m.p. Within each sub-entity or business unit there are individuals who have various line responsibilities such as a controller, an accountant and a sales manager.
The various offices, individuals and levels of the corporation together form a hierarchy.
The hierarchy is one of management, information flow, physical goods flows and other flows. In FIG. 1, an organization of reporting flows is shown. This shows a typical top-down reporting structure. Starting at the lowest level, controller X reports to a boss or manager located in a business unit or sub-entity # l .n.m.p. Similarly, an accountant Y may report to the same or different manager in sub-entity l .n.m.p, and a sales manager Z may report to the same or different person in sub-entity #l.n.m.p. The manager of sub-entity #l.n.m.p reports, in turn, to the manager of business unit l.n.m (reference number 3 in FIG. 1.) This manager, in turn, reports up to the manager of country #1.n, who reports to the manager of the zone #1 facility, who finally reports to a manager in corporate center 10.

Six management levels are shown in the hierarchy of FIG. 1 but, of course, a wide variety of different levels and structures are found in actual corporations. It should be noted that the diagram of FIG. 1 uses only one dimension to describe the reporting flows. In matrix organizations, the reporting structure is better shown multidimensionally. In addition, corporate and business unit reporting flows are commonly disconnected in terms of processes and tools.
FIG. 2 is a general flowchart showing the invention as applied to reporting flows in a large corporation. In FIG. 2, a large corporation having six management levels is shown.
Corporate center 10 or corporate headquarters is shown as a large cube. The cube is a useful symbol because it represents a structured organization of many smaller units or sub-cubes. For purposes of simplicity, it is assumed that there is only one manager at the corporate center. He is identified with an email address, bob a.us. roup.com. The corporate center cube is shown having five layers. Each layer is a grid of 20 blocks, a 5x4 matrix. Therefore, the corporate center cube has dimensions of Sx4x5, or five units horizontally, five units vertically, and four units in the third dimension (into the paper).
The corporate structure of FIG. 2 is further divided into zones, country areas, business units, sub-entities, and individuals. Zone # 1 includes two "layers" of the corporation and is managed by an individual designated by an email address john(aW k.group.com.
Zones #2, #3 and #4 each encompass different sections of one layer of the corporation. The reporting structure continues down through the business units, sub-entities and individuals.
It should be noted that the diagram of FIG. 2 uses only one dimension to describe the reporting flows. In matrix organizations, the reporting structure is better shown multidimensionally. In the present invention, reporting responsibility is delegated to individuals through "datareqs." In addition, every level in FIG. 2 has the same set of fiznctionalities, including "instant consolidation." Also, corporate and business unit flows are integrated. Each level can enhance the corporate framework in a process known as "enrichment."
FIG. 3 is a block diagram of the technical organization in which the present invention operates. The invention is configured to operate in either of two computer system environments:
(1) a single-user architecture or (2) a mufti-user architecture. The single-user architecture is a two-tier client-server architecture. It includes a relational database management system (RDBMS 20) residing on a data storage unit, coupled to an in-memory OLAP cube database 30 through a network. The multiuser architecture is a three-tier architecture. It includes and RDBMS 20 on a storage device coupled to an in-memory concurrent access manager 40 through a network. The access manager 40, in turn, is coupled to a plurality of in-memory OLAP cube databases through networks.
FIG. 4 is a pictorial diagram of the data structure of the core cube of the present invention. In a large organization the main database usually consists of a large quantity of data items that can be categorized in different ways or along different dimensions.
For example, sales data may be broken down by product category, business entity, time or date, geography, and actual vs. budgeted. In the example of FIG. 4, a 4-dimensional hypercube is used to illustrate a database with elements having data that can be categorized in four dimensions.
The sample dimensions shown are category, entity, time, and indicator. Each element 50 of the core cube is a 4-dimensional vector. The vector may be represented by the expression: (sales, 1999.09, actual, Asia).
A great deal of other information is also normally hidden with the hypercube of FIG. 4.

For example, each dimension can simultaneously bear (or embody or represent) multiple hierarchies. In the example shown, each dimension inherently embodies the following hierarchy:
Corporate Countries 1, 2, 3 Business Units 1-n Sectors l, 2 A major challenge is how to deal with data of this complexity, and to consolidate, report and present it intelligently to managers and other decision-makers within the corporation. The present invention includes several features to facilitate the management and organization of this type of data, so as to improve consolidation, reporting and presentation.
FIG. S is pictorial diagram showing a core cube and a typical sub-cube used in the structure of FIG. 4. One element of the hypercube of FIG. S may itself be expanded into a regular three-dimensional cube or sub-cube. In this example, the sub-cube for the chosen element has the sub-dimensions channel, product and country. A detailed sub-cube can be attached to each indicator. For example, the element "sales" is linked to a 3-dimensional cube, the vector coordinates of which are: (product; channel; country).
FIG. 6 is a pictorial diagram showing typical joint dimensions in the structure of FIG. 4.
Dimension diml is shown having three elements, a, b, and c. Dimension dim2 contains the elements 1, 2. The joint dimension diml ~ dim2 is calculated by an operation that results in a vector having the following elements: (al, b1, c1, a2, b2, c2).
FIG. 7 is a flowchart of the delegation feature of the present invention. The algorithm can be described as follows:
Step 1: Receive datareq, and proceed to 2.
Step 2: Select delegation dimension, and proceed to 3..
Step 3: Create sub-datareqs (sets of elements), and proceed to 4.
Step 4: Retrieve affected elements from remainder, and proceed to 5.
Step 5: Decision: Has delegation been completed? If no, return to 3; if yes, go to 6.
Step 6: Send sub-datareqs; and go to 7.
Step 7: Receive filled sub-datareqs, and go to 8.
Step 8: Fill remainder, and go to 9.
Step 9: Send datareq back, and stop.
FIG. 8 is a screenshot showing the delegation feature of the present invention.
FIG. 9 is a pictorial diagram showing the "cycle" feature of the present invention, showing "before" and "after" views, and comparing a prior art method with the method of the present invention. To best understand this feature, it is important to understand that databases contain value not only in the individual data elements that make up the database, but also in the overall structure or organization of the database. Commonly, prior art corporate databases are changed or reorganized over time as corporate needs change. Such a change is called a "cycle."
Although care is usually taken to preserve the integrity of each individual data item from one cycle to the next, little or no attention may be given to the preservation of overall historical data structures. Indeed, no information at all may be retained about the structure of an "old" database that has been migrated over or changed into a new computer system. Thus, previous versions are lost; data are not linked to the structure; and data comparison between two versions of the structure become difficult or impossible.
The present invention overcomes this disadvantage of the prior art by preserving every version of the database structure as it is changed. Data are linked to the structure; and data can be reliably compared between two different versions of the structure. The structure is preserved within the data itself as of the time of initial population of the database, and at each subsequent time at which the data changes.
FIG. 10 is a pictorial diagiam showing the "cycle" feature of the present invention, and in particular showing mufti-structure comparisons. As the database passes from cycle 1 to cycle 2, a new "virtual structure" is created which permits the accurate comparison of data from the two cycles.
FIG. 11 is a pictorial diagram and flowchart showing the "enrichment" and "delegation"
features of the present invention. Delegation in the traditional sense means giving someone else responsibility, or passing information down a management hierarchy.
Individuals to whom tasks have been delegated may "enrich," i.e., add extra information and delegate the entry of this information to others. When they report back to their managers, the enriched information may be either discarded or kept as comments describing how required information was elaborated."
FIG. 12 is a flowchart showing the instant consolidation algorithm of the present invention, and comparing it with the prior art. A common operation in database management systems is the aggregation or consolidation of data. For example, sales figures for different business units may need to be combined to produce a total sales figure for a particular branch or region. The normal prior art method for such aggregation/ consolidation is batch processing. In this method, the system pre-computes all or most of the aggregates that may be queried by users in the future. In FIG. 12, prior art systems aggregate facts into a new database of aggregates, which are then available to be extracted in response to a user query. This may lead to computing aggregates that will never by retrieved. By contrast, and a present Cyan system, aggregates are calculated "on-the-fly." A user may input a query, and the system will instantly consolidate the relevant facts and compute only the requested aggregates. These results are stored in a cache memory to speed up subsequent requests. The aggregates can then be immediately retrieved from the memory in response to an instantaneous query.
FIG. 13 is a pictorial structural diagram showing the "instant consolidation"
feature of the present invention, and more particularly the "data indexing" feature. A
multidimensional database is shown having three primary dimensions, diml, dim2 and dim3, representing three coordinate axes. Each member of the dimension has associated with it or "owns"
a hashing table that contains the set of all the amounts referenced by this member. Each amount is linked to an entry in each of hashing tables of the members of the dimensions representing this amount.
FIG. 14 is a flowchart of the primary steps of the "instant consolidation"
method of the present invention. The algorithm may be described in the following steps:
Step 1: Data is requested by user; then operation proceeds to Step 2.
Step 2: Decision: Is the data in cache? If yes, go to 8; if no, go to 3.
Step 3: Decision: Is the data a formula? If yes, go to 5; if no, go to 4.
Step 4: Decision: Is the data a time aggregate? If yes, go to 9; if no go to 11.
Step 5: Get all amounts comprising the formula, and proceed to 6.
Step 6: Compute the formula, and proceed to 7.
Step 7: Store the result in cache memory, and proceed to 8.

Step 8: Return the result to user, and stop.
Step 9: Get amount for all periods, and proceed to 10.
Step 10: Convert and aggregate, and proceed to 7.
Step 11: Get requested amount (see FIG. 15 for detail), and proceed to 12.
Step 12: Convert data, then proceed to 7.
FIG. 15 is a flowchart of the "get requested amount" method of block 11 of FIG. 14. This method may be described in the following steps:
Step 1: Select the members of the dimensions identifying the amount, and proceed to 2.
Step 2: Select the hashing table of each member, and proceed to 3.
Step 3: Clone the smallest hashing table, and proceed to 4.
Step 4: Decision: Is this the last element of the table? If yes, go to S; if no, go to 6.
Step 5: Return the result to user, and stop.
Step 6: Search all other tables for the next element, and proceed to 7.
Step 7: Decision: Is the element found in 1 table? If yes, go to 8; if no, return to 4.
Step 8: Get amount using the hashing table on the amounts, and return to 4.
FIGS. 16-25 are screenshots of typical computer display screens that a user sees when he or she operates the method of the present invention using a personal computer.
In particular:
FIG. 16 is a screenshot of a typical "home page."
FIG. 17 is a-screenshot of the task scheduler feature of the invention.
FIG. 18 is a screenshot showing a multidimensional analysis and chart.
FIG. 19 is a screenshot of a representative graphical analysis.
FIG. 20 is a screenshot of a delegation window.

FIG. 21 is a screenshot of a delegate edition window.
FIG. 22 is a screenshot showing the breakdown of a cube and core-cube.
FIG. 23 is a screenshot of an instant consolidation operation, specifically currency conversion.
FIG. 24 is a screenshot of an instant consolidation operation, specifically intercompany elimination.
FIG. 25 is a screenshot of an instant consolidation operation, specifically time aggregation.
One Specific ProgramminJgyImplementation.
In one specific embodiment of the present invention, Cyan is written in the JavaTM
computer programming language. It can run on a IBM~-compatible PC (Pentium II
or III) with 128-Meg RAM and a 1-20 gigabyte hard drive. It also runs on Unix, for example on the Sun~
Microsystems SolarisTM system. Data is stored in standard relational databases, such as Oracle~
products or the Microsoft~ SQL ServerTM.
Conclusion In summary, the present invention discloses a method, system and article of manufacture which enhance the ability to aggregate and report on data stored in a multidimensional database.
The database consists of a hierarchy of data items, each item representing an account. Each account may hold either numerical data (figures) or multimedia content. The invention is particularly useful in assisting financial controllers of company or other organization in gathering data and generating reports. Navigation and communication tools are also included. The invention complies with existing on-line analytical processing (OLAP) standards, and improves upon conventional OLAP methods, software and systems.
The foregoing description of the preferred embodiments of invention have been presented for the purposes of illustration and description. It is not intended to the exhaustive or to limit the invention to the precise form disclosed. Many modifications and variations are possible in light of the above teaching. It is intended that the scope of the invention be limited not by this detailed description, but rather by the claims attended hereto.

Glossary of OLAP Terms ad hoc analysis A type of analysis in which you answer questions by manipulating the dimensions, dimension values, and layout of data. You can rotate the data in order to change its dimensional orientation. You can also drill down or up on designated values in order to expand or collapse dimension hierarchies. (See also dimension; dimension value; drill; hierarchy; rotate.) administrator See database administrator (DBA).
aggregation The consolidation of data for several dimension values into a single value, such as the total units sold for all countries, or into a smaller set of values, such as the average units sold for countries in each region. Data is often collected at the lowest level of detail and is aggregated into higher level totals for analysis. (See also dimension value; level.) ancestor (1) A dimension value at any level above a particular value in a hierarchy. The ancestor value is the aggregated total of the values of its descendants.' (2) In OLAP products, in the inheritance hierarchy, an ancestor is also an object that is two or more levels above a derived object. The level immediately above the derived object is the parent.

(Contrast with descendant. See also aggregation; dimension value;
hierarchy; level; object; parent.) argument A keyword, constant, or object name that provides input to a command, function, method, or program. An argument can indicate the data values on which the command, function, method, or program operates. It can also specify the way in which the command, function, method, or program operates. Another word for argument is "parameter."
array A group of data cells that are arranged by the dimensions of the data.
For example, a spreadsheet is a two-dimensional array in which the cells are arranged in rows and columns, with one dimension forming the rows and the other dimension forming the columns. A three-dimensional array can be visualized as a cube with each dimension forming one edge of the cube. (See also cell; dimension; variable.) attribute A descriptive characteristic that is shared by dimension values.
Attributes represent logical groupings that allow users to select data based on like characteristics. For example, in a database representing footwear, you can use a shoe color attribute to select all boots, sneakers, and slippers that share the same color. (See also dimension value.) axis A component that serves as the major reference point for plotting data in a graph. Axes are used in graphs such as area, bar, line, bar-line, and scatter. The primary axes in a graph are referred to as the X-axis and the Y-axis. (See also graph.) cell A single data value. A cell is identified by one value from each of the dimensions. For example, if you have a variable with the dimensions MONTH and DISTRICT, each combination of a month and a district identifies a separate cell of that variable. (See also dimension; variable.) child (I) A dimension value at the level immediately below a particular value in a hierarchy. Values of children are included in the calculation that produces the aggregated total for a parent. A dimension value may be a child for more than one parent if the dimension has more than one hierarchy.
(2) In OLAP products, in fhe inheritance hierarchy, a child is also an object that is derived from another object. The source object is called the parent. (Contrast with parent. See also aggregation; dimension value; hierarchy; level; object.) command An instruction in a programming language. Typically, a command consists of the command name followed by one or more arguments. (See also argument) composite - A list of dimension-value combinations, in which a given combination has one value taken from each of the dimensions on which the composite is based. A given combination is an index into one or more sparse data variables. The purpose for using a composite is to store sparse data in a compact form.
A composite can be named or unnamed. A named composite is a database , object that you have explicitly defined. An unnamed composite is automatically created by some languages when you define a variable with some dimensions specified as sparse. In this case, the composite is not a database object.
(Contrast with conjoint dimension. See also dimension; dimension value;
sparsity; variable.) conjoint dimension A dimension that you build on base dimensions. Each value in a conjoint is a combination of values, one from each of the conjoint's base dimensions. The purpose for using a conjoint is to achieve fine control over the status of individual combinations of base dimension values.
For storing sparse data, you should almost always use a composite instead of a conjoint, because composites are easier to use. The exception to this guideline is the case in which you want to be able to specify every dimension-value combination in status. In this situation, use a conjoint.

For a variable that is not sparse and not dimensioned by a conjoint, you might want to define a separate conjoint to hold a set of dimension-value combinations that meet one or more specific criteria.
For example, you might include only dimension-value combinations for which the variable has values higher than a given number.
(Contrast with composite. See also dimension; dimension value; sparsity;
variable.) data cube An object that defines the contents and structure of the data to be included in a view, for example, when a user displays a graph. A data cube contains edges that represent the cube's rows, columns, and pages.
(See also edge;) database (1) A single file (possibly accompanied by extension files) that contains objects that organize, store, and manipulate data. Examples of such objects are variables, dimensions, formulas, models, and programs.
(2) In some OLAP applications, a collection of OLAP databases that are presented as a single, logical unit. (See also OLAP.) database administrator (DBA) The person responsible for creating, installing, configuring, and maintaining the databases in the OLAP and application environments, so that users can access and analyze data effectively. (See also database, OLAP.) database dictionary See dictionary.
DBA
See database administrator.
definition The description of a database object, as stored by OLAP. An object's definition includes characteristics such as the object's name, type (e.g., dimension or variable), data type, dimensions, long description, permission specifications, and properties. (See also dictionary; OLAP«;
object.) descendant (1) A dimension value at any level below a particular value in a hierarchy. Values of descendants are included in the calculation that produces the aggregated total for an ancestor.
(2) In OLAP, in the inheritance hierarchy, a descendant is also an object two or more levels below another object.
The level immediately below is the child.
(Contrast with ancestor. See also aggregation; child; dimension value;
hierarchy; level; object.) dictionary The collection of definitions of the objects in a database. The .
dictionary is also called the database dictionary. '-(See also database; definition; object.) dimension A type of database object that is a list of values that provide categories for data. A dimension acts as an index for identifying values of a variable. For example, if you have sales data with a separate sales figure for each month, then the data has a MONTH dimension; that is, the data is organized by month. A dimension is similar to a key in a relational database.
Any item of data within a multidimensional variable can be uniquely and completely selected by specifying one member from each of the variable's dimensions. For example, if a sales variable is dimensioned by MONTH, PRODUCT, and MARKET, specifying "January" for the MONTH dimension, "Stereos" for the PRODUCT dimension, and "Eastern Region" for the MARKET
dimension uniquely specifies a single cell in the variable. Thus, dimensions offer a concise and intuitive way of organizing and selecting data for retrieval, updating, and performing calculations.
A dimension can be simple, with values that are single text or integer values, or it can be conjoint, with values that are combinations of values in other dimensions. A composite is not a dimension, but it is a conjoint-like internal object that OLAP treats like a dimension for the purpose of handling sparse data.
(See also composite; conjoint dimension; dimension value; OLAP;
multidimensional data; object; sparsity; variable.) dimension hierarchy See hierarchy.
dimension label A text description for a dimension. For example, a dimension that is named GEOGRAPHY might have the label "Geographic Areas." The label, rather than the name, can be displayed in reports, tables, and graphs.
(See also dimension.) dimension value One element in the list that makes up a dimension. For example, a computer company might have dimension values in the PRODUCT dimension called "LAPTOP" and "DESKTOP." Values in the GEOGRAPHY dimension might include "Paris" and "New York." Values in the TIME dimension might include "MAY1999" and "JAN2000." (See also dimension.) dimension value label A text description for a dimension value. For example, in a PRODUCT
dimension that has values called "LAPTOP" and "DESKTOP," the "LAPTOP" value might have a label "Laptop Computer."
Dimension value labels might appear as row, column, and page labels in reports or tables and as tick labels in graphs.
(See also dimension value.) document A vehicle for viewing, analyzing, or entering data that is presented by an application. Reports, graphs, and worksheets are types of documents.

CA 02303634 2000-03-31 ''~'~
(See also ad hoc analysis; graph; report.) drill To navigate up and down through the levels of aggregation in a dimension that has a hierarchy. When selecting dimension values or viewing data, you can expand or collapse a dimension hierarchy by drilling down or up in it. Drilling down expands the view to include child values that are associated with parent values in the dimension hierarchy. Drilling up collapses the list of descendant values associated with a parent value in the dimension hierarchy.
In a typical OLAP application, you can click on an icon to drill down on (expand) the hierarchy or on a different icon to drill up on (collapse) the hierarchy. (See also child; dimension; hierarchy; level;
parent.) edge A set of one or more dimensions that are displayed together in a data cube or document. The three edges of the data cube are referred to as the row (or down) edge, the column (or across) edge, and the page edge.
The following figure shows the row, column, and page edges of a data cube. (See also data cube; document; page.) embedded total A predefined level of aggregation built into a dimension for which a hierarchy exists. For example, in a TIME dimension, each quarter represents the total for the months in the quarter.

family A group of related dimension values that correspond to the levels of the dimension hierarchy. Dimension values within a family can relate to each other as ancestor, parent, child, and descendant.
(See also ancestor; child; descendant; dimension value; hierarchy;
level; parent.) formula A type of database object that represents a stored calculation, or procedure that produces a value. A formula provides a way to define and save complex or frequently used relationships within the data without resaving the data itself. Each time you use a formula, OLAP performs the calculation or procedure that is required to produce the value.
function A programming language routine that returns a value.
graph ( 1 ) A pictorial presentation of multidimensional, numeric data. A graph is an analysis tool that is used to view, manipulate, and print data.
Types of graphs include area, bar, line, bar-line, pie, and scatter graphs.
(2) In OLAP products, a graph is also an object that represents the pictorial presentation of data.
hierarchy i A means of organizing and structuring data. A hierarchy exists when values within a dimension are arranged in levels, with each level representing the aggregated total of the data from the level below. Some dimensions have multiple hierarchies based on them. For example, a hierarchy based on the GEOGRAPHY dimension, in which dimension values are arranged in five levels, would be structured as follows: Data at the Customers level is aggregated into the Cities level, which, in turn, is aggregated into the Countries/Areas, Continents/Regions, and Global levels. (See also aggregation; ancestor; child; descendant; dimension value; level; parent.) hypercube (See multidimensional data) level A position in a dimension hierarchy. Each level above the base level represents the aggregated total of the data from the level below. For example, the TIME dimension might have ascending levels such as Month, Quarter, and Year. Within a dimension hierarchy, a dimension value at one level has a family relationship with the dimension values at the levels above and below that level. (See also aggregation; dimension value; family;
hierarchy.) measure Data that can be examined and analyzed, such as sales or cost data. You can select and display the data in a measure. Measures can be stored as ..d..
variables or relations, or measures can be calculated by means of formulas.
There are both base measures and custom measures. Base measures, such as Volume Sales and Dollar Sales, are always available. Custom measures, such as Volume Share Year Ago, are measures that you can create using base measures. (See also formula; relation; variable.) metadata Data that describes other data. An example of metadata is a variable that lists the names of levels in a hierarchy or that holds the number of decimal places to be used for displaying data. Client applications often use metadata when displaying multidimensional data in graphs, reports, tables, and so on. (See also multidimensional data; object.) model A type of database object that contains a set of interrelated equations that are used to calculate data and assign it to a variable or dimension value. In most cases, models are used when working with financial data.
(See also dimension value; object; variable.) multidimensional data Data organized by two or more dimensions. With two dimensions, the data is structured as an array with rows and columns. With~three dimensions, it is structured as a cube in which each dimension forms an edge.
Structures with more than three dimensions have no physical metaphor, but they can organize data in ways that are useful for analysis. For example, structures with four dimensions are commonly known as "hypercubes."
Multidimensional databases are optimized for complex data analysis. For example, a Sales variable might be dimensioned by TIME, PRODUCT, and GEOGRAPHY, so that only a few short steps would be needed to find the 10 cities with the top sales of a certain product over the last 3 months. (See also cell; dimension.) NA value A special data value that indicates that data is "not available" (NA).
NA is the value of any cell to which a specific data value has not been assigned or for which data cannot be calculated. (See also cell; sparsity.) object ( 1 ) In OLAP, a distinct item in the database, which is defined as an entry in the database dictionary. Objects are the basic pieces of an OLAP database. When you build a database, you must define one or more objects to organize, store, and retrieve the data. OLAP recognizes objects such as dimensions, variables, relations, formulas, and programs.
(2) In OLAP products, a fundamental building block. An object represents a concept or a model of something from the real world, such as a briefing, a table, or a graph. Objects have well-defined members (or parts) through which they interact with their environment. The members of an object include properties, events, methods, and contents.
(See also database; dictionary.) OLAP
On-line analytical processing. OLAP is a category of software technology that enables analysts, managers, and executives to gain insight into data by accessing a wide variety of views of information. Such information has been organized to reflect the real dimensionality of the user's enterprise. OLAP functionality is characterized by dynamic, multidimensional analysis of consolidated enterprise data, which supports analytical and navigational activities such as the following:
- Calculating and modeling across dimensions and through hierarchies Analyzing trends over sequential time periods - Creating slices of data for on-screen viewing - Drilling down to lower levels of consolidation - Reaching through to underlying detail data - Rotating to change the dimensional orientation in the viewing area OLAP analysis tools run against a multidimensional data engine or interact directly with a relational database management system (RDBMS).
(See also dimension; drill; hierarchy; model; multidimensional data; slice.) page (1) A slice of data included in a view (such as a table,~report, or graph). Additional pages display additional slices of data.
(See also multidimensional data; slice.) (2) A page can also refer to a page object, which is a variety of window.

It can correspond to a page in a briefing. When you design a briefing or project, page objects serve as the canvas on which you place other objects, such as buttons, tables, and graphs.
(3) A page can also refer to a unit of storage in an OLAP database.
parent (1) A dimension value at the level immediately above a particular value in a hierarchy. The parent value is the aggregated total of the values of its children.
(2) In the inheritance hierarchy, a parent is also an object from which one or more objects have been derived.
Objects derived from the parent are called children.
(Contrast with child. See also aggregation; dimension value; hierarchy;
level.) program A type of database object that contains a series of OLAP language commands. A program is a stored procedure that executes a set of related commands. Programs can be nested, with one calling another to create a complete application or sophisticated database maintenance tool. A
program can return a value; in this case, it is called a user-defined function.
(See also command.) property A characteristic of an object or component. Properties provide identifiers and descriptions, define object features (such as the number of decimal places or the color), or define object behaviors (such as whether an object is enabled). (See also object.) relation A type of database object that establishes a correspondence between the values of a given dimension and the values of that dimension or other dimensions in the database. For example, you might have a relation between cities and sales regions, such that each city belongs to a particular region.
A relation is similar to a single-dimensioned variable. However, it is distinct from most variables, because each cell holds the value of a dimension. For example, in a relation between cities and sales regions, the relation would be dimensioned by CITY. Each cell would hold the corresponding value of the REGION dimension.
(See also cell; dimension; dimension value; variable.) report A tabular presentation of multidimensional data. A report is an analysis tool that is used to view, manipulate, and print data. (See also table.) rotate To change the dimensional orientation of the data that you are viewing.
Such changes can include swapping dimensions or moving a dimension so that its values label the rows, columns, or pages. (See also dimension; page.) saved selection A set of dimension values that has been saved either as a list of values ....
or as a script. You can save selections that you build, or your database administrator can create saved selections and make them available to you. Saved selections are a time-saving feature: each time that you need to re-use a selection, you can simply retrieve a saved selection without having to recreate it. (See also dimension value; selection.) selection (1) The set of dimension values currently chosen for a dimension, or the script that contains conditions or criteria to specify those values.
(2) A selection is also an object that specifies both the dimension values and the script.
(Contrast with status. See also dimension value; saved selection.) Selector ( 1 ) A set of tools that you use to choose the dimension values to include, for instance, in a report, table, graph, or dimension list box.
For example, you can use the Selector to choose the top 10 cities based on Sales or those cities whose Sales exceeded Quota by 15 percent. The Selector also allows you to sort dimension values and to create and retrieve saved selections.
(2) In OLAP products, a Selector is also an object that presents the tools for choosing dimension values.
(See also dimension value; saved selection; selection.) slice A subset of multidimensional data. A slice is defined by selecting specific values of the data's dimensions. (See also dimension; measure; multidimensional data.) sparsity A concept that refers to multidimensional data in which a relatively high percentage of the combinations of dimension values do not contain actual data. Such "empty," or NA, values take up storage space in the database. To handle sparse data efficiently, you can create a composite.
There are two types of sparsity.
( 1 ) Controlled sparsity -- Occurs when a range of values of one or more dimensions has no data; for example, a new variable dimensioned by MONTH for which you do not have data for past months. The cells exist because you have past months in the MONTH dimension, but the cells contain NA values.
(2) Random sparsity -- Occurs when NA values are scattered throughout the variable, usually because some combinations of dimension values never have any data. For example, a district might only sell certain products and never have data for other products. Other districts might sell some of those products and other ones, too.
(See also composite; multidimensional data; NA value.) status The list of currently accessible values for a given dimension.
(Contrast with selection. See also dimension; dimension value.) -3 $-table ( 1 ) A presentation of multidimensional data in rows, columns, and pages.
A table is an analysis tool that is used to view, manipulate, and print data.
(2) In OLAP products, a table is also an object that represents the presentation of data. (See also page; report.) variable A type of database object that stores data. The data type of a variable indicates the kind of data that it contains.
If a variable has dimensions, those dimensions organize its data, and there is one cell for each combination of dimension values. A
dimensioned variable is an array whose cells are individual data values.
If a variable has no dimensions, it is a single-cell variable, which contains one data value. (See also array; cell; dimension; dimension value;
object.)

Claims (5)

1. A method of executing commands in a computer to perform database operations on a multidimensional database in a memory, the method comprising the steps of:
creating a multidimensional computer database;
structuring data in said database as a series of accounts, each account configured to store either financial data or multimedia data;
arranging said accounts into a hierarchy;
facilitating communications using said database through subscriptions filed in said database by authorized users and through delegation of responsibility through data requests received from said users;
joining dimensions of said database to facilitate navigation through said database;
and aggregating data within a hierarchy of accounts to produce a report;
whereby said delegation is carried out in accordance with a method comprising the steps of:
(a) receiving a datareq from a user;
(b) selecting a delegation dimension;
(c) creating sub-datareqs;
(d) retrieving affected elements;
(e) if delegation has not been completed, then return to step (c), otherwise proceed;
(f) sending sub-datareqs;
(g) receiving filled sub-datareqs;

(h) filling remainder; and (i) sending said datareq back to said user.
2. The method of claim 1 in which said database has a structure, and said structure is preserved within such data at the time of initial population of such database by such data, and at any subsequent time at which said data may be changed.
3. The method of claim 1 in which said database may be enriched by users in a chain of delegation by adding to but not modifying or deleting datareqs received from others in said chain of delegation.
4. The method of claim 1 in which a value of said data may be instantly retrieved in a real-time operation by a method comprising the steps of:

(j) accepting a request for a value, uniquely identified by a combination of elements of the dimensions defined when creating the multi-dimensional database;

(k) determining if said value is in a cache memory and, if so, jump to step (n), otherwise proceed;

(l) determining if said value must be computed by a formula and, if so, jump to step (p), otherwise proceed;

(m) determining if any of the elements of dimensions identifying said value is an aggregation node in a hierarchy and, if so, jump to step (s), otherwise proceed;

(n) retrieving said value from the database;

(o) jumping to step (v);

(p) retrieving the value of all terms comprising said formula, by applying the method currently described to each one;

(q) computing said formula to produce said value;

(r) jumping to step (v);

(s) retrieving all the values associated with the dimension elements that compose said aggregation node(s), by applying the method currently described to each one;

(t) computing an aggregated value;

(u) jumping to step (x);

(v) storing said value in the cache memory, and jumping to step (x);

(w) retrieving said value from the cache memory; and (x) responding to said request for a value with said value.
5. The method of claim 4 in which step (n) is a method comprising the steps of:

(aa) accepting a request for a value or a list of values uniquely identified by one element of each dimension;

(bb) for each one of said elements, retrieving the collection of values identified by said element;

(cc) computing the intersection of said collections, for example by choosing the smallest collection and testing the presence of each of its members in the other said collections, and;

(dd) returning said intersection as the reply to said request.
CA002303634A 1999-12-01 2000-03-31 System and method for instant consolidation, enrichment, delegation and reporting in a multidimensional database Expired - Fee Related CA2303634C (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR9915305A FR2806183B1 (en) 1999-12-01 1999-12-01 DEVICE AND METHOD FOR INSTANT CONSOLIDATION, ENRICHMENT AND "REPORTING" OR BACKGROUND OF INFORMATION IN A MULTIDIMENSIONAL DATABASE
FR99/15305 1999-12-01

Publications (2)

Publication Number Publication Date
CA2303634A1 CA2303634A1 (en) 2001-06-01
CA2303634C true CA2303634C (en) 2004-04-06

Family

ID=9552897

Family Applications (1)

Application Number Title Priority Date Filing Date
CA002303634A Expired - Fee Related CA2303634C (en) 1999-12-01 2000-03-31 System and method for instant consolidation, enrichment, delegation and reporting in a multidimensional database

Country Status (3)

Country Link
US (1) US6581068B1 (en)
CA (1) CA2303634C (en)
FR (1) FR2806183B1 (en)

Families Citing this family (310)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7542922B2 (en) * 2000-03-21 2009-06-02 Bennett James D Online purchasing system supporting sellers with affordability screening
US9268748B2 (en) 1999-05-21 2016-02-23 E-Numerate Solutions, Inc. System, method, and computer program product for outputting markup language documents
US9262384B2 (en) 1999-05-21 2016-02-16 E-Numerate Solutions, Inc. Markup language system, method, and computer program product
US7421648B1 (en) 1999-05-21 2008-09-02 E-Numerate Solutions, Inc. Reusable data markup language
US7249328B1 (en) * 1999-05-21 2007-07-24 E-Numerate Solutions, Inc. Tree view for reusable data markup language
US9262383B2 (en) 1999-05-21 2016-02-16 E-Numerate Solutions, Inc. System, method, and computer program product for processing a markup document
US6920608B1 (en) * 1999-05-21 2005-07-19 E Numerate Solutions, Inc. Chart view for reusable data markup language
US6385604B1 (en) * 1999-08-04 2002-05-07 Hyperroll, Israel Limited Relational database management system having integrated non-relational multi-dimensional data store of aggregated data elements
US6408292B1 (en) 1999-08-04 2002-06-18 Hyperroll, Israel, Ltd. Method of and system for managing multi-dimensional databases using modular-arithmetic based address data mapping processes on integer-encoded business dimensions
US6691098B1 (en) * 2000-02-08 2004-02-10 International Business Machines Corporation System and method for explaining exceptions in data
WO2001061568A2 (en) * 2000-02-17 2001-08-23 E-Numerate Solutions, Inc. Rdl search engine
US20020029207A1 (en) 2000-02-28 2002-03-07 Hyperroll, Inc. Data aggregation server for managing a multi-dimensional database and database management system having data aggregation server integrated therein
US6768986B2 (en) * 2000-04-03 2004-07-27 Business Objects, S.A. Mapping of an RDBMS schema onto a multidimensional data model
US6831668B2 (en) * 2000-04-03 2004-12-14 Business Objects, S.A. Analytical reporting on top of multidimensional data model
US7222130B1 (en) * 2000-04-03 2007-05-22 Business Objects, S.A. Report then query capability for a multidimensional database model
US6807518B1 (en) * 2000-04-13 2004-10-19 Ford Motor Company Method for analyzing product information
US6804657B1 (en) * 2000-05-11 2004-10-12 Oracle International Corp. Methods and systems for global sales forecasting
FR2828307B1 (en) * 2000-05-18 2004-10-22 Il System PROCESS FOR THE ESTABLISHMENT OF A DATABASE RELATING TO THE INFORMATION CONTAINED IN A DOCUMENT
US20010044796A1 (en) * 2000-05-19 2001-11-22 Hiroyasu Fujiwara Totalization system and recording medium
JP2002024286A (en) * 2000-06-30 2002-01-25 Hitachi Ltd Method and device for data display and recording medium with recorded processing program thereof
US6877006B1 (en) * 2000-07-19 2005-04-05 Vasudevan Software, Inc. Multimedia inspection database system (MIDaS) for dynamic run-time data evaluation
US6925465B2 (en) * 2000-09-12 2005-08-02 International Business Machines Corporation System and method for enabling a web site robot trap
US20040150665A1 (en) * 2000-10-13 2004-08-05 General Electric Company Selection of statistical tool
JP2002197102A (en) * 2000-12-25 2002-07-12 Sony Corp Data retrieval device
US9600842B2 (en) * 2001-01-24 2017-03-21 E-Numerate Solutions, Inc. RDX enhancement of system and method for implementing reusable data markup language (RDL)
US7146374B1 (en) * 2001-02-21 2006-12-05 Oracle Corporation Automated multi-line labeling of a time axis
USRE46973E1 (en) 2001-05-07 2018-07-31 Ureveal, Inc. Method, system, and computer program product for concept-based multi-dimensional analysis of unstructured information
US7627588B1 (en) 2001-05-07 2009-12-01 Ixreveal, Inc. System and method for concept based analysis of unstructured data
US7194483B1 (en) * 2001-05-07 2007-03-20 Intelligenxia, Inc. Method, system, and computer program product for concept-based multi-dimensional analysis of unstructured information
US20020184260A1 (en) * 2001-05-30 2002-12-05 Paul Martin Multidimensional data entry in a spreadsheet
US20030009649A1 (en) * 2001-05-30 2003-01-09 Paul Martin Dynamic conversion of spreadsheet formulas to multidimensional calculation rules
US7010518B1 (en) * 2001-06-20 2006-03-07 Microstrategy, Inc. System and method for user defined data object hierarchy
US7720842B2 (en) * 2001-07-16 2010-05-18 Informatica Corporation Value-chained queries in analytic applications
US7606819B2 (en) 2001-10-15 2009-10-20 Maya-Systems Inc. Multi-dimensional locating system and method
US7937363B2 (en) * 2001-11-02 2011-05-03 International Business Machines Corporation Calculation engine for use in OLAP environments
CA2361242C (en) * 2001-11-02 2010-11-30 Cognos Incorporated A calculation engine for use in olap environments
US7992105B2 (en) * 2001-11-21 2011-08-02 Jose Rodriguez System process and logic element for providing and managing record keeping applications
US6801908B1 (en) * 2002-01-28 2004-10-05 Supplychainge Inc System and method for selectively presenting multi-dimensional data in two-dimensional form
US7162701B1 (en) * 2002-02-04 2007-01-09 Veripoint, Llc User interface for a decision support system
US7069263B1 (en) * 2002-02-19 2006-06-27 Oracle International Corporation Automatic trend analysis data capture
US8589413B1 (en) 2002-03-01 2013-11-19 Ixreveal, Inc. Concept-based method and system for dynamically analyzing results from search engines
US7028046B2 (en) * 2002-03-19 2006-04-11 Hyperion Solutions Corporation Method of splitting a multi-dimensional cube between a multi-dimensional and a relational database
US7904327B2 (en) * 2002-04-30 2011-03-08 Sas Institute Inc. Marketing optimization system
US7447687B2 (en) * 2002-05-10 2008-11-04 International Business Machines Corporation Methods to browse database query information
US20080058106A1 (en) 2002-10-07 2008-03-06 Maya-Systems Inc. Multi-dimensional locating game system and method
US10176476B2 (en) 2005-10-06 2019-01-08 Mastercard Mobile Transactions Solutions, Inc. Secure ecosystem infrastructure enabling multiple types of electronic wallets in an ecosystem of issuers, service providers, and acquires of instruments
US7467125B2 (en) * 2002-12-12 2008-12-16 International Business Machines Corporation Methods to manage the display of data entities and relational database structures
US7703028B2 (en) * 2002-12-12 2010-04-20 International Business Machines Corporation Modifying the graphical display of data entities and relational database structures
US7107277B1 (en) * 2002-12-17 2006-09-12 Microsoft Corporation Programmable calculation engine
US7181450B2 (en) * 2002-12-18 2007-02-20 International Business Machines Corporation Method, system, and program for use of metadata to create multidimensional cubes in a relational database
US7472127B2 (en) * 2002-12-18 2008-12-30 International Business Machines Corporation Methods to identify related data in a multidimensional database
US7716167B2 (en) * 2002-12-18 2010-05-11 International Business Machines Corporation System and method for automatically building an OLAP model in a relational database
US7949937B2 (en) * 2002-12-31 2011-05-24 Business Objects Software Ltd Apparatus and method for delivering portions of reports
US7953694B2 (en) * 2003-01-13 2011-05-31 International Business Machines Corporation Method, system, and program for specifying multidimensional calculations for a relational OLAP engine
WO2004077316A2 (en) * 2003-02-25 2004-09-10 Liviu Cotora A method and a device for optimizing a company structure
US7895191B2 (en) * 2003-04-09 2011-02-22 International Business Machines Corporation Improving performance of database queries
EP1618495A1 (en) * 2003-04-28 2006-01-25 International Business Machines Corporation Automatic data consolidation
CA2427159A1 (en) * 2003-04-29 2004-10-29 Cognos Incorporated Simplified metadata modelling for reporting
CA2427182A1 (en) * 2003-04-29 2004-10-29 Cognos Incorporated Security filters in metadata modelling for reporting
CA2427185A1 (en) * 2003-04-29 2004-10-29 Cognos Incorporated Automated database query generation
CA2427226A1 (en) * 2003-04-29 2004-10-29 Cognos Incorporated Dynamic generation of dimensional metadata
US7530012B2 (en) * 2003-05-22 2009-05-05 International Business Machines Corporation Incorporation of spreadsheet formulas of multi-dimensional cube data into a multi-dimensional cube
US7257591B2 (en) * 2003-06-20 2007-08-14 International Business Machines Corporation Method of referencing data via edge definition
US7523171B2 (en) * 2003-09-09 2009-04-21 International Business Machines Corporation Multidimensional hashed tree based URL matching engine using progressive hashing
US7756907B2 (en) * 2003-09-16 2010-07-13 The Board Of Trustees Of The Leland Stanford Jr. University Computer systems and methods for visualizing data
US7239985B1 (en) * 2003-09-23 2007-07-03 Ncr Corporation Methods, systems, and data structures for modeling information quality and maturity
US7831615B2 (en) * 2003-10-17 2010-11-09 Sas Institute Inc. Computer-implemented multidimensional database processing method and system
US20050102212A1 (en) * 2003-11-07 2005-05-12 Qd Financial, Llc Systems and methods for generating audited and unaudited financial statements and reports
US7529722B2 (en) * 2003-12-22 2009-05-05 Dintecom, Inc. Automatic creation of neuro-fuzzy expert system from online anlytical processing (OLAP) tools
US7593969B2 (en) * 2003-12-31 2009-09-22 Microsoft Corporation Linked dimension and measure groups
US8478668B2 (en) * 2004-03-12 2013-07-02 Sybase, Inc. Hierarchical entitlement system with integrated inheritance and limit checks
US7797239B2 (en) * 2004-03-12 2010-09-14 Sybase, Inc. Hierarchical entitlement system with integrated inheritance and limit checks
US7613719B2 (en) * 2004-03-18 2009-11-03 Microsoft Corporation Rendering tables with natural language commands
EP1800225A1 (en) * 2004-05-21 2007-06-27 Computer Associates Think, Inc. Maintaining a history of query results
US7707143B2 (en) 2004-06-14 2010-04-27 International Business Machines Corporation Systems, methods, and computer program products that automatically discover metadata objects and generate multidimensional models
JP3871684B2 (en) * 2004-06-18 2007-01-24 株式会社ソニー・コンピュータエンタテインメント Content playback apparatus and menu screen display method
US9002778B2 (en) * 2004-06-22 2015-04-07 International Business Machines Corporation Designing aggregates based on access patterns in dimensions
US7480663B2 (en) 2004-06-22 2009-01-20 International Business Machines Corporation Model based optimization with focus regions
US8904273B2 (en) * 2004-07-02 2014-12-02 International Business Machines Corporation System and method of format specification
US7333995B2 (en) * 2004-07-02 2008-02-19 Cognos, Incorporated Very large dataset representation system and method
US20060005112A1 (en) * 2004-07-02 2006-01-05 David Lilly System and method of report layout
US7818282B2 (en) * 2004-07-02 2010-10-19 International Business Machines Corporation System and method for the support of multilingual applications
EP1782271A1 (en) * 2004-07-02 2007-05-09 Cognos Incorporated Very large dataset representation system and method
CA2522254A1 (en) * 2004-10-04 2006-04-04 Peter Nador Method and system for designing, implementing and documenting olap
US7809763B2 (en) * 2004-10-15 2010-10-05 Oracle International Corporation Method(s) for updating database object metadata
US20060085444A1 (en) * 2004-10-19 2006-04-20 Microsoft Corporation Query consolidation for retrieving data from an OLAP cube
US20060112070A1 (en) * 2004-11-24 2006-05-25 Ramos Oscar A Interactive graphical interface for data manipulation and presentation
US7181449B2 (en) * 2004-12-21 2007-02-20 International Business Machines, Corporation Method, system, and program product for executing a scalar function on a varying number of records within a RDBMS using SQL
US7660823B2 (en) * 2004-12-30 2010-02-09 Sas Institute Inc. Computer-implemented system and method for visualizing OLAP and multidimensional data in a calendar format
US20060190432A1 (en) * 2005-02-22 2006-08-24 Sas Institute Inc. System and method for graphically distinguishing levels of a multidimensional database
US7797320B2 (en) * 2005-03-15 2010-09-14 Hyperion Solutions Corporation Dimensionality reduction
US20060224400A1 (en) * 2005-04-01 2006-10-05 Microsoft Corporation Business event notifications on aggregated thresholds
US7519582B2 (en) * 2005-06-13 2009-04-14 International Business Machines Corporation System and method for performing a high-level multi-dimensional query on a multi-structural database
US20070005658A1 (en) * 2005-07-02 2007-01-04 International Business Machines Corporation System, service, and method for automatically discovering universal data objects
US8099674B2 (en) 2005-09-09 2012-01-17 Tableau Software Llc Computer systems and methods for automatically viewing multidimensional databases
US10032160B2 (en) 2005-10-06 2018-07-24 Mastercard Mobile Transactions Solutions, Inc. Isolating distinct service provider widgets within a wallet container
EP2667344A3 (en) 2005-10-06 2014-08-27 C-Sam, Inc. Transactional services
US7676485B2 (en) * 2006-01-20 2010-03-09 Ixreveal, Inc. Method and computer program product for converting ontologies into concept semantic networks
US7999809B2 (en) 2006-04-19 2011-08-16 Tableau Software, Inc. Computer systems and methods for automatic generation of models for a dataset
US7747564B2 (en) * 2006-06-22 2010-06-29 International Business Machines Corporation Comparative analysis of business intelligence data
US8533025B2 (en) * 2006-07-28 2013-09-10 Quest Direct Corp Method and apparatus for management of sales activity information
US20080086359A1 (en) * 2006-10-04 2008-04-10 Holton Peter R Sales opportunity explorer
US7856431B2 (en) * 2006-10-24 2010-12-21 Merced Systems, Inc. Reporting on facts relative to a specified dimensional coordinate constraint
JP2008112934A (en) * 2006-10-31 2008-05-15 Oki Electric Ind Co Ltd Semiconductor memory, and its manufacturing method
US8032566B2 (en) * 2006-12-04 2011-10-04 Teradata Us, Inc. Tools for defining and using custom analysis modules
US9348881B1 (en) * 2006-12-29 2016-05-24 Hewlett Packard Enterprise Development Lp Visual content query for multi-dimensional datasets
US8930331B2 (en) 2007-02-21 2015-01-06 Palantir Technologies Providing unique views of data based on changes or rules
US8239299B2 (en) * 2007-02-26 2012-08-07 Microsoft Corporation Type-driven rules for financial intellegence
US20080243823A1 (en) * 2007-03-28 2008-10-02 Elumindata, Inc. System and method for automatically generating information within an eletronic document
US8000996B1 (en) 2007-04-10 2011-08-16 Sas Institute Inc. System and method for markdown optimization
US8160917B1 (en) 2007-04-13 2012-04-17 Sas Institute Inc. Computer-implemented promotion optimization methods and systems
US8910084B2 (en) * 2007-05-07 2014-12-09 Oracle International Corporation Aggregate layout for data visualization techniques
US8640056B2 (en) * 2007-07-05 2014-01-28 Oracle International Corporation Data visualization techniques
US8139063B2 (en) 2007-05-07 2012-03-20 Oracle International Corporation Rendering data visualization with minimal round-off error
US8286100B2 (en) * 2007-07-05 2012-10-09 Oracle International Corporation Linking graphical elements of data visualizations
US9477732B2 (en) * 2007-05-23 2016-10-25 Oracle International Corporation Filtering for data visualization techniques
US8866815B2 (en) * 2007-05-23 2014-10-21 Oracle International Corporation Automated treemap configuration
US20090043788A1 (en) * 2007-08-06 2009-02-12 Panorama Software Inc. Proactive business intelligence
US8069404B2 (en) 2007-08-22 2011-11-29 Maya-Systems Inc. Method of managing expected documents and system providing same
US8601392B2 (en) 2007-08-22 2013-12-03 9224-5489 Quebec Inc. Timeline for presenting information
US8051075B2 (en) * 2007-09-24 2011-11-01 Merced Systems, Inc. Temporally-aware evaluative score
US20090106293A1 (en) * 2007-10-19 2009-04-23 Oracle International Corporation Multidimensional forecasting
US7930200B1 (en) 2007-11-02 2011-04-19 Sas Institute Inc. Computer-implemented systems and methods for cross-price analysis
US9035876B2 (en) 2008-01-14 2015-05-19 Apple Inc. Three-dimensional user interface session control
US8121975B2 (en) * 2008-02-20 2012-02-21 Panorama Software Inc. Creating pivot tables from tabular data
US8185420B2 (en) * 2008-02-27 2012-05-22 International Business Machines Corporation Approximating cycle times within material flow network
CA2657835C (en) 2008-03-07 2017-09-19 Mathieu Audet Documents discrimination system and method thereof
US9830366B2 (en) * 2008-03-22 2017-11-28 Thomson Reuters Global Resources Online analytic processing cube with time stamping
US20090248715A1 (en) * 2008-03-31 2009-10-01 Microsoft Corporation Optimizing hierarchical attributes for olap navigation
US8005818B2 (en) * 2008-03-31 2011-08-23 Business Objects, S.A. Apparatus and method for maintaining metadata version awareness during set evaluation for OLAP hierarchies
US9189478B2 (en) * 2008-04-03 2015-11-17 Elumindata, Inc. System and method for collecting data from an electronic document and storing the data in a dynamically organized data structure
US9135331B2 (en) 2008-04-07 2015-09-15 Philip J. Rosenthal Interface including graphic representation of relationships between search results
US8812338B2 (en) 2008-04-29 2014-08-19 Sas Institute Inc. Computer-implemented systems and methods for pack optimization
US8832601B2 (en) * 2008-05-31 2014-09-09 Red Hat, Inc. ETL tool utilizing dimension trees
US8417594B2 (en) * 2008-06-23 2013-04-09 Microsoft Corporation Dimension-based financial reporting using multiple combinations of dimensions
US8296182B2 (en) * 2008-08-20 2012-10-23 Sas Institute Inc. Computer-implemented marketing optimization systems and methods
US10102262B2 (en) * 2008-08-29 2018-10-16 Red Hat, Inc. Creating reports using dimension trees
US8874502B2 (en) * 2008-08-29 2014-10-28 Red Hat, Inc. Real time datamining
US8150879B2 (en) * 2008-08-29 2012-04-03 Red Hat, Inc. Building custom dimension trees
CA2677921C (en) 2008-09-12 2017-06-13 Mathieu Ma Audet Method of managing groups of arrays of documents
US10747952B2 (en) 2008-09-15 2020-08-18 Palantir Technologies, Inc. Automatic creation and server push of multiple distinct drafts
US20100088619A1 (en) * 2008-10-02 2010-04-08 Ralf Rath Interactive visualisation design time
US8914418B2 (en) 2008-11-30 2014-12-16 Red Hat, Inc. Forests of dimension trees
US8566359B1 (en) * 2008-12-15 2013-10-22 Pixar Unfolding sparse data sets
US8880436B2 (en) * 2009-02-23 2014-11-04 The Hong Kong and Shanghai Banking Corporation Limited Automation system and method for a web-based implementation portal
US20100241533A1 (en) * 2009-03-23 2010-09-23 Li Ho Tax data validity documentation
US8271318B2 (en) * 2009-03-26 2012-09-18 Sas Institute Inc. Systems and methods for markdown optimization when inventory pooling level is above pricing level
US9613123B2 (en) * 2009-04-13 2017-04-04 Hewlett Packard Enterprise Development Lp Data stream processing
US9245243B2 (en) * 2009-04-14 2016-01-26 Ureveal, Inc. Concept-based analysis of structured and unstructured data using concept inheritance
US8856649B2 (en) * 2009-06-08 2014-10-07 Business Objects Software Limited Aggregation level and measure based hinting and selection of cells in a data display
US9396241B2 (en) 2009-07-15 2016-07-19 Oracle International Corporation User interface controls for specifying data hierarchies
US20110022662A1 (en) 2009-07-23 2011-01-27 International Business Machines Corporation Event triggered notifications for collaborative processes
US20110029617A1 (en) * 2009-07-30 2011-02-03 International Business Machines Corporation Managing Electronic Delegation Messages
US20110035257A1 (en) * 2009-08-06 2011-02-10 Rajendra Singh Solanki Systems And Methods For Generating Planograms In The Presence Of Multiple Objectives
US20110066933A1 (en) * 2009-09-02 2011-03-17 Ludwig Lester F Value-driven visualization primitives for spreadsheets, tabular data, and advanced spreadsheet visualization
US8259114B2 (en) * 2009-09-30 2012-09-04 Sap Aktiengeselleschaft System and method for visualizing parameter effective data sets
US20110258569A1 (en) * 2010-04-20 2011-10-20 Microsoft Corporation Display of filtered data via frequency distribution
WO2011160196A2 (en) * 2010-06-24 2011-12-29 Associação Instituto Nacional De Matemática Pura E Aplicada Multidimensional-data-organization method
US20120041989A1 (en) * 2010-08-16 2012-02-16 Tata Consultancy Services Limited Generating assessment data
US8515835B2 (en) 2010-08-30 2013-08-20 Sas Institute Inc. Systems and methods for multi-echelon inventory planning with lateral transshipment
US8788315B2 (en) 2011-01-10 2014-07-22 Sas Institute Inc. Systems and methods for determining pack allocations
US8688497B2 (en) 2011-01-10 2014-04-01 Sas Institute Inc. Systems and methods for determining pack allocations
US9058093B2 (en) 2011-02-01 2015-06-16 9224-5489 Quebec Inc. Active element
US8799240B2 (en) 2011-06-23 2014-08-05 Palantir Technologies, Inc. System and method for investigating large amounts of data
US9092482B2 (en) 2013-03-14 2015-07-28 Palantir Technologies, Inc. Fair scheduling for mixed-query loads
US9547693B1 (en) 2011-06-23 2017-01-17 Palantir Technologies Inc. Periodic database search manager for multiple data sources
US8881051B2 (en) 2011-07-05 2014-11-04 Primesense Ltd Zoom-based gesture user interface
US9459758B2 (en) 2011-07-05 2016-10-04 Apple Inc. Gesture-based interface with enhanced features
US9377865B2 (en) * 2011-07-05 2016-06-28 Apple Inc. Zoom-based gesture user interface
US9218063B2 (en) 2011-08-24 2015-12-22 Apple Inc. Sessionless pointing user interface
US8732574B2 (en) 2011-08-25 2014-05-20 Palantir Technologies, Inc. System and method for parameterizing documents for automatic workflow generation
US8676801B2 (en) 2011-08-29 2014-03-18 Sas Institute Inc. Computer-implemented systems and methods for processing a multi-dimensional data structure
US8504542B2 (en) 2011-09-02 2013-08-06 Palantir Technologies, Inc. Multi-row transactions
SG2014012090A (en) * 2011-09-07 2014-04-28 Millennial Media Providing mobile advertising using data networks based on intelligence data associated with internet-connected devices
CA2790799C (en) 2011-09-25 2023-03-21 Mathieu Audet Method and apparatus of navigating information element axes
US8768794B2 (en) * 2011-09-26 2014-07-01 Oracle International Corporation Allocation manager
US9183269B1 (en) 2011-10-08 2015-11-10 Bay Dynamics, Inc. Federated multidimensional data storage cubes
US8799207B1 (en) 2011-10-08 2014-08-05 Bay Dynamics Unified data source management
US8909680B1 (en) 2011-10-08 2014-12-09 Bay Dynamics Intelligent caching of multidimensional cube data
US8965836B1 (en) 2011-10-08 2015-02-24 Bay Dynamics Management of multidimensional data storage cubes using content packs
US10353922B1 (en) 2011-10-08 2019-07-16 Bay Dynamics, Inc. Rendering multidimensional cube data
US9390082B1 (en) 2011-10-08 2016-07-12 Bay Dynamics, Inc. Generating multiple views of a multidimensional cube
US9081830B1 (en) * 2011-10-08 2015-07-14 Bay Dynamics Updating a view of a multidimensional cube
US9171055B1 (en) 2011-10-08 2015-10-27 Bay Dynamics, Inc. Content packs for multidimensional data storage cubes
US9330091B1 (en) 2011-10-08 2016-05-03 Bay Dynamics, Inc. System for managing data storages
EP2767110A4 (en) 2011-10-12 2015-01-28 C Sam Inc A multi-tiered secure mobile transactions enabling platform
US20130124957A1 (en) * 2011-11-11 2013-05-16 Microsoft Corporation Structured modeling of data in a spreadsheet
US8938416B1 (en) 2012-01-13 2015-01-20 Amazon Technologies, Inc. Distributed storage of aggregated data
US9372856B2 (en) 2012-03-12 2016-06-21 International Business Machines Corporation Generating custom text documents from multidimensional sources of text
US9519693B2 (en) 2012-06-11 2016-12-13 9224-5489 Quebec Inc. Method and apparatus for displaying data element axes
US9646080B2 (en) 2012-06-12 2017-05-09 9224-5489 Quebec Inc. Multi-functions axis-based interface
US9348677B2 (en) 2012-10-22 2016-05-24 Palantir Technologies Inc. System and method for batch evaluation programs
US9123086B1 (en) 2013-01-31 2015-09-01 Palantir Technologies, Inc. Automatically generating event objects from images
US9646072B2 (en) * 2013-03-03 2017-05-09 Panorama Software Inc. Multidimensional dataset query processing
CN105706033B (en) * 2013-03-05 2019-05-10 法斯埃托股份有限公司 System and method for cube graphic user interface
US8739072B1 (en) 2013-03-07 2014-05-27 Visual BI Solutions Inc. Multi-selection widget for selecting multiple time periods at multiple levels within a time dimension hierarchy
US10037314B2 (en) 2013-03-14 2018-07-31 Palantir Technologies, Inc. Mobile reports
US10275778B1 (en) 2013-03-15 2019-04-30 Palantir Technologies Inc. Systems and user interfaces for dynamic and interactive investigation based on automatic malfeasance clustering of related data in various data structures
US8917274B2 (en) 2013-03-15 2014-12-23 Palantir Technologies Inc. Event matrix based on integrated data
US8868486B2 (en) 2013-03-15 2014-10-21 Palantir Technologies Inc. Time-sensitive cube
US8909656B2 (en) 2013-03-15 2014-12-09 Palantir Technologies Inc. Filter chains with associated multipath views for exploring large data sets
US9965937B2 (en) 2013-03-15 2018-05-08 Palantir Technologies Inc. External malware data item clustering and analysis
US8937619B2 (en) 2013-03-15 2015-01-20 Palantir Technologies Inc. Generating an object time series from data objects
US8788405B1 (en) 2013-03-15 2014-07-22 Palantir Technologies, Inc. Generating data clusters with customizable analysis strategies
US8799799B1 (en) 2013-05-07 2014-08-05 Palantir Technologies Inc. Interactive geospatial map
US9384575B2 (en) * 2013-05-09 2016-07-05 Sap Se Space constrained small format visual analytic labeling
US9360992B2 (en) * 2013-07-29 2016-06-07 Microsoft Technology Licensing, Llc Three dimensional conditional formatting
US9418336B2 (en) 2013-08-02 2016-08-16 Microsoft Technology Licensing, Llc Automatic recognition and insights of data
US9223773B2 (en) 2013-08-08 2015-12-29 Palatir Technologies Inc. Template system for custom document generation
US9335897B2 (en) 2013-08-08 2016-05-10 Palantir Technologies Inc. Long click display of a context menu
US8713467B1 (en) 2013-08-09 2014-04-29 Palantir Technologies, Inc. Context-sensitive views
US9785317B2 (en) 2013-09-24 2017-10-10 Palantir Technologies Inc. Presentation and analysis of user interaction data
US10095873B2 (en) 2013-09-30 2018-10-09 Fasetto, Inc. Paperless application
US8938686B1 (en) 2013-10-03 2015-01-20 Palantir Technologies Inc. Systems and methods for analyzing performance of an entity
US8812960B1 (en) 2013-10-07 2014-08-19 Palantir Technologies Inc. Cohort-based presentation of user interaction data
US8924872B1 (en) 2013-10-18 2014-12-30 Palantir Technologies Inc. Overview user interface of emergency call data of a law enforcement agency
US9116975B2 (en) 2013-10-18 2015-08-25 Palantir Technologies Inc. Systems and user interfaces for dynamic and interactive simultaneous querying of multiple data stores
US9021384B1 (en) 2013-11-04 2015-04-28 Palantir Technologies Inc. Interactive vehicle information map
US8868537B1 (en) 2013-11-11 2014-10-21 Palantir Technologies, Inc. Simple web search
US9105000B1 (en) 2013-12-10 2015-08-11 Palantir Technologies Inc. Aggregating data from a plurality of data sources
US9734217B2 (en) 2013-12-16 2017-08-15 Palantir Technologies Inc. Methods and systems for analyzing entity performance
US9552615B2 (en) 2013-12-20 2017-01-24 Palantir Technologies Inc. Automated database analysis to detect malfeasance
US10356032B2 (en) 2013-12-26 2019-07-16 Palantir Technologies Inc. System and method for detecting confidential information emails
US9043696B1 (en) 2014-01-03 2015-05-26 Palantir Technologies Inc. Systems and methods for visual definition of data associations
US8832832B1 (en) 2014-01-03 2014-09-09 Palantir Technologies Inc. IP reputation
US9584402B2 (en) 2014-01-27 2017-02-28 Fasetto, Llc Systems and methods for peer to peer communication
EP3100178A1 (en) * 2014-01-30 2016-12-07 Microsoft Technology Licensing, LLC Automatic insights for spreadsheets
US10318572B2 (en) * 2014-02-10 2019-06-11 Microsoft Technology Licensing, Llc Structured labeling to facilitate concept evolution in machine learning
US9009827B1 (en) 2014-02-20 2015-04-14 Palantir Technologies Inc. Security sharing system
US9483162B2 (en) 2014-02-20 2016-11-01 Palantir Technologies Inc. Relationship visualizations
US9727376B1 (en) 2014-03-04 2017-08-08 Palantir Technologies, Inc. Mobile tasks
US8935201B1 (en) 2014-03-18 2015-01-13 Palantir Technologies Inc. Determining and extracting changed data from a data source
US9613102B2 (en) 2014-04-01 2017-04-04 Tableau Software, Inc. Systems and methods for ranking data visualizations
US20150278214A1 (en) 2014-04-01 2015-10-01 Tableau Software, Inc. Systems and Methods for Ranking Data Visualizations Using Different Data Fields
US9424318B2 (en) 2014-04-01 2016-08-23 Tableau Software, Inc. Systems and methods for ranking data visualizations
US9857958B2 (en) 2014-04-28 2018-01-02 Palantir Technologies Inc. Systems and user interfaces for dynamic and interactive access of, investigation of, and analysis of data objects stored in one or more databases
US9009171B1 (en) 2014-05-02 2015-04-14 Palantir Technologies Inc. Systems and methods for active column filtering
US9535974B1 (en) 2014-06-30 2017-01-03 Palantir Technologies Inc. Systems and methods for identifying key phrase clusters within documents
US9619557B2 (en) 2014-06-30 2017-04-11 Palantir Technologies, Inc. Systems and methods for key phrase characterization of documents
US9256664B2 (en) 2014-07-03 2016-02-09 Palantir Technologies Inc. System and method for news events detection and visualization
US9202249B1 (en) 2014-07-03 2015-12-01 Palantir Technologies Inc. Data item clustering and analysis
US9785773B2 (en) 2014-07-03 2017-10-10 Palantir Technologies Inc. Malware data item analysis
US10572496B1 (en) 2014-07-03 2020-02-25 Palantir Technologies Inc. Distributed workflow system and database with access controls for city resiliency
US9021260B1 (en) 2014-07-03 2015-04-28 Palantir Technologies Inc. Malware data item analysis
EP4322496A2 (en) 2014-07-10 2024-02-14 Fasetto, Inc. Systems and methods for message editing
US9454281B2 (en) 2014-09-03 2016-09-27 Palantir Technologies Inc. System for providing dynamic linked panels in user interface
US9767172B2 (en) 2014-10-03 2017-09-19 Palantir Technologies Inc. Data aggregation and analysis system
US9501851B2 (en) 2014-10-03 2016-11-22 Palantir Technologies Inc. Time-series analysis system
US10437288B2 (en) 2014-10-06 2019-10-08 Fasetto, Inc. Portable storage device with modular power and housing system
KR20220143963A (en) 2014-10-06 2022-10-25 파세토, 인크. Systems and methods for portable storage devices
US9785328B2 (en) 2014-10-06 2017-10-10 Palantir Technologies Inc. Presentation of multivariate data on a graphical user interface of a computing system
US9984133B2 (en) 2014-10-16 2018-05-29 Palantir Technologies Inc. Schematic and database linking system
US9229952B1 (en) 2014-11-05 2016-01-05 Palantir Technologies, Inc. History preserving data pipeline system and method
US9043894B1 (en) 2014-11-06 2015-05-26 Palantir Technologies Inc. Malicious software detection in a computing system
US10891690B1 (en) 2014-11-07 2021-01-12 Intuit Inc. Method and system for providing an interactive spending analysis display
US10362133B1 (en) 2014-12-22 2019-07-23 Palantir Technologies Inc. Communication data processing architecture
US10552994B2 (en) 2014-12-22 2020-02-04 Palantir Technologies Inc. Systems and interactive user interfaces for dynamic retrieval, analysis, and triage of data items
US9367872B1 (en) 2014-12-22 2016-06-14 Palantir Technologies Inc. Systems and user interfaces for dynamic and interactive investigation of bad actor behavior based on automatic clustering of related data in various data structures
US9348920B1 (en) 2014-12-22 2016-05-24 Palantir Technologies Inc. Concept indexing among database of documents using machine learning techniques
US9817563B1 (en) 2014-12-29 2017-11-14 Palantir Technologies Inc. System and method of generating data points from one or more data stores of data items for chart creation and manipulation
US9870205B1 (en) 2014-12-29 2018-01-16 Palantir Technologies Inc. Storing logical units of program code generated using a dynamic programming notebook user interface
US9335911B1 (en) 2014-12-29 2016-05-10 Palantir Technologies Inc. Interactive user interface for dynamic data analysis exploration and query processing
US10372879B2 (en) 2014-12-31 2019-08-06 Palantir Technologies Inc. Medical claims lead summary report generation
US10387834B2 (en) * 2015-01-21 2019-08-20 Palantir Technologies Inc. Systems and methods for accessing and storing snapshots of a remote application in a document
US9727560B2 (en) 2015-02-25 2017-08-08 Palantir Technologies Inc. Systems and methods for organizing and identifying documents via hierarchies and dimensions of tags
US10909178B2 (en) * 2015-03-05 2021-02-02 Workday, Inc. Methods and systems for multidimensional analysis of interconnected data sets stored in a graph database
KR102308140B1 (en) 2015-03-11 2021-10-05 파세토, 인크. Systems and methods for web API communication
EP3611632A1 (en) 2015-03-16 2020-02-19 Palantir Technologies Inc. Displaying attribute and event data along paths
US9886467B2 (en) 2015-03-19 2018-02-06 Plantir Technologies Inc. System and method for comparing and visualizing data entities and data entity series
US9454785B1 (en) 2015-07-30 2016-09-27 Palantir Technologies Inc. Systems and user interfaces for holistic, data-driven investigation of bad actor behavior based on clustering and scoring of related data
US9996595B2 (en) 2015-08-03 2018-06-12 Palantir Technologies, Inc. Providing full data provenance visualization for versioned datasets
US9456000B1 (en) 2015-08-06 2016-09-27 Palantir Technologies Inc. Systems, methods, user interfaces, and computer-readable media for investigating potential malicious communications
US9600146B2 (en) 2015-08-17 2017-03-21 Palantir Technologies Inc. Interactive geospatial map
US10489391B1 (en) 2015-08-17 2019-11-26 Palantir Technologies Inc. Systems and methods for grouping and enriching data items accessed from one or more databases for presentation in a user interface
US10102369B2 (en) 2015-08-19 2018-10-16 Palantir Technologies Inc. Checkout system executable code monitoring, and user account compromise determination system
US10853378B1 (en) 2015-08-25 2020-12-01 Palantir Technologies Inc. Electronic note management via a connected entity graph
US11150917B2 (en) 2015-08-26 2021-10-19 Palantir Technologies Inc. System for data aggregation and analysis of data from a plurality of data sources
US9485265B1 (en) 2015-08-28 2016-11-01 Palantir Technologies Inc. Malicious activity detection system capable of efficiently processing data accessed from databases and generating alerts for display in interactive user interfaces
US10706434B1 (en) 2015-09-01 2020-07-07 Palantir Technologies Inc. Methods and systems for determining location information
US9576015B1 (en) 2015-09-09 2017-02-21 Palantir Technologies, Inc. Domain-specific language for dataset transformations
US10296617B1 (en) 2015-10-05 2019-05-21 Palantir Technologies Inc. Searches of highly structured data
US10929071B2 (en) 2015-12-03 2021-02-23 Fasetto, Inc. Systems and methods for memory card emulation
US9542446B1 (en) 2015-12-17 2017-01-10 Palantir Technologies, Inc. Automatic generation of composite datasets based on hierarchical fields
US10089289B2 (en) 2015-12-29 2018-10-02 Palantir Technologies Inc. Real-time document annotation
US9823818B1 (en) 2015-12-29 2017-11-21 Palantir Technologies Inc. Systems and interactive user interfaces for automatic generation of temporal representation of data objects
US9612723B1 (en) 2015-12-30 2017-04-04 Palantir Technologies Inc. Composite graphical interface with shareable data-objects
US10318703B2 (en) 2016-01-19 2019-06-11 Ford Motor Company Maximally standard automatic completion using a multi-valued decision diagram
US10467318B2 (en) * 2016-02-25 2019-11-05 Futurewei Technologies, Inc. Dynamic information retrieval and publishing
US10698938B2 (en) 2016-03-18 2020-06-30 Palantir Technologies Inc. Systems and methods for organizing and identifying documents via hierarchies and dimensions of tags
US10324609B2 (en) 2016-07-21 2019-06-18 Palantir Technologies Inc. System for providing dynamic linked panels in user interface
US10719188B2 (en) 2016-07-21 2020-07-21 Palantir Technologies Inc. Cached database and synchronization system for providing dynamic linked panels in user interface
US10437840B1 (en) 2016-08-19 2019-10-08 Palantir Technologies Inc. Focused probabilistic entity resolution from multiple data sources
US10055385B2 (en) * 2016-10-21 2018-08-21 Business Objects Software Limited Visual preview based on analytical metadata
US10318630B1 (en) 2016-11-21 2019-06-11 Palantir Technologies Inc. Analysis of large bodies of textual data
CA3044665A1 (en) 2016-11-23 2018-05-31 Fasetto, Inc. Systems and methods for streaming media
US11080903B2 (en) * 2016-12-08 2021-08-03 Sap Se Visualization with conditional characteristic
US10460602B1 (en) 2016-12-28 2019-10-29 Palantir Technologies Inc. Interactive vehicle information mapping system
KR101758219B1 (en) * 2017-01-24 2017-07-14 김훈 Number information management appratus able to search number information
WO2018144833A1 (en) 2017-02-03 2018-08-09 Fasetto, Llc Systems and methods for data storage in keyed devices
CA3007166A1 (en) 2017-06-05 2018-12-05 9224-5489 Quebec Inc. Method and apparatus of aligning information element axes
US10956406B2 (en) 2017-06-12 2021-03-23 Palantir Technologies Inc. Propagated deletion of database records and derived data
US10403011B1 (en) 2017-07-18 2019-09-03 Palantir Technologies Inc. Passing system with an interactive user interface
WO2019079628A1 (en) 2017-10-19 2019-04-25 Fasetto, Inc. Portable electronic device connection systems
US11599369B1 (en) 2018-03-08 2023-03-07 Palantir Technologies Inc. Graphical user interface configuration system
KR20210018217A (en) 2018-04-17 2021-02-17 파세토, 인크. Device presentation with real-time feedback
US10754822B1 (en) 2018-04-18 2020-08-25 Palantir Technologies Inc. Systems and methods for ontology migration
US10885021B1 (en) 2018-05-02 2021-01-05 Palantir Technologies Inc. Interactive interpreter and graphical user interface
US11119630B1 (en) 2018-06-19 2021-09-14 Palantir Technologies Inc. Artificial intelligence assisted evaluations and user interface for same
US11126638B1 (en) * 2018-09-13 2021-09-21 Palantir Technologies Inc. Data visualization and parsing system
US11170017B2 (en) * 2019-02-22 2021-11-09 Robert Michael DESSAU Method of facilitating queries of a topic-based-source-specific search system using entity mention filters and search tools

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0770967A3 (en) * 1995-10-26 1998-12-30 Koninklijke Philips Electronics N.V. Decision support system for the management of an agile supply chain
US5995957A (en) * 1997-02-28 1999-11-30 International Business Machines Corporation Query optimization through the use of multi-column statistics to avoid the problems of column correlation
US5978788A (en) * 1997-04-14 1999-11-02 International Business Machines Corporation System and method for generating multi-representations of a data cube
US6205447B1 (en) * 1997-06-30 2001-03-20 International Business Machines Corporation Relational database management of multi-dimensional data
US5940818A (en) * 1997-06-30 1999-08-17 International Business Machines Corporation Attribute-based access for multi-dimensional databases
US6289352B1 (en) * 1998-05-29 2001-09-11 Crystal Decisions, Inc. Apparatus and method for compound on-line analytical processing in databases
US6226647B1 (en) * 1998-07-24 2001-05-01 Oracle Corporation Method, article of manufacture, and apparatus for constructing a multi-dimensional view containing two-pass value measure results
US6317750B1 (en) * 1998-10-26 2001-11-13 Hyperion Solutions Corporation Method and apparatus for accessing multidimensional data
US6154766A (en) * 1999-03-23 2000-11-28 Microstrategy, Inc. System and method for automatic transmission of personalized OLAP report output
US6167396A (en) * 1999-05-12 2000-12-26 Knosys, Inc. Method and apparatus for navigating and displaying data points stored in a multidimensional database
US6385604B1 (en) * 1999-08-04 2002-05-07 Hyperroll, Israel Limited Relational database management system having integrated non-relational multi-dimensional data store of aggregated data elements
US6405207B1 (en) * 1999-10-15 2002-06-11 Microsoft Corporation Reporting aggregate results from database queries
US6418427B1 (en) * 1999-12-30 2002-07-09 Decode Genetics Ehf Online modifications of dimension structures in multidimensional processing

Also Published As

Publication number Publication date
FR2806183B1 (en) 2006-09-01
FR2806183A1 (en) 2001-09-14
CA2303634A1 (en) 2001-06-01
US6581068B1 (en) 2003-06-17

Similar Documents

Publication Publication Date Title
CA2303634C (en) System and method for instant consolidation, enrichment, delegation and reporting in a multidimensional database
US6831668B2 (en) Analytical reporting on top of multidimensional data model
CN111542813B (en) Object model using heterogeneous data to facilitate building data visualizations
US7800613B2 (en) Computer systems and methods for visualizing data with generation of marks
US9092467B2 (en) Systems and methods for displaying data in split dimension levels
US8589337B2 (en) System and method for analyzing data in a report
US7548925B2 (en) Diagrammatic access and arrangement of data
US8099674B2 (en) Computer systems and methods for automatically viewing multidimensional databases
US7089266B2 (en) Computer systems and methods for the query and visualization of multidimensional databases
Mansmann et al. Exploring OLAP aggregates with hierarchical visualization techniques
Dolk Integrated model management in the data warehouse era
EP1385101A2 (en) Static drill-through modelling
Breitner Data Warehousing and OLAP: Delivering Just-In-Time Information for Decision Support
Gallo et al. Data warehouse design and management: theory and practice
Hürlimann tony. huerlimann@ unifr. ch First Version: 2004 February 4, 2021
CA2435861C (en) Static drill-through modelling
Peng Metadata Based Visualization System for Multidimensional Data
Mangaiyarkkarasi On Line Analytical Processing–An Overview
Biniek Zastosowanie metody metamodelowania w Business Intelligence
Biniek Application of the meta-modelling method in Business Intelligence
Suman Data Warehousing and OLAP Technology for Knowledge Discovery
Fernández Hernández Business Intelligence module with optimized access for mobile devices
Lin et al. Data Warehousing Design and Construction–the Case Study for a Garment Company
KWOK-WAI ‘Using The Metadatabase Approach For Data Integration And OLAP
KR20050018682A (en) Systems and methods for representing and editing multi-dimensional data

Legal Events

Date Code Title Description
EEER Examination request
MKLA Lapsed

Effective date: 20160331