US20080059415A1 - Data aggregation module supporting dynamic query responsive aggregation during the servicing of database query requests provided by one or more client machines - Google Patents
Data aggregation module supporting dynamic query responsive aggregation during the servicing of database query requests provided by one or more client machines Download PDFInfo
- Publication number
- US20080059415A1 US20080059415A1 US11/818,944 US81894407A US2008059415A1 US 20080059415 A1 US20080059415 A1 US 20080059415A1 US 81894407 A US81894407 A US 81894407A US 2008059415 A1 US2008059415 A1 US 2008059415A1
- Authority
- US
- United States
- Prior art keywords
- data
- aggregation
- mddb
- dimensional
- database query
- 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.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24553—Query execution of query operations
- G06F16/24554—Unary operations; Data partitioning operations
- G06F16/24556—Aggregation; Duplicate elimination
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/283—Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP
-
- Y—GENERAL 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
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99932—Access augmentation or optimizing
-
- Y—GENERAL 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
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99933—Query processing, i.e. searching
-
- Y—GENERAL 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
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99943—Generating database or data structure, e.g. via user interface
Definitions
- the present invention relates to a method of and system for aggregating data elements in a multi-dimensional database (MDDB) supported upon a computing platform and also to provide an improved method of and system for managing data elements within a MDDB during on-line analytical processing (OLAP) operations.
- MDDB multi-dimensional database
- OLAP on-line analytical processing
- Data warehousing the creation of an enterprise-wide data store, is the first step towards managing these volumes of data.
- the Data Warehouse is becoming an integral part of many information delivery systems because it provides a single, central location where a reconciled version of data extracted from a wide variety of operational systems is stored.
- improvements in price, performance, scalability, and robustness of open computing systems have made data warehousing a central component of Information Technology CIT strategies. Details on methods of data integration and constructing data warehouses can be found in the white paper entitled “Data Integration: The Warehouse Foundation” by Louis Rolleigh and Joe Thomas.
- OLAP On-Line Analytical Processing
- OLAP OLAP-based decision makers
- decision makers can “slice and dice” information along a customer (or business) dimension, and view business metrics by product and through time.
- Reports can be defined from multiple perspectives that provide a high-level or detailed view of the performance of any aspect of the business. Decision makers can navigate throughout their database by drilling down on a report to view elements at finer levels of detail, or by pivoting to view reports from different perspectives.
- OLAP systems need to (1) support sophisticated analyses, (2) scale to large numbers of dimensions, and (3) support analyses against large atomic data sets.
- OLAP systems need to be capable of delivering these metrics in a user-customizable format. These metrics may be obtained from the transactional databases precalculated and stored in the database, or generated on demand during the query process. Commonly used metrics include:
- Multidimensional Ratios e.g. Percent to Total
- Ranking and Statistical Profiles e.g. Top N/Bottom N, 70/30, Quartiles “Show me sales, profit and average call volume per day for my 20 most profitable salespeople, who are in the top 30% of the worldwide sales.”
- a dimension is any element or hierarchical combination of elements in a data model that can be displayed orthogonally with respect to other combinations of elements in the data model. For example, if a report lists sales by week, promotion, store, and department, then the report would be a slice of data taken from a four-dimensional data model.
- Target marketing and market segmentation applications involve extracting highly qualified result sets from large volumes of data. For example, a direct marketing organization might want to generate a targeted mailing list based on dozens of characteristics, including purchase frequency, size of the last purchase, past buying trends, customer location, age of customer, and gender of customer. These applications rapidly increase the dimensionality requirements for analysis.
- Orthogonal dimensions in an exemplary OLAP application might include Geography, Time, and Products.
- Atomic data refers to the lowest level of data granularity required for effective decision making.
- “atomic data” may refer to information by store, by day, and by item.
- atomic data may be information by account, by transaction, and by branch.
- Most organizations implementing OLAP systems find themselves needing systems that can scale to tens, hundreds, and even thousands of gigabytes of atomic information.
- OLAP systems As OLAP systems become more pervasive and are used by the majority of the enterprise, more data over longer time frames will be included in the data store (i.e. data warehouse), and the size of the database will increase by at least an order of magnitude. Thus, OLAP systems need to be able to scale from present to near-future volumes of data.
- OLAP systems need to (1) support the complex analysis requirements of decision-makers, (2) analyze the data from a number of different perspectives (i.e. business dimensions), and (3) support complex analyses against large input (atomic-level) data sets from a Data Warehouse maintained by the organization using a relational database management system (RDBMS).
- RDBMS relational database management system
- Vendors of OLAP systems classify OLAP Systems as either Relational OLAP (ROLAP) or Multidimensional OLAP (MOLAP) based on the underlying architecture thereof.
- ROLAP Relational OLAP
- MOLAP Multidimensional OLAP
- the Relational OLAP (ROLAP) system accesses data stored in a Data Warehouse to provide OLAP analyses.
- ROLAP Relational OLAP
- the premise of ROLAP is that OLAP capabilities are best provided directly against the relational database, i.e. the Data Warehouse.
- the ROLAP architecture was invented to enable direct access of data from Data Warehouses, and therefore support optimization techniques to meet batch window requirements and provide fast response times.
- these optimization techniques include application-level table partitioning, pre-aggregate inferencing, denormalization support, and the joining of multiple fact tables.
- a typical prior art ROLAP system has a three-tier or layer client/server architecture.
- the “database layer” utilizes relational databases for data storage, access, and retrieval processes.
- the “application logic layer” is the ROLAP engine which executes the multidimensional reports from multiple users.
- the ROLAP engine integrates with a variety of “presentation layers,” through which users perform OLAP analyses.
- RDBMS relational database management system
- database routines are run to pre-aggregate the data within the RDBMS. Indices are then created to optimize query access times.
- End users submit multidimensional analyses to the ROLAP engine, which then dynamically transforms the requests into SQL execution plans.
- the SQL execution plans are submitted to the relational database for processing, the relational query results are cross-tabulated, and a multidimensional result data set is returned to the end user.
- ROLAP is a fully dynamic architecture capable of utilizing precalculated results when they are available, or dynamically generating results from atomic information when necessary.
- Multidimensional OLAP (MOLAP) systems utilize a proprietary multidimensional database (MDDB) to provide OLAP analyses.
- MDDB multidimensional database
- the main premise of this architecture is that data must be stored multidimensionally to be accessed and viewed multidimensionally.
- prior art MOLAP systems have an Aggregation, Access and Retrieval module which is responsible for all data storage, access, and retrieval processes, including data aggregration (i.e. preaggregation) in the MDDB.
- the base data loader is fed with base data, in the most detailed level, from the Data Warehouse, into the Multi-Dimensional Data Base (MDDB).
- MDDB Multi-Dimensional Data Base
- layers of aggregated data are built-up by the Aggregation program, which is part of the Aggregation, Access and Retrieval module.
- the application logic module is responsible for the execution of all OLAP requests/queries (e.g.
- the presentation module integrates with the application logic module and provides an interface, through which the end users view and request OLAP analyses on their client machines which may be web-enabled through the infrastructure of the Internet.
- the client/server architecture of a MOLAP system allows multiple users to access the same multidimensional database (MDDB).
- MDDB multidimensional database
- the ExpressTM server by the Oracle Corporation is exemplary of a popular server which can be used to carry out the data loading process in prior art MOLAP systems.
- FIG. 2B an exemplary 3-D MDDB is schematically depicted, showing geography, time and products as the “dimensions” of the database.
- the multidimensional data of the MDDB is organized in an array structure, as shown in FIG. 2C .
- the ExpressTM server stores data in pages (or records) of an information file.
- Pages contain 512, or 2048, or 4096 bytes of data, depending on the platform and release of the ExpressTM server.
- the ExpressTM server In order to look up the physical record address from the database file recorded on a disk or other mass storage device, the ExpressTM server generates a data structure referred to as a “Page Allocation Table (PAT)”. As shown in FIG. 2D , the PAT tells the ExpressTM server the physical record number that contains the page of data. Typically, the PAT is organized in pages.
- PAT Page Allocation Table
- Offset Months+Product*(# of_Months)+City*(# of_Months*# of_Products)
- the response time of a multidimensional query on a prior art MDDB depends on how many cells in the MDDB have to be added “on the fly”. As the number of dimensions in the MDDB increases linearly, the number of the cells in the MDDB increases exponentially. However, it is known that the majority of multidimensional queries deal with summarized high level data. Thus, as shown in FIGS. 3A and 3B , once the atomic data (i.e. “basic data”) has been loaded into the MDDB, the general approach is to perform a series of calculations in batch in order to aggregate (i.e. pre-aggregate) the data elements along the orthogonal dimensions of the MDDB and fill the array structures thereof. For example, revenue figures for all retail stores in a particular state (i.e.
- the primarily loaded data in the MDDB is organized at its lowest dimensional hierarchy.
- the results of the pre-aggregations are stored in the neighboring parts of the MDDB.
- weeks are the aggregation results of days
- months are the aggregation results of weeks
- quarters are the aggregation results of months.
- states are the aggregation results of cities
- countries are the aggregation results of states
- continents are the aggregation results of countries.
- the MDDB is ready for use. Users request OLAP reports by submitting queries through the OLAP Application interface (e.g. using web-enabled client machines), and the application logic layer responds to the submitted queries by retrieving the stored data from the MDDB for display on the client machine.
- OLAP Application interface e.g. using web-enabled client machines
- the aggregated data is very sparse, tending to explode as the number of dimension grows and dramatically slowing down the retrieval process (as described in the report entitled “Database Explosion: The OLAP Report”, http://www.olapreport.com/DatabaseExplosion.htm, incorporated herein by reference).
- Quick and on line retrieval of queried data is critical in delivering on-line response for OLAP queries. Therefore, the data structure of the MDDB, and methods of its storing, indexing and handling are dictated mainly by the need of fast retrieval of massive and sparse data.
- the process of storing, indexing and handling MDDB utilize complex data structures to largely improve the retrieval speed, as part of the querying process, at the cost of slowing down the storing and aggregation.
- the query-bounded structure, that must support fast retrieval of queries in a restricting environment of high sparcity and multi-hierarchies, is not the optimal one for fast aggregation.
- the Aggregation, Access and Retrieval module is responsible for all data storage, retrieval and access processes.
- the Logic module is responsible for the execution of OLAP queries.
- the Presentation module intermediates between the user and the logic module and provides an interface through which the end users view and request OLAP analyses.
- the client/server architecture allows multiple users to simultaneously access the multidimensional database.
- general system requirements of OLAP systems include: (1) supporting sophisticated analysis, (2) scaling to large number of dimensions, and (3) supporting analysis against large atomic data sets.
- MOLAP system architecture is capable of providing analytically sophisticated reports and analysis functionality.
- requirements (2) and (3) fundamentally limit MOLAP's capability, because to be effective and to meet end-user requirements, MOLAP databases need a high degree of aggregation.
- ROLAP system architecture allows the construction of systems requiring a low degree of aggregation, but such systems are significantly slower than systems based on MOLAP system architecture principles.
- the resulting long aggregation times of ROLAP systems impose severe limitations on its volumes and dimensional capabilities.
- the graphs plotted in FIG. 5 clearly indicate the computational demands that are created when searching an MDDB during an OLAP session, where answers to queries are presented to the MOLAP system, and answers thereto are solicited often under real-time constraints.
- prior art MOLAP systems have limited capabilities to dynamically create data aggregations or to calculate business metrics that have not been precalculated and stored in the MDDB.
- ROLAP is capable of higher data volumes.
- the ROLAP architecture despite its high volume and dimensionality superiority, suffers from several significant drawbacks as compared to MOLAP:
- SQL is less capable of the sophisticated analytical functionality necessary for OLAP
- MDDB multi-dimensional database
- a novel stand-alone i.e. external
- system performance e.g. deceased access/search time
- Another object of the present invention is to provide such system, wherein the stand-alone aggregation server includes an aggregation engine that is integrated with an MDDB, to provide a cartridge-style plug-in accelerator which can communicate with virtually any conventional OLAP server.
- Another object of the present invention is to provide such a stand-alone data aggregration server whose computational tasks are restricted to data aggregation, leaving all other OLAP functions to the MOLAP server and therefore complementing OLAP server's functionality.
- Another object of the present invention is to provide such a system, wherein the stand-alone aggregation server carries out an improved method of data aggregation within the MDDB which enables the dimensions of the MDDB to be scaled up to large numbers and large atomic (i.e. base) data sets to be handled within the MDDB.
- Another object of the present invention is to provide such a stand-alone aggregration server, wherein the aggregation engine supports high-performance aggregation (i.e. data roll-up) processes to maximize query performance of large data volumes, and to reduce the time of partial aggregations that degrades the query response.
- high-performance aggregation i.e. data roll-up
- Another object of the present invention is to provide such a stand-alone, external scalable aggregation server, wherein its integrated data aggregation (i.e. roll-up) engine speeds up the aggregation process by orders of magnitude, enabling larger database analysis by lowering the aggregation times.
- integrated data aggregation i.e. roll-up
- Another object of the present invention is to provide such a novel stand-alone scalable aggregation server for use in OLAP operations, wherein the scalability of the aggregation server enables (i) the speed of the aggregation process carried out therewithin to be substantially increased by distributing the computationally intensive tasks associated with data aggregation among multiple processors, and (ii) the large data sets contained within the MDDB of the aggregation server to be subdivided among multiple processors thus allowing the size of atomic (i.e. basic) data sets within the MDDB to be substantially increased.
- Another object of the present invention is to provide such a novel stand-alone scalable aggregation server, which provides for uniform load balancing among processors for high efficiency and best performance, and linear scalability for extending the limits by adding processors.
- Another object of the present invention is to provide a stand-alone, external scalable aggregation server, which is suitable for MOLAP as well as for ROLAP system architectures.
- Another object of the present invention is to provide a novel stand-alone scalable aggregation server, wherein an MDDB and aggregation engine are integrated and the aggregation engine carries out a high-performance aggregation algorithm and novel storing and searching methods within the MDDB.
- Another object of the present invention is to provide a novel stand-alone scalable aggregation server which can be supported on single-processor (i.e. sequential or serial) computing platforms, as well as on multi-processor (i.e. parallel) computing platforms.
- Another object of the present invention is to provide a novel stand-alone scalable aggregation server which can be used as a complementary aggregation plug-in to existing MOLAP and ROLAP databases.
- Another object of the present invention is to provide a novel stand-alone scalable aggregation server which carries out an novel rollup (i.e. down-up) and spread down (i.e. top-down) aggregation algorithms.
- Another object of the present invention is to provide a novel stand-alone scalable aggregation server which includes an integrated MDDB and aggregation engine which carries out full pre-aggregation and/or “on-the-fly” aggregation processes within the MDDB.
- Another object of the present invention is to provide such a novel stand-alone scalable aggregation server which is capable of supporting MDDB having a multi-hierarchy dimensionality.
- Another object of the present invention is to provide a novel method of aggregating multidimensional data of atomic data sets originating from a RDBMS Data Warehouse.
- Another object of the present invention is to provide a novel method of aggregating multidimensional data of atomic data sets originating from other sources, such as external ASCII files, MOLAP server, or other end user applications.
- Another object of the present invention is to provide a novel stand-alone scalable data aggregation server which can communicate with any MOLAP server via standard ODBC, OLE DB or DLL interface, in a completely transparent manner with respect to the (client) user, without any time delays in queries, equivalent to storage in MOLAP server's cache.
- Another object of the present invention is to provide a novel “cartridge-style” (stand-alone) scalable data aggregation engine which dramatically expands the boundaries of MOLAP into large-scale applications including Banking, Insurance, Retail and Promotion Analysis.
- Another object of the present invention is to provide a novel “cartridge-style” (stand-alone) scalable data aggregation engine which dramatically expands the boundaries of high-volatility type ROLAP applications such as, for example, the precalculation of data to maximize query performance.
- Another object of the present invention is to provide a generic plug-in cartridge-type data aggregation component, suitable for all MOLAP systems of different vendors, dramatically reducing their aggregation burdens.
- Another object of the present invention is to provide a novel high performance cartridge-type data aggregration server which, having standardized interfaces, can be plugged-into the OLAP system of virtually any user or vendor.
- Another object of the present invention is to provide a novel “cartridge-style” (stand-alone) scalable data aggregation engine which has the capacity to convert long batch-type data aggregations into interactive sessions.
- FIG. 1A is a schematic representation of an exemplary prior art relations on-line analytical processing (ROLAP) system comprising a three-tier or layer client/server architecture, wherein the first tier has a database layer utilizing relational databases (RDBMS) for data storage, access, and retrieval processes, the second tier has an application logic layer (i.e. the ROLAP engine) for executing the multidimensional reports from multiple users, and the third tier integrates the ROLAP engine with a variety of presentation layers, through which users perform OLAP analyses;
- RDBMS relational databases
- FIG. 1B is a schematic representation of a generalized embodiment of a prior art multidimensional on-line analytical processing (MOLAP) system comprising a base data loader for receiving atomic (i.e. base) data from a Data Warehouse realized by a RDBMS, an OLAP multidimensional database (MDDB), an aggregation, access and retrieval module, application logic module and presentation module associated with a conventional OLAP sever (e.g. Oracle's Express Server) for supporting on-line transactional processing (OLTP) operations on the MDDB, to service database queries and requests from a plurality of OLAP client machines typically accessing the system from an information network (e.g. the Internet);
- MOLAP multidimensional on-line analytical processing
- FIG. 2A is a schematic representation of the Data Warehouse shown in the prior art system of FIG. 1B comprising numerous data tables (e.g. T 1 , T 2 , . . . Tn) and data field links, and the OLAP multidimensional database shown of FIG. 1B , comprising a conventional page allocation table (PAT) with pointers pointing to the physical storage of variables in an information storage device;
- data tables e.g. T 1 , T 2 , . . . Tn
- PAT page allocation table
- FIG. 2B is a schematic representation of an exemplary three-dimensional MDDB and organized as a 3-dimensional Cartesian cube and used in the prior art system of FIG. 2A , wherein the first dimension of the MDDB is representative of geography (e.g. cities, states, countries, continents), the second dimension of the MDDB is representative of time (e.g. days, weeks, months, years), the third dimension of the MDDB is representative of products (e.g. all products, by manufacturer), and the basic data element is a set of variables which are addressed by 3-dimensional coordinate values;
- geography e.g. cities, states, countries, continents
- time e.g. days, weeks, months, years
- the third dimension of the MDDB is representative of products (e.g. all products, by manufacturer)
- the basic data element is a set of variables which are addressed by 3-dimensional coordinate values
- FIG. 2C is a schematic representation of a prior art array structure associated with an exemplary three-dimensional MDDB, arranged according to a dimensional hierarchy;
- FIG. 2D is a schematic representation of a prior art page allocation table for an exemplary three-dimensional MDDB, arranged according to pages of data element addresses;
- FIG. 3A is a schematic representation of a prior art MOLAP system, illustrating the process of periodically storing raw data in the RDBMS Data Warehouse thereof, serially loading of basic data from the Data Warehouse to the MDDB, and the process of serially pre-aggregating (or pre-compiling) the data in the MDDB along the entire dimensional hierarchy thereof;
- FIG. 3B is a schematic representation illustrating that the Cartesian addresses listed in a prior art page allocation table (PAT) point to where physical storage of data elements (i.e. variables) occurs in the information recording media (e.g. storage volumes) associated with the MDDB, during the loading of basic data into the MDDB as well as during data preaggregation processes carried out therewithin;
- PAT page allocation table
- FIG. 3C 1 is a schematic representation of an exemplary three-dimensional database used in a conventional MOLAP system of the prior art, showing that each data element contained therein is physically stored at a location in the recording media of the system which is specified by the dimensions (and subdimensions within the dimensional hierarchy) of the data variables which are assigned integer-based coordinates in the MDDB, and also that data elements associated with the basic data loaded into the MDDB are assigned lower integer coordinates in MDDB Space than pre-aggregated data elements contained therewithin;
- FIG. 3C 2 is a schematic representation illustrating that a conventional hierarchy of the dimension of “time” typically contains the subdimensions “days, weeks, months, quarters, etc.” of the prior art;
- FIG. 3C 3 is a schematic representation showing how data elements having higher subdimensions of time in the MDDB of the prior art are typically assigned increased integer addresses along the time dimension thereof;
- FIG. 4 is a schematic representation illustrating that, for very large prior art MDDBs, very large page allocation tables (PATs) are required to represent the address locations of the data elements contained therein, and thus there is a need to employ address data paging techniques between the DRAM (e.g. program memory) and mass storage devices (e.g. recording discs or RAIDs) available on the serial computing platform used to implement such prior art MOLAP systems;
- DRAM e.g. program memory
- mass storage devices e.g. recording discs or RAIDs
- FIG. 5 is a graphical representation showing how search time in a conventional (i.e. prior art) MDDB increases in proportion to the amount of preaggregation of data therewithin;
- FIG. 6A is a schematic representation of a generalized embodiment of a multidimensional on-line analytical processing (MOLAP) system of the present invention comprising a Data Warehouse realized as a relational database, a stand-alone Aggregration Server of the present invention having an integrated aggregation engine and MDDB, and an OLAP server supporting a plurality of OLAP clients, wherein the stand-alone Aggregation Server performs aggregation functions (e.g. summation of numbers, as well as other mathematical operations, such as multiplication, subtraction, division etc.) and multi-dimensional data storage functions;
- MOLAP multidimensional on-line analytical processing
- FIG. 6B is a schematic block diagram of the stand-alone Aggregation Server of the illustrative embodiment shown in FIG. 6A , showing its primary components, namely, a base data interface (e.g. OLDB, OLE-DB, ODBC, SQL, API, JDBC, etc.) for receiving RDBMS flat files lists and other files from the Data Warehouse (RDBMS), a base data loader for receiving base data from the base data interface, configuration manager for managing the operation of the base data interface and base data loader, an aggregation engine for receiving base data from the base loader, a multi-dimensional database (MDDB), a MDDB handler for handling the movement of base data and aggregation data between the aggregation engine and the MDDB, an input analyzer, an aggregation client interface (e.g.
- a base data interface e.g. OLDB, OLE-DB, ODBC, SQL, API, JDBC, etc.
- RDBMS Data Warehouse
- OLDB OLE-DB
- ODBC OLE-DB
- SQL ODBC
- API JDBC
- clients such as an OLAP Server, spreadsheet application, end-user application
- clients such as an OLAP Server, spreadsheet application, end-user application
- data files from the input analyzer for transfer to requesting clients
- a configuration manager for managing the operation of the input analyzer and the aggregation client interface
- FIG. 6C is a schematic representation of the software modules comprising the aggregation engine and MDDB handler of the stand-alone Aggregation Server of the illustrative embodiment of the present invention, showing a base data list structure being supplied to a hierarchy analysis and reorder module, the output thereof being transferred to an aggregation management module, the output thereof being transferred to a storage module via a storage management module, and a Query Directed Roll-up (QDR) aggregation management module being provided for receiving database (DB) requests from OLAP client machines and managing the operation of the aggregation and storage management modules of the present invention;
- QDR Query Directed Roll-up
- FIG. 6D is a flow chart representation of the primary operations carried out by the (DB) request serving mechanism within the QDR aggregation management module shown in FIG. 6C ;
- FIG. 6E is a schematic representation of a generalized embodiment of a multidimensional on-line analytical processing (MOLAP) system of the present invention comprising a Data Warehouse realized as a relational database, a stand-alone Aggregration Server of the present invention, having an integrated aggregation engine and MDDB, that is capable of being plugged into (i.e., interfaced to) OLAP servers (two shown) of different users or vendors each supporting a plurality of OLAP clients; the stand-alone Aggregation Server performs aggregation functions (e.g. summation of numbers, as well as other mathematical operations, such as multiplication, subtraction, division etc.) and multi-dimensional data storage functions for such OLAP Server(s);
- MOLAP multidimensional on-line analytical processing
- FIG. 7A is a schematic representation of a separate-platform type implementation of the stand-alone Aggregation Server of the illustrative embodiment of FIG. 6B and a conventional OLAP server supporting a plurality of client machines, wherein base data from a Data Warehouse is shown being received by the aggregation server, realized on a first hardware/software platform (i.e. Platform A) and the stand-alone Aggregation Server is shown serving the conventional OLAP server, realized on a second hardware/software platform (i.e. Platform B), as well as serving data aggregation requirements of other clients supporting diverse applications such as spreadsheet, GUI front end, and applications;
- Platform A hardware/software platform
- Platform B second hardware/software platform
- FIG. 7B is a schematic representation of a shared-platform type implementation of the stand-alone Aggregation Server of the illustrative embodiment of FIG. 6B and a conventional OLAP server supporting a plurality of client machines, wherein base data from a Data Warehouse is shown being received by the stand-alone Aggregation Server, realized on a common hardware/software platform and the aggregation server is shown serving the conventional OLAP server, realized on the same common hardware/software platform, as well as serving data aggregation requirements of other clients supporting diverse applications such as spreadsheet, GUI front end, and applications;
- FIG. 8A is a data table setting forth information representative of performance benchmarks obtained by the shared-platform type implementation of the stand-alone Aggregation Server of the illustrative embodiment serving the conventional OLAP server (i.e. Oracle EXPRESS Server) shown in FIG. 7B , wherein the common hardware/software platform is realized using a Pentium II 450 Mhz, 1 GB RAM, 18 GB Disk, running the Microsoft NT operating system (OS);
- OS Microsoft NT operating system
- FIG. 9A is a schematic representation of the first stage in the method of segmented aggregation according to the principles of the present invention, showing initial aggregration along the 1 st dimension;
- FIG. 9B is a schematic representation of the next stage in the method of segmented aggregation according to the principles of the present invention, showing that any segment along dimension 1 , such as the shown slice, can be separately aggregated along the remaining dimensions, 2 and 3 , and that in general, for an N dimensional system, the second stage involves aggregation in N ⁇ 1 dimensions.
- the principle of segmentation can be applied on the first stage as well, however, only a large enough data will justify such a sliced procedure in the first dimension. Actually, it is possible to consider each segment as an N ⁇ 1 cube, enabling recursive computation.
- FIG. 9C 1 is a schematic representation of the Query Directed Roll-up (QDR) aggregation method/procedure of the present invention, showing data aggregation starting from existing basic data or previously aggregated data in the first dimension (D 1 ), and such aggregated data being utilized as a basis for QDR aggregation along the second dimension (D 2 );
- QDR Query Directed Roll-up
- FIG. 9C 2 is a schematic representation of the Query Directed Roll-up (QDR) aggregation method/procedure of the present invention, showing initial data aggregation starting from existing previously aggregated data in the second third (D 3 ), and continuing along the third dimension (D 3 ), and thereafter continuing aggregation along the second dimension (D 2 );
- QDR Query Directed Roll-up
- FIG. 10A is a schematic representation of the “slice-storage” method of storing sparse data in the disk storage devices of the MDDB of FIG. 6B in accordance with the principles of the present invention, based on an ascending-ordered index along aggregation direction, enabling fast retrieval of data;
- FIG. 10B is a schematic representation of the data organization of data files and the directory file used in the storages of the MDDB of FIG. 6B , and the method of searching for a queried data point therein using a simple binary search technique due to the data files ascending order;
- FIG. 11A is a schematic representation of three exemplary multi-hierarchical data structures for storage of data within the MDDB of FIG. 6B , having three levels of hierarchy, wherein the first level representative of base data is composed of items A, B, F, and G, the second level is composed of items C, E, H and I, and the third level is composed of a single item D, which is common to all three hierarchical structures;
- FIG. 11B is a schematic representation of an optimized multi-hierarchical data structure merged from all three hierarchies of FIG. 11A , in accordance with the principles of the present invention
- FIG. 12 is a schematic representation showing the levels of operations performed by the stand-alone Aggregation Server of FIG. 6B , summarizing the different enabling components for carrying out the method of segmented aggregation in accordance with the principles of the present invention.
- FIG. 13 is a schematic representation of the stand-alone Aggregation Server of the present invention shown as a component of a central data warehouse, serving the data aggregation needs of URL directory systems, Data Marts, RDBMSs, ROLAP systems and OLAP systems alike.
- FIGS. 6A through 13 the preferred embodiments of the method and system of the present invention will be now described in great detail hereinbelow, wherein like elements in the Drawings shall be indicated by like reference numerals.
- aggregation and “preaggregation” shall be understood to mean the process of summation of numbers, as well as other mathematical operations, such as multiplication, subtraction, division etc.
- the stand-alone aggregation server and methods of and apparatus for data aggregation of the present invention can be employed in a wide range of applications, including MOLAP systems, ROLAP systems, Internet URL-directory systems, personalized on-line e-commerce shopping systems, Internet-based systems requiring real-time control of packet routing and/or switching, and the like.
- initial focus will be accorded to improvements in MOLAP systems, in which knowledge workers are enabled to intuitively, quickly, and flexibly manipulate operational data within a MDDB using familiar business terms in order to provide analytical insight into a business domain of interest.
- FIG. 6A illustrates a generalized embodiment of a multidimensional on-line analytical processing (MOLAP) system of the present invention comprising: a Data Warehouse 601 realized as a relational database; a stand-alone cartridge-style Aggregation Server 603 of the present invention having an integrated aggregation engine and a MDDB; and an OLAP server 605 communicating with the Aggregation Server 603 , and supporting a plurality of OLAP clients.
- the stand-alone Aggregation Server 603 performs aggregation functions (e.g. summation of numbers, as well as other mathematical operations, such as multiplication, subtraction, division etc.) and multi-dimensional data storage functions.
- aggregation functions e.g. summation of numbers, as well as other mathematical operations, such as multiplication, subtraction, division etc.
- the principles of the present invention teaches moving the aggregation engine and the MDDB into a separate Aggregation Server 603 having standardized interfaces so that it can be plugged-into the OLAP system of virtually any user or vendor.
- This feature is illustrated in FIG. 6E wherein the Aggregation Server 603 can be plugged into (e.g., interfaced to) OLAP Servers (two shown as 605 ′ and 605 ′′) of different users or vendors.
- the Aggregation Server 603 is operably plugged into (e.g., interfaced to) OLAP Server 605 ′ of one user or vendor, yet it is also capable of being operably plugged into OLAP server 605 ′′ of another user or vendor, as indicated by the dotted lines.
- This dramatic move discontinues the restricting dependency of aggregation from the analytical functions of OLAP, and by applying novel and independent algorithms.
- the stand-alone data aggregation server enables efficient organization and handling of data, fast aggregation processing, and fast access to and retrieval of any data element in the MDDB.
- the Aggregation Server 603 of the present invention can serve the data aggregation requirements of other types of systems besides OLAP systems such as, for example, URL directory management Data Marts, RDBMS, or ROLAP.
- the Aggregation Server 603 of the present invention excels in performing two distinct functions, namely: the aggregation of data in the MDDB; and the handling of the resulting data base in the MDDB, for “on demand” client use.
- the Aggregation Server 603 of the present invention focuses on performing these two functions in a high performance manner (i.e. aggregating and storing base data, originated at the Data Warehouse, in a multidimensional storage (MDDB), and providing the results of this data aggregation process ion demand to the clients, such as the OLAP server 605 , spreadsheet applications, the end user applications.
- the Aggregation Server 603 of the present invention frees each conventional OLAP server 605 , with which it interfaces, from the need of making data aggregations, and therefore allows the conventional OLAP server 605 to concentrate on the primary functions of OLAP servers, namely: data analysis and supporting a graphical interface with the user client.
- FIG. 6B shows the primary components of the stand-alone Aggregation Server 603 of the illustrative embodiment, namely: a base data interface 611 (e.g. OLDB, OLE-DB, ODBC, SQL, API, JDBC, etc.) for receiving RDBMS flat files lists and other files from the Data Warehouse (RDBMS), a base data loader 612 for receiving base data from the base data interface 611 , configuration manager 613 for managing the operation of the base data interface 611 and base data loader 612 , an aggregation engine 621 for receiving base data from the base loader 612 , a multi-dimensional database (MDDB) 625 ; a MDDB handler 623 , an input analyzer 627 , an aggregation client interface 629 (e.g. OLDB, OLE-DB, ODBC, SQL, API, JDBC, etc.) and a configuration manager 631 for managing the operation of the input analyzer 627 and the aggregation client interface 629 .
- the base data originates at data warehouse or other sources, such as external ASCII files, MOLAP server, or others.
- the Configuration Manager 613 in order to enable proper communication with all possible sources and data structures, configures two blocks, the Base Data Interface 611 and Data Loader 612 . Their configuration is matched with different standards such as OLDB, OLE-DB, ODBC, SQL, API, JDBC, etc.
- the core of the data Aggregation Server 603 of the present invention comprises: a data Aggregation Engine 621 ; a MDDB Handler 623 ; and a Multidimensional Database (MDDB) 625 .
- MDDB Multidimensional Database
- the results of data aggregation are efficiently stored in a multidimensional structure within the Multidimensional Database (MDDB) 625 , by the MDDB Handler 623 .
- the stand-alone Aggregation Server 603 of the present invention serves the OLAP Server 605 via standard interfaces, such as OLDB, OLE-DB, ODBC, SQL, API, JDBC, etc. Aggregation results required by the OLAP Server 605 are supplied on demand. Typically, the OLAP Server 605 disintegrates the query, via parsing process, into series of requests. Each such request, specifying a n-dimensional coordinate, is presented to the Aggregation Server 603 for the coordinate's value.
- the Configuration Manager 631 sets the Aggregation Client Interface 629 and Input Analyzer 627 for a proper communication protocol according to the client user (e.g, OLAP Server 605 ). The Input Analyzer 627 converts the input format to make it suitable for the MDDB Handler 623 .
- An object of the present invention is to make the transfer of data completely transparent to the OLAP user, in a manner which is equivalent to the storing of data in the cache of the OLAP server 605 and without any query delays. This requires that the stand-alone Aggregation Server 603 have exceptionally fast response characteristics. This object is enabled by providing the unique data structure and aggregation mechanism of the present invention.
- FIG. 6C shows the software modules comprising the aggregation engine and MDDB handler components 615 of the stand-alone Aggregation Server 603 of the illustrative embodiment.
- the base data list as it arrives from RDBMS or text files, has to be analyzed and reordered to optimize hierarchy handling, according to the unique method of the present invention, as described later with reference to FIGS. 11A and 11B .
- the function of the aggregation management module is to administrate the aggregation process according to the method illustrated in FIGS. 9A and 9B .
- data aggregation within the stand-alone Aggregation Server 603 can be carried out either as a complete pre-aggregation process, where the base data is fully aggregated before commencing querying, or as a query directed roll-up (QDR) process, where querying is allowed at any stage of aggregation using the “on-the-fly” data aggregation process of the present invention.
- the QDR process will be described hereinafter in greater detail with reference to FIG. 9C .
- the response to a request i.e. a basic component of a client query
- the query/request serving mechanism of the present invention within the QDR aggregation management module is illustrated in the flow chart of FIG. 6D .
- the function of the MDDB Handler (i.e., “management”) module is to handle multidimensional data in the MDDB 625 in a very efficient way, according to the novel method of the present invention, which will be described in detail hereinafter with reference to FIGS. 10A and 10B .
- the request serving mechanism shown in FIG. 6D is controlled by the QDR aggregation management module. Requests are queued and served one by one. If the required data is already pre-calculated, then it is retrieved by the MDDB Handler module and returned to the client (e.g., OLAP Server 605 ). Otherwise, the required data is calculated “on-the-fly” by the aggregation management module, and the result moved out to the client (e.g., OLAP Server 605 ), while simultaneously stored by the MDDB Handler module, shown in FIG. 6C .
- FIGS. 7A and 7B outline two different implementations of the stand-alone (cartridge-style) Aggregation Server 603 of the present invention.
- the Aggregation Server 603 supplies aggregated MDDB results to a client (e.g., OLAP Server 605 ).
- FIG. 7A shows a separate-platform implementation of the MOLAP system of the illustrative embodiment shown in FIG. 6A , wherein the Aggregation Server 603 of the present invention resides on a separate hardware platform and OS system from that used to run the OLAP server 605 .
- the Aggregation Server 603 and the OLAP Server 605 on different-type operating systems (e.g. NT, Unix, MAC OS).
- FIG. 7B shows a common-platform implementation of the MOLAP system of the illustrative embodiment shown in FIG. 6B , wherein the Aggregation Server 603 of the present invention shares the same hardware platform and operating system (OS) that used to run the client OLAP Server 605 .
- OS operating system
- FIG. 8A shows a table setting forth the benchmark results of an aggregation engine, implemented on a shared/common hardware platform and OS, in accordance with the principles of the present invention.
- the common platform and OS is realized using a Pentium II 450 Mhz, 1 GB RAM, 18 GB Disk, running the Microsoft NT operating system.
- the six (6) data sets shown in the table differ in number of dimensions, number of hierarchies, measure of sparcity and data size.
- ORACLE Express a major OLAP server, is made. It is evident that the aggregation engine of the present invention outperforms currently leading aggregation technology by more than an order of magnitude. ⁇
- FIGS. 9 A through 9 C 2 The segmented data aggregation method of the present invention is described in FIGS. 9 A through 9 C 2 . These figures outline a simplified setting of three dimensions only; however, the following analysis applies to any number of dimensions as well.
- the data is being divided into autonomic segments to minimize the amount of simultaneously handled data.
- the initial aggregation is practiced on a single dimension only, while later on the aggregation process involves all other dimensions.
- an aggregation is performed along dimension 1 .
- the first stage can be performed on more than one dimension.
- the space of the base data is expanded by the aggregation process.
- any segment along dimension 1 can be separately aggregated along the remaining dimensions, 2 and 3 .
- the second stage involves aggregation in N ⁇ 1 dimensions.
- the QDR process is made feasible by the slice-oriented roll-up method of the present invention.
- the multidimensional space is composed of independent multidimensional cubes (slices). These cubes can be processed in any arbitrary sequence.
- the aggregation process of the present invention can be monitored by means of files, shared memory sockets, or queues to statically or dynamically set the roll-up order.
- the QDR process of the present invention involves performing a fast on-the-fly aggregation (roll-up) involving only a thin slice of the multidimensional data.
- FIG. 9C 1 shows a slice required for building-up a roll-up result of the 2 nd dimension.
- the aggregation starts from an existing data, either basic or previously aggregated in the first dimension. This data is utilized as a basis for QDR aggregation along the second dimension.
- a QDR involves an initial slice aggregation along dimension 3 , and thereafter aggregation along the 2 nd dimension.
- FIG. 9C 2 shows two corresponding QDR cases for gaining results in the 3d dimension. Cases 1 and 2 differ in the amount of initial aggregation required in 2 nd dimension.
- FIG. 10A illustrates the “Slice-Storage” method of storing sparse data on storage disks.
- this data storage method is based on the principle that an ascending-ordered index along aggregation direction, enables fast retrieval of data.
- FIG. 10A illustrates a unit-wide slice of the multidimensional cube of data. Since the data is sparse, only few non-NA data points exist. These points are indexed as follows.
- the Data File consists of data records, in which each n ⁇ 1 dimensional slice is being stored, in a separate record. These records have a varying length, according to the amount of non-NA stored points. For each registered point in the record, IND k stands for an index in a n-dimensional cube, and Data stands for the value of a given point in the cube.
- FIG. 10B illustrates a novel method for randomly searching for a queried data point in the MDDB of FIG. 6B by using a novel technique of organizing data files and the directory file used in the storages of the MDDB, so that a simple binary search technique can then be employed within the Aggregation Server of the present invention.
- a metafile termed DIR File keeps pointers to Data Files as well as additional parameters such as the start and end addresses of data record (IND 0 , IND n ), its location within the Data File, record size (n), file's physical address on disk (D_Path), and auxiliary information on the record (Flags).
- a search for a queried data point is then performed by an access to the DIR file.
- the search along the file can be made using a simple binary search due to file's ascending order.
- the record is then loaded into main memory to search for the required point, characterized by its index IND k .
- the attached Data field represents the queried value. In case the exact index is not found, it means that the point is a NA.
- FIGS. 11A and 11B illustrate a novel method for pre-processing data such that multi-hierarchies in multi-hierarchical structures are optimally merged.
- FIG. 11A illustrates a novel method which the stand-alone Aggregation Server employs for handling hierarchies.
- the inner order of hierarchies within a dimension is optimized, to achieve efficient data handling for summations and other mathematical formulas (termed in general “Aggregation”).
- the order of hierarchy is defined externally. It is brought from a data source to the stand-alone aggregation engine, as a descriptor of data, before the data itself.
- the method assumes hierarchical relations of the data, as shown in FIG. 11A .
- the way data items are ordered in the memory space of the Aggregation Server, with regard to the hierarchy, has a significant impact on its data handling efficiency.
- the data is being pre-ordered for a singular handling, as opposed to multiple handling taught by prior art methods.
- elements of base data and their aggregated results are contiguously stored in a way that each element will be accessed only once. This particular order allows a forward-only handling, never backward. Once a base data element is stored, or aggregated result is generated and stored, it is never to be retrieved again for further aggregation. As a result the storage access is minimized.
- This way of singular handling greatly elevates the aggregation efficiency of large data bases.
- An efficient handling method as used in the present invention is shown in FIG. 7A .
- the data element D as any other element, is accessed and handled only once.
- FIG. 11A shows an example of a multi-hierarchical database structure having 3 hierarchies.
- the base data includes the items A, B, F, and G.
- the second level is composed of items C, E, H and I.
- the third level has a single item D, which is common to all three hierarchical structures.
- a minimal computing path is always taken.
- item D will be calculated as part of structure 1 , requiring two mathematical operations only, rather than as in structure 3 , which would need four mathematical operations.
- FIG. 11B depicts an optimized structure merged from all three hierarchies.
- FIG. 12 summarizes the different enabling components for segmented aggregation.
- the minimized operations in handling multi-hierarchies need analysis of the base data. It greatly optimizes data handling and contribute to aggregation speed. Based on this technology loading and indexing operations become very efficient, minimizing memory and storage access, and speeding up storing and retrieval operations.
- the segmented aggregation technique not just outperforming by orders of magnitude the prior-art aggregation algorithms, but also enabling the unique QDR which waves out the need of waiting for full pre-aggregation.
- FIG. 13 shows the stand-alone Aggregation Server of the present invention as a component of a central data warehouse, serving the data aggregation needs of URL directory systems, Data Marts, RDBMSs, ROLAP systems and OLAP systems alike.
- a stand-alone specialized aggregation server simultaneously serving many different kinds of clients (e.g. data mart, OLAP, URL, RDBMS), has the power of delivering an enterprise-wide aggregation in a cost-effective way.
- This kind of server eliminates the roll-up redundancy over the group of clients, delivering scalability and flexibility.
- Performance associated with central data warehouse is an important consideration in the overall approach. Performance includes aggregation times and query response.
- the query directed roll-up allows instant querying, while the full pre-aggregation is done in the background.
- the currently invented aggregation outperforms any prior art.
- partial aggregations maximize query performance. In both cases fast aggregation process is imperative.
- the aggregation performance of the current invention is by orders of magnitude higher than that of the prior art.
- the stand-alone scalable aggregation server of the present invention can be used in any MOLAP system environment for answering questions about corporate performance in a particular market, economic trends, consumer behaviors, weather conditions, population trends, or the state of any physical, social, biological or other system or phenomenon on which different types or categories of information, organizable in accordance with a predetermined dimensional hierarchy, are collected and stored within a RDBMS of one sort or another.
- the address data mapping processes of the present invention will provide a quick and efficient way of managing a MDDB and also enabling decision support capabilities utilizing the same in diverse application environments.
- the stand-alone “cartridge-style” plug-in features of the data aggregation server of the present invention provides freedom in designing an optimized multidimensional data structure and handling method for aggregation, provides freedom in designing a generic aggregation server matching all OLAP vendors, and enables enterprise-wide centralized aggregation.
- the method of Segmented Aggregation employed in the aggregation server of the present invention provides flexibility, scalability, a condition for Query Directed Aggregation, and speed improvement.
- the method of Multidimensional data organization and indexing employed in the aggregation server of the present invention provides fast storage and retrieval, a condition for Segmented Aggregation, improves the storing, handling, and retrieval of data in a fast manner, and contributes to structural flexibility to allow sliced aggregation and QDR. It also enables the forwarding and single handling of data with improvements in speed performance.
- the method of Query Directed Aggregation (QDR) employed in the aggregation server of the present invention minimizes the data handling operations in multi-hierarchy data structures.
- the method of Query Directed Aggregation (QDR) employed in the aggregation server of the present invention eliminates the need to wait for full aggregation to be completed, and provides build-up aggregated data required for full aggregation.
- QDR Query Directed Aggregation
Abstract
Description
- This is a Continuation of application Ser. No. 10/854,034 filed May 25, 2004; which is a Continuation of application Ser. No. 10/153,164 filed May 21, 2002, which is a Continuation of application Ser. No. 09/514,611 filed Feb. 28, 2002, now U.S. Pat. No. 6,434,544; which is a Continuation-in-part of: copending application Ser. No. 09/368,241 filed Aug. 4, 1999; each said application being commonly owned by HyperRoll Israel, Ltd., and incorporated herein by reference in its entirety.
- 1. Field of Invention
- The present invention relates to a method of and system for aggregating data elements in a multi-dimensional database (MDDB) supported upon a computing platform and also to provide an improved method of and system for managing data elements within a MDDB during on-line analytical processing (OLAP) operations.
- 2. Brief Description of the State of the Art
- The ability to act quickly and decisively in today's increasingly competitive marketplace is critical to the success of organizations. The volume of information that is available to corporations is rapidly increasing and frequently overwhelming. Those organizations that will effectively and efficiently manage these tremendous volumes of data, and use the information to make business decisions, will realize a significant competitive advantage in the marketplace.
- Data warehousing, the creation of an enterprise-wide data store, is the first step towards managing these volumes of data. The Data Warehouse is becoming an integral part of many information delivery systems because it provides a single, central location where a reconciled version of data extracted from a wide variety of operational systems is stored. Over the last few years, improvements in price, performance, scalability, and robustness of open computing systems have made data warehousing a central component of Information Technology CIT strategies. Details on methods of data integration and constructing data warehouses can be found in the white paper entitled “Data Integration: The Warehouse Foundation” by Louis Rolleigh and Joe Thomas.
- Building a Data Warehouse has its own special challenges (e.g. using common data model, common business dictionary, etc.) and is a complex endeavor. However, just having a Data Warehouse does not provide organizations with the often-heralded business benefits of data warehousing. To complete the supply chain from transactional systems to decision maker, organizations need to deliver systems that allow knowledge workers to make strategic and tactical decisions based on the information stored in these warehouses. These decision support systems are referred to as On-Line Analytical Processing (OLAP) systems. OLAP systems allow knowledge workers to intuitively, quickly, and flexibly manipulate operational data using familiar business terms, in order to provide analytical insight into a particular problem or line of inquiry. For example, by using an OLAP system, decision makers can “slice and dice” information along a customer (or business) dimension, and view business metrics by product and through time. Reports can be defined from multiple perspectives that provide a high-level or detailed view of the performance of any aspect of the business. Decision makers can navigate throughout their database by drilling down on a report to view elements at finer levels of detail, or by pivoting to view reports from different perspectives. To enable such full-functioned business analyses, OLAP systems need to (1) support sophisticated analyses, (2) scale to large numbers of dimensions, and (3) support analyses against large atomic data sets. These three key requirements are discussed further below. Decision makers use key performance metrics to evaluate the operations within their domain, and OLAP systems need to be capable of delivering these metrics in a user-customizable format. These metrics may be obtained from the transactional databases precalculated and stored in the database, or generated on demand during the query process. Commonly used metrics include:
- (1) Multidimensional Ratios (e.g. Percent to Total)
- “Show me the contribution to weekly sales and category profit made by all items sold in the Northwest stores between July 1 and July 14.”
- (2) Comparisons (e.g. Actual vs. Plan, this Period vs. Last Period)
- “Show me the sales to plan percentage variation for this year and compare it to that of the previous year to identify planning discrepancies.”
- (3) Ranking and Statistical Profiles (e.g. Top N/Bottom N, 70/30, Quartiles) “Show me sales, profit and average call volume per day for my 20 most profitable salespeople, who are in the top 30% of the worldwide sales.”
- (4) Custom Consolidations
- “Show me an abbreviated income statement by quarter for the last two quarters for my Western Region operations.”
- Knowledge workers analyze data from a number of different business perspectives or dimensions. As used hereinafter, a dimension is any element or hierarchical combination of elements in a data model that can be displayed orthogonally with respect to other combinations of elements in the data model. For example, if a report lists sales by week, promotion, store, and department, then the report would be a slice of data taken from a four-dimensional data model.
- Target marketing and market segmentation applications involve extracting highly qualified result sets from large volumes of data. For example, a direct marketing organization might want to generate a targeted mailing list based on dozens of characteristics, including purchase frequency, size of the last purchase, past buying trends, customer location, age of customer, and gender of customer. These applications rapidly increase the dimensionality requirements for analysis.
- The number of dimensions in OLAP systems range from a few orthogonal dimensions to hundreds of orthogonal dimensions. Orthogonal dimensions in an exemplary OLAP application might include Geography, Time, and Products.
- Atomic data refers to the lowest level of data granularity required for effective decision making. In the case of a retail merchandising manager, “atomic data” may refer to information by store, by day, and by item. For a banker, atomic data may be information by account, by transaction, and by branch. Most organizations implementing OLAP systems find themselves needing systems that can scale to tens, hundreds, and even thousands of gigabytes of atomic information.
- As OLAP systems become more pervasive and are used by the majority of the enterprise, more data over longer time frames will be included in the data store (i.e. data warehouse), and the size of the database will increase by at least an order of magnitude. Thus, OLAP systems need to be able to scale from present to near-future volumes of data.
- In general, OLAP systems need to (1) support the complex analysis requirements of decision-makers, (2) analyze the data from a number of different perspectives (i.e. business dimensions), and (3) support complex analyses against large input (atomic-level) data sets from a Data Warehouse maintained by the organization using a relational database management system (RDBMS).
- Vendors of OLAP systems classify OLAP Systems as either Relational OLAP (ROLAP) or Multidimensional OLAP (MOLAP) based on the underlying architecture thereof. Thus, there are two basic architectures for On-Line Analytical Processing systems: The ROLAP Architecture, and the MOLAP architecture.
- Overview of the Relational OLAP (ROLAP) System Architecture
- The Relational OLAP (ROLAP) system accesses data stored in a Data Warehouse to provide OLAP analyses. The premise of ROLAP is that OLAP capabilities are best provided directly against the relational database, i.e. the Data Warehouse.
- The ROLAP architecture was invented to enable direct access of data from Data Warehouses, and therefore support optimization techniques to meet batch window requirements and provide fast response times. Typically, these optimization techniques include application-level table partitioning, pre-aggregate inferencing, denormalization support, and the joining of multiple fact tables.
- As shown in
FIG. 1A , a typical prior art ROLAP system has a three-tier or layer client/server architecture. The “database layer” utilizes relational databases for data storage, access, and retrieval processes. The “application logic layer” is the ROLAP engine which executes the multidimensional reports from multiple users. The ROLAP engine integrates with a variety of “presentation layers,” through which users perform OLAP analyses. - After the data model for the data warehouse is defined, data from on-line transaction-processing (OLTP) systems is loaded into the relational database management system (RDBMS). If required by the data model, database routines are run to pre-aggregate the data within the RDBMS. Indices are then created to optimize query access times. End users submit multidimensional analyses to the ROLAP engine, which then dynamically transforms the requests into SQL execution plans. The SQL execution plans are submitted to the relational database for processing, the relational query results are cross-tabulated, and a multidimensional result data set is returned to the end user. ROLAP is a fully dynamic architecture capable of utilizing precalculated results when they are available, or dynamically generating results from atomic information when necessary.
- Overview of MOLAP System Architecture
- Multidimensional OLAP (MOLAP) systems utilize a proprietary multidimensional database (MDDB) to provide OLAP analyses. The main premise of this architecture is that data must be stored multidimensionally to be accessed and viewed multidimensionally.
- As shown in
FIG. 1B , prior art MOLAP systems have an Aggregation, Access and Retrieval module which is responsible for all data storage, access, and retrieval processes, including data aggregration (i.e. preaggregation) in the MDDB. As shown inFIG. 1B , the base data loader is fed with base data, in the most detailed level, from the Data Warehouse, into the Multi-Dimensional Data Base (MDDB). On top of the base data, layers of aggregated data are built-up by the Aggregation program, which is part of the Aggregation, Access and Retrieval module. As indicated in this figure, the application logic module is responsible for the execution of all OLAP requests/queries (e.g. ratios, ranks, forecasts, exception scanning, and slicing and dicing) of data within the MDDB. The presentation module integrates with the application logic module and provides an interface, through which the end users view and request OLAP analyses on their client machines which may be web-enabled through the infrastructure of the Internet. The client/server architecture of a MOLAP system allows multiple users to access the same multidimensional database (MDDB). - Information (i.e. basic data) from a variety of operational systems within an enterprise, comprising the Data Warehouse, is loaded into a prior art multidimensional database (MDDB) through a series of batch routines. The Express™ server by the Oracle Corporation is exemplary of a popular server which can be used to carry out the data loading process in prior art MOLAP systems. As shown in
FIG. 2B an exemplary 3-D MDDB is schematically depicted, showing geography, time and products as the “dimensions” of the database. The multidimensional data of the MDDB is organized in an array structure, as shown inFIG. 2C . Physically, the Express™ server stores data in pages (or records) of an information file. Pages contain 512, or 2048, or 4096 bytes of data, depending on the platform and release of the Express™ server. In order to look up the physical record address from the database file recorded on a disk or other mass storage device, the Express™ server generates a data structure referred to as a “Page Allocation Table (PAT)”. As shown inFIG. 2D , the PAT tells the Express™ server the physical record number that contains the page of data. Typically, the PAT is organized in pages. The simplest way to access a data element in the MDDB is by calculating the “offset” using the additions and multiplications expressed by a simple formula:
Offset=Months+Product*(# of_Months)+City*(# of_Months*# of_Products) - During an OLAP session, the response time of a multidimensional query on a prior art MDDB depends on how many cells in the MDDB have to be added “on the fly”. As the number of dimensions in the MDDB increases linearly, the number of the cells in the MDDB increases exponentially. However, it is known that the majority of multidimensional queries deal with summarized high level data. Thus, as shown in
FIGS. 3A and 3B , once the atomic data (i.e. “basic data”) has been loaded into the MDDB, the general approach is to perform a series of calculations in batch in order to aggregate (i.e. pre-aggregate) the data elements along the orthogonal dimensions of the MDDB and fill the array structures thereof. For example, revenue figures for all retail stores in a particular state (i.e. New York) would be added together to fill the state level cells in the MDDB. After the array structure in the database has been filled, integer-based indices are created and hashing algorithms are used to improve query access times. Pre-aggregation of dimension D0 is always performed along the cross-section of the MDDB along the D0 dimension. - As shown in
FIG. 2, the primarily loaded data in the MDDB is organized at its lowest dimensional hierarchy. As shown in FIGS. 3C1 and 3C3, the results of the pre-aggregations are stored in the neighboring parts of the MDDB.3C - As shown in
FIG. 2, along the TIME dimension, weeks are the aggregation results of days, months are the aggregation results of weeks, and quarters are the aggregation results of months. While not shown in the figures, along the GEOGRAPHY dimension, states are the aggregation results of cities, countries are the aggregation results of states, and continents are the aggregation results of countries. By pre-aggregating (i.e. consolidating or compiling) all logical subtotals and totals along all dimensions of the MDDB, it is possible to carry out real-time MOLAP operations using a multidimensional database (MDDB) containing both basic (i.e. atomic) and pre-aggregated data. Once this compilation process has been completed, the MDDB is ready for use. Users request OLAP reports by submitting queries through the OLAP Application interface (e.g. using web-enabled client machines), and the application logic layer responds to the submitted queries by retrieving the stored data from the MDDB for display on the client machine.3C - Typically, in MDDB systems, the aggregated data is very sparse, tending to explode as the number of dimension grows and dramatically slowing down the retrieval process (as described in the report entitled “Database Explosion: The OLAP Report”, http://www.olapreport.com/DatabaseExplosion.htm, incorporated herein by reference). Quick and on line retrieval of queried data is critical in delivering on-line response for OLAP queries. Therefore, the data structure of the MDDB, and methods of its storing, indexing and handling are dictated mainly by the need of fast retrieval of massive and sparse data.
- Different solutions for this problem are disclosed in the following US patents, each of which is incorporated herein by reference in its entirety:
- U.S. Pat. No. 5,822,751 “Efficient Multidimensional Data Aggregation Operator Implementation”
- U.S. Pat. No. 5,805,885 “Method And System For Aggregation Objects”
- U.S. Pat. No. 5,781,896 “Method And System For Efficiently Performing Database Table Aggregation Using An Aggregation Index”
- U.S. Pat. No. 5,745,764 “Method And System For Aggregation Objects”
- In all the prior art OLAP servers, the process of storing, indexing and handling MDDB utilize complex data structures to largely improve the retrieval speed, as part of the querying process, at the cost of slowing down the storing and aggregation. The query-bounded structure, that must support fast retrieval of queries in a restricting environment of high sparcity and multi-hierarchies, is not the optimal one for fast aggregation.
- In addition to the aggregation process, the Aggregation, Access and Retrieval module is responsible for all data storage, retrieval and access processes. The Logic module is responsible for the execution of OLAP queries. The Presentation module intermediates between the user and the logic module and provides an interface through which the end users view and request OLAP analyses. The client/server architecture allows multiple users to simultaneously access the multidimensional database.
- In summary, general system requirements of OLAP systems include: (1) supporting sophisticated analysis, (2) scaling to large number of dimensions, and (3) supporting analysis against large atomic data sets.
- MOLAP system architecture is capable of providing analytically sophisticated reports and analysis functionality. However, requirements (2) and (3) fundamentally limit MOLAP's capability, because to be effective and to meet end-user requirements, MOLAP databases need a high degree of aggregation.
- By contrast, the ROLAP system architecture allows the construction of systems requiring a low degree of aggregation, but such systems are significantly slower than systems based on MOLAP system architecture principles. The resulting long aggregation times of ROLAP systems impose severe limitations on its volumes and dimensional capabilities.
- The graphs plotted in
FIG. 5 clearly indicate the computational demands that are created when searching an MDDB during an OLAP session, where answers to queries are presented to the MOLAP system, and answers thereto are solicited often under real-time constraints. However, prior art MOLAP systems have limited capabilities to dynamically create data aggregations or to calculate business metrics that have not been precalculated and stored in the MDDB. - The large volumes of data and the high dimensionality of certain market segmentation applications are orders of magnitude beyond the limits of current multidimensional databases.
- ROLAP is capable of higher data volumes. However, the ROLAP architecture, despite its high volume and dimensionality superiority, suffers from several significant drawbacks as compared to MOLAP:
- Full aggregation of large data volumes are very time consuming, otherwise, partial aggregation severely degrades the query response.
- It has a slower query response
- It requires developers and end users to know SQL
- SQL is less capable of the sophisticated analytical functionality necessary for OLAP
- ROLAP provides limited application functionality
- Thus, improved techniques for data aggregation within MOLAP systems would appear to allow the number of dimensions of and the size of atomic (i.e. basic) data sets in the MDDB to be significantly increased, and thus increase the usage of the MOLAP system architecture.
- Also, improved techniques for data aggregation within ROLAP systems would appear to allow for maximized query performance on large data volumes, and reduce the time of partial aggregations that degrades query response, and thus generally benefit ROLAP system architectures.
- Thus, there is a great need in the art for an improved way of and means for aggregating data elements within a multi-dimensional database (MDDB), while avoiding the shortcomings and drawbacks of prior art systems and methodologies.
- Accordingly, it is a further object of the present invention to provide an improved method of and system for managing data elements within a multidimensional database (MDDB) using a novel stand-alone (i.e. external) data aggregation server, achieving a significant increase in system performance (e.g. deceased access/search time) using a stand-alone scalable data aggregation server.
- Another object of the present invention is to provide such system, wherein the stand-alone aggregation server includes an aggregation engine that is integrated with an MDDB, to provide a cartridge-style plug-in accelerator which can communicate with virtually any conventional OLAP server.
- Another object of the present invention is to provide such a stand-alone data aggregration server whose computational tasks are restricted to data aggregation, leaving all other OLAP functions to the MOLAP server and therefore complementing OLAP server's functionality.
- Another object of the present invention is to provide such a system, wherein the stand-alone aggregation server carries out an improved method of data aggregation within the MDDB which enables the dimensions of the MDDB to be scaled up to large numbers and large atomic (i.e. base) data sets to be handled within the MDDB.
- Another object of the present invention is to provide such a stand-alone aggregration server, wherein the aggregation engine supports high-performance aggregation (i.e. data roll-up) processes to maximize query performance of large data volumes, and to reduce the time of partial aggregations that degrades the query response.
- Another object of the present invention is to provide such a stand-alone, external scalable aggregation server, wherein its integrated data aggregation (i.e. roll-up) engine speeds up the aggregation process by orders of magnitude, enabling larger database analysis by lowering the aggregation times.
- Another object of the present invention is to provide such a novel stand-alone scalable aggregation server for use in OLAP operations, wherein the scalability of the aggregation server enables (i) the speed of the aggregation process carried out therewithin to be substantially increased by distributing the computationally intensive tasks associated with data aggregation among multiple processors, and (ii) the large data sets contained within the MDDB of the aggregation server to be subdivided among multiple processors thus allowing the size of atomic (i.e. basic) data sets within the MDDB to be substantially increased.
- Another object of the present invention is to provide such a novel stand-alone scalable aggregation server, which provides for uniform load balancing among processors for high efficiency and best performance, and linear scalability for extending the limits by adding processors.
- Another object of the present invention is to provide a stand-alone, external scalable aggregation server, which is suitable for MOLAP as well as for ROLAP system architectures.
- Another object of the present invention is to provide a novel stand-alone scalable aggregation server, wherein an MDDB and aggregation engine are integrated and the aggregation engine carries out a high-performance aggregation algorithm and novel storing and searching methods within the MDDB.
- Another object of the present invention is to provide a novel stand-alone scalable aggregation server which can be supported on single-processor (i.e. sequential or serial) computing platforms, as well as on multi-processor (i.e. parallel) computing platforms.
- Another object of the present invention is to provide a novel stand-alone scalable aggregation server which can be used as a complementary aggregation plug-in to existing MOLAP and ROLAP databases.
- Another object of the present invention is to provide a novel stand-alone scalable aggregation server which carries out an novel rollup (i.e. down-up) and spread down (i.e. top-down) aggregation algorithms.
- Another object of the present invention is to provide a novel stand-alone scalable aggregation server which includes an integrated MDDB and aggregation engine which carries out full pre-aggregation and/or “on-the-fly” aggregation processes within the MDDB.
- Another object of the present invention is to provide such a novel stand-alone scalable aggregation server which is capable of supporting MDDB having a multi-hierarchy dimensionality.
- Another object of the present invention is to provide a novel method of aggregating multidimensional data of atomic data sets originating from a RDBMS Data Warehouse.
- Another object of the present invention is to provide a novel method of aggregating multidimensional data of atomic data sets originating from other sources, such as external ASCII files, MOLAP server, or other end user applications.
- Another object of the present invention is to provide a novel stand-alone scalable data aggregation server which can communicate with any MOLAP server via standard ODBC, OLE DB or DLL interface, in a completely transparent manner with respect to the (client) user, without any time delays in queries, equivalent to storage in MOLAP server's cache.
- Another object of the present invention is to provide a novel “cartridge-style” (stand-alone) scalable data aggregation engine which dramatically expands the boundaries of MOLAP into large-scale applications including Banking, Insurance, Retail and Promotion Analysis.
- Another object of the present invention is to provide a novel “cartridge-style” (stand-alone) scalable data aggregation engine which dramatically expands the boundaries of high-volatility type ROLAP applications such as, for example, the precalculation of data to maximize query performance.
- Another object of the present invention is to provide a generic plug-in cartridge-type data aggregation component, suitable for all MOLAP systems of different vendors, dramatically reducing their aggregation burdens.
- Another object of the present invention is to provide a novel high performance cartridge-type data aggregration server which, having standardized interfaces, can be plugged-into the OLAP system of virtually any user or vendor.
- Another object of the present invention is to provide a novel “cartridge-style” (stand-alone) scalable data aggregation engine which has the capacity to convert long batch-type data aggregations into interactive sessions.
- These and other object of the present invention will become apparent hereinafter and in the Claims to Invention set forth herein.
- In order to more fully appreciate the objects of the present invention, the following Detailed Description of the Illustrative Embodiments should be read in conjunction with the accompanying Drawings, wherein:
-
FIG. 1A is a schematic representation of an exemplary prior art relations on-line analytical processing (ROLAP) system comprising a three-tier or layer client/server architecture, wherein the first tier has a database layer utilizing relational databases (RDBMS) for data storage, access, and retrieval processes, the second tier has an application logic layer (i.e. the ROLAP engine) for executing the multidimensional reports from multiple users, and the third tier integrates the ROLAP engine with a variety of presentation layers, through which users perform OLAP analyses; -
FIG. 1B is a schematic representation of a generalized embodiment of a prior art multidimensional on-line analytical processing (MOLAP) system comprising a base data loader for receiving atomic (i.e. base) data from a Data Warehouse realized by a RDBMS, an OLAP multidimensional database (MDDB), an aggregation, access and retrieval module, application logic module and presentation module associated with a conventional OLAP sever (e.g. Oracle's Express Server) for supporting on-line transactional processing (OLTP) operations on the MDDB, to service database queries and requests from a plurality of OLAP client machines typically accessing the system from an information network (e.g. the Internet); -
FIG. 2A is a schematic representation of the Data Warehouse shown in the prior art system ofFIG. 1B comprising numerous data tables (e.g. T1, T2, . . . Tn) and data field links, and the OLAP multidimensional database shown ofFIG. 1B , comprising a conventional page allocation table (PAT) with pointers pointing to the physical storage of variables in an information storage device; -
FIG. 2B is a schematic representation of an exemplary three-dimensional MDDB and organized as a 3-dimensional Cartesian cube and used in the prior art system ofFIG. 2A , wherein the first dimension of the MDDB is representative of geography (e.g. cities, states, countries, continents), the second dimension of the MDDB is representative of time (e.g. days, weeks, months, years), the third dimension of the MDDB is representative of products (e.g. all products, by manufacturer), and the basic data element is a set of variables which are addressed by 3-dimensional coordinate values; -
FIG. 2C is a schematic representation of a prior art array structure associated with an exemplary three-dimensional MDDB, arranged according to a dimensional hierarchy; -
FIG. 2D is a schematic representation of a prior art page allocation table for an exemplary three-dimensional MDDB, arranged according to pages of data element addresses; -
FIG. 3A is a schematic representation of a prior art MOLAP system, illustrating the process of periodically storing raw data in the RDBMS Data Warehouse thereof, serially loading of basic data from the Data Warehouse to the MDDB, and the process of serially pre-aggregating (or pre-compiling) the data in the MDDB along the entire dimensional hierarchy thereof; -
FIG. 3B is a schematic representation illustrating that the Cartesian addresses listed in a prior art page allocation table (PAT) point to where physical storage of data elements (i.e. variables) occurs in the information recording media (e.g. storage volumes) associated with the MDDB, during the loading of basic data into the MDDB as well as during data preaggregation processes carried out therewithin; -
FIG. 1 is a schematic representation of an exemplary three-dimensional database used in a conventional MOLAP system of the prior art, showing that each data element contained therein is physically stored at a location in the recording media of the system which is specified by the dimensions (and subdimensions within the dimensional hierarchy) of the data variables which are assigned integer-based coordinates in the MDDB, and also that data elements associated with the basic data loaded into the MDDB are assigned lower integer coordinates in MDDB Space than pre-aggregated data elements contained therewithin;3C -
FIG. 2 is a schematic representation illustrating that a conventional hierarchy of the dimension of “time” typically contains the subdimensions “days, weeks, months, quarters, etc.” of the prior art;3C -
FIG. 3 is a schematic representation showing how data elements having higher subdimensions of time in the MDDB of the prior art are typically assigned increased integer addresses along the time dimension thereof;3C -
FIG. 4 is a schematic representation illustrating that, for very large prior art MDDBs, very large page allocation tables (PATs) are required to represent the address locations of the data elements contained therein, and thus there is a need to employ address data paging techniques between the DRAM (e.g. program memory) and mass storage devices (e.g. recording discs or RAIDs) available on the serial computing platform used to implement such prior art MOLAP systems; -
FIG. 5 is a graphical representation showing how search time in a conventional (i.e. prior art) MDDB increases in proportion to the amount of preaggregation of data therewithin; -
FIG. 6A is a schematic representation of a generalized embodiment of a multidimensional on-line analytical processing (MOLAP) system of the present invention comprising a Data Warehouse realized as a relational database, a stand-alone Aggregration Server of the present invention having an integrated aggregation engine and MDDB, and an OLAP server supporting a plurality of OLAP clients, wherein the stand-alone Aggregation Server performs aggregation functions (e.g. summation of numbers, as well as other mathematical operations, such as multiplication, subtraction, division etc.) and multi-dimensional data storage functions; -
FIG. 6B is a schematic block diagram of the stand-alone Aggregation Server of the illustrative embodiment shown inFIG. 6A , showing its primary components, namely, a base data interface (e.g. OLDB, OLE-DB, ODBC, SQL, API, JDBC, etc.) for receiving RDBMS flat files lists and other files from the Data Warehouse (RDBMS), a base data loader for receiving base data from the base data interface, configuration manager for managing the operation of the base data interface and base data loader, an aggregation engine for receiving base data from the base loader, a multi-dimensional database (MDDB), a MDDB handler for handling the movement of base data and aggregation data between the aggregation engine and the MDDB, an input analyzer, an aggregation client interface (e.g. OLDB, OLE-DB, ODBC, SQL, API, JDBC, etc.) for receiving requests from clients (such as an OLAP Server, spreadsheet application, end-user application) and receiving data files from the input analyzer for transfer to requesting clients, and a configuration manager for managing the operation of the input analyzer and the aggregation client interface; -
FIG. 6C is a schematic representation of the software modules comprising the aggregation engine and MDDB handler of the stand-alone Aggregation Server of the illustrative embodiment of the present invention, showing a base data list structure being supplied to a hierarchy analysis and reorder module, the output thereof being transferred to an aggregation management module, the output thereof being transferred to a storage module via a storage management module, and a Query Directed Roll-up (QDR) aggregation management module being provided for receiving database (DB) requests from OLAP client machines and managing the operation of the aggregation and storage management modules of the present invention; -
FIG. 6D is a flow chart representation of the primary operations carried out by the (DB) request serving mechanism within the QDR aggregation management module shown inFIG. 6C ; -
FIG. 6E is a schematic representation of a generalized embodiment of a multidimensional on-line analytical processing (MOLAP) system of the present invention comprising a Data Warehouse realized as a relational database, a stand-alone Aggregration Server of the present invention, having an integrated aggregation engine and MDDB, that is capable of being plugged into (i.e., interfaced to) OLAP servers (two shown) of different users or vendors each supporting a plurality of OLAP clients; the stand-alone Aggregation Server performs aggregation functions (e.g. summation of numbers, as well as other mathematical operations, such as multiplication, subtraction, division etc.) and multi-dimensional data storage functions for such OLAP Server(s); -
FIG. 7A is a schematic representation of a separate-platform type implementation of the stand-alone Aggregation Server of the illustrative embodiment ofFIG. 6B and a conventional OLAP server supporting a plurality of client machines, wherein base data from a Data Warehouse is shown being received by the aggregation server, realized on a first hardware/software platform (i.e. Platform A) and the stand-alone Aggregation Server is shown serving the conventional OLAP server, realized on a second hardware/software platform (i.e. Platform B), as well as serving data aggregation requirements of other clients supporting diverse applications such as spreadsheet, GUI front end, and applications; -
FIG. 7B is a schematic representation of a shared-platform type implementation of the stand-alone Aggregation Server of the illustrative embodiment ofFIG. 6B and a conventional OLAP server supporting a plurality of client machines, wherein base data from a Data Warehouse is shown being received by the stand-alone Aggregation Server, realized on a common hardware/software platform and the aggregation server is shown serving the conventional OLAP server, realized on the same common hardware/software platform, as well as serving data aggregation requirements of other clients supporting diverse applications such as spreadsheet, GUI front end, and applications; -
FIG. 8A is a data table setting forth information representative of performance benchmarks obtained by the shared-platform type implementation of the stand-alone Aggregation Server of the illustrative embodiment serving the conventional OLAP server (i.e. Oracle EXPRESS Server) shown inFIG. 7B , wherein the common hardware/software platform is realized using a Pentium II 450 Mhz, 1 GB RAM, 18 GB Disk, running the Microsoft NT operating system (OS); -
FIG. 9A is a schematic representation of the first stage in the method of segmented aggregation according to the principles of the present invention, showing initial aggregration along the 1 st dimension; -
FIG. 9B is a schematic representation of the next stage in the method of segmented aggregation according to the principles of the present invention, showing that any segment alongdimension 1, such as the shown slice, can be separately aggregated along the remaining dimensions, 2 and 3, and that in general, for an N dimensional system, the second stage involves aggregation in N−1 dimensions. The principle of segmentation can be applied on the first stage as well, however, only a large enough data will justify such a sliced procedure in the first dimension. Actually, it is possible to consider each segment as an N−1 cube, enabling recursive computation. -
FIG. 1 is a schematic representation of the Query Directed Roll-up (QDR) aggregation method/procedure of the present invention, showing data aggregation starting from existing basic data or previously aggregated data in the first dimension (D1), and such aggregated data being utilized as a basis for QDR aggregation along the second dimension (D2);9C -
FIG. 2 is a schematic representation of the Query Directed Roll-up (QDR) aggregation method/procedure of the present invention, showing initial data aggregation starting from existing previously aggregated data in the second third (D3), and continuing along the third dimension (D3), and thereafter continuing aggregation along the second dimension (D2);9C -
FIG. 10A is a schematic representation of the “slice-storage” method of storing sparse data in the disk storage devices of the MDDB ofFIG. 6B in accordance with the principles of the present invention, based on an ascending-ordered index along aggregation direction, enabling fast retrieval of data; -
FIG. 10B is a schematic representation of the data organization of data files and the directory file used in the storages of the MDDB ofFIG. 6B , and the method of searching for a queried data point therein using a simple binary search technique due to the data files ascending order; -
FIG. 11A is a schematic representation of three exemplary multi-hierarchical data structures for storage of data within the MDDB ofFIG. 6B , having three levels of hierarchy, wherein the first level representative of base data is composed of items A, B, F, and G, the second level is composed of items C, E, H and I, and the third level is composed of a single item D, which is common to all three hierarchical structures; -
FIG. 11B is a schematic representation of an optimized multi-hierarchical data structure merged from all three hierarchies ofFIG. 11A , in accordance with the principles of the present invention; -
FIG. 12 is a schematic representation showing the levels of operations performed by the stand-alone Aggregation Server ofFIG. 6B , summarizing the different enabling components for carrying out the method of segmented aggregation in accordance with the principles of the present invention; and -
FIG. 13 is a schematic representation of the stand-alone Aggregation Server of the present invention shown as a component of a central data warehouse, serving the data aggregation needs of URL directory systems, Data Marts, RDBMSs, ROLAP systems and OLAP systems alike. - Referring now to
FIGS. 6A through 13 , the preferred embodiments of the method and system of the present invention will be now described in great detail hereinbelow, wherein like elements in the Drawings shall be indicated by like reference numerals. - Through this invention disclosure, the term “aggregation” and “preaggregation” shall be understood to mean the process of summation of numbers, as well as other mathematical operations, such as multiplication, subtraction, division etc.
- In general, the stand-alone aggregation server and methods of and apparatus for data aggregation of the present invention can be employed in a wide range of applications, including MOLAP systems, ROLAP systems, Internet URL-directory systems, personalized on-line e-commerce shopping systems, Internet-based systems requiring real-time control of packet routing and/or switching, and the like.
- For purposes of illustration, initial focus will be accorded to improvements in MOLAP systems, in which knowledge workers are enabled to intuitively, quickly, and flexibly manipulate operational data within a MDDB using familiar business terms in order to provide analytical insight into a business domain of interest.
-
FIG. 6A illustrates a generalized embodiment of a multidimensional on-line analytical processing (MOLAP) system of the present invention comprising: aData Warehouse 601 realized as a relational database; a stand-alone cartridge-style Aggregation Server 603 of the present invention having an integrated aggregation engine and a MDDB; and anOLAP server 605 communicating with theAggregation Server 603, and supporting a plurality of OLAP clients. In accordance with the principles of the present invention, the stand-alone Aggregation Server 603 performs aggregation functions (e.g. summation of numbers, as well as other mathematical operations, such as multiplication, subtraction, division etc.) and multi-dimensional data storage functions. Departing from conventional practices, the principles of the present invention teaches moving the aggregation engine and the MDDB into aseparate Aggregation Server 603 having standardized interfaces so that it can be plugged-into the OLAP system of virtually any user or vendor. This feature is illustrated inFIG. 6E wherein theAggregation Server 603 can be plugged into (e.g., interfaced to) OLAP Servers (two shown as 605′ and 605″) of different users or vendors. As shown, theAggregation Server 603 is operably plugged into (e.g., interfaced to)OLAP Server 605′ of one user or vendor, yet it is also capable of being operably plugged intoOLAP server 605″ of another user or vendor, as indicated by the dotted lines. This dramatic move discontinues the restricting dependency of aggregation from the analytical functions of OLAP, and by applying novel and independent algorithms. The stand-alone data aggregation server enables efficient organization and handling of data, fast aggregation processing, and fast access to and retrieval of any data element in the MDDB. - a, fast aggregation processing, and fast access to and retrieval of any data element in the MDDB.
- As will be described in greater detail hereinafter, the
Aggregation Server 603 of the present invention can serve the data aggregation requirements of other types of systems besides OLAP systems such as, for example, URL directory management Data Marts, RDBMS, or ROLAP. - The
Aggregation Server 603 of the present invention excels in performing two distinct functions, namely: the aggregation of data in the MDDB; and the handling of the resulting data base in the MDDB, for “on demand” client use. In the case of serving an OLAP system, theAggregation Server 603 of the present invention focuses on performing these two functions in a high performance manner (i.e. aggregating and storing base data, originated at the Data Warehouse, in a multidimensional storage (MDDB), and providing the results of this data aggregation process ion demand to the clients, such as theOLAP server 605, spreadsheet applications, the end user applications. As such, theAggregation Server 603 of the present invention frees eachconventional OLAP server 605, with which it interfaces, from the need of making data aggregations, and therefore allows theconventional OLAP server 605 to concentrate on the primary functions of OLAP servers, namely: data analysis and supporting a graphical interface with the user client. -
FIG. 6B shows the primary components of the stand-alone Aggregation Server 603 of the illustrative embodiment, namely: a base data interface 611 (e.g. OLDB, OLE-DB, ODBC, SQL, API, JDBC, etc.) for receiving RDBMS flat files lists and other files from the Data Warehouse (RDBMS), abase data loader 612 for receiving base data from thebase data interface 611,configuration manager 613 for managing the operation of thebase data interface 611 andbase data loader 612, anaggregation engine 621 for receiving base data from thebase loader 612, a multi-dimensional database (MDDB) 625; aMDDB handler 623, aninput analyzer 627, an aggregation client interface 629 (e.g. OLDB, OLE-DB, ODBC, SQL, API, JDBC, etc.) and aconfiguration manager 631 for managing the operation of theinput analyzer 627 and theaggregation client interface 629. - During operation, the base data originates at data warehouse or other sources, such as external ASCII files, MOLAP server, or others. The
Configuration Manager 613, in order to enable proper communication with all possible sources and data structures, configures two blocks, theBase Data Interface 611 andData Loader 612. Their configuration is matched with different standards such as OLDB, OLE-DB, ODBC, SQL, API, JDBC, etc. - As shown in
FIG. 6B , the core of thedata Aggregation Server 603 of the present invention comprises: adata Aggregation Engine 621; aMDDB Handler 623; and a Multidimensional Database (MDDB) 625. The results of data aggregation are efficiently stored in a multidimensional structure within the Multidimensional Database (MDDB) 625, by theMDDB Handler 623. - As shown in
FIGS. 6A and 6B , the stand-alone Aggregation Server 603 of the present invention serves theOLAP Server 605 via standard interfaces, such as OLDB, OLE-DB, ODBC, SQL, API, JDBC, etc. Aggregation results required by theOLAP Server 605 are supplied on demand. Typically, theOLAP Server 605 disintegrates the query, via parsing process, into series of requests. Each such request, specifying a n-dimensional coordinate, is presented to theAggregation Server 603 for the coordinate's value. TheConfiguration Manager 631 sets theAggregation Client Interface 629 andInput Analyzer 627 for a proper communication protocol according to the client user (e.g, OLAP Server 605). TheInput Analyzer 627 converts the input format to make it suitable for theMDDB Handler 623. - An object of the present invention is to make the transfer of data completely transparent to the OLAP user, in a manner which is equivalent to the storing of data in the cache of the
OLAP server 605 and without any query delays. This requires that the stand-alone Aggregation Server 603 have exceptionally fast response characteristics. This object is enabled by providing the unique data structure and aggregation mechanism of the present invention. -
FIG. 6C shows the software modules comprising the aggregation engine andMDDB handler components 615 of the stand-alone Aggregation Server 603 of the illustrative embodiment. The base data list, as it arrives from RDBMS or text files, has to be analyzed and reordered to optimize hierarchy handling, according to the unique method of the present invention, as described later with reference toFIGS. 11A and 11B . - The function of the aggregation management module is to administrate the aggregation process according to the method illustrated in
FIGS. 9A and 9B . - In accordance with the principles of the present invention, data aggregation within the stand-
alone Aggregation Server 603 can be carried out either as a complete pre-aggregation process, where the base data is fully aggregated before commencing querying, or as a query directed roll-up (QDR) process, where querying is allowed at any stage of aggregation using the “on-the-fly” data aggregation process of the present invention. The QDR process will be described hereinafter in greater detail with reference toFIG. 9C . The response to a request (i.e. a basic component of a client query), by calling the Aggregation management module for “on-the-fly” data aggregation, or for accessing pre-aggregated result data via the MDDB Handler module. The query/request serving mechanism of the present invention within the QDR aggregation management module is illustrated in the flow chart ofFIG. 6D . - The function of the MDDB Handler (i.e., “management”) module is to handle multidimensional data in the
MDDB 625 in a very efficient way, according to the novel method of the present invention, which will be described in detail hereinafter with reference toFIGS. 10A and 10B . - The request serving mechanism shown in
FIG. 6D is controlled by the QDR aggregation management module. Requests are queued and served one by one. If the required data is already pre-calculated, then it is retrieved by the MDDB Handler module and returned to the client (e.g., OLAP Server 605). Otherwise, the required data is calculated “on-the-fly” by the aggregation management module, and the result moved out to the client (e.g., OLAP Server 605), while simultaneously stored by the MDDB Handler module, shown inFIG. 6C . -
FIGS. 7A and 7B outline two different implementations of the stand-alone (cartridge-style)Aggregation Server 603 of the present invention. In both implementations, theAggregation Server 603 supplies aggregated MDDB results to a client (e.g., OLAP Server 605). -
FIG. 7A shows a separate-platform implementation of the MOLAP system of the illustrative embodiment shown inFIG. 6A , wherein theAggregation Server 603 of the present invention resides on a separate hardware platform and OS system from that used to run theOLAP server 605. In this type of implementation, it is even possible to run theAggregation Server 603 and theOLAP Server 605 on different-type operating systems (e.g. NT, Unix, MAC OS). -
FIG. 7B shows a common-platform implementation of the MOLAP system of the illustrative embodiment shown inFIG. 6B , wherein theAggregation Server 603 of the present invention shares the same hardware platform and operating system (OS) that used to run theclient OLAP Server 605. -
FIG. 8A shows a table setting forth the benchmark results of an aggregation engine, implemented on a shared/common hardware platform and OS, in accordance with the principles of the present invention. The common platform and OS is realized using a Pentium II 450 Mhz, 1 GB RAM, 18 GB Disk, running the Microsoft NT operating system. The six (6) data sets shown in the table differ in number of dimensions, number of hierarchies, measure of sparcity and data size. A comparison with ORACLE Express, a major OLAP server, is made. It is evident that the aggregation engine of the present invention outperforms currently leading aggregation technology by more than an order of magnitude.□ - The segmented data aggregation method of the present invention is described in FIGS. 9A through 9C2. These figures outline a simplified setting of three dimensions only; however, the following analysis applies to any number of dimensions as well.
- The data is being divided into autonomic segments to minimize the amount of simultaneously handled data. The initial aggregation is practiced on a single dimension only, while later on the aggregation process involves all other dimensions.
- At the first stage of the aggregation method, an aggregation is performed along
dimension 1. The first stage can be performed on more than one dimension. As shown inFIG. 9A , the space of the base data is expanded by the aggregation process. - In the next stage shown in
FIG. 9B , any segment alongdimension 1, such as the shown slice, can be separately aggregated along the remaining dimensions, 2 and 3. In general, for an N dimensional system, the second stage involves aggregation in N−1 dimensions. - The principle of data segmentation can be applied on the first stage as well. However, only a large enough data set will justify such a sliced procedure in the first dimension. Actually, it is possible to consider each segment as an N−1 cube, enabling recursive computation.
- It is imperative to get aggregation results of a specific slice before the entire aggregation is completed, or alternatively, to have the roll-up done in a particular sequence. This novel feature of the aggregation method of the present invention is that it allows the querying to begin, even before the regular aggregation process is accomplished, and still having fast response. Moreover, in relational OLAP and other systems requiring only partial aggregations, the QDR process dramatically speeds up the query response.
- The QDR process is made feasible by the slice-oriented roll-up method of the present invention. □ After aggregating the first dimension(s), the multidimensional space is composed of independent multidimensional cubes (slices). These cubes can be processed in any arbitrary sequence.
- Consequently the aggregation process of the present invention can be monitored by means of files, shared memory sockets, or queues to statically or dynamically set the roll-up order.
- In order to satisfy a single query coming from a client, before the required aggregation result has been prepared, the QDR process of the present invention involves performing a fast on-the-fly aggregation (roll-up) involving only a thin slice of the multidimensional data.
-
FIG. 1 shows a slice required for building-up a roll-up result of the 2nd dimension. In9C case 1, as shown, the aggregation starts from an existing data, either basic or previously aggregated in the first dimension. This data is utilized as a basis for QDR aggregation along the second dimension. Incase 2, due to lack of previous data, a QDR involves an initial slice aggregation alongdimension 3, and thereafter aggregation along the 2nd dimension. -
FIG. 2 shows two corresponding QDR cases for gaining results in the 3d dimension.9C Cases -
FIG. 10A illustrates the “Slice-Storage” method of storing sparse data on storage disks. In general, this data storage method is based on the principle that an ascending-ordered index along aggregation direction, enables fast retrieval of data.FIG. 10A illustrates a unit-wide slice of the multidimensional cube of data. Since the data is sparse, only few non-NA data points exist. These points are indexed as follows. The Data File consists of data records, in which each n−1 dimensional slice is being stored, in a separate record. These records have a varying length, according to the amount of non-NA stored points. For each registered point in the record, INDk stands for an index in a n-dimensional cube, and Data stands for the value of a given point in the cube. -
FIG. 10B illustrates a novel method for randomly searching for a queried data point in the MDDB ofFIG. 6B by using a novel technique of organizing data files and the directory file used in the storages of the MDDB, so that a simple binary search technique can then be employed within the Aggregation Server of the present invention. According to this method, a metafile termed DIR File, keeps pointers to Data Files as well as additional parameters such as the start and end addresses of data record (IND0, INDn), its location within the Data File, record size (n), file's physical address on disk (D_Path), and auxiliary information on the record (Flags). - A search for a queried data point is then performed by an access to the DIR file. The search along the file can be made using a simple binary search due to file's ascending order. When the record is found, it is then loaded into main memory to search for the required point, characterized by its index INDk. The attached Data field represents the queried value. In case the exact index is not found, it means that the point is a NA.
-
FIGS. 11A and 11B illustrate a novel method for pre-processing data such that multi-hierarchies in multi-hierarchical structures are optimally merged. - In particular,
FIG. 11A illustrates a novel method which the stand-alone Aggregation Server employs for handling hierarchies. According to the devised method, the inner order of hierarchies within a dimension is optimized, to achieve efficient data handling for summations and other mathematical formulas (termed in general “Aggregation”). The order of hierarchy is defined externally. It is brought from a data source to the stand-alone aggregation engine, as a descriptor of data, before the data itself. In the illustrative embodiment, the method assumes hierarchical relations of the data, as shown inFIG. 11A . The way data items are ordered in the memory space of the Aggregation Server, with regard to the hierarchy, has a significant impact on its data handling efficiency. - Notably, when using prior art techniques, multiple handling of data elements, which occurs when a data element is accessed more than once during aggregation process, has been hitherto unavoidable when the main concern is to effectively handle the sparse data. The data structures used in prior art data handling methods have been designed for fast access to a non NA data. According to prior art techniques, each access is associated with a timely search and retrieval in the data structure. For the massive amount of data typically accessed from a Data Warehouse in an OLAP application, such multiple handling of data elements has significantly degraded the efficiency of prior art data aggregation processes. When using prior art data handling techniques, the data element D shown in
FIG. 11A must be accessed three times, causing poor aggregation performance. - In accordance with the data handling method of the present, the data is being pre-ordered for a singular handling, as opposed to multiple handling taught by prior art methods. According to the present invention, elements of base data and their aggregated results are contiguously stored in a way that each element will be accessed only once. This particular order allows a forward-only handling, never backward. Once a base data element is stored, or aggregated result is generated and stored, it is never to be retrieved again for further aggregation. As a result the storage access is minimized. This way of singular handling greatly elevates the aggregation efficiency of large data bases. An efficient handling method as used in the present invention, is shown in
FIG. 7A . The data element D, as any other element, is accessed and handled only once. -
FIG. 11A shows an example of a multi-hierarchical database structure having 3 hierarchies. As shown, the base data includes the items A, B, F, and G. The second level is composed of items C, E, H and I. The third level has a single item D, which is common to all three hierarchical structures. In accordance with the method of the present invention, a minimal computing path is always taken. For example, according to the method of the present invention, item D will be calculated as part ofstructure 1, requiring two mathematical operations only, rather than as instructure 3, which would need four mathematical operations.FIG. 11B depicts an optimized structure merged from all three hierarchies. -
FIG. 12 summarizes the different enabling components for segmented aggregation. The minimized operations in handling multi-hierarchies need analysis of the base data. It greatly optimizes data handling and contribute to aggregation speed. Based on this technology loading and indexing operations become very efficient, minimizing memory and storage access, and speeding up storing and retrieval operations. On top of all the enabling technologies is the segmented aggregation technique, not just outperforming by orders of magnitude the prior-art aggregation algorithms, but also enabling the unique QDR which waves out the need of waiting for full pre-aggregation. -
FIG. 13 shows the stand-alone Aggregation Server of the present invention as a component of a central data warehouse, serving the data aggregation needs of URL directory systems, Data Marts, RDBMSs, ROLAP systems and OLAP systems alike. - The reason for the central multidimensional database's rise to corporate necessity is that it facilitates flexible, high-performance access and analysis of large volumes of complex and interrelated data.
- A stand-alone specialized aggregation server, simultaneously serving many different kinds of clients (e.g. data mart, OLAP, URL, RDBMS), has the power of delivering an enterprise-wide aggregation in a cost-effective way. This kind of server eliminates the roll-up redundancy over the group of clients, delivering scalability and flexibility.
- Performance associated with central data warehouse is an important consideration in the overall approach. Performance includes aggregation times and query response.
- Effective interactive query applications require near real-time performance, measured in seconds. These application performances translate directly into the aggregation requirements.
- In the prior art, in case of MOLAP, a full pre-aggregation must be done before starting querying. In the present invention, in contrast to prior art, the query directed roll-up (QDR) allows instant querying, while the full pre-aggregation is done in the background. In cases a full pre-aggregation is preferred, the currently invented aggregation outperforms any prior art. For the ROLAP and RDBMS clients, partial aggregations maximize query performance. In both cases fast aggregation process is imperative. The aggregation performance of the current invention is by orders of magnitude higher than that of the prior art.
- The stand-alone scalable aggregation server of the present invention can be used in any MOLAP system environment for answering questions about corporate performance in a particular market, economic trends, consumer behaviors, weather conditions, population trends, or the state of any physical, social, biological or other system or phenomenon on which different types or categories of information, organizable in accordance with a predetermined dimensional hierarchy, are collected and stored within a RDBMS of one sort or another. Regardless of the particular application selected, the address data mapping processes of the present invention will provide a quick and efficient way of managing a MDDB and also enabling decision support capabilities utilizing the same in diverse application environments.
- Functional Advantages Gained by the Data Aggregation Server of the Present Invention
- The stand-alone “cartridge-style” plug-in features of the data aggregation server of the present invention, provides freedom in designing an optimized multidimensional data structure and handling method for aggregation, provides freedom in designing a generic aggregation server matching all OLAP vendors, and enables enterprise-wide centralized aggregation.
- The method of Segmented Aggregation employed in the aggregation server of the present invention provides flexibility, scalability, a condition for Query Directed Aggregation, and speed improvement.
- The method of Multidimensional data organization and indexing employed in the aggregation server of the present invention provides fast storage and retrieval, a condition for Segmented Aggregation, improves the storing, handling, and retrieval of data in a fast manner, and contributes to structural flexibility to allow sliced aggregation and QDR. It also enables the forwarding and single handling of data with improvements in speed performance.
- The method of Query Directed Aggregation (QDR) employed in the aggregation server of the present invention minimizes the data handling operations in multi-hierarchy data structures.
- The method of Query Directed Aggregation (QDR) employed in the aggregation server of the present invention eliminates the need to wait for full aggregation to be completed, and provides build-up aggregated data required for full aggregation.
- It is understood that the System and Method of the illustrative embodiments described hereinabove may be modified in a variety of ways which will become readily apparent to those skilled in the art of having the benefit of the novel teachings disclosed herein. All such modifications and variations of the illustrative embodiments thereof shall be deemed to be within the scope and spirit of the present invention as defined by the Claims to Invention appended hereto.
Claims (11)
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/818,944 US20080059415A1 (en) | 1999-08-04 | 2007-08-03 | Data aggregation module supporting dynamic query responsive aggregation during the servicing of database query requests provided by one or more client machines |
US12/657,143 US8041670B2 (en) | 1999-08-04 | 2010-01-14 | Data aggregation module supporting dynamic query responsive aggregation during the servicing of database query requests provided by one or more client machines |
US13/275,242 US8788453B2 (en) | 1999-08-04 | 2011-10-17 | Data aggregation module supporting dynamic query responsive aggregation during the servicing of database query requests provided by one or more client machines |
US13/289,954 US8799209B2 (en) | 1999-08-04 | 2011-11-04 | Data aggregation module supporting dynamic query responsive aggregation during the servicing of database query requests provided by one or more client machines |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/368,241 US6408292B1 (en) | 1999-08-04 | 1999-08-04 | Method of and system for managing multi-dimensional databases using modular-arithmetic based address data mapping processes on integer-encoded business dimensions |
US09/514,611 US6434544B1 (en) | 1999-08-04 | 2000-02-28 | Stand-alone cartridge-style data aggregation server providing data aggregation for OLAP analyses |
US10/153,164 US20030018642A1 (en) | 1999-08-04 | 2002-05-21 | Stand-alone cartridge style data aggregation server and method of and system for managing multi-dimensional databases using the same |
US10/854,034 US20050060326A1 (en) | 1999-08-04 | 2004-05-25 | Stand-alone cartridge-style data aggregation server and method of and system for managing multi-dimensional databases using the same |
US11/818,944 US20080059415A1 (en) | 1999-08-04 | 2007-08-03 | Data aggregation module supporting dynamic query responsive aggregation during the servicing of database query requests provided by one or more client machines |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/854,034 Continuation US20050060326A1 (en) | 1999-08-04 | 2004-05-25 | Stand-alone cartridge-style data aggregation server and method of and system for managing multi-dimensional databases using the same |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/657,143 Continuation US8041670B2 (en) | 1999-08-04 | 2010-01-14 | Data aggregation module supporting dynamic query responsive aggregation during the servicing of database query requests provided by one or more client machines |
Publications (1)
Publication Number | Publication Date |
---|---|
US20080059415A1 true US20080059415A1 (en) | 2008-03-06 |
Family
ID=23450443
Family Applications (8)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/368,241 Expired - Lifetime US6408292B1 (en) | 1999-08-04 | 1999-08-04 | Method of and system for managing multi-dimensional databases using modular-arithmetic based address data mapping processes on integer-encoded business dimensions |
US09/514,611 Expired - Lifetime US6434544B1 (en) | 1999-08-04 | 2000-02-28 | Stand-alone cartridge-style data aggregation server providing data aggregation for OLAP analyses |
US10/153,164 Abandoned US20030018642A1 (en) | 1999-08-04 | 2002-05-21 | Stand-alone cartridge style data aggregation server and method of and system for managing multi-dimensional databases using the same |
US10/854,034 Abandoned US20050060326A1 (en) | 1999-08-04 | 2004-05-25 | Stand-alone cartridge-style data aggregation server and method of and system for managing multi-dimensional databases using the same |
US11/818,944 Abandoned US20080059415A1 (en) | 1999-08-04 | 2007-08-03 | Data aggregation module supporting dynamic query responsive aggregation during the servicing of database query requests provided by one or more client machines |
US12/657,143 Expired - Fee Related US8041670B2 (en) | 1999-08-04 | 2010-01-14 | Data aggregation module supporting dynamic query responsive aggregation during the servicing of database query requests provided by one or more client machines |
US13/275,242 Expired - Fee Related US8788453B2 (en) | 1999-08-04 | 2011-10-17 | Data aggregation module supporting dynamic query responsive aggregation during the servicing of database query requests provided by one or more client machines |
US13/289,954 Expired - Fee Related US8799209B2 (en) | 1999-08-04 | 2011-11-04 | Data aggregation module supporting dynamic query responsive aggregation during the servicing of database query requests provided by one or more client machines |
Family Applications Before (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/368,241 Expired - Lifetime US6408292B1 (en) | 1999-08-04 | 1999-08-04 | Method of and system for managing multi-dimensional databases using modular-arithmetic based address data mapping processes on integer-encoded business dimensions |
US09/514,611 Expired - Lifetime US6434544B1 (en) | 1999-08-04 | 2000-02-28 | Stand-alone cartridge-style data aggregation server providing data aggregation for OLAP analyses |
US10/153,164 Abandoned US20030018642A1 (en) | 1999-08-04 | 2002-05-21 | Stand-alone cartridge style data aggregation server and method of and system for managing multi-dimensional databases using the same |
US10/854,034 Abandoned US20050060326A1 (en) | 1999-08-04 | 2004-05-25 | Stand-alone cartridge-style data aggregation server and method of and system for managing multi-dimensional databases using the same |
Family Applications After (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/657,143 Expired - Fee Related US8041670B2 (en) | 1999-08-04 | 2010-01-14 | Data aggregation module supporting dynamic query responsive aggregation during the servicing of database query requests provided by one or more client machines |
US13/275,242 Expired - Fee Related US8788453B2 (en) | 1999-08-04 | 2011-10-17 | Data aggregation module supporting dynamic query responsive aggregation during the servicing of database query requests provided by one or more client machines |
US13/289,954 Expired - Fee Related US8799209B2 (en) | 1999-08-04 | 2011-11-04 | Data aggregation module supporting dynamic query responsive aggregation during the servicing of database query requests provided by one or more client machines |
Country Status (3)
Country | Link |
---|---|
US (8) | US6408292B1 (en) |
AU (1) | AU6010800A (en) |
WO (1) | WO2001011497A1 (en) |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070192295A1 (en) * | 1999-08-04 | 2007-08-16 | Reuven Bakalash | Relational database management system having integrated non-relational multi-dimensional data store or aggregated data elements |
US20080016043A1 (en) * | 2000-02-28 | 2008-01-17 | Reuven Bakalash | Relational database management system (RDBMS) employing multi-dimensional database (MDDB) for servicing query statements through one or more client machines |
US20100094883A1 (en) * | 2008-10-09 | 2010-04-15 | International Business Machines Corporation | Method and Apparatus for Integrated Entity and Integrated Operations of Personalized Data Resource Across the World Wide Web for Online and Offline Interactions |
US20100185581A1 (en) * | 1999-08-04 | 2010-07-22 | Hyperroll, Inc. | Data aggregation module supporting dynamic query responsive aggregation during the servicing of database query requests provided by one or more client machines |
US20150088885A1 (en) * | 2013-09-20 | 2015-03-26 | Oracle International Corporation | Aggregating dimensional data using dense containers |
US9020972B1 (en) * | 2011-08-02 | 2015-04-28 | Google Inc. | System and method for constructing a database instruction |
US9292575B2 (en) | 2010-11-19 | 2016-03-22 | International Business Machines Corporation | Dynamic data aggregation from a plurality of data sources |
US9836519B2 (en) | 2013-09-20 | 2017-12-05 | Oracle International Corporation | Densely grouping dimensional data |
US20180046676A1 (en) * | 2016-08-12 | 2018-02-15 | Sap Se | Custom Query Parameters in a Database System |
US20180129689A1 (en) * | 2016-11-09 | 2018-05-10 | Sap Se | Aggregation database for external dataset |
US9990398B2 (en) | 2013-09-20 | 2018-06-05 | Oracle International Corporation | Inferring dimensional metadata from content of a query |
US10558659B2 (en) | 2016-09-16 | 2020-02-11 | Oracle International Corporation | Techniques for dictionary based join and aggregation |
US10642831B2 (en) | 2015-10-23 | 2020-05-05 | Oracle International Corporation | Static data caching for queries with a clause that requires multiple iterations to execute |
US10678792B2 (en) | 2015-10-23 | 2020-06-09 | Oracle International Corporation | Parallel execution of queries with a recursive clause |
US10783142B2 (en) | 2015-10-23 | 2020-09-22 | Oracle International Corporation | Efficient data retrieval in staged use of in-memory cursor duration temporary tables |
US11086876B2 (en) | 2017-09-29 | 2021-08-10 | Oracle International Corporation | Storing derived summaries on persistent memory of a storage device |
US11222018B2 (en) | 2019-09-09 | 2022-01-11 | Oracle International Corporation | Cache conscious techniques for generation of quasi-dense grouping codes of compressed columnar data in relational database systems |
US11354373B2 (en) * | 2018-12-14 | 2022-06-07 | Sisense Ltd. | System and method for efficiently querying data using temporal granularities |
US20230342333A1 (en) * | 2022-04-24 | 2023-10-26 | Morgan Stanley Services Group Inc. | Distributed query execution and aggregation |
Families Citing this family (312)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7085997B1 (en) | 1998-12-08 | 2006-08-01 | Yodlee.Com | Network-based bookmark management and web-summary system |
US7672879B1 (en) | 1998-12-08 | 2010-03-02 | Yodlee.Com, Inc. | Interactive activity interface for managing personal data and performing transactions over a data packet network |
US8069407B1 (en) | 1998-12-08 | 2011-11-29 | Yodlee.Com, Inc. | Method and apparatus for detecting changes in websites and reporting results to web developers for navigation template repair purposes |
US6477565B1 (en) * | 1999-06-01 | 2002-11-05 | Yodlee.Com, Inc. | Method and apparatus for restructuring of personalized data for transmission from a data network to connected and portable network appliances |
US7752535B2 (en) | 1999-06-01 | 2010-07-06 | Yodlec.com, Inc. | Categorization of summarized information |
US6983258B1 (en) * | 1999-06-14 | 2006-01-03 | G.E. Information Services, Inc. | Trading information managing system and software including a community management function |
US6658413B1 (en) * | 1999-09-01 | 2003-12-02 | I2 Technologies Us, Inc. | Multidimensional database system with intermediate lockable intersections |
US7047301B2 (en) * | 2000-01-31 | 2006-05-16 | F5 Networks, Inc. | Method and system for enabling persistent access to virtual servers by an LDNS server |
US7136860B2 (en) | 2000-02-14 | 2006-11-14 | Overture Services, Inc. | System and method to determine the validity of an interaction on a network |
JP2001243244A (en) * | 2000-02-28 | 2001-09-07 | Hitachi Ltd | Retrieving method of multi-dimensional database, retrieving device and computer readable recording medium storing multi-dimensional database retrieval program |
US7328172B2 (en) * | 2000-03-03 | 2008-02-05 | Gxs, Inc. | Provision of electronic commerce services |
US6574619B1 (en) * | 2000-03-24 | 2003-06-03 | I2 Technologies Us, Inc. | System and method for providing cross-dimensional computation and data access in an on-line analytical processing (OLAP) environment |
US6768986B2 (en) * | 2000-04-03 | 2004-07-27 | Business Objects, S.A. | Mapping of an RDBMS schema onto a multidimensional data model |
US7222130B1 (en) * | 2000-04-03 | 2007-05-22 | Business Objects, S.A. | Report then query capability for a multidimensional database model |
US6732115B2 (en) * | 2000-04-27 | 2004-05-04 | Hyperion Solutions Corporation | Chameleon measure and metric calculation |
US20010044796A1 (en) * | 2000-05-19 | 2001-11-22 | Hiroyasu Fujiwara | Totalization system and recording medium |
CN1430758A (en) * | 2000-05-22 | 2003-07-16 | 阿德特姆软件公司 | Revenue forecasting and managing sellers using statistical analysis |
US7096220B1 (en) | 2000-05-24 | 2006-08-22 | Reachforce, Inc. | Web-based customer prospects harvester system |
US7082427B1 (en) | 2000-05-24 | 2006-07-25 | Reachforce, Inc. | Text indexing system to index, query the archive database document by keyword data representing the content of the documents and by contact data associated with the participant who generated the document |
US7120629B1 (en) * | 2000-05-24 | 2006-10-10 | Reachforce, Inc. | Prospects harvester system for providing contact data about customers of product or service offered by business enterprise extracting text documents selected from newsgroups, discussion forums, mailing lists, querying such data to provide customers who confirm to business profile data |
US7003517B1 (en) | 2000-05-24 | 2006-02-21 | Inetprofit, Inc. | Web-based system and method for archiving and searching participant-based internet text sources for customer lead data |
US6754677B1 (en) * | 2000-05-30 | 2004-06-22 | Outlooksoft Corporation | Method and system for facilitating information exchange |
US6678672B1 (en) * | 2000-05-31 | 2004-01-13 | Ncr Corporation | Efficient exception handling during access plan execution in an on-line analytic processing system |
US7117215B1 (en) | 2001-06-07 | 2006-10-03 | Informatica Corporation | Method and apparatus for transporting data for data warehousing applications that incorporates analytic data interface |
US6601062B1 (en) * | 2000-06-27 | 2003-07-29 | Ncr Corporation | Active caching for multi-dimensional data sets in relational database management system |
US6567804B1 (en) * | 2000-06-27 | 2003-05-20 | Ncr Corporation | Shared computation of user-defined metrics in an on-line analytic processing system |
JP2002024286A (en) * | 2000-06-30 | 2002-01-25 | Hitachi Ltd | Method and device for data display and recording medium with recorded processing program thereof |
US6954758B1 (en) * | 2000-06-30 | 2005-10-11 | Ncr Corporation | Building predictive models within interactive business analysis processes |
US6785666B1 (en) | 2000-07-11 | 2004-08-31 | Revenue Science, Inc. | Method and system for parsing navigation information |
AU2002222963B2 (en) * | 2000-07-13 | 2007-05-10 | Oracle International Corporation | Performing spreadsheet-like calculations in a database system |
US7165065B1 (en) * | 2000-07-14 | 2007-01-16 | Oracle Corporation | Multidimensional database storage and retrieval system |
US6877006B1 (en) * | 2000-07-19 | 2005-04-05 | Vasudevan Software, Inc. | Multimedia inspection database system (MIDaS) for dynamic run-time data evaluation |
US7099886B2 (en) * | 2000-07-20 | 2006-08-29 | Microsoft Corporation | Method and apparatus for identifying programming object attributes |
US7130822B1 (en) | 2000-07-31 | 2006-10-31 | Cognos Incorporated | Budget planning |
US6704740B1 (en) * | 2000-08-10 | 2004-03-09 | Ford Motor Company | Method for analyzing product performance data |
US6850947B1 (en) * | 2000-08-10 | 2005-02-01 | Informatica Corporation | Method and apparatus with data partitioning and parallel processing for transporting data for data warehousing applications |
US6708186B1 (en) * | 2000-08-14 | 2004-03-16 | Oracle International Corporation | Aggregating and manipulating dictionary metadata in a database system |
US7043531B1 (en) | 2000-10-04 | 2006-05-09 | Inetprofit, Inc. | Web-based customer lead generator system with pre-emptive profiling |
US7330850B1 (en) | 2000-10-04 | 2008-02-12 | Reachforce, Inc. | Text mining system for web-based business intelligence applied to web site server logs |
US7155402B1 (en) * | 2000-11-08 | 2006-12-26 | Bluefire Systems, Inc. | Method and apparatus for distribution of fashion and seasonal goods |
US7092929B1 (en) | 2000-11-08 | 2006-08-15 | Bluefire Systems, Inc. | Method and apparatus for planning analysis |
US7523048B1 (en) | 2001-01-19 | 2009-04-21 | Bluefire Systems, Inc. | Multipurpose presentation demand calendar for integrated management decision support |
US7689450B1 (en) | 2001-01-12 | 2010-03-30 | Bluefire Systems, Inc. | Multipurpose causal event calendar for integrated management decision support |
US7516083B1 (en) | 2001-06-22 | 2009-04-07 | Bluefire Systems, Inc. | Method of comparing prorated inventory budgets and simulated future inventory |
US7475022B1 (en) | 2000-11-08 | 2009-01-06 | Bluefire Systems, Inc. | Method and apparatus for handling disruptive events and replacement items |
US6687693B2 (en) * | 2000-12-18 | 2004-02-03 | Ncr Corporation | Architecture for distributed relational data mining systems |
US6842753B2 (en) * | 2001-01-12 | 2005-01-11 | Microsoft Corporation | Sampling for aggregation queries |
US8275974B2 (en) * | 2001-01-16 | 2012-09-25 | Outlooksoft Corporation | Systems and methods providing dynamic spreadsheet functionality |
US7366732B2 (en) * | 2001-02-16 | 2008-04-29 | Creeth Richard F | Fully capable minimally inflatable object model system for multidimensional applications |
US20020161778A1 (en) * | 2001-02-24 | 2002-10-31 | Core Integration Partners, Inc. | Method and system of data warehousing and building business intelligence using a data storage model |
US6931390B1 (en) * | 2001-02-27 | 2005-08-16 | Oracle International Corporation | Method and mechanism for database partitioning |
US6651055B1 (en) * | 2001-03-01 | 2003-11-18 | Lawson Software, Inc. | OLAP query generation engine |
US6931418B1 (en) * | 2001-03-26 | 2005-08-16 | Steven M. Barnes | Method and system for partial-order analysis of multi-dimensional data |
US7031955B1 (en) * | 2001-04-27 | 2006-04-18 | I2 Technologies Us, Inc. | Optimization using a multi-dimensional data model |
US20030018514A1 (en) * | 2001-04-30 | 2003-01-23 | Billet Bradford E. | Predictive method |
US20020178140A1 (en) * | 2001-05-25 | 2002-11-28 | Woodmansee Donald Ernest | Method for characterizing and storing data analyses in an analysis database |
US7162643B1 (en) | 2001-06-15 | 2007-01-09 | Informatica Corporation | Method and system for providing transfer of analytic application data over a network |
US6691100B1 (en) * | 2001-06-20 | 2004-02-10 | Microstrategy, Incorporated | HTML/DHTML web interface system and method |
US6658432B1 (en) * | 2001-06-20 | 2003-12-02 | Microstrategy, Inc. | Method and system for providing business intelligence web content with reduced client-side processing |
US7177855B2 (en) * | 2001-06-20 | 2007-02-13 | Oracle International Corporation | Compile-time optimizations of queries with SQL spreadsheet |
US6704723B1 (en) * | 2001-06-20 | 2004-03-09 | Microstrategy, Incorporated | Method and system for providing business intelligence information over a computer network via extensible markup language |
US7761403B2 (en) * | 2001-06-20 | 2010-07-20 | Oracle International Corporation | Run-time optimizations of queries with SQL spreadsheet |
US8326851B2 (en) * | 2001-06-29 | 2012-12-04 | Grune Guerry L | Simultaneous intellectual property search and valuation system and methodology (SIPS-VSM) |
US7720842B2 (en) | 2001-07-16 | 2010-05-18 | Informatica Corporation | Value-chained queries in analytic applications |
US20030037023A1 (en) * | 2001-08-07 | 2003-02-20 | Intelliclaim | Emulation process for making changes and revisions to computer data files |
GB2379530A (en) * | 2001-09-06 | 2003-03-12 | Inventec Corp | Handling production data |
US20030074358A1 (en) * | 2001-09-24 | 2003-04-17 | Siamak Sarbaz | Integration, management and processing of network data from disparate sources |
US20030061222A1 (en) * | 2001-09-25 | 2003-03-27 | Gennetten K. Douglas | Image data warehousing |
CN1591400A (en) * | 2001-11-09 | 2005-03-09 | 无锡永中科技有限公司 | Integrated data processing system |
US6820077B2 (en) | 2002-02-22 | 2004-11-16 | Informatica Corporation | Method and system for navigating a large amount of data |
JP2003256757A (en) * | 2002-03-06 | 2003-09-12 | Toshiba Corp | Space data analysis device, space data analysis method, and space data analysis program |
US7447687B2 (en) * | 2002-05-10 | 2008-11-04 | International Business Machines Corporation | Methods to browse database query information |
US6839719B2 (en) * | 2002-05-14 | 2005-01-04 | Time Industrial, Inc. | Systems and methods for representing and editing multi-dimensional data |
US7249118B2 (en) * | 2002-05-17 | 2007-07-24 | Aleri, Inc. | Database system and methods |
DE10320268B4 (en) * | 2002-05-31 | 2012-08-16 | Heidelberger Druckmaschinen Ag | Device and method for finding and displaying information |
US20030236764A1 (en) * | 2002-06-19 | 2003-12-25 | Lev Shur | Data architecture to support shared data resources among applications |
CA2391756A1 (en) * | 2002-06-26 | 2003-12-26 | Ibm Canada Limited-Ibm Canada Limitee | Accessing a remote iseries or as/400 computer system from the eclipse integrated development environment |
EP1552407A4 (en) * | 2002-07-26 | 2007-10-31 | Datatrak Internat | Method and system of unifying data |
US7257612B2 (en) * | 2002-09-30 | 2007-08-14 | Cognos Incorporated | Inline compression of a network communication within an enterprise planning environment |
US7072822B2 (en) * | 2002-09-30 | 2006-07-04 | Cognos Incorporated | Deploying multiple enterprise planning models across clusters of application servers |
US20040138942A1 (en) * | 2002-09-30 | 2004-07-15 | Pearson George Duncan | Node-level modification during execution of an enterprise planning model |
US6768995B2 (en) * | 2002-09-30 | 2004-07-27 | Adaytum, Inc. | Real-time aggregation of data within an enterprise planning environment |
DE10249482A1 (en) * | 2002-10-24 | 2004-05-13 | Bayer Ag | Project risk analysis method, by generating checklists, exporting data from hierarchical database to relational database and performing risk analysis by accessing relational database |
US7395273B2 (en) * | 2002-10-31 | 2008-07-01 | General Electric Company | System providing receipt inspection reporting |
US7464091B2 (en) * | 2002-11-27 | 2008-12-09 | Sap Ag | Method and software for processing data objects in business applications |
US7225302B2 (en) * | 2002-11-27 | 2007-05-29 | Sap Ag | Method and software application for avoiding data loss |
US7430569B2 (en) * | 2002-11-27 | 2008-09-30 | Sap Ag | Computerized replication of data objects |
US7409412B2 (en) | 2002-11-27 | 2008-08-05 | Sap Ag | Data element and structure for data processing |
US7970795B2 (en) | 2002-12-10 | 2011-06-28 | Accenture Global Services Limited | Data model development tool |
WO2004053751A2 (en) * | 2002-12-10 | 2004-06-24 | Accenture Global Services Gmbh | Data model development tool |
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 |
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 |
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 |
TW200419413A (en) * | 2003-01-13 | 2004-10-01 | I2 Technologies Inc | Master data management system for centrally managing core reference data associated with an enterprise |
US7539220B2 (en) * | 2003-02-03 | 2009-05-26 | Asustek Computer Inc. | Data discard signalling procedure in a wireless communication system |
US7155398B2 (en) * | 2003-02-19 | 2006-12-26 | Cognos Incorporated | Cascaded planning of an enterprise planning model |
US7756901B2 (en) | 2003-02-19 | 2010-07-13 | International Business Machines Corporation | Horizontal enterprise planning in accordance with an enterprise planning model |
US7296010B2 (en) * | 2003-03-04 | 2007-11-13 | International Business Machines Corporation | Methods, systems and program products for classifying and storing a data handling method and for associating a data handling method with a data item |
US20040181518A1 (en) * | 2003-03-14 | 2004-09-16 | Mayo Bryan Edward | System and method for an OLAP engine having dynamic disaggregation |
US7010538B1 (en) | 2003-03-15 | 2006-03-07 | Damian Black | Method for distributed RDSMS |
US7895191B2 (en) | 2003-04-09 | 2011-02-22 | International Business Machines Corporation | Improving performance of database queries |
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 |
EP1482419A1 (en) * | 2003-05-28 | 2004-12-01 | Sap Ag | Data processing system and method for application programs in a data warehouse |
US7734652B2 (en) * | 2003-08-29 | 2010-06-08 | Oracle International Corporation | Non-negative matrix factorization from the data in the multi-dimensional data table using the specification and to store metadata representing the built relational database management system |
US8315972B2 (en) * | 2003-09-26 | 2012-11-20 | Microsoft Corporation | Method for maintaining databases information about multiple instances of an activity generating, updating virtual OLAP cube based on modified star-schema |
US7149736B2 (en) * | 2003-09-26 | 2006-12-12 | Microsoft Corporation | Maintaining time-sorted aggregation records representing aggregations of values from multiple database records using multiple partitions |
US7421458B1 (en) | 2003-10-16 | 2008-09-02 | Informatica Corporation | Querying, versioning, and dynamic deployment of database objects |
US20050091273A1 (en) * | 2003-10-24 | 2005-04-28 | International Business Machines Corporation | Integrated control and data manager for i2 demand manager |
US7383246B2 (en) | 2003-10-31 | 2008-06-03 | International Business Machines Corporation | System, method, and computer program product for progressive query processing |
US7979384B2 (en) * | 2003-11-06 | 2011-07-12 | Oracle International Corporation | Analytic enhancements to model clause in structured query language (SQL) |
US20060116898A1 (en) * | 2003-11-18 | 2006-06-01 | Peterson Gary E | Interactive risk management system and method with reputation risk management |
US7707511B2 (en) * | 2003-11-18 | 2010-04-27 | Gary Edward Peterson | Interactive risk management system and method |
US20050108080A1 (en) * | 2003-11-18 | 2005-05-19 | Peterson Gary E. | Interactive risk management system and method |
US7480895B2 (en) * | 2003-11-24 | 2009-01-20 | International Business Machines Corporation | Web application development tool |
US7254590B2 (en) * | 2003-12-03 | 2007-08-07 | Informatica Corporation | Set-oriented real-time data processing based on transaction boundaries |
US7822630B1 (en) * | 2003-12-11 | 2010-10-26 | Teradata Us, Inc. | Forecasting with parallel processing |
US7761450B1 (en) * | 2003-12-24 | 2010-07-20 | Teradata Us, Inc. | Computing percentages in a database system |
US10325272B2 (en) | 2004-02-20 | 2019-06-18 | Information Resources, Inc. | Bias reduction using data fusion of household panel data and transaction data |
WO2005098654A2 (en) * | 2004-03-31 | 2005-10-20 | The J. David Gladstone Institutes | User-definable hierarchy for database management |
EP1769433A4 (en) | 2004-04-26 | 2009-05-06 | Right90 Inc | Forecasting data with real-time updates |
US8572221B2 (en) | 2004-05-26 | 2013-10-29 | Facebook, Inc. | System and method for managing an online social network |
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 |
US7590620B1 (en) | 2004-06-18 | 2009-09-15 | Google Inc. | System and method for analyzing data records |
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 |
US20050283494A1 (en) * | 2004-06-22 | 2005-12-22 | International Business Machines Corporation | Visualizing and manipulating multidimensional OLAP models graphically |
DE602004024293D1 (en) * | 2004-06-23 | 2010-01-07 | Sap Ag | System and method for data processing |
US20060005121A1 (en) * | 2004-06-30 | 2006-01-05 | Microsoft Corporation | Discretization of dimension attributes using data mining techniques |
US7333995B2 (en) * | 2004-07-02 | 2008-02-19 | Cognos, Incorporated | Very large dataset representation system and method |
US7873669B2 (en) * | 2004-07-09 | 2011-01-18 | Microsoft Corporation | Direct write back systems and methodologies |
US7809678B2 (en) * | 2004-07-09 | 2010-10-05 | Microsoft Corporation | Fact dimensions in multidimensional databases |
US7562086B2 (en) * | 2004-07-09 | 2009-07-14 | Microsoft Corporation | Custom grouping for dimension members |
US7213199B2 (en) * | 2004-07-16 | 2007-05-01 | Cognos Incorporated | Spreadsheet user-interface for an enterprise planning system having multi-dimensional data store |
US8276150B2 (en) * | 2004-10-12 | 2012-09-25 | International Business Machines Corporation | Methods, systems and computer program products for spreadsheet-based autonomic management of computer systems |
US7676447B2 (en) * | 2005-02-11 | 2010-03-09 | Kinematik Research Limited | Control system and method for controlling execution of scientific experiments by laboratory instruments |
US20100070348A1 (en) * | 2005-02-17 | 2010-03-18 | Abhijit Nag | Method and apparatus for evaluation of business performances of business enterprises |
US7809754B2 (en) * | 2005-02-28 | 2010-10-05 | International Business Machines Corporation | Method and computer program product for generating a lightweight ontological data model |
US7814044B2 (en) * | 2005-03-22 | 2010-10-12 | Sap Ag | Data access service queries |
US8281282B2 (en) * | 2005-04-26 | 2012-10-02 | Ca, Inc. | Method and apparatus for in-built searching and aggregating functionality |
US20060259338A1 (en) * | 2005-05-12 | 2006-11-16 | Time Wise Solutions, Llc | System and method to improve operational status indication and performance based outcomes |
US7584205B2 (en) | 2005-06-27 | 2009-09-01 | Ab Initio Technology Llc | Aggregating data with complex operations |
US8572235B1 (en) | 2005-11-07 | 2013-10-29 | At&T Intellectual Property Ii, Lp | Method and system for monitoring a complex IT infrastructure at the service level |
US7383159B1 (en) | 2005-12-13 | 2008-06-03 | Teradata Us, Inc. | Reusable measures |
EP1811404A1 (en) * | 2006-01-20 | 2007-07-25 | Ubs Ag | Technology for supplying a data warehouse while ensuring consistent data view |
US20070179982A1 (en) * | 2006-01-31 | 2007-08-02 | International Business Machines Corporation | Temporal summarization of a data subset |
JP4899511B2 (en) * | 2006-02-08 | 2012-03-21 | 富士通株式会社 | System analysis program, system analysis apparatus, and system analysis method |
US20080065590A1 (en) * | 2006-09-07 | 2008-03-13 | Microsoft Corporation | Lightweight query processing over in-memory data structures |
US20080066067A1 (en) * | 2006-09-07 | 2008-03-13 | Cognos Incorporated | Enterprise performance management software system having action-based data capture |
US7606752B2 (en) | 2006-09-07 | 2009-10-20 | Yodlee Inc. | Host exchange in bill paying services |
US20080086359A1 (en) * | 2006-10-04 | 2008-04-10 | Holton Peter R | Sales opportunity explorer |
US9262503B2 (en) | 2007-01-26 | 2016-02-16 | Information Resources, Inc. | Similarity matching of products based on multiple classification schemes |
EP2111593A2 (en) * | 2007-01-26 | 2009-10-28 | Information Resources, Inc. | Analytic platform |
US8782075B2 (en) * | 2007-05-08 | 2014-07-15 | Paraccel Llc | Query handling in databases with replicated data |
US7870114B2 (en) * | 2007-06-15 | 2011-01-11 | Microsoft Corporation | Efficient data infrastructure for high dimensional data analysis |
US7739666B2 (en) * | 2007-06-15 | 2010-06-15 | Microsoft Corporation | Analyzing software users with instrumentation data and user group modeling and analysis |
US7747988B2 (en) * | 2007-06-15 | 2010-06-29 | Microsoft Corporation | Software feature usage analysis and reporting |
US7765216B2 (en) * | 2007-06-15 | 2010-07-27 | Microsoft Corporation | Multidimensional analysis tool for high dimensional data |
US9449047B2 (en) | 2007-06-19 | 2016-09-20 | Sybase, Inc. | Dynamic modification of schemas in streaming databases |
US8745012B2 (en) | 2007-08-10 | 2014-06-03 | Sybase, Inc. | Log-structured store for streaming data |
WO2009030247A1 (en) * | 2007-09-03 | 2009-03-12 | Iqser Ip Ag | Detecting correlations between data representing information |
KR100984691B1 (en) * | 2007-10-01 | 2010-10-01 | 김기미 | Contents Relationship Management system By multiple internet domain |
US7599997B1 (en) | 2008-08-01 | 2009-10-06 | Gene Fein | Multi-homed data forwarding storage |
US7636759B1 (en) * | 2008-09-29 | 2009-12-22 | Gene Fein | Rotating encryption in data forwarding storage |
US8458285B2 (en) * | 2008-03-20 | 2013-06-04 | Post Dahl Co. Limited Liability Company | Redundant data forwarding storage |
US9203928B2 (en) | 2008-03-20 | 2015-12-01 | Callahan Cellular L.L.C. | Data storage and retrieval |
US7636761B1 (en) * | 2008-09-29 | 2009-12-22 | Gene Fein | Measurement in data forwarding storage |
US7917541B2 (en) * | 2008-03-31 | 2011-03-29 | Microsoft Corporation | Collecting and aggregating data using distributed resources |
US8195712B1 (en) | 2008-04-17 | 2012-06-05 | Lattice Engines, Inc. | Lattice data set-based methods and apparatus for information storage and retrieval |
US8261334B2 (en) | 2008-04-25 | 2012-09-04 | Yodlee Inc. | System for performing web authentication of a user by proxy |
US8386585B2 (en) * | 2008-04-25 | 2013-02-26 | Tajitshu Transfer Limited Liability Company | Real-time communications over data forwarding framework |
US8452844B2 (en) * | 2008-05-07 | 2013-05-28 | Tajitshu Transfer Limited Liability Company | Deletion in data file forwarding framework |
US8806426B2 (en) * | 2008-06-04 | 2014-08-12 | Microsoft Corporation | Configurable partitioning of parallel data for parallel processing |
US9659073B2 (en) * | 2008-06-18 | 2017-05-23 | Oracle International Corporation | Techniques to extract and flatten hierarchies |
US8599678B2 (en) | 2008-07-10 | 2013-12-03 | Tajitshu Transfer Limited Liability Company | Media delivery in data forwarding storage network |
US8370446B2 (en) | 2008-07-10 | 2013-02-05 | Tajitshu Transfer Limited Liability Company | Advertisement forwarding storage and retrieval network |
US8463739B2 (en) * | 2008-08-28 | 2013-06-11 | Red Hat, Inc. | Systems and methods for generating multi-population statistical measures using middleware |
US8495007B2 (en) * | 2008-08-28 | 2013-07-23 | Red Hat, Inc. | Systems and methods for hierarchical aggregation of multi-dimensional data sources |
US10430338B2 (en) | 2008-09-19 | 2019-10-01 | Oracle International Corporation | Selectively reading data from cache and primary storage based on whether cache is overloaded |
US8478823B2 (en) | 2008-09-29 | 2013-07-02 | Tajitshu Transfer Limited Liability Company | Selective data forwarding storage |
US8352635B2 (en) * | 2008-09-29 | 2013-01-08 | Tajitshu Transfer Limited Liability Company | Geolocation assisted data forwarding storage |
US9020882B2 (en) | 2008-11-26 | 2015-04-28 | Red Hat, Inc. | Database hosting middleware dimensional transforms |
IL195956A0 (en) | 2008-12-15 | 2009-09-01 | Hyperroll Israel Ltd | Automatic data store architecture detection |
US20100162147A1 (en) * | 2008-12-19 | 2010-06-24 | Ritter Gerd M | Ui-driven binding of extension fields to business objects |
US8555359B2 (en) | 2009-02-26 | 2013-10-08 | Yodlee, Inc. | System and methods for automatically accessing a web site on behalf of a client |
IL197961A0 (en) * | 2009-04-05 | 2009-12-24 | Guy Shaked | Methods for effective processing of time series |
US9613123B2 (en) * | 2009-04-13 | 2017-04-04 | Hewlett Packard Enterprise Development Lp | Data stream processing |
US9292592B2 (en) * | 2009-05-29 | 2016-03-22 | Red Hat, Inc. | Object-based modeling using composite model object having independently updatable component objects |
US8417739B2 (en) * | 2009-05-29 | 2013-04-09 | Red Hat, Inc. | Systems and methods for object-based modeling using hierarchical model objects |
US9105006B2 (en) | 2009-05-29 | 2015-08-11 | Red Hat, Inc. | Generating floating desktop representation of extracted model object |
US8930487B2 (en) * | 2009-05-29 | 2015-01-06 | Red Hat, Inc. | Object-based modeling using model objects exportable to external modeling tools |
US8606827B2 (en) * | 2009-05-29 | 2013-12-10 | Red Hat, Inc. | Systems and methods for extracting database dimensions as data modeling object |
US9009006B2 (en) | 2009-05-29 | 2015-04-14 | Red Hat, Inc. | Generating active links between model objects |
US9292485B2 (en) | 2009-05-29 | 2016-03-22 | Red Hat, Inc. | Extracting data cell transformable to model object |
US8365195B2 (en) * | 2009-08-31 | 2013-01-29 | Red Hat, Inc. | Systems and methods for generating sets of model objects having data messaging pipes |
US8417734B2 (en) * | 2009-08-31 | 2013-04-09 | Red Hat, Inc. | Systems and methods for managing sets of model objects via unified management interface |
US9152944B2 (en) | 2009-08-31 | 2015-10-06 | Red Hat, Inc. | Generating rapidly rotatable dimensional view of data objects |
US20110054854A1 (en) * | 2009-08-31 | 2011-03-03 | Eric Williamson | Systems and methods for generating dimensionally altered model objects |
US9152435B2 (en) * | 2009-08-31 | 2015-10-06 | Red Hat, Inc. | Generating a set of linked rotational views of model objects |
US20110078199A1 (en) * | 2009-09-30 | 2011-03-31 | Eric Williamson | Systems and methods for the distribution of data in a hierarchical database via placeholder nodes |
US8984013B2 (en) * | 2009-09-30 | 2015-03-17 | Red Hat, Inc. | Conditioning the distribution of data in a hierarchical database |
US8909678B2 (en) * | 2009-09-30 | 2014-12-09 | Red Hat, Inc. | Conditioned distribution of data in a lattice-based database using spreading rules |
US9031987B2 (en) * | 2009-09-30 | 2015-05-12 | Red Hat, Inc. | Propagation of data changes in distribution operations in hierarchical database |
US8996453B2 (en) * | 2009-09-30 | 2015-03-31 | Red Hat, Inc. | Distribution of data in a lattice-based database via placeholder nodes |
US8326797B2 (en) | 2009-11-11 | 2012-12-04 | International Business Machines Corporation | Supporting set-level slice and dice in data warehouses |
US8589344B2 (en) * | 2009-11-30 | 2013-11-19 | Red Hat, Inc. | Systems and methods for generating iterated distributions of data in a hierarchical database |
US8396880B2 (en) * | 2009-11-30 | 2013-03-12 | Red Hat, Inc. | Systems and methods for generating an optimized output range for a data distribution in a hierarchical database |
US8315174B2 (en) * | 2009-12-31 | 2012-11-20 | Red Hat, Inc. | Systems and methods for generating a push-up alert of fault conditions in the distribution of data in a hierarchical database |
US9342801B2 (en) | 2010-03-29 | 2016-05-17 | Amazon Technologies, Inc. | Managing committed processing rates for shared resources |
US20110238857A1 (en) * | 2010-03-29 | 2011-09-29 | Amazon Technologies, Inc. | Committed processing rates for shared resources |
US20110295672A1 (en) * | 2010-05-25 | 2011-12-01 | Dimitriadis Christos K | Methods and a system for detecting fraud in betting and lottery games |
US8694557B2 (en) | 2010-07-02 | 2014-04-08 | Sap Ag | Extensibility of metaobjects |
CN102314460B (en) | 2010-07-07 | 2014-05-14 | 阿里巴巴集团控股有限公司 | Data analysis method and system and servers |
US9069747B2 (en) | 2010-08-26 | 2015-06-30 | Sap Se | Methods, apparatus, systems and computer readable mediums for use in association with electronic spreadsheets |
US9342793B2 (en) | 2010-08-31 | 2016-05-17 | Red Hat, Inc. | Training a self-learning network using interpolated input sets based on a target output |
US10353891B2 (en) | 2010-08-31 | 2019-07-16 | Red Hat, Inc. | Interpolating conformal input sets based on a target output |
US8612330B1 (en) | 2010-09-14 | 2013-12-17 | Amazon Technologies, Inc. | Managing bandwidth for shared resources |
US8694400B1 (en) | 2010-09-14 | 2014-04-08 | Amazon Technologies, Inc. | Managing operational throughput for shared resources |
US8533103B1 (en) * | 2010-09-14 | 2013-09-10 | Amazon Technologies, Inc. | Maintaining latency guarantees for shared resources |
US9355383B2 (en) | 2010-11-22 | 2016-05-31 | Red Hat, Inc. | Tracking differential changes in conformal data input sets |
US10366464B2 (en) | 2010-11-29 | 2019-07-30 | Red Hat, Inc. | Generating interpolated input data sets using reduced input source objects |
US8346817B2 (en) | 2010-11-29 | 2013-01-01 | Red Hat, Inc. | Systems and methods for embedding interpolated data object in application data file |
US8364687B2 (en) | 2010-11-29 | 2013-01-29 | Red Hat, Inc. | Systems and methods for binding multiple interpolated data objects |
US8886646B2 (en) * | 2010-12-30 | 2014-11-11 | Sap Se | Field extensibility for analytical reports |
US8862638B2 (en) | 2011-02-28 | 2014-10-14 | Red Hat, Inc. | Interpolation data template to normalize analytic runs |
US8768942B2 (en) | 2011-02-28 | 2014-07-01 | Red Hat, Inc. | Systems and methods for generating interpolated data sets converging to optimized results using iterative overlapping inputs |
US8290969B2 (en) | 2011-02-28 | 2012-10-16 | Red Hat, Inc. | Systems and methods for validating interpolation results using monte carlo simulations on interpolated data inputs |
US9489439B2 (en) | 2011-02-28 | 2016-11-08 | Red Hat, Inc. | Generating portable interpolated data using object-based encoding of interpolation results |
US20120323641A1 (en) * | 2011-06-20 | 2012-12-20 | Accenture Global Services Limited | Terminal performance analytical computer system |
US9183269B1 (en) | 2011-10-08 | 2015-11-10 | Bay Dynamics, Inc. | Federated multidimensional data storage cubes |
US9081830B1 (en) | 2011-10-08 | 2015-07-14 | Bay Dynamics | Updating a view of a multidimensional cube |
US10353922B1 (en) | 2011-10-08 | 2019-07-16 | Bay Dynamics, Inc. | Rendering multidimensional cube data |
US9330091B1 (en) | 2011-10-08 | 2016-05-03 | Bay Dynamics, Inc. | System for managing data storages |
US9390082B1 (en) * | 2011-10-08 | 2016-07-12 | Bay Dynamics, Inc. | Generating multiple views of a multidimensional cube |
US9171055B1 (en) | 2011-10-08 | 2015-10-27 | Bay Dynamics, Inc. | Content packs for multidimensional data storage cubes |
US8909680B1 (en) * | 2011-10-08 | 2014-12-09 | Bay Dynamics | Intelligent caching of multidimensional cube data |
US9367354B1 (en) | 2011-12-05 | 2016-06-14 | Amazon Technologies, Inc. | Queued workload service in a multi tenant environment |
US9031900B2 (en) * | 2012-01-18 | 2015-05-12 | Sap Se | System and methods for integrating software layers for OLAP |
US10061758B2 (en) * | 2012-03-29 | 2018-08-28 | Red Hat, Inc. | Tabular widget with mergable cells |
GB2503266A (en) * | 2012-06-21 | 2013-12-25 | Ibm | Sharing aggregated cache hit and miss data in a storage area network |
US8996544B2 (en) | 2012-09-28 | 2015-03-31 | Oracle International Corporation | Pruning disk blocks of a clustered table in a relational database management system |
US9430550B2 (en) | 2012-09-28 | 2016-08-30 | Oracle International Corporation | Clustering a table in a relational database management system |
US9507825B2 (en) | 2012-09-28 | 2016-11-29 | Oracle International Corporation | Techniques for partition pruning based on aggregated zone map information |
EP2757467A1 (en) * | 2013-01-22 | 2014-07-23 | Siemens Aktiengesellschaft | Management apparatus and method for managing data elements of a version control system |
US10223431B2 (en) * | 2013-01-31 | 2019-03-05 | Facebook, Inc. | Data stream splitting for low-latency data access |
US9609050B2 (en) | 2013-01-31 | 2017-03-28 | Facebook, Inc. | Multi-level data staging for low latency data access |
US9471628B2 (en) | 2013-03-04 | 2016-10-18 | Mastercard International Incorporated | Methods and systems for calculating and retrieving analytic data |
US9934523B1 (en) | 2013-03-05 | 2018-04-03 | Square, Inc. | On-device directory search |
US9189809B1 (en) * | 2013-03-08 | 2015-11-17 | Square, Inc. | Purchase transaction presentation |
US10909590B2 (en) | 2013-03-15 | 2021-02-02 | Square, Inc. | Merchant and item ratings |
US10642837B2 (en) | 2013-03-15 | 2020-05-05 | Oracle International Corporation | Relocating derived cache during data rebalance to maintain application performance |
US20140365519A1 (en) * | 2013-06-10 | 2014-12-11 | Targit A/S | Intelligent processing of user input to a business intelligence software application |
US9870543B2 (en) | 2013-08-12 | 2018-01-16 | GoodData Corporation | Custom-branded analytic applications in a multi-tenant environment |
US10229161B2 (en) * | 2013-09-20 | 2019-03-12 | Oracle International Corporation | Automatic caching of scan and random access data in computing systems |
US9411721B2 (en) | 2013-11-15 | 2016-08-09 | Sandisk Technologies Llc | Detecting access sequences for data compression on non-volatile memory devices |
CN103605810B (en) * | 2013-12-10 | 2017-02-01 | 中国海洋石油总公司 | Data processing infrastructure of data warehouse |
US9336236B2 (en) | 2014-01-21 | 2016-05-10 | International Business Machines Corporation | Geospatial queries using associated distribution data |
US9286329B2 (en) * | 2014-01-31 | 2016-03-15 | GoodData Corporation | Generating analytics application using reusable application modules |
WO2015131961A1 (en) | 2014-03-07 | 2015-09-11 | Systema Systementwicklung Dip.-Inf. Manfred Austen Gmbh | Real-time information systems and methodology based on continuous homomorphic processing in linear information spaces |
GB2524072A (en) * | 2014-03-14 | 2015-09-16 | Ibm | Demand-driven dynamic aggregate |
JP6354228B2 (en) | 2014-03-17 | 2018-07-11 | 株式会社リコー | Information processing apparatus, information processing method, image forming apparatus, information processing system, and program |
US9600554B2 (en) | 2014-03-25 | 2017-03-21 | AtScale, Inc. | Interpreting relational database statements using a virtual multidimensional data model |
CN106164847A (en) * | 2014-03-31 | 2016-11-23 | 柯法克斯公司 | Expansible business process intelligence and predictability analysis for Distributed architecture |
US9619769B2 (en) * | 2014-04-01 | 2017-04-11 | Sap Se | Operational leading indicator (OLI) management using in-memory database |
EP2954424B1 (en) | 2014-05-05 | 2018-05-30 | Huawei Technologies Co., Ltd. | Method, device, and system for peer-to-peer data replication and method, device, and system for master node switching |
US9767145B2 (en) | 2014-10-10 | 2017-09-19 | Salesforce.Com, Inc. | Visual data analysis with animated informational morphing replay |
US9600548B2 (en) | 2014-10-10 | 2017-03-21 | Salesforce.Com | Row level security integration of analytical data store with cloud architecture |
US9396018B2 (en) * | 2014-10-10 | 2016-07-19 | Salesforce.Com, Inc. | Low latency architecture with directory service for integration of transactional data system with analytical data structures |
US10049141B2 (en) | 2014-10-10 | 2018-08-14 | salesforce.com,inc. | Declarative specification of visualization queries, display formats and bindings |
US10101889B2 (en) | 2014-10-10 | 2018-10-16 | Salesforce.Com, Inc. | Dashboard builder with live data updating without exiting an edit mode |
US9449188B2 (en) | 2014-10-10 | 2016-09-20 | Salesforce.Com, Inc. | Integration user for analytical access to read only data stores generated from transactional systems |
US10528540B2 (en) | 2015-05-11 | 2020-01-07 | AtScale, Inc. | Dynamic aggregate generation and updating for high performance querying of large datasets |
US10115213B2 (en) | 2015-09-15 | 2018-10-30 | Salesforce, Inc. | Recursive cell-based hierarchy for data visualizations |
US10089368B2 (en) | 2015-09-18 | 2018-10-02 | Salesforce, Inc. | Systems and methods for making visual data representations actionable |
US10318498B2 (en) * | 2015-10-23 | 2019-06-11 | Oracle International Corporation | System and method for parallel support of multidimensional slices with a multidimensional database |
US10467250B2 (en) | 2015-12-14 | 2019-11-05 | AtScale, Inc. | Data model design collaboration using semantically correct collaborative objects |
US10223421B2 (en) * | 2015-12-30 | 2019-03-05 | Sap Se | Virtual Aggregation |
US9948655B1 (en) * | 2016-04-15 | 2018-04-17 | AtScale, Inc. | Data access authorization for dynamically generated database structures |
US10311047B2 (en) | 2016-10-19 | 2019-06-04 | Salesforce.Com, Inc. | Streamlined creation and updating of OLAP analytic databases |
US10331573B2 (en) | 2016-11-04 | 2019-06-25 | Oracle International Corporation | Detection of avoidable cache thrashing for OLTP and DW workloads |
US10067678B1 (en) | 2016-12-22 | 2018-09-04 | Amazon Technologies, Inc. | Probabilistic eviction of partial aggregation results from constrained results storage |
US10452682B2 (en) | 2017-01-05 | 2019-10-22 | International Business Machines Corporation | Accelerator based data integration |
US10656964B2 (en) | 2017-05-16 | 2020-05-19 | Oracle International Corporation | Dynamic parallelization of a calculation process |
US10719372B2 (en) | 2017-05-22 | 2020-07-21 | Oracle International Corporation | Dynamic parallelization of data loading |
US10185607B1 (en) | 2017-07-23 | 2019-01-22 | AtScale, Inc. | Data statement monitoring and control |
US10929361B2 (en) | 2017-07-23 | 2021-02-23 | AtScale, Inc. | Rule-based data source selection |
US10713248B2 (en) | 2017-07-23 | 2020-07-14 | AtScale, Inc. | Query engine selection |
US11019073B2 (en) | 2017-07-23 | 2021-05-25 | AtScale, Inc. | Application-agnostic resource access control |
US10853349B2 (en) | 2017-08-09 | 2020-12-01 | Vmware, Inc. | Event based analytics database synchronization |
US11687567B2 (en) * | 2017-09-21 | 2023-06-27 | Vmware, Inc. | Trigger based analytics database synchronization |
US11537610B2 (en) | 2017-12-09 | 2022-12-27 | AtScale, Inc. | Data statement chunking |
US10740333B1 (en) * | 2018-06-27 | 2020-08-11 | Cloudera, Inc. | Apparatus and method for accelerated query processing using eager aggregation and analytical view matching |
US10990598B2 (en) * | 2019-01-31 | 2021-04-27 | Microsoft Technology Licensing, Llc | Aggregating quantile metrics in multidimensional data sets |
US11803798B2 (en) * | 2019-04-18 | 2023-10-31 | Oracle International Corporation | System and method for automatic generation of extract, transform, load (ETL) asserts |
US11233706B2 (en) | 2019-05-06 | 2022-01-25 | Bank Of America Corporation | System for multichannel aggregation of electronic data via a centralized integration hub |
CN110502592B (en) * | 2019-08-27 | 2023-08-11 | 深圳供电局有限公司 | Project domain topic analysis system based on big data analysis technology |
US11526859B1 (en) | 2019-11-12 | 2022-12-13 | Bottomline Technologies, Sarl | Cash flow forecasting using a bottoms-up machine learning approach |
US11532040B2 (en) | 2019-11-12 | 2022-12-20 | Bottomline Technologies Sarl | International cash management software using machine learning |
US11210221B2 (en) * | 2019-12-10 | 2021-12-28 | Pony Ai Inc. | Memory architecture for efficient spatial-temporal data storage and access |
USD959477S1 (en) | 2019-12-20 | 2022-08-02 | Sap Se | Display system or portion thereof with a virtual three-dimensional animated graphical user interface |
USD959447S1 (en) | 2019-12-20 | 2022-08-02 | Sap Se | Display system or portion thereof with a virtual three-dimensional animated graphical user interface |
USD959476S1 (en) | 2019-12-20 | 2022-08-02 | Sap Se | Display system or portion thereof with a virtual three-dimensional animated graphical user interface |
US11205296B2 (en) * | 2019-12-20 | 2021-12-21 | Sap Se | 3D data exploration using interactive cuboids |
CN116561162A (en) * | 2019-12-31 | 2023-08-08 | 北京恒泰实达科技股份有限公司 | Method for carrying out data query analysis by dynamically constructing cubes |
US11562265B2 (en) * | 2020-02-28 | 2023-01-24 | Ricoh Company, Ltd. | Intelligent data analytics |
US11704671B2 (en) | 2020-04-02 | 2023-07-18 | Bottomline Technologies Limited | Financial messaging transformation-as-a-service |
US11586608B1 (en) | 2020-06-23 | 2023-02-21 | Amazon Technologies, Inc. | Handling requests to access separately stored items in a non-relational database |
US20220108330A1 (en) * | 2020-10-06 | 2022-04-07 | Rebecca Mendoza Saltiel | Interactive and iterative behavioral model, system, and method for detecting fraud, waste, abuse and anomaly |
CN112269792B (en) * | 2020-12-11 | 2021-07-02 | 腾讯科技(深圳)有限公司 | Data query method, device, equipment and computer readable storage medium |
US11875370B2 (en) | 2020-12-18 | 2024-01-16 | Replenium Inc. | Automated replenishment shopping harmonization |
US20220198483A1 (en) * | 2020-12-18 | 2022-06-23 | Replenium Inc. | Automated replenishment shopping platform |
AU2022214554B2 (en) * | 2021-01-26 | 2023-12-21 | Donyati, Llc | Dynamic application builder for multidimensional database environments |
CN113094393B (en) * | 2021-03-16 | 2023-07-14 | 杭州数梦工场科技有限公司 | Data aggregation method and device and electronic equipment |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5745764A (en) * | 1992-12-24 | 1998-04-28 | Microsoft Corporation | Method and system for aggregating objects |
US5781896A (en) * | 1994-06-30 | 1998-07-14 | Microsoft Corporation | Method and system for efficiently performing database table aggregation using an aggregation index |
US5822751A (en) * | 1996-12-16 | 1998-10-13 | Microsoft Corporation | Efficient multidimensional data aggregation operator implementation |
US5848424A (en) * | 1996-11-18 | 1998-12-08 | Toptier Software, Inc. | Data navigator interface with navigation as a function of draggable elements and drop targets |
US5857184A (en) * | 1996-05-03 | 1999-01-05 | Walden Media, Inc. | Language and method for creating, organizing, and retrieving data from a database |
US20010013030A1 (en) * | 1998-03-27 | 2001-08-09 | Informix Software, Inc. | Defining and characterizing an analysis space for precomputed views |
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 |
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 |
US20020091707A1 (en) * | 2000-06-10 | 2002-07-11 | International Business Machines Corporation | Automatic determination of OLAP cube dimensions |
US6441834B1 (en) * | 1998-03-26 | 2002-08-27 | Sap Portals, Inc. | Hyper-relational correlation server |
US6480842B1 (en) * | 1998-03-26 | 2002-11-12 | Sap Portals, Inc. | Dimension to domain server |
US6484179B1 (en) * | 1999-10-25 | 2002-11-19 | Oracle Corporation | Storing multidimensional data in a relational database management system |
US6775674B1 (en) * | 1998-03-26 | 2004-08-10 | Sap Aktiengesellschaft | Auto completion of relationships between objects in a data model |
US20040243607A1 (en) * | 1999-04-16 | 2004-12-02 | Tummalapalli Venkat Ranga Reddy | Multidimensional repositories for problem discovery and capacity planning of database applications |
Family Cites Families (254)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4590465A (en) | 1982-02-18 | 1986-05-20 | Henry Fuchs | Graphics display system using logic-enhanced pixel memory cells |
US4598400A (en) | 1983-05-31 | 1986-07-01 | Thinking Machines Corporation | Method and apparatus for routing message packets |
US4641351A (en) | 1984-07-25 | 1987-02-03 | Preston Jr Kendall | Logical transform image processor |
US6545589B1 (en) | 1984-09-14 | 2003-04-08 | Aspect Communications Corporation | Method and apparatus for managing telecommunications |
US4685144A (en) | 1984-10-29 | 1987-08-04 | Environmental Research Institute Of Michigan | Image processing system with transformation detection |
JPS61220027A (en) * | 1985-03-27 | 1986-09-30 | Hitachi Ltd | Information memory system |
US5696916A (en) | 1985-03-27 | 1997-12-09 | Hitachi, Ltd. | Information storage and retrieval system and display method therefor |
US5553226A (en) * | 1985-03-27 | 1996-09-03 | Hitachi, Ltd. | System for displaying concept networks |
US5404506A (en) * | 1985-03-27 | 1995-04-04 | Hitachi, Ltd. | Knowledge based information retrieval system |
JPH0814795B2 (en) * | 1986-01-14 | 1996-02-14 | 株式会社日立製作所 | Multiprocessor virtual computer system |
US6182062B1 (en) * | 1986-03-26 | 2001-01-30 | Hitachi, Ltd. | Knowledge based information retrieval system |
US4814980A (en) | 1986-04-01 | 1989-03-21 | California Institute Of Technology | Concurrent hypercube system with improved message passing |
CA1258923A (en) | 1986-04-14 | 1989-08-29 | Robert A. Drebin | Methods and apparatus for imaging volume data |
US4989141A (en) | 1987-06-01 | 1991-01-29 | Corporate Class Software | Computer system for financial analyses and reporting |
US5189608A (en) | 1987-06-01 | 1993-02-23 | Imrs Operations, Inc. | Method and apparatus for storing and generating financial information employing user specified input and output formats |
JPH01123320A (en) | 1987-10-30 | 1989-05-16 | Internatl Business Mach Corp <Ibm> | Method and apparatus for forming searching command |
US5055999A (en) | 1987-12-22 | 1991-10-08 | Kendall Square Research Corporation | Multiprocessor digital data processing system |
US5222237A (en) | 1988-02-02 | 1993-06-22 | Thinking Machines Corporation | Apparatus for aligning the operation of a plurality of processors |
US5089985A (en) | 1988-04-07 | 1992-02-18 | International Business Machines Corporation | System and method for performing a sort operation in a relational database manager to pass results directly to a user without writing to disk |
US5202985A (en) * | 1988-04-14 | 1993-04-13 | Racal-Datacom, Inc. | Apparatus and method for displaying data communication network configuration after searching the network |
US4987554A (en) * | 1988-08-24 | 1991-01-22 | The Research Foundation Of State University Of New York | Method of converting continuous three-dimensional geometrical representations of polygonal objects into discrete three-dimensional voxel-based representations thereof within a three-dimensional voxel-based system |
US4985856A (en) * | 1988-11-10 | 1991-01-15 | The Research Foundation Of State University Of New York | Method and apparatus for storing, accessing, and processing voxel-based data |
US4985834A (en) | 1988-11-22 | 1991-01-15 | General Electric Company | System and method employing pipelined parallel circuit architecture for displaying surface structures of the interior region of a solid body |
SE466029B (en) | 1989-03-06 | 1991-12-02 | Ibm Svenska Ab | DEVICE AND PROCEDURE FOR ANALYSIS OF NATURAL LANGUAGES IN A COMPUTER-BASED INFORMATION PROCESSING SYSTEM |
US5101475A (en) * | 1989-04-17 | 1992-03-31 | The Research Foundation Of State University Of New York | Method and apparatus for generating arbitrary projections of three-dimensional voxel-based data |
US5197005A (en) | 1989-05-01 | 1993-03-23 | Intelligent Business Systems | Database retrieval system having a natural language interface |
US5280474A (en) | 1990-01-05 | 1994-01-18 | Maspar Computer Corporation | Scalable processor to processor and processor-to-I/O interconnection network and method for parallel processing arrays |
US5257365A (en) * | 1990-03-16 | 1993-10-26 | Powers Frederick A | Database system with multi-dimensional summary search tree nodes for reducing the necessity to access records |
US5278966A (en) * | 1990-06-29 | 1994-01-11 | The United States Of America As Represented By The Secretary Of The Navy | Toroidal computer memory for serial and parallel processors |
US5293615A (en) * | 1990-11-16 | 1994-03-08 | Amada Carlos A | Point and shoot interface for linking database records to spreadsheets whereby data of a record is automatically reformatted and loaded upon issuance of a recalculation command |
US5379419A (en) | 1990-12-07 | 1995-01-03 | Digital Equipment Corporation | Methods and apparatus for accesssing non-relational data files using relational queries |
US5299321A (en) | 1990-12-18 | 1994-03-29 | Oki Electric Industry Co., Ltd. | Parallel processing device to operate with parallel execute instructions |
US5307484A (en) * | 1991-03-06 | 1994-04-26 | Chrysler Corporation | Relational data base repository system for managing functional and physical data structures of nodes and links of multiple computer networks |
US5222216A (en) | 1991-07-12 | 1993-06-22 | Thinking Machines Corporation | High performance communications interface for multiplexing a plurality of computers to a high performance point to point communications bus |
US5297280A (en) | 1991-08-07 | 1994-03-22 | Occam Research Corporation | Automatically retrieving queried data by extracting query dimensions and modifying the dimensions if an extract match does not occur |
US5359724A (en) | 1992-03-30 | 1994-10-25 | Arbor Software Corporation | Method and apparatus for storing and retrieving multi-dimensional data in computer memory |
US5648215A (en) | 1992-05-13 | 1997-07-15 | Board Of Regents, The University Of Texas System | Telomerase diagnostic methods |
US5361385A (en) | 1992-08-26 | 1994-11-01 | Reuven Bakalash | Parallel computing system for volumetric modeling, data processing and visualization |
US5867501A (en) * | 1992-12-17 | 1999-02-02 | Tandem Computers Incorporated | Encoding for communicating data and commands |
US5794228A (en) | 1993-04-16 | 1998-08-11 | Sybase, Inc. | Database system with buffer manager providing per page native data compression and decompression |
US5918225A (en) | 1993-04-16 | 1999-06-29 | Sybase, Inc. | SQL-based database system with improved indexing methodology |
US5794229A (en) * | 1993-04-16 | 1998-08-11 | Sybase, Inc. | Database system with methodology for storing a database table by vertically partitioning all columns of the table |
US5852821A (en) | 1993-04-16 | 1998-12-22 | Sybase, Inc. | High-speed data base query method and apparatus |
US5519859A (en) * | 1993-11-15 | 1996-05-21 | Grace; John A. | Method and apparatus for automatic table selection and generation of structured query language instructions |
US5410693A (en) * | 1994-01-26 | 1995-04-25 | Wall Data Incorporated | Method and apparatus for accessing a database |
US5742806A (en) * | 1994-01-31 | 1998-04-21 | Sun Microsystems, Inc. | Apparatus and method for decomposing database queries for database management system including multiprocessor digital data processing system |
US5706503A (en) * | 1994-05-18 | 1998-01-06 | Etak Inc | Method of clustering multi-dimensional related data in a computer database by combining the two verticles of a graph connected by an edge having the highest score |
US5915257A (en) | 1994-10-11 | 1999-06-22 | Brio Technology, Inc. | Cross tab analysis and reporting method |
CA2176165A1 (en) | 1995-05-19 | 1996-11-20 | Hosagrahar Visvesvaraya Jagadish | Method for querying incrementally maintained transactional databases |
US5701451A (en) * | 1995-06-07 | 1997-12-23 | International Business Machines Corporation | Method for fulfilling requests of a web browser |
US6047323A (en) | 1995-10-19 | 2000-04-04 | Hewlett-Packard Company | Creation and migration of distributed streams in clusters of networked computers |
FR2740884B1 (en) | 1995-11-03 | 1997-12-19 | Bull Sa | ADMINISTRATOR INTERFACE FOR A DATABASE IN A DISTRIBUTED COMPUTING ENVIRONMENT |
US5761652A (en) * | 1996-03-20 | 1998-06-02 | International Business Machines Corporation | Constructing balanced multidimensional range-based bitmap indices |
JP3952518B2 (en) | 1996-03-29 | 2007-08-01 | 株式会社日立製作所 | Multidimensional data processing method |
US5832475A (en) * | 1996-03-29 | 1998-11-03 | International Business Machines Corporation | Database system and method employing data cube operator for group-by operations |
US5901287A (en) | 1996-04-01 | 1999-05-04 | The Sabre Group Inc. | Information aggregation and synthesization system |
US6041103A (en) | 1996-04-16 | 2000-03-21 | Lucent Technologies, Inc. | Interactive call identification |
US5999192A (en) | 1996-04-30 | 1999-12-07 | Lucent Technologies Inc. | Interactive data exploration apparatus and methods |
US5706495A (en) | 1996-05-07 | 1998-01-06 | International Business Machines Corporation | Encoded-vector indices for decision support and warehousing |
US5765028A (en) | 1996-05-07 | 1998-06-09 | Ncr Corporation | Method and apparatus for providing neural intelligence to a mail query agent in an online analytical processing system |
US5721910A (en) * | 1996-06-04 | 1998-02-24 | Exxon Research And Engineering Company | Relational database system containing a multidimensional hierachical model of interrelated subject categories with recognition capabilities |
US5767854A (en) * | 1996-09-27 | 1998-06-16 | Anwar; Mohammed S. | Multidimensional data display and manipulation system and methods for using same |
US5799300A (en) | 1996-12-12 | 1998-08-25 | International Business Machines Corporations | Method and system for performing range-sum queries on a data cube |
US5850547A (en) | 1997-01-08 | 1998-12-15 | Oracle Corporation | Method and apparatus for parallel processing aggregates using intermediate aggregate values |
US6034697A (en) | 1997-01-13 | 2000-03-07 | Silicon Graphics, Inc. | Interpolation between relational tables for purposes of animating a data visualization |
US5852819A (en) | 1997-01-30 | 1998-12-22 | Beller; Stephen E. | Flexible, modular electronic element patterning method and apparatus for compiling, processing, transmitting, and reporting data and information |
US5884299A (en) * | 1997-02-06 | 1999-03-16 | Ncr Corporation | Optimization of SQL queries involving aggregate expressions using a plurality of local and global aggregation operations |
US5926820A (en) * | 1997-02-27 | 1999-07-20 | International Business Machines Corporation | Method and system for performing range max/min queries on a data cube |
JPH10333953A (en) | 1997-04-01 | 1998-12-18 | Kokusai Zunou Sangyo Kk | Integrated data base system and computer-readable recording medium recording program for managing its data base structure |
JP3155991B2 (en) * | 1997-04-09 | 2001-04-16 | 日本アイ・ビー・エム株式会社 | Aggregate operation execution method and computer system |
US5978788A (en) | 1997-04-14 | 1999-11-02 | International Business Machines Corporation | System and method for generating multi-representations of a data cube |
US6182060B1 (en) | 1997-04-15 | 2001-01-30 | Robert Hedgcock | Method and apparatus for storing, retrieving, and processing multi-dimensional customer-oriented data sets |
US5794246A (en) * | 1997-04-30 | 1998-08-11 | Informatica Corporation | Method for incremental aggregation of dynamically increasing database data sets |
US5946692A (en) * | 1997-05-08 | 1999-08-31 | At & T Corp | Compressed representation of a data base that permits AD HOC querying |
US5890151A (en) | 1997-05-09 | 1999-03-30 | International Business Machines Corporation | Method and system for performing partial-sum queries on a data cube |
US6115705A (en) * | 1997-05-19 | 2000-09-05 | Microsoft Corporation | Relational database system and method for query processing using early aggregation |
US5946711A (en) * | 1997-05-30 | 1999-08-31 | Oracle Corporation | System for locking data in a shared cache |
US6078994A (en) * | 1997-05-30 | 2000-06-20 | Oracle Corporation | System for maintaining a shared cache in a multi-threaded computer environment |
US6324623B1 (en) | 1997-05-30 | 2001-11-27 | Oracle Corporation | Computing system for implementing a shared cache |
US6209036B1 (en) * | 1997-06-06 | 2001-03-27 | International Business Machines Corporation | Management of and access to information and other material via the world wide web in an LDAP environment |
US5890154A (en) * | 1997-06-06 | 1999-03-30 | International Business Machines Corp. | Merging database log files through log transformations |
US6397195B1 (en) | 1997-06-27 | 2002-05-28 | Hyperion Solutions Corporation | System for managing accounting information in a multi-dimensional database |
US5978796A (en) * | 1997-06-30 | 1999-11-02 | International Business Machines Corporation | Accessing multi-dimensional data by mapping dense data blocks to rows in a relational database |
US5905985A (en) | 1997-06-30 | 1999-05-18 | International Business Machines Corporation | Relational database modifications based on multi-dimensional database modifications |
US6205447B1 (en) | 1997-06-30 | 2001-03-20 | International Business Machines Corporation | Relational database management of multi-dimensional data |
US5963936A (en) | 1997-06-30 | 1999-10-05 | International Business Machines Corporation | Query processing system that computes GROUPING SETS, ROLLUP, and CUBE with a reduced number of GROUP BYs in a query graph model |
US5943668A (en) | 1997-06-30 | 1999-08-24 | International Business Machines Corporation | Relational emulation of a multi-dimensional database |
US5940818A (en) * | 1997-06-30 | 1999-08-17 | International Business Machines Corporation | Attribute-based access for multi-dimensional databases |
US5926818A (en) | 1997-06-30 | 1999-07-20 | International Business Machines Corporation | Relational database implementation of a multi-dimensional database |
US5999924A (en) | 1997-07-25 | 1999-12-07 | Amazon.Com, Inc. | Method and apparatus for producing sequenced queries |
US6073140A (en) * | 1997-07-29 | 2000-06-06 | Acxiom Corporation | Method and system for the creation, enhancement and update of remote data using persistent keys |
US6006216A (en) | 1997-07-29 | 1999-12-21 | Lucent Technologies Inc. | Data architecture for fetch-intensive database applications |
US5987467A (en) | 1997-08-15 | 1999-11-16 | At&T Corp. | Method of calculating tuples for data cubes |
US6003029A (en) * | 1997-08-22 | 1999-12-14 | International Business Machines Corporation | Automatic subspace clustering of high dimensional data for data mining applications |
US6094651A (en) * | 1997-08-22 | 2000-07-25 | International Business Machines Corporation | Discovery-driven exploration of OLAP data cubes |
US5995945A (en) | 1997-08-25 | 1999-11-30 | I2 Technologies, Inc. | System and process for inter-domain planning analysis and optimization using model agents as partial replicas of remote domains |
US5940822A (en) | 1997-08-29 | 1999-08-17 | International Business Machines Corporation | Encoding method of members related by multiple concept or group hierarchies and identification of members in a corpus or a database that are descendants of one or more selected concepts or groups from the encoding |
US6141655A (en) | 1997-09-23 | 2000-10-31 | At&T Corp | Method and apparatus for optimizing and structuring data by designing a cube forest data structure for hierarchically split cube forest template |
US5937410A (en) | 1997-10-16 | 1999-08-10 | Johnson Controls Technology Company | Method of transforming graphical object diagrams to product data manager schema |
US6023695A (en) | 1997-10-31 | 2000-02-08 | Oracle Corporation | Summary table management in a computer system |
US6691118B1 (en) * | 1997-10-31 | 2004-02-10 | Oracle International Corporation | Context management system for modular software architecture |
US6134541A (en) | 1997-10-31 | 2000-10-17 | International Business Machines Corporation | Searching multidimensional indexes using associated clustering and dimension reduction information |
US5943677A (en) * | 1997-10-31 | 1999-08-24 | Oracle Corporation | Sparsity management system for multi-dimensional databases |
US6122628A (en) | 1997-10-31 | 2000-09-19 | International Business Machines Corporation | Multidimensional data clustering and dimension reduction for indexing and searching |
US6275818B1 (en) * | 1997-11-06 | 2001-08-14 | International Business Machines Corporation | Cost based optimization of decision support queries using transient views |
US6014670A (en) * | 1997-11-07 | 2000-01-11 | Informatica Corporation | Apparatus and method for performing data transformations in data warehousing |
US6339775B1 (en) * | 1997-11-07 | 2002-01-15 | Informatica Corporation | Apparatus and method for performing data transformations in data warehousing |
US5974416A (en) | 1997-11-10 | 1999-10-26 | Microsoft Corporation | Method of creating a tabular data stream for sending rows of data between client and server |
US6151601A (en) * | 1997-11-12 | 2000-11-21 | Ncr Corporation | Computer architecture and method for collecting, analyzing and/or transforming internet and/or electronic commerce data for storage into a data storage area |
US6934687B1 (en) * | 1997-11-20 | 2005-08-23 | Ncr Corporation | Computer architecture and method for supporting and analyzing electronic commerce over the world wide web for commerce service providers and/or internet service providers |
US6151584A (en) | 1997-11-20 | 2000-11-21 | Ncr Corporation | Computer architecture and method for validating and collecting and metadata and data about the internet and electronic commerce environments (data discoverer) |
US5918232A (en) | 1997-11-26 | 1999-06-29 | Whitelight Systems, Inc. | Multidimensional domain modeling method and system |
US6628312B1 (en) | 1997-12-02 | 2003-09-30 | Inxight Software, Inc. | Interactive interface for visualizing and manipulating multi-dimensional data |
US6418450B2 (en) * | 1998-01-26 | 2002-07-09 | International Business Machines Corporation | Data warehouse programs architecture |
US6078924A (en) * | 1998-01-30 | 2000-06-20 | Aeneid Corporation | Method and apparatus for performing data collection, interpretation and analysis, in an information platform |
US6003036A (en) | 1998-02-12 | 1999-12-14 | Martin; Michael W. | Interval-partitioning method for multidimensional data |
WO1999042942A1 (en) * | 1998-02-23 | 1999-08-26 | Ron Ribitzky | Component based object-relational database infrastructure and user interface |
US6405173B1 (en) * | 1998-03-05 | 2002-06-11 | American Management Systems, Inc. | Decision management system providing qualitative account/customer assessment via point in time simulation |
US6546545B1 (en) * | 1998-03-05 | 2003-04-08 | American Management Systems, Inc. | Versioning in a rules based decision management system |
US6430545B1 (en) * | 1998-03-05 | 2002-08-06 | American Management Systems, Inc. | Use of online analytical processing (OLAP) in a rules based decision management system |
US6601034B1 (en) * | 1998-03-05 | 2003-07-29 | American Management Systems, Inc. | Decision management system which is cross-function, cross-industry and cross-platform |
US6609120B1 (en) * | 1998-03-05 | 2003-08-19 | American Management Systems, Inc. | Decision management system which automatically searches for strategy components in a strategy |
US6321206B1 (en) | 1998-03-05 | 2001-11-20 | American Management Systems, Inc. | Decision management system for creating strategies to control movement of clients across categories |
US6115714A (en) | 1998-03-20 | 2000-09-05 | Kenan Systems Corp. | Triggering mechanism for multi-dimensional databases |
US6411681B1 (en) * | 1998-03-26 | 2002-06-25 | Bell Atlantic Network Services, Inc. | Traffic track measurements for analysis of network troubles |
US6385301B1 (en) * | 1998-03-26 | 2002-05-07 | Bell Atlantic Services Network, Inc. | Data preparation for traffic track usage measurement |
US6199063B1 (en) | 1998-03-27 | 2001-03-06 | Red Brick Systems, Inc. | System and method for rewriting relational database queries |
US6078918A (en) * | 1998-04-02 | 2000-06-20 | Trivada Corporation | Online predictive memory |
US6125624A (en) | 1998-04-17 | 2000-10-03 | Pratt & Whitney Canada Corp. | Anti-coking fuel injector purging device |
US6161103A (en) * | 1998-05-06 | 2000-12-12 | Epiphany, Inc. | Method and apparatus for creating aggregates for use in a datamart |
US6212524B1 (en) | 1998-05-06 | 2001-04-03 | E.Piphany, Inc. | Method and apparatus for creating and populating a datamart |
US6189004B1 (en) | 1998-05-06 | 2001-02-13 | E. Piphany, Inc. | Method and apparatus for creating a datamart and for creating a query structure for the datamart |
US6212617B1 (en) * | 1998-05-13 | 2001-04-03 | Microsoft Corporation | Parallel processing method and system using a lazy parallel data type to reduce inter-processor communication |
US6108647A (en) | 1998-05-21 | 2000-08-22 | Lucent Technologies, Inc. | Method, apparatus and programmed medium for approximating the data cube and obtaining approximate answers to queries in relational databases |
US6324533B1 (en) | 1998-05-29 | 2001-11-27 | International Business Machines Corporation | Integrated database and data-mining system |
US6289352B1 (en) | 1998-05-29 | 2001-09-11 | Crystal Decisions, Inc. | Apparatus and method for compound on-line analytical processing in databases |
US6157955A (en) * | 1998-06-15 | 2000-12-05 | Intel Corporation | Packet processing system including a policy engine having a classification unit |
JP2000011005A (en) * | 1998-06-17 | 2000-01-14 | Hitachi Ltd | Data analyzing method and its device and computer- readable recording medium recorded with data analytical program |
US6587857B1 (en) * | 1998-06-30 | 2003-07-01 | Citicorp Development Center, Inc. | System and method for warehousing and retrieving data |
US6282546B1 (en) * | 1998-06-30 | 2001-08-28 | Cisco Technology, Inc. | System and method for real-time insertion of data into a multi-dimensional database for network intrusion detection and vulnerability assessment |
US6009432A (en) | 1998-07-08 | 1999-12-28 | Required Technologies, Inc. | Value-instance-connectivity computer-implemented database |
JP3213585B2 (en) * | 1998-07-09 | 2001-10-02 | 株式会社インフォメックス | Data search method and apparatus, data search system, recording medium |
JP2000048087A (en) * | 1998-07-15 | 2000-02-18 | Internatl Business Mach Corp <Ibm> | View synthesizing system |
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 |
US6446061B1 (en) | 1998-07-31 | 2002-09-03 | International Business Machines Corporation | Taxonomy generation for document collections |
US6567814B1 (en) * | 1998-08-26 | 2003-05-20 | Thinkanalytics Ltd | Method and apparatus for knowledge discovery in databases |
US6535868B1 (en) * | 1998-08-27 | 2003-03-18 | Debra A. Galeazzi | Method and apparatus for managing metadata in a database management system |
US6826593B1 (en) | 1998-09-01 | 2004-11-30 | Lucent Technologies Inc. | Computer implemented method and apparatus for fulfilling a request for information content with a user-selectable version of a file containing that information content |
JP2002526833A (en) | 1998-09-30 | 2002-08-20 | アイツー テクノロジーズ, インコーポレイテッド | Multidimensional data management system |
US6480850B1 (en) | 1998-10-02 | 2002-11-12 | Ncr Corporation | System and method for managing data privacy in a database management system including a dependently connected privacy data mart |
US6301579B1 (en) | 1998-10-20 | 2001-10-09 | Silicon Graphics, Inc. | Method, system, and computer program product for visualizing a data structure |
US6317750B1 (en) | 1998-10-26 | 2001-11-13 | Hyperion Solutions Corporation | Method and apparatus for accessing multidimensional data |
US6249769B1 (en) * | 1998-11-02 | 2001-06-19 | International Business Machines Corporation | Method, system and program product for evaluating the business requirements of an enterprise for generating business solution deliverables |
US6212515B1 (en) * | 1998-11-03 | 2001-04-03 | Platinum Technology, Inc. | Method and apparatus for populating sparse matrix entries from corresponding data |
US6256676B1 (en) * | 1998-11-18 | 2001-07-03 | Saga Software, Inc. | Agent-adapter architecture for use in enterprise application integration systems |
US6738975B1 (en) * | 1998-11-18 | 2004-05-18 | Software Ag, Inc. | Extensible distributed enterprise application integration system |
US6532459B1 (en) | 1998-12-15 | 2003-03-11 | Berson Research Corp. | System for finding, identifying, tracking, and correcting personal information in diverse databases |
JP4172559B2 (en) * | 1998-12-22 | 2008-10-29 | カシオ計算機株式会社 | Data analysis result notification device and recording medium |
US5991754A (en) | 1998-12-28 | 1999-11-23 | Oracle Corporation | Rewriting a query in terms of a summary based on aggregate computability and canonical format, and when a dimension table is on the child side of an outer join |
US6424979B1 (en) * | 1998-12-30 | 2002-07-23 | American Management Systems, Inc. | System for presenting and managing enterprise architectures |
US6363353B1 (en) * | 1999-01-15 | 2002-03-26 | Metaedge Corporation | System for providing a reverse star schema data model |
US6411961B1 (en) * | 1999-01-15 | 2002-06-25 | Metaedge Corporation | Apparatus for providing a reverse star schema data model |
US6377934B1 (en) * | 1999-01-15 | 2002-04-23 | Metaedge Corporation | Method for providing a reverse star schema data model |
US6487547B1 (en) | 1999-01-29 | 2002-11-26 | Oracle Corporation | Database appliance comprising hardware and software bundle configured for specific database applications |
US6330564B1 (en) | 1999-02-10 | 2001-12-11 | International Business Machines Corporation | System and method for automated problem isolation in systems with measurements structured as a multidimensional database |
US6513019B2 (en) * | 1999-02-16 | 2003-01-28 | Financial Technologies International, Inc. | Financial consolidation and communication platform |
US6532458B1 (en) * | 1999-03-15 | 2003-03-11 | Microsoft Corporation | Sampling for database systems |
US6542886B1 (en) * | 1999-03-15 | 2003-04-01 | Microsoft Corporation | Sampling over joins for database systems |
US6694316B1 (en) * | 1999-03-23 | 2004-02-17 | Microstrategy Inc. | System and method for a subject-based channel distribution of automatic, real-time delivery of personalized informational and transactional data |
US6173310B1 (en) * | 1999-03-23 | 2001-01-09 | Microstrategy, Inc. | System and method for automatic transmission of on-line analytical processing system report output |
US6154766A (en) | 1999-03-23 | 2000-11-28 | Microstrategy, Inc. | System and method for automatic transmission of personalized OLAP report output |
US6567796B1 (en) * | 1999-03-23 | 2003-05-20 | Microstrategy, Incorporated | System and method for management of an automatic OLAP report broadcast system |
US6260050B1 (en) * | 1999-03-23 | 2001-07-10 | Microstrategy, Inc. | System and method of adapting automatic output of service related OLAP reports to disparate output devices |
US6460026B1 (en) | 1999-03-30 | 2002-10-01 | Microsoft Corporation | Multidimensional data ordering |
US6535872B1 (en) | 1999-04-08 | 2003-03-18 | International Business Machines Corporation | Method and apparatus for dynamically representing aggregated and segmented data views using view element sets |
US6549907B1 (en) | 1999-04-22 | 2003-04-15 | Microsoft Corporation | Multi-dimensional database and data cube compression for aggregate query support on numeric dimensions |
US6167396A (en) | 1999-05-12 | 2000-12-26 | Knosys, Inc. | Method and apparatus for navigating and displaying data points stored in a multidimensional database |
US6560594B2 (en) * | 1999-05-13 | 2003-05-06 | International Business Machines Corporation | Cube indices for relational database management systems |
US6163774A (en) | 1999-05-24 | 2000-12-19 | Platinum Technology Ip, Inc. | Method and apparatus for simplified and flexible selection of aggregate and cross product levels for a data warehouse |
US6282544B1 (en) * | 1999-05-24 | 2001-08-28 | Computer Associates Think, Inc. | Method and apparatus for populating multiple data marts in a single aggregation process |
US6285994B1 (en) | 1999-05-25 | 2001-09-04 | International Business Machines Corporation | Method and system for efficiently searching an encoded vector index |
US6279033B1 (en) * | 1999-05-28 | 2001-08-21 | Microstrategy, Inc. | System and method for asynchronous control of report generation using a network interface |
US6470344B1 (en) | 1999-05-29 | 2002-10-22 | Oracle Corporation | Buffering a hierarchical index of multi-dimensional data |
US6381605B1 (en) * | 1999-05-29 | 2002-04-30 | Oracle Corporation | Heirarchical indexing of multi-attribute data by sorting, dividing and storing subsets |
US6411313B1 (en) * | 1999-06-14 | 2002-06-25 | Microsoft Corporation | User interface for creating a spreadsheet pivottable |
US6366905B1 (en) * | 1999-06-22 | 2002-04-02 | Microsoft Corporation | Aggregations design in database services |
US6424972B1 (en) * | 1999-06-22 | 2002-07-23 | Microsoft Corporation | Floating point conversion for records of multidimensional database |
US6374234B1 (en) | 1999-06-22 | 2002-04-16 | Microsoft Corporation | Aggregations performance estimation in database systems |
US6446059B1 (en) | 1999-06-22 | 2002-09-03 | Microsoft Corporation | Record for a multidimensional database with flexible paths |
US6438537B1 (en) * | 1999-06-22 | 2002-08-20 | Microsoft Corporation | Usage based aggregation optimization |
US6456999B1 (en) | 1999-06-22 | 2002-09-24 | Microsoft Corporation | Aggregations size estimation in database services |
US6477536B1 (en) | 1999-06-22 | 2002-11-05 | Microsoft Corporation | Virtual cubes |
US6442560B1 (en) * | 1999-06-22 | 2002-08-27 | Microsoft Corporation | Record for multidimensional databases |
US6493728B1 (en) | 1999-06-22 | 2002-12-10 | Microsoft Corporation | Data compression for records of multidimensional database |
US6223573B1 (en) * | 1999-06-25 | 2001-05-01 | General Electric Company | Method for precision temperature controlled hot forming |
US6460031B1 (en) | 1999-06-28 | 2002-10-01 | Sap Aktiengesellschaft | System and method for creating and titling reports using an integrated title bar and navigator |
US6707454B1 (en) * | 1999-07-01 | 2004-03-16 | Lucent Technologies Inc. | Systems and methods for visualizing multi-dimensional data in spreadsheets and other data structures |
US6708155B1 (en) * | 1999-07-07 | 2004-03-16 | American Management Systems, Inc. | Decision management system with automated strategy optimization |
US6665682B1 (en) | 1999-07-19 | 2003-12-16 | International Business Machines Corporation | Performance of table insertion by using multiple tables or multiple threads |
US6453322B1 (en) | 1999-07-19 | 2002-09-17 | International Business Machines Corporation | Extension of data definition language (DDL) capabilities for relational databases for applications issuing multiple units of work |
US6374263B1 (en) | 1999-07-19 | 2002-04-16 | International Business Machines Corp. | System for maintaining precomputed views |
US6480848B1 (en) | 1999-07-19 | 2002-11-12 | International Business Machines Corporation | Extension of data definition language (DDL) capabilities for relational databases for applications issuing DML and DDL statements |
US6836894B1 (en) | 1999-07-27 | 2004-12-28 | International Business Machines Corporation | Systems and methods for exploratory analysis of data for event management |
US6581054B1 (en) * | 1999-07-30 | 2003-06-17 | Computer Associates Think, Inc. | Dynamic query model and method |
US6691140B1 (en) * | 1999-07-30 | 2004-02-10 | Computer Associates Think, Inc. | Method and system for multidimensional storage model with interdimensional links |
US6842758B1 (en) * | 1999-07-30 | 2005-01-11 | Computer Associates Think, Inc. | Modular method and system for performing database queries |
US6442269B1 (en) * | 1999-08-23 | 2002-08-27 | Aspect Communications | Method and apparatus for integrating business data and transaction data in a transaction processing environment |
US6542895B1 (en) * | 1999-08-30 | 2003-04-01 | International Business Machines Corporation | Multi-dimensional restructure performance when adding or removing dimensions and dimensions members |
US6546395B1 (en) * | 1999-08-30 | 2003-04-08 | International Business Machines Corporation | Multi-dimensional restructure performance by selecting a technique to modify a relational database based on a type of restructure |
US6587547B1 (en) | 1999-09-13 | 2003-07-01 | Microstrategy, Incorporated | System and method for the creation and automatic deployment of personalized, dynamic and interactive voice services, with real-time drilling via telephone |
US6430547B1 (en) * | 1999-09-22 | 2002-08-06 | International Business Machines Corporation | Method and system for integrating spatial analysis and data mining analysis to ascertain relationships between collected samples and geology with remotely sensed data |
US6493723B1 (en) | 1999-09-22 | 2002-12-10 | International Business Machines Corporation | Method and system for integrating spatial analysis and data mining analysis to ascertain warranty issues associated with transportation products |
US6493718B1 (en) | 1999-10-15 | 2002-12-10 | Microsoft Corporation | Adaptive database caching and data retrieval mechanism |
US6898603B1 (en) * | 1999-10-15 | 2005-05-24 | Microsoft Corporation | Multi-dimensional data structure caching |
US6473764B1 (en) | 1999-10-15 | 2002-10-29 | Microsoft Corporation | Virtual dimensions in databases and method therefor |
US6473750B1 (en) | 1999-10-15 | 2002-10-29 | Microsoft Corporation | Adaptive query execution in a distributed database system |
US6405207B1 (en) * | 1999-10-15 | 2002-06-11 | Microsoft Corporation | Reporting aggregate results from database queries |
US6677963B1 (en) * | 1999-11-16 | 2004-01-13 | Verizon Laboratories Inc. | Computer-executable method for improving understanding of business data by interactive rule manipulation |
FR2806183B1 (en) * | 1999-12-01 | 2006-09-01 | Cartesis S A | DEVICE AND METHOD FOR INSTANT CONSOLIDATION, ENRICHMENT AND "REPORTING" OR BACKGROUND OF INFORMATION IN A MULTIDIMENSIONAL DATABASE |
US6766325B1 (en) | 1999-12-02 | 2004-07-20 | Microsoft Corporation | System and method for maintaining data for performing “what if” analysis |
US6557008B1 (en) * | 1999-12-07 | 2003-04-29 | International Business Machines Corporation | Method for managing a heterogeneous IT computer complex |
US6405208B1 (en) | 1999-12-13 | 2002-06-11 | Hyperion Solutions Corporation | Dynamic recursive build for multidimensional databases and methods and apparatus thereof |
US7822629B2 (en) * | 1999-12-15 | 2010-10-26 | Hewlett-Packard Development Company, L.P. | Customer profiling apparatus for conducting customer behavior pattern analysis, and method for comparing customer behavior patterns |
US6434557B1 (en) * | 1999-12-30 | 2002-08-13 | Decode Genetics Ehf. | Online syntheses programming technique |
US6356900B1 (en) * | 1999-12-30 | 2002-03-12 | Decode Genetics Ehf | Online modifications of relations in multidimensional processing |
US6633875B2 (en) | 1999-12-30 | 2003-10-14 | Shaun Michael Brady | Computer database system and method for collecting and reporting real estate property and loan performance information over a computer driven network |
US6418427B1 (en) * | 1999-12-30 | 2002-07-09 | Decode Genetics Ehf | Online modifications of dimension structures in multidimensional processing |
US6671715B1 (en) | 2000-01-21 | 2003-12-30 | Microstrategy, Inc. | System and method for automatic, real-time delivery of personalized informational and transactional data to users via high throughput content delivery device |
US6615096B1 (en) | 2000-01-31 | 2003-09-02 | Ncr Corporation | Method using statistically analyzed product test data to control component manufacturing process |
US6947934B1 (en) | 2000-02-16 | 2005-09-20 | International Business Machines Corporation | Aggregate predicates and search in a database management system |
US6643608B1 (en) | 2000-02-22 | 2003-11-04 | General Electric Company | System and method for collecting and analyzing shipment parameter data affecting predicted statistical variables of shipped articles |
CA2327948A1 (en) | 2000-02-25 | 2001-08-25 | International Business Machines Corporation | System and method for accessing non-relational data by relational access methods |
DE60143491D1 (en) | 2000-03-16 | 2010-12-30 | Poly Vista Inc | SYSTEM AND METHOD FOR ANALYZING AN INQUIRY AND FOR GENERATING ANSWERS AND ASSOCIATED QUESTIONS |
US6662174B2 (en) | 2000-04-17 | 2003-12-09 | Brio Software, Inc. | Analytical server including metrics engine |
US6732115B2 (en) | 2000-04-27 | 2004-05-04 | Hyperion Solutions Corporation | Chameleon measure and metric calculation |
US7080090B2 (en) | 2000-04-27 | 2006-07-18 | Hyperion Solutions Corporation | Allocation measures and metric calculations in star schema multi-dimensional data warehouse |
US7167859B2 (en) | 2000-04-27 | 2007-01-23 | Hyperion Solutions Corporation | Database security |
US7072897B2 (en) | 2000-04-27 | 2006-07-04 | Hyperion Solutions Corporation | Non-additive measures and metric calculation |
AU2001261084A1 (en) | 2000-04-27 | 2001-11-07 | Brio Technology, Inc. | Method and apparatus for processing jobs on an enterprise-wide computer system |
US6941311B2 (en) | 2000-04-27 | 2005-09-06 | Hyperion Solutions Corporation | Aggregate navigation system |
US6748394B2 (en) | 2000-04-27 | 2004-06-08 | Hyperion Solutions Corporation | Graphical user interface for relational database |
US7096219B1 (en) | 2000-05-10 | 2006-08-22 | Teleran Technologies, Inc. | Method and apparatus for optimizing a data access customer service system |
US6594672B1 (en) | 2000-06-01 | 2003-07-15 | Hyperion Solutions Corporation | Generating multidimensional output using meta-models and meta-outlines |
US6763357B1 (en) | 2000-06-27 | 2004-07-13 | Ncr Corporation | Method for determining the computability of data for an active multi-dimensional cache in a relational database management system |
US6601062B1 (en) | 2000-06-27 | 2003-07-29 | Ncr Corporation | Active caching for multi-dimensional data sets in relational database management system |
US6399775B1 (en) * | 2000-07-13 | 2002-06-04 | Thota Giridhar | Methods for the preparation of polymorphs of doxazosin mesylate |
US7054866B2 (en) | 2001-03-20 | 2006-05-30 | Mci, Inc. | Systems and methods for communicating from an integration platform to a provisioning server |
US6801908B1 (en) | 2002-01-28 | 2004-10-05 | Supplychainge Inc | System and method for selectively presenting multi-dimensional data in two-dimensional form |
CA2371731A1 (en) | 2002-02-12 | 2003-08-12 | Cognos Incorporated | Database join disambiguation by grouping |
US20040247105A1 (en) | 2002-03-29 | 2004-12-09 | Karen Mullis | System and method for a network-based call reception limiter |
US7853508B2 (en) * | 2003-05-19 | 2010-12-14 | Serena Software, Inc. | Method and system for object-oriented management of multi-dimensional data |
US7778899B2 (en) * | 2003-05-19 | 2010-08-17 | Serena Software, Inc. | Method and system for object-oriented workflow management of multi-dimensional data |
US7366725B2 (en) * | 2003-08-11 | 2008-04-29 | Descisys Limited | Method and apparatus for data validation in multidimensional database |
US20080129747A1 (en) * | 2003-11-19 | 2008-06-05 | Reuven Bakalash | Multi-mode parallel graphics rendering system employing real-time automatic scene profiling and mode control |
-
1999
- 1999-08-04 US US09/368,241 patent/US6408292B1/en not_active Expired - Lifetime
-
2000
- 2000-02-28 US US09/514,611 patent/US6434544B1/en not_active Expired - Lifetime
- 2000-08-04 WO PCT/IB2000/001100 patent/WO2001011497A1/en active Application Filing
- 2000-08-04 AU AU60108/00A patent/AU6010800A/en not_active Abandoned
-
2002
- 2002-05-21 US US10/153,164 patent/US20030018642A1/en not_active Abandoned
-
2004
- 2004-05-25 US US10/854,034 patent/US20050060326A1/en not_active Abandoned
-
2007
- 2007-08-03 US US11/818,944 patent/US20080059415A1/en not_active Abandoned
-
2010
- 2010-01-14 US US12/657,143 patent/US8041670B2/en not_active Expired - Fee Related
-
2011
- 2011-10-17 US US13/275,242 patent/US8788453B2/en not_active Expired - Fee Related
- 2011-11-04 US US13/289,954 patent/US8799209B2/en not_active Expired - Fee Related
Patent Citations (49)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5805885A (en) * | 1992-12-24 | 1998-09-08 | Microsoft Corporation | Method and system for aggregating objects |
US5745764A (en) * | 1992-12-24 | 1998-04-28 | Microsoft Corporation | Method and system for aggregating objects |
US5781896A (en) * | 1994-06-30 | 1998-07-14 | Microsoft Corporation | Method and system for efficiently performing database table aggregation using an aggregation index |
US5857184A (en) * | 1996-05-03 | 1999-01-05 | Walden Media, Inc. | Language and method for creating, organizing, and retrieving data from a database |
US5848424A (en) * | 1996-11-18 | 1998-12-08 | Toptier Software, Inc. | Data navigator interface with navigation as a function of draggable elements and drop targets |
US5822751A (en) * | 1996-12-16 | 1998-10-13 | Microsoft Corporation | Efficient multidimensional data aggregation operator implementation |
US6441834B1 (en) * | 1998-03-26 | 2002-08-27 | Sap Portals, Inc. | Hyper-relational correlation server |
US6775674B1 (en) * | 1998-03-26 | 2004-08-10 | Sap Aktiengesellschaft | Auto completion of relationships between objects in a data model |
US6480842B1 (en) * | 1998-03-26 | 2002-11-12 | Sap Portals, Inc. | Dimension to domain server |
US20010013030A1 (en) * | 1998-03-27 | 2001-08-09 | Informix Software, Inc. | Defining and characterizing an analysis space for precomputed views |
US20020077997A1 (en) * | 1998-03-27 | 2002-06-20 | Informix Software, Inc., A California Corporation | Server integrated systems and methods for processing precomputed views |
US20040243607A1 (en) * | 1999-04-16 | 2004-12-02 | Tummalapalli Venkat Ranga Reddy | Multidimensional repositories for problem discovery and capacity planning of database applications |
US20030200221A1 (en) * | 1999-08-04 | 2003-10-23 | Reuven Bakalash | Stand-alone cartridge-style data aggregation server |
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 |
US7392248B2 (en) * | 1999-08-04 | 2008-06-24 | Hyperroll Israel, Ltd. | Data aggregation server supporting rapid query response with sparse multi-dimensional data |
US20070192295A1 (en) * | 1999-08-04 | 2007-08-16 | Reuven Bakalash | Relational database management system having integrated non-relational multi-dimensional data store or aggregated data elements |
US20050091237A1 (en) * | 1999-08-04 | 2005-04-28 | Reuven Bakalash | Relational database management system having integrated non-relational multi-dimensional data store of aggregated data elements |
US20050060326A1 (en) * | 1999-08-04 | 2005-03-17 | Reuven Bakalash | Stand-alone cartridge-style data aggregation server and method of and system for managing multi-dimensional databases using the same |
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 |
US20030225752A1 (en) * | 1999-08-04 | 2003-12-04 | Reuven Bakalash | Central data warehouse with integrated data aggregation engine for performing centralized data aggregation operations |
US20020194167A1 (en) * | 1999-08-04 | 2002-12-19 | Reuven Bakalash | Relational database management system having integrated non-relational multi-dimensional data store of aggregated data elements |
US20030018642A1 (en) * | 1999-08-04 | 2003-01-23 | Reuven Bakalash | Stand-alone cartridge style data aggregation server and method of and system for managing multi-dimensional databases using the same |
US6434544B1 (en) * | 1999-08-04 | 2002-08-13 | Hyperroll, Israel Ltd. | Stand-alone cartridge-style data aggregation server providing data aggregation for OLAP analyses |
US20030055832A1 (en) * | 1999-10-25 | 2003-03-20 | Oracle Corporation | Storing multidimensional data in a relational database management system |
US6484179B1 (en) * | 1999-10-25 | 2002-11-19 | Oracle Corporation | Storing multidimensional data in a relational database management system |
US20030208503A1 (en) * | 1999-10-25 | 2003-11-06 | Oracle International Corporation | Techniques for indexing into a row of a database table |
US6636870B2 (en) * | 1999-10-25 | 2003-10-21 | Oracle Corporation | Storing multidimensional data in a relational database management system |
US6778996B2 (en) * | 1999-10-25 | 2004-08-17 | Oracle International Corporation | Techniques for indexing into a row of a database table |
US20050065940A1 (en) * | 2000-02-28 | 2005-03-24 | Reuven Bakalash | Data aggregation server for managing a multi-dimensional database and database management system having data aggregation server integrated therein |
US20050149491A1 (en) * | 2000-02-28 | 2005-07-07 | Reuven Bakalash | Database management system having data aggregation module integrated therein |
US20020184187A1 (en) * | 2000-02-28 | 2002-12-05 | Reuven Bakalash | Method of and apparatus for data aggregation utilizing a multidimensdional database and multi-stage data aggregation operations |
US20030225736A1 (en) * | 2000-02-28 | 2003-12-04 | Reuven Bakalash | Enterprise-wide resource planning (ERP) system with integrated data aggregation 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 |
US20050055329A1 (en) * | 2000-02-28 | 2005-03-10 | Reuven Bakalash | Database management system having data aggregation module integrated therein |
US20050060325A1 (en) * | 2000-02-28 | 2005-03-17 | Reuven Bakalash | Method of and apparatus for data aggregation utilizing a multidimensional database and multi-stage data aggregation operations |
US20020129032A1 (en) * | 2000-02-28 | 2002-09-12 | Hyperroll Israel Ltd. | Database management system having a data aggregation module integrated therein |
US20030217079A1 (en) * | 2000-02-28 | 2003-11-20 | Reuven Bakalash | Customer relationship management (CRM) system with integrated data aggregation engine |
US20050076067A1 (en) * | 2000-02-28 | 2005-04-07 | Hyperroll Israel, Limited | Method of and system for data aggregation employing dimensional hierarchy transformation |
US20020143783A1 (en) * | 2000-02-28 | 2002-10-03 | Hyperroll Israel, Limited | Method of and system for data aggregation employing dimensional hierarchy transformation |
US20030229652A1 (en) * | 2000-02-28 | 2003-12-11 | Reuven Bakalash | Enterprise-wide data-warehouse with integrated data aggregation engine |
US20020129003A1 (en) * | 2000-02-28 | 2002-09-12 | Reuven Bakalash | Data database and database management system having data aggregation module integrated therein |
US20070233644A1 (en) * | 2000-02-28 | 2007-10-04 | Reuven Bakalash | System with a data aggregation module generating aggregated data for responding to OLAP analysis queries in a user transparent manner |
US20080016057A1 (en) * | 2000-02-28 | 2008-01-17 | Reuve Bakalash | Data aggregation server for managing a multi-dimensional database and database management system having data aggregation server integrated therein |
US20080016043A1 (en) * | 2000-02-28 | 2008-01-17 | Reuven Bakalash | Relational database management system (RDBMS) employing multi-dimensional database (MDDB) for servicing query statements through one or more client machines |
US20080021915A1 (en) * | 2000-02-28 | 2008-01-24 | Reuven Bakalash | Relational database management system (RDBMS) employing a relational datastore and a multi-dimensional database (MDDB) for serving query statements from client machines |
US20080021893A1 (en) * | 2000-02-28 | 2008-01-24 | Reuven Bakalash | Method of servicing query statements from a client machine using a database management system (DBMS) employing a relational datastore and a multi-dimensional database (MDDB) |
US20080021864A1 (en) * | 2000-02-28 | 2008-01-24 | Reuven Bakalash | Database management system (DBMS) employing a relational datastore and a multi-dimensional database (MDDB) for servicing query statements in a manner transparent to client machine |
US7333982B2 (en) * | 2000-02-28 | 2008-02-19 | Hyperroll Israel, Ltd. | Information system having a mode of operation in which queries form one or more clients are serviced using aggregated data retrieved from a plurality of different types of data storage structures for improved query performance |
US20020091707A1 (en) * | 2000-06-10 | 2002-07-11 | International Business Machines Corporation | Automatic determination of OLAP cube dimensions |
Cited By (44)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070192295A1 (en) * | 1999-08-04 | 2007-08-16 | Reuven Bakalash | Relational database management system having integrated non-relational multi-dimensional data store or aggregated data elements |
US8463736B2 (en) * | 1999-08-04 | 2013-06-11 | Yanicklo Technology Limited Liability Company | Relational database management system having integrated non-relational multi-dimensional data store of aggregated data elements |
US8799209B2 (en) | 1999-08-04 | 2014-08-05 | Yanicklo Technology Limited Liability Company | Data aggregation module supporting dynamic query responsive aggregation during the servicing of database query requests provided by one or more client machines |
US8041670B2 (en) * | 1999-08-04 | 2011-10-18 | Yanicklo Technology Limited Liability Company | Data aggregation module supporting dynamic query responsive aggregation during the servicing of database query requests provided by one or more client machines |
US20100185581A1 (en) * | 1999-08-04 | 2010-07-22 | Hyperroll, Inc. | Data aggregation module supporting dynamic query responsive aggregation during the servicing of database query requests provided by one or more client machines |
US8788453B2 (en) | 1999-08-04 | 2014-07-22 | Yanicklo Technology Limited Liability Company | Data aggregation module supporting dynamic query responsive aggregation during the servicing of database query requests provided by one or more client machines |
US20090271384A1 (en) * | 1999-08-04 | 2009-10-29 | Hyperroll Israel, Ltd. | Relational database management system having integrated non-relational multi-dimensional data store of aggregated data elements |
US20080021915A1 (en) * | 2000-02-28 | 2008-01-24 | Reuven Bakalash | Relational database management system (RDBMS) employing a relational datastore and a multi-dimensional database (MDDB) for serving query statements from client machines |
US20080021864A1 (en) * | 2000-02-28 | 2008-01-24 | Reuven Bakalash | Database management system (DBMS) employing a relational datastore and a multi-dimensional database (MDDB) for servicing query statements in a manner transparent to client machine |
US20100042645A1 (en) * | 2000-02-28 | 2010-02-18 | Hyperroll Israel, Ltd. | System with a data aggregation module generating aggregated data for responding to OLAP analysis queries in a user transparent manner |
US20100063958A1 (en) * | 2000-02-28 | 2010-03-11 | Hyperroll Israel, Ltd. | Database management system (DBMS) employing a relational datastore and a multi-dimensional database (MDDB) for servicing query statements in a manner transparent to client machine |
US20090271379A1 (en) * | 2000-02-28 | 2009-10-29 | Hyperroll Israel, Ltd. | Relational database management system (RDBMS) employing a relational datastore and a multi-dimensional database (MDDB) for serving query statements from client machines |
US20100100558A1 (en) * | 2000-02-28 | 2010-04-22 | Hyperroll, Inc. | Method of servicing query statements from a client machine using a database management system (DBMS) employing a relational datastore and a multi-dimensional database (MDDB) |
US20080021893A1 (en) * | 2000-02-28 | 2008-01-24 | Reuven Bakalash | Method of servicing query statements from a client machine using a database management system (DBMS) employing a relational datastore and a multi-dimensional database (MDDB) |
US20090276410A1 (en) * | 2000-02-28 | 2009-11-05 | Hyperroll Israel, Ltd. | Relational database management system (RDBMS) employing multi-dimensional database (MDDB) for servicing query statements through one or more client machines |
US20080016057A1 (en) * | 2000-02-28 | 2008-01-17 | Reuve Bakalash | Data aggregation server for managing a multi-dimensional database and database management system having data aggregation server integrated therein |
US8170984B2 (en) * | 2000-02-28 | 2012-05-01 | Yanicklo Technology Limited Liability Company | System with a data aggregation module generating aggregated data for responding to OLAP analysis queries in a user transparent manner |
US8195602B2 (en) * | 2000-02-28 | 2012-06-05 | Yanicklo Technology Limited Liability Company | Relational database management system (RDBMS) employing a relational datastore and a multi-dimensional database (MDDB) for serving query statements from client machines |
US8321373B2 (en) * | 2000-02-28 | 2012-11-27 | Yanicklo Technology Limited Liability | Method of servicing query statements from a client machine using a database management system (DBMS) employing a relational datastore and a multi-dimensional database (MDDB) |
US8452804B2 (en) * | 2000-02-28 | 2013-05-28 | Yanicklo Technology Limited Liability Company | Database management system (DBMS) employing a relational datastore and a multi-dimensional database (MDDB) for servicing query statements in a manner transparent to client machine |
US20080016043A1 (en) * | 2000-02-28 | 2008-01-17 | Reuven Bakalash | Relational database management system (RDBMS) employing multi-dimensional database (MDDB) for servicing query statements through one or more client machines |
US8473450B2 (en) * | 2000-02-28 | 2013-06-25 | Yanicklo Technology Limited Liability Company | Relational database management system (RDBMS) employing multi-dimensional database (MDDB) for servicing query statements through one or more client machines |
US20100094883A1 (en) * | 2008-10-09 | 2010-04-15 | International Business Machines Corporation | Method and Apparatus for Integrated Entity and Integrated Operations of Personalized Data Resource Across the World Wide Web for Online and Offline Interactions |
US8055657B2 (en) | 2008-10-09 | 2011-11-08 | International Business Machines Corporation | Integrated entity and integrated operations of personalized data resource across the world wide web for online and offline interactions |
US9292575B2 (en) | 2010-11-19 | 2016-03-22 | International Business Machines Corporation | Dynamic data aggregation from a plurality of data sources |
US9020972B1 (en) * | 2011-08-02 | 2015-04-28 | Google Inc. | System and method for constructing a database instruction |
US9990398B2 (en) | 2013-09-20 | 2018-06-05 | Oracle International Corporation | Inferring dimensional metadata from content of a query |
US20150088885A1 (en) * | 2013-09-20 | 2015-03-26 | Oracle International Corporation | Aggregating dimensional data using dense containers |
US9740718B2 (en) * | 2013-09-20 | 2017-08-22 | Oracle International Corporation | Aggregating dimensional data using dense containers |
US9836519B2 (en) | 2013-09-20 | 2017-12-05 | Oracle International Corporation | Densely grouping dimensional data |
US10642831B2 (en) | 2015-10-23 | 2020-05-05 | Oracle International Corporation | Static data caching for queries with a clause that requires multiple iterations to execute |
US10678792B2 (en) | 2015-10-23 | 2020-06-09 | Oracle International Corporation | Parallel execution of queries with a recursive clause |
US10783142B2 (en) | 2015-10-23 | 2020-09-22 | Oracle International Corporation | Efficient data retrieval in staged use of in-memory cursor duration temporary tables |
US10824613B2 (en) | 2016-08-12 | 2020-11-03 | Sap Se | Preconfiguring measures and dimensions in a database analytics application |
US20180046676A1 (en) * | 2016-08-12 | 2018-02-15 | Sap Se | Custom Query Parameters in a Database System |
US10824614B2 (en) * | 2016-08-12 | 2020-11-03 | Sap Se | Custom query parameters in a database system |
US10558659B2 (en) | 2016-09-16 | 2020-02-11 | Oracle International Corporation | Techniques for dictionary based join and aggregation |
US10747736B2 (en) * | 2016-11-09 | 2020-08-18 | Sap Se | Aggregation database for external dataset |
US20180129689A1 (en) * | 2016-11-09 | 2018-05-10 | Sap Se | Aggregation database for external dataset |
US11086876B2 (en) | 2017-09-29 | 2021-08-10 | Oracle International Corporation | Storing derived summaries on persistent memory of a storage device |
US11354373B2 (en) * | 2018-12-14 | 2022-06-07 | Sisense Ltd. | System and method for efficiently querying data using temporal granularities |
US11947613B2 (en) | 2018-12-14 | 2024-04-02 | Sisense Ltd. | System and method for efficiently querying data using temporal granularities |
US11222018B2 (en) | 2019-09-09 | 2022-01-11 | Oracle International Corporation | Cache conscious techniques for generation of quasi-dense grouping codes of compressed columnar data in relational database systems |
US20230342333A1 (en) * | 2022-04-24 | 2023-10-26 | Morgan Stanley Services Group Inc. | Distributed query execution and aggregation |
Also Published As
Publication number | Publication date |
---|---|
US8041670B2 (en) | 2011-10-18 |
US20050060326A1 (en) | 2005-03-17 |
US6408292B1 (en) | 2002-06-18 |
US6434544B1 (en) | 2002-08-13 |
US20030018642A1 (en) | 2003-01-23 |
US8799209B2 (en) | 2014-08-05 |
US20120089563A1 (en) | 2012-04-12 |
US20100185581A1 (en) | 2010-07-22 |
US20120089564A1 (en) | 2012-04-12 |
US8788453B2 (en) | 2014-07-22 |
WO2001011497A1 (en) | 2001-02-15 |
AU6010800A (en) | 2001-03-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8788453B2 (en) | Data aggregation module supporting dynamic query responsive aggregation during the servicing of database query requests provided by one or more client machines | |
US7333982B2 (en) | Information system having a mode of operation in which queries form one or more clients are serviced using aggregated data retrieved from a plurality of different types of data storage structures for improved query performance | |
CA2401348C (en) | Multi-dimensional database and integrated aggregation server |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: HYPERROLL, ISRAEL LIMITED, ISRAEL Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BAKALASH, REUVEN;SHAKED, GUY;CASPI, JOSEPH;REEL/FRAME:022882/0461 Effective date: 20001010 |
|
AS | Assignment |
Owner name: HYPERION SOLUTIONS CORPORATION, CALIFORNIA Free format text: LICENSE;ASSIGNOR:HYPERROLL, INC.;REEL/FRAME:023427/0597 Effective date: 20091026 |
|
AS | Assignment |
Owner name: HYPERROLL ISRAEL, LTD.,ISRAEL Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BAKALASH, REUVEN;SHAKED, GUY;CASPI, JOSEPH;SIGNING DATES FROM 20090813 TO 20090904;REEL/FRAME:023456/0705 Owner name: HYPERROLL ISRAEL, LTD., ISRAEL Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BAKALASH, REUVEN;SHAKED, GUY;CASPI, JOSEPH;SIGNING DATES FROM 20090813 TO 20090904;REEL/FRAME:023456/0705 Owner name: HYPEROLL ISRAEL, LTD., ISRAEL Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BAKALASH, REUVEN;SHAKED, GUY;CASPI, JOSEPH;REEL/FRAME:023456/0705;SIGNING DATES FROM 20090813 TO 20090904 |
|
AS | Assignment |
Owner name: HYPERROLL, INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HYPERROLL ISRAEL, LTD.;REEL/FRAME:023486/0795 Effective date: 20091014 Owner name: HYPERROLL, INC.,CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HYPERROLL ISRAEL, LTD.;REEL/FRAME:023486/0795 Effective date: 20091014 |
|
AS | Assignment |
Owner name: HYPERROLL ISRAEL, LTD., ISRAEL Free format text: CONFIRMATORY ASSIGNMENT;ASSIGNORS:BAKALASH, REUVEN;SHAKED, GUY;CASPI, JOSEPH;REEL/FRAME:023784/0916;SIGNING DATES FROM 20090813 TO 20090904 |
|
AS | Assignment |
Owner name: HR ASSET HOLDINGS, INC., CALIFORNIA Free format text: CHANGE OF NAME;ASSIGNOR:HYPERROLL, INC.;REEL/FRAME:023861/0460 Effective date: 20091030 Owner name: HR ASSET HOLDINGS, INC.,CALIFORNIA Free format text: CHANGE OF NAME;ASSIGNOR:HYPERROLL, INC.;REEL/FRAME:023861/0460 Effective date: 20091030 |
|
STCB | Information on status: application discontinuation |
Free format text: EXPRESSLY ABANDONED -- DURING EXAMINATION |
|
AS | Assignment |
Owner name: HYPERROLL ISRAEL, LTD., ISRAEL Free format text: CONFIRMATORY ASSIGNMENT;ASSIGNORS:BAKALASH, REUVEN;SHAKED, GUY;CASPI, JOSEPH;SIGNING DATES FROM 20090813 TO 20090904;REEL/FRAME:024693/0098 |
|
AS | Assignment |
Owner name: YANICKLO TECHNOLOGY LIMITED LIABILITY COMPANY, DEL Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HR ASSET HOLDINGS, INC.;REEL/FRAME:025184/0437 Effective date: 20100204 |
|
AS | Assignment |
Owner name: MEC MANAGEMENT, LLC, SOUTH DAKOTA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:BYLAS DISTRICT ECONOMIC ENTERPRISE LLC;REEL/FRAME:050145/0001 Effective date: 20190808 |
|
AS | Assignment |
Owner name: INTELLECTUAL VENTURES ASSETS 114 LLC, DELAWARE Free format text: SECURITY INTEREST;ASSIGNOR:BYLAS DISTRICT ECONOMIC ENTERPRISE, LLC;REEL/FRAME:054089/0864 Effective date: 20181207 Owner name: INTELLECTUAL VENTURES ASSETS 119 LLC, DELAWARE Free format text: SECURITY INTEREST;ASSIGNOR:BYLAS DISTRICT ECONOMIC ENTERPRISE, LLC;REEL/FRAME:054089/0864 Effective date: 20181207 |