Source: http://www.google.com/patents/US20080288538?ie=ISO-8859-1&dq=6188988
Timestamp: 2016-02-09 11:24:14
Document Index: 589648915

Matched Legal Cases: ['art 114', 'art 114', 'art 114', 'art 114', 'art 118', 'art 118', 'art 114']

Patent US20080288538 - Dimensional compression using an analytic platform - Google PatentsSearch Images Maps Play YouTube News Gmail Drive More »Sign inPatentsSystems and methods are presented that may involve receiving a causal fact dataset including facts relating to items perceived to cause actions, wherein the causal fact dataset includes a data attribute that is associated with a causal fact datum. It may also involve pre-aggregating a plurality of the...http://www.google.com/patents/US20080288538?utm_source=gb-gplus-sharePatent US20080288538 - Dimensional compression using an analytic platformAdvanced Patent SearchPublication numberUS20080288538 A1Publication typeApplicationApplication numberUS 12/023,283Publication dateNov 20, 2008Filing dateJan 31, 2008Priority dateJan 26, 2007Publication number023283, 12023283, US 2008/0288538 A1, US 2008/288538 A1, US 20080288538 A1, US 20080288538A1, US 2008288538 A1, US 2008288538A1, US-A1-20080288538, US-A1-2008288538, US2008/0288538A1, US2008/288538A1, US20080288538 A1, US20080288538A1, US2008288538 A1, US2008288538A1InventorsHerbert Dennis Hunt, John Randall West, Marshall Ashby Gibbs, Bradley Michael Griglione, Gregory David Neil Hudson, Andrea Basilico, Arvid C. Johnson, Cheryl G. Bergeon, Craig Joseph Chapa, Alberto Agostinelli, Jay Alan Yusko, Trevor MasonOriginal AssigneeHerbert Dennis Hunt, John Randall West, Marshall Ashby Gibbs, Bradley Michael Griglione, Gregory David Neil Hudson, Andrea Basilico, Johnson Arvid C, Bergeon Cheryl G, Craig Joseph Chapa, Alberto Agostinelli, Jay Alan Yusko, Trevor MasonExport CitationBiBTeX, EndNote, RefManPatent Citations (64), Referenced by (13), Classifications (6), Legal Events (6) External Links: USPTO, USPTO Assignment, EspacenetDimensional compression using an analytic platform
US 20080288538 A1Abstract
receiving a causal fact dataset including facts relating to items perceived to cause actions, wherein the causal fact dataset includes a data attribute that is associated with a causal fact datum; pre-aggregating a plurality of combinations of a plurality of causal fact data and associated data attributes in a causal bitmap; selecting a subset of the pre-aggregated combinations based on suitability of a combination for an analytic purpose; and storing the subset of pre-aggregated combinations to facilitate querying of the subset. 2. The method of claim 1 wherein the data attribute is a product attribute.
13. The method of claim 1 wherein the causal fact datum is a consumer attribute.
14. The method of claim 13 wherein the consumer attribute is a consumer geography.
15. The method of claim 13 wherein the consumer attribute is a consumer category.
19. The method of claim 13 wherein the consumer attribute is a consumer demographic.
20. The method of claim 13 wherein the consumer attribute is a consumer behavior.
21. The method of claim 13 wherein the consumer attribute is a consumer life stage.
22. The method of claim 13 wherein the consumer attribute is a retailer-specific customer attribute.
23. The method of claim 13 wherein the consumer attribute is an ethnicity.
24. The method of claim 13 wherein the consumer attribute is an income level.
34. The method of claim 13 wherein the consumer attribute is media usage type.
35. The method of claim 13 wherein the consumer attribute is a media usage level.
36. The method of claim 13 wherein the consumer attribute is a technology usage type.
39. The method of claim 13 wherein the consumer attribute is a user-created custom consumer attribute.
[0012] Systems and methods may involve using a platform as disclosed herein for applications described herein where the systems and methods involve receiving a causal fact dataset including facts relating to items perceived to cause actions, wherein the causal fact dataset includes a data attribute that is associated with a causal fact datum. It may also involve pre-aggregating a plurality of the combinations of a plurality of causal fact data and associated data attributes in a causal bitmap. It may also involve selecting a subset of the pre-aggregated combinations based on suitability of a combination for the analytic purpose. It may also involve storing the subset of pre-aggregated combinations to facilitate querying of the subset.
[0013] These and other systems, methods, objects, features, and advantages of the present invention will be apparent to those skilled in the art from the following detailed description of the preferred embodiment and the drawings. Capitalized terms used herein (such as relating to titles of data objects, tables, or the like) should be understood to encompass other similar content or features performing similar functions, except where the context specifically limits such terms to the use herein.
[0015] FIG. 1 illustrates an analytic platform for performing data analysis.
[0016] FIG. 2 depicts a logical flow for a causal bitmap fake process.
[0017] Referring to FIG. 1, the methods and systems disclosed herein are related to improved methods for handling and using data and metadata for the benefit of an enterprise. An analytic platform 100 may support and include such improved methods and systems. The analytic platform 100 may include, in certain embodiments, a range of hardware systems, software modules, data storage facilities, application programming interfaces, human-readable interfaces, and methodologies, as well as a range of applications, solutions, products, and methods that use various outputs of the analytic platform 100, as more particularly detailed herein, other embodiments of which would be understood by one of ordinary skill in the art and are encompassed herein. Among other components, the analytic platform 100 includes methods and systems for providing various representations of data and metadata, methodologies for acting on data and metadata, an analytic engine, and a data management facility that is capable of handling disaggregated data and performing aggregation, calculations, functions, and real-time or quasi-real-time projections. In certain embodiments, the methods and systems enable much more rapid and flexible manipulation of data sets, so that certain calculations and projections can be done in a fraction of the time as compared with older generation systems.
[0018] In embodiments, data compression and aggregations of data, such as fact data sources 102, and dimension data sources 104, may be performed in conjunction with a user query such that the aggregation dataset can be specifically generated in a form most applicable for generating calculations and projections based on the query. In embodiments, data compression and aggregations of data may be done prior to, in anticipation of, and/or following a query. In embodiments, an analytic platform 100 (described in more detail below) may calculate projections and other solutions dynamically and create hierarchical data structures with custom dimensions that facilitate the analysis. Such methods and systems may be used to process point-of-sale (POS) data, retail information, geography information, causal information, survey information, census data and other forms of data and forms of assessments of past performance (e.g. estimating the past sales of a certain product within a certain geographical region over a certain period of time) or projections of future results (e.g. estimating the future or expected sales of a certain product within a certain geographical region over a certain period of time). In turn, various estimates and projections can be used for various purposes of an enterprise, such as relating to purchasing, supply chain management, handling of inventory, pricing decisions, the planning of promotions, marketing plans, financial reporting, and many others.
[0019] Referring still to FIG. 1 an analytic platform 100 is illustrated that may be used to analyze and process data in a disaggregated or aggregated format, including, without limitation, dimension data defining the dimensions along which various items are measured and factual data about the facts that are measured with respect to the dimensions. Factual data may come from a wide variety of sources and be of a wide range of types, such as traditional periodic point-of-sale (POS) data, causal data (such as data about activities of an enterprise, such as in-store promotions, that are posited to cause changes in factual data), household panel data, frequent shopper program information, daily, weekly, or real time POS data, store database data, store list files, stubs, dictionary data, product lists, as well as custom and traditional audit data. Further extensions into transaction level data, RFID data and data from non-retail industries may also be processed according to the methods and systems described herein.
[0020] In embodiments, a data loading facility 108 may be used to extract data from available data sources and load them to or within the analytic platform 100 for further storage, manipulation, structuring, fusion, analysis, retrieval, querying and other uses. The data loading facility 108 may have the a plurality of responsibilities that may include eliminating data for non-releasable items, providing correct venue group flags for a venue group, feeding a core information matrix with relevant information (such as and without limitation statistical metrics), or the like. In an embodiment, the data loading facility 108 eliminate non-related items. Available data sources may include a plurality of fact data sources 102 and a plurality of dimension data sources 104. Fact data sources 102 may include, for example, facts about sales volume, dollar sales, distribution, price, POS data, loyalty card transaction files, sales audit files, retailer sales data, and many other fact data sources 102 containing facts about the sales of the enterprise, as well as causal facts, such as facts about activities of the enterprise, in-store promotion audits, electronic pricing and/or promotion files, feature ad coding files, or others that tend to influence or cause changes in sales or other events, such as facts about in-store promotions, advertising, incentive programs, and the like. Other fact data sources may include custom shelf audit files, shipment data files, media data files, explanatory data (e.g., data regarding weather), attitudinal data, or usage data. Dimension data sources 104 may include information relating to any dimensions along which an enterprise wishes to collect data, such as dimensions relating to products sold (e.g. attribute data relating to the types of products that are sold, such as data about UPC codes, product hierarchies, categories, brands, sub-brands, SKUs and the like), venue data (e.g. store, chain, region, country, etc.), time data (e.g. day, week, quad-week, quarter, 12-week, etc.), geographic data (including breakdowns of stores by city, state, region, country or other geographic groupings), consumer or customer data (e.g. household, individual, demographics, household groupings, etc.), and other dimension data sources 104. While embodiments disclosed herein relate primarily to the collection of sales and marketing-related facts and the handling of dimensions related to the sales and marketing activities of an enterprise, it should be understood that the methods and systems disclosed herein may be applied to facts of other types and to the handling of dimensions of other types, such as facts and dimensions related to manufacturing activities, financial activities, information technology activities, media activities, supply chain management activities, accounting activities, political activities, contracting activities, and many others.
[0021] In an embodiment, the analytic platform 100 comprises a combination of data, technologies, methods, and delivery mechanisms brought together by an analytic engine. The analytic platform 100 may provide a novel approach to managing and integrating market and enterprise information and enabling predictive analytics. The analytic platform 100 may leverage approaches to representing and storing the base data so that it may be consumed and delivered in real-time, with flexibility and open integration. This representation of the data, when combined with the analytic methods and techniques, and a delivery infrastructure, may minimize the processing time and cost and maximize the performance and value for the end user. This technique may be applied to problems where there may be a need to access integrated views across multiple data sources, where there may be a large multi-dimensional data repository against which there may be a need to rapidly and accurately handle dynamic dimensionality requests, with appropriate aggregations and projections, where there may be highly personalized and flexible real-time reporting 190, analysis 192 and forecasting capabilities required, where there may be a need to tie seamlessly and on-the-fly with other enterprise applications 184 via web services 194 such as to receive a request with specific dimensionality, apply appropriate calculation methods, perform and deliver an outcome (e.g. dataset, coefficient, etc.), and the like.
[0022] The analytic platform 100 may provide innovative solutions to application partners, including on-demand pricing insights, emerging category insights, product launch management, loyalty insights, daily data out-of-stock insights, assortment planning, on-demand audit groups, neighborhood insights, shopper insights, health and wellness insights, consumer tracking and targeting, and the like.
[0023] A decision framework may enable new revenue and competitive advantages to application partners by brand building, product innovation, consumer-centric retail execution, consumer and shopper relationship management, and the like. Predictive planning and optimization solutions, automated analytics and insight solutions, and on-demand business performance reporting may be drawn from a plurality of sources, such as InfoScan, total C-scan, daily data, panel data, retailer direct data, SAP, consumer segmentation, consumer demographics, FSP/loyalty data, data provided directly for customers, or the like.
[0024] The analytic platform 100 may have advantages over more traditional federation/consolidation approaches, requiring fewer updates in a smaller portion of the process. The analytic platform 100 may support greater insight to users, and provide users with more innovative applications. The analytic platform 100 may provide a unified reporting and solutions framework, providing on-demand and scheduled reports in a user dashboard with summary views and graphical dial indicators, as well as flexible formatting options. Benefits and products of the analytic platform 100 may include non-additive measures for custom product groupings, elimination of restatements to save significant time and effort, cross-category visibility to spot emerging trends, provide a total market picture for faster competitor analysis, provide granular data on demand to view detailed retail performance, provide attribute driven analysis for market insights, and the like.
[0025] The analytic capabilities of the present invention may provide for on-demand projection, on-demand aggregation, multi-source master data management, and the like. On-demand projection may be derived directly for all possible geographies, store and demographic attributes, per geography or category, with built-in dynamic releasability controls, and the like. On-demand aggregation may provide both additive and non-additive measures, provide custom groups, provide cross-category or geography analytics, and the like. Multi-source master data management may provide management of dimension member catalogue and hierarchy attributes, processing of raw fact data that may reduce harmonization work to attribute matching, product and store attributes stored relationally, with data that may be extended independently of fact data, and used to create additional dimensions, and the like.
[0026] In addition, the analytic platform 100 may provide flexibility, while maintaining a structured user approach. Flexibility may be realized with multiple hierarchies applied to the same database, the ability to create new custom hierarchies and views, rapid addition of new measures and dimensions, and the like. The user may be provided a structured approach through publishing and subscribing reports to a broader user base, by enabling multiple user classes with different privileges, providing security access, and the like. The user may also be provided with increased performance and ease of use, through leading-edge hardware and software, and web application for integrated analysis.
[0027] In embodiments, the data available within a fact data source 102 and a dimension data source 104 may be linked, such as through the use of a key. For example, key-based fusion of fact 102 and dimension data 104 may occur by using a key, such as using the Abilitec Key software product offered by Acxiom, in order to fuse multiple sources of data. For example, such a key can be used to relate loyalty card data (e.g., Grocery Store 1 loyalty card, Grocery Store 2 loyalty card, and Convenience Store 1 loyalty card) that are available for a single customer, so that the fact data from multiple sources can be used as a fused data source for analysis on desirable dimensions. For example, an analyst might wish to view time-series trends in the dollar sales allotted by the customer to each store within a given product category.
[0028] In embodiments the data loading facility may comprise any of a wide range of data loading facilities, including or using suitable connectors, bridges, adaptors, extraction engines, transformation engines, loading engines, data filtering facilities, data cleansing facilities, data integration facilities, or the like, of the type known to those of ordinary skill in the art. In various embodiments, there are many situations where a store will provide POS data and causal information relating to its store. For example, the POS data may be automatically transmitted to the facts database after the sales information has been collected at the stores POS terminals. The same store may also provide information about how it promoted certain products, its store or the like. This data may be stored in another database; however, this causal information may provide one with insight on recent sales activities so it may be used in later sales assessments or forecasts. Similarly, a manufacturer may load product attribute data into yet another database and this data may also be accessible for sales assessment or projection analysis. For example, when making such analysis one may be interested in knowing what categories of products sold well or what brand sold well. In this case, the causal store information may be aggregated with the POS data and dimension data corresponding to the products referred to in the POS data. With this aggregation of information one can make an analysis on any of the related data.
[0029] Referring still to FIG. 1, data that is obtained by the data loading facility 108 may be transferred to a plurality of facilities within the analytic platform 100, including the data mart 114. In embodiments the data loading facility 108 may contain one or more interfaces 182 by which the data loaded by the data loading facility 108 may interact with or be used by other facilities within the platform 100 or external to the platform. Interfaces to the data loading facility 108 may include human-readable user interfaces, application programming interfaces (APIs), registries or similar facilities suitable for providing interfaces to services in a services oriented architecture, connectors, bridges, adaptors, bindings, protocols, message brokers, extraction facilities, transformation facilities, loading facilities and other data integration facilities suitable for allowing various other entities to interact with the data loading facility 108. The interfaces 182 may support interactions with the data loading facility 108 by applications 184, solutions 188, reporting facilities 190, analyses facilities 192, services 194 or other entities, external to or internal to an enterprise. In embodiments these interfaces are associated with interfaces 182 to the platform 100, but in other embodiments direct interfaces may exist to the data loading facility 108, either by other components of the platform 100, or by external entities.
[0030] Referring still to FIG. 1, in embodiments the data mart facility 114 may be used to store data loaded from the data loading facility 108 and to make the data loaded from the data loading facility 108 available to various other entities in or external to the platform 100 in a convenient format. Within the data mart 114 facilities may be present to further store, manipulate, structure, subset, merge, join, fuse, or perform a wide range of data structuring and manipulation activities. The data mart facility 114 may also allow storage, manipulation and retrieval of metadata, and perform activities on metadata similar to those disclosed with respect to data. Thus, the data mart facility 114 may allow storage of data and metadata about facts (including sales facts, causal facts, and the like) and dimension data, as well as other relevant data and metadata. In embodiments, the data mart facility 114 may compress the data and/or create summaries in order to facilitate faster processing by other of the applications 184 within the platform 100 (e.g. the analytic server 134). In embodiments the data mart facility 114 may include various methods, components, modules, systems, sub-systems, features or facilities associated with data and metadata.
[0031] In certain embodiments the data mart facility 114 may contain one or more interfaces 182 (not shown on FIG. 1), by which the data loaded by the data mart facility 114 may interact with or be used by other facilities within the platform 100 or external to the platform. Interfaces to the data mart facility 114 may include human-readable user interfaces, application programming interfaces (APIs), registries or similar facilities suitable for providing interfaces to services in a services oriented architecture, connectors, bridges, adaptors, bindings, protocols, message brokers, extraction facilities, transformation facilities, loading facilities and other data integration facilities suitable for allowing various other entities to interact with the data mart facility 114. These interfaces may comprise interfaces 182 to the platform 100 as a whole, or may be interfaces associated directly with the data mart facility 114 itself, such as for access from other components of the platform 100 or for access by external entities directly to the data mart facility 114. The interfaces 182 may support interactions with the data mart facility 114 by applications 184, solutions 188, reporting facilities 190, analyses facilities 192, services 194 (each of which is describe in greater detail herein) or other entities, external to or internal to an enterprise.
[0032] In certain optional embodiments, the security facility 118 may be any hardware or software implementation, process, procedure, or protocol that may be used to block, limit, filter or alter access to the data mart facility 114, and/or any of the facilities within the data mart facility 114, by a human operator, a group of operators, an organization, software program, bot, virus, or some other entity or program. The security facility 118 may include a firewall, an anti-virus facility, a facility for managing permission to store, manipulate and/or retrieve data or metadata, a conditional access facility, a logging facility, a tracking facility, a reporting facility, an asset management facility, an intrusion-detection facility, an intrusion-prevention facility or other suitable security facility.
[0033] Still referring to FIG. 1, the analytic platform 100 may include an analytic engine 134. The analytic engine 134 may be used to build and deploy analytic applications or solutions or undertake analytic methods based upon the use of a plurality of data sources and data types. Among other things, the analytic engine 134 may perform a wide range of calculations and data manipulation steps necessary to apply models, such as mathematical and economic models, to sets of data, including fact data, dimension data, and metadata. The analytic engine 134 may be associated with an interface 182, such as any of the interfaces described herein.
[0034] The analytic engine 134 may interact with a model storage facility 148, which may be any facility for generating models used in the analysis of sets of data, such as economic models, econometric models, forecasting models, decision support models, estimation models, projection models, and many others. In embodiments output from the analytic engine 134 may be used to condition or refine models in the model storage 148; thus, there may be a feedback loop between the two, where calculations in the analytic engine 134 are used to refine models managed by the model storage facility 148.
[0035] In embodiments, a security facility 138 of the analytic engine 134 may be the same or similar to the security facility 118 associated with the data mart facility 114, as described herein. Alternatively, the security facility 138 associated with the analytic engine 134 may have features and rules that are specifically designed to operate within the analytic engine 134.
[0036] As illustrated in FIG. 1, the analytic platform 100 may contain a master data management hub 150 (MDMH). In embodiments the MDMH 150 may serve as a central facility for handling dimension data used within the analytic platform 100, such as data about products, stores, venues, geographies, time periods and the like, as well as various other dimensions relating to or associated with the data and metadata types in the data sources 102, 104, the data loading facility 108, the data mart facility 114, the analytic engine 134, the model storage facility 148 or various applications, 184, solutions 188, reporting facilities 190, analytic facilities 192 or services 194 that interact with the analytic platform 100. The MDMH 150 may in embodiments include a security facility 152, an interface 158, a data loader 160, a data manipulation and structuring facility 162, and one or more staging tables 164. The data loader 160 may be used to receive data. Data may enter the MDMH from various sources, such as from the data mart 114 after the data mart 114 completes its intended processing of the information and data that it received as described herein. Data may also enter the MDMH 150 through a user interface 158, such as an API or a human user interface, web browser or some other interface, of any of the types disclosed herein or in the documents incorporated by reference herein. The user interface 158 may be deployed on a client device, such as a PDA, personal computer, laptop computer, cellular phone, or some other client device capable of handling data. In embodiments, the staging tables 164 may be included in the MDMH 150.
[0037] In embodiments, a matching facility 180 may be associated with the MDMH 150. The matching facility 180 may receive an input data hierarchy within the MDMH 150 and analyze the characteristics of the hierarchy and select a set of attributes that are salient to a particular analytic interest (e.g., product selection by a type of consumer, product sales by a type of venue, and so forth). The matching facility 180 may select primary attributes, match attributes, associate attributes, block attributes and prioritize the attributes. The matching facility 180 may associate each attribute with a weight and define a set of probabilistic weights. The probabilistic weights may be the probability of a match or a non-match, or thresholds of a match or non-match that is associated with an analytic purpose (e.g., product purchase). The probabilistic weights may then be used in an algorithm that is run within a probabilistic matching engine (e.g., IBM QualityStage). The output of the matching engine may provide information on, for example, other products which are appropriate to include in a data hierarchy, the untapped market (i.e. other venues) in which a product is probabilistically more likely to sell well, and so forth. In embodiments, the matching facility 180 may be used to generate projections of what types of products, people, customers, retailers, stores, store departments, etc. are similar in nature and therefore they may be appropriate to combine in a projection or an assessment.
[0038] As illustrated in FIG. 1, the analytic platform 100 may include a projection facility 178. A projection facility 178 may be used to produce projections, whereby a partial data set (such as data from a subset of stores of a chain) is projected to a universe (such as all of the stores in a chain), by applying appropriate weights to the data in the partial data set. A wide range of potential projection methodologies exist, including cell-based methodologies, store matrix methodologies, iterative proportional fitting methodologies, virtual census methodologies, and others. The methodologies can be used to generate projection factors. As to any given projection, there is typically a tradeoff among various statistical quality measurements associated with that type of projection. Some projections are more accurate than others, while some are more consistent, have less spillage, are more closely calibrated, or have other attributes that make them relatively more or less desirable depending on how the output of the projection is likely to be used. In embodiments of the platform 100, the projection facility 178 takes dimension information from the MDMH 150 or from another source and provides a set of projection weightings along the applicable dimensions, typically reflected in a matrix of projection weights, which can be applied at the data mart facility 114 to a partial data set in order to render a projected data set. The projection facility 178 may have an interface 182 of any of the types disclosed herein.
[0039] As shown in FIG. 1, an interface 182 may be included in the analytic platform 100. In embodiments, data may be transferred to the MDMH 150 of the platform 100 using a user interface 182. The interface 182 may be a web browser operating over the Internet or within an intranet or other network, it may be an analytic engine 134, an application plug-in, or some other user interface that is capable of handling data. The interface 182 may be human readable or may consist of one or more application programming interfaces, or it may include various connectors, adaptors, bridges, services, transformation facilities, extraction facilities, loading facilities, bindings, couplings, or other data integration facilities, including any such facilities described herein or in documents incorporated by reference herein.
[0040] As illustrated in FIG. 1, the platform 100 may interact with a variety of applications 184, solutions 188, reporting facilities 190, analytic facilities 192 and services 194, such as web services, or with other platforms or systems of an enterprise or external to an enterprise. Any such applications 184, solutions 188, reporting facilities 190, analytic facilities 192 and services 194 may interact with the platform 100 in a variety of ways, such as providing input to the platform 100 (such as data, metadata, dimension information, models, projections, or the like), taking output from the platform 100 (such as data, metadata, projection information, information about similarities, analytic output, output from calculations, or the like), modifying the platform 100 (including in a feedback or iterative loop), being modified by the platform 100 (again optionally in a feedback or iterative loop), or the like.
[0041] In embodiments one or more applications 184 or solutions 188 may interact with the platform 100 via an interface 182. Applications 184 and solutions 188 may include applications and solutions (consisting of a combination of hardware, software and methods, among other components) that relate to planning the sales and marketing activities of an enterprise, decision support applications, financial reporting applications, applications relating to strategic planning, enterprise dashboard applications, supply chain management applications, inventory management and ordering applications, manufacturing applications, customer relationship management applications, information technology applications, applications relating to purchasing, applications relating to pricing, promotion, positioning, placement and products, and a wide range of other applications and solutions.
[0042] In embodiments, applications 184 and solutions 188 may include analytic output that is organized around a topic area. For example, the organizing principle of an application 184 or a solution 188 may be a new product introduction. Manufacturers may release thousands of new products each year. It may be useful for an analytic platform 100 to be able to group analysis around the topic area, such as new products, and organize a bundle of analyses and workflows that are presented as an application 184 or solution 188. Applications 184 and solutions 188 may incorporate planning information, forecasting information, “what if.?” scenario capability, and other analytic features. Applications 184 and solutions 188 may be associated with web services 194 that enable users within a client's organization to access and work with the applications 184 and solutions 188.
[0043] In embodiments, the analytic platform 100 may facilitate delivering information to external applications 184. This may include providing data or analytic results to certain classes of applications 184. For example and without limitation, an application may include enterprise resource planning/backbone applications 184 such as SAP, including those applications 184 focused on Marketing, Sales & Operations Planning and Supply Chain Management. In another example, an application may include business intelligence applications 184, including those applications 184 that may apply data mining techniques. In another example, an application may include customer relationship management applications 184, including customer sales force applications 184. In another example, an application may include specialty applications 184 such as a price or SKU optimization application. The analytic platform 100 may facilitate supply chain efficiency applications 184. For example and without limitation, an application may include supply chain models based on sales out (POS/FSP) rather than sales in (Shipments). In another example, an application may include RFID based supply chain management. In another example, an application may include a retailer co-op to enable partnership with a distributor who may manage collective stock and distribution services. The analytic platform 100 may be applied to industries characterized by large multi-dimensional data structures. This may include industries such as telecommunications, elections and polling, and the like. The analytic platform 100 may be applied to opportunities to vend large amounts of data through a portal with the possibility to deliver highly customized views for individual users with effectively controlled user accessibility rights. This may include collaborative groups such as insurance brokers, real estate agents, and the like. The analytic platform 100 may be applied to applications 184 requiring self monitoring of critical coefficients and parameters. Such applications 184 may rely on constant updating of statistical models, such as financial models, with real-time flows of data and ongoing re-calibration and optimization. The analytic platform 100 may be applied to applications 184 that require breaking apart and recombining geographies and territories at will.
[0044] In embodiments, a dimensional compression facility 129 may be associated with the data mart 118. The dimensional compression facility 129 may perform operations, procedures, calculations, data manipulations, and the like, which are in part designed to compress a dataset using techniques, such as a causal bitmap fake. A causal bitmap fake facility may be associated with the data mart 118. A causal bitmap may refer to a collection of various attributes in a data set that are associated with causal facts, such as facts about whether a product was discounted, the nature of the display for a product, whether a product was a subject of a special promotion, whether the product was present in a store at all, and many others. It is possible to analyze and store a pre-aggregated set of data reflecting all possible permutations and combinations of the attributes potentially present in the causal bitmap; however, the resulting dataset may be very large and burdensome when components of the platform 100 perform calculations, resulting in slow run times. Also, the resulting aggregated data set may contain many combinations and permutations for which there is no analytic interest. The causal bitmap fake facility 130 may be used to reduce the number of permutations and combinations down to a data set that only includes those that are of analytic interest. Thus, the causal bitmap fake may include creation of an intermediate representation of permutations and combinations of attributes of a causal bitmap, where permutations and combinations are pre-selected for their analytic interest in order to reduce the number of permutations and combinations that are stored for purposes of further analysis or calculation. The causal bitmap fake compression technique may improve query performance and reduce processing time.
[0045] Causal Bitmap Fake may be an intermediate table for use as a bridge table in data analysis, the bridge table containing only those causal permutations of the fact data that are of interest. It will be appreciated from the following disclosure that the causal bitmap fake may reduce the number rows in the bridge table by a significant factor, increasing the speed with which aggregation or pre-aggregation queries may be applied with respect to the table, and thereby increasing the range and flexibility of queries that may be applied in or near real time to the fact data or an aggregation or pre-aggregation thereof: In essence, the causal bitmap fake may involve utilizing and/or producing a bitmap that encodes combinations of causal data. In embodiments, the causal data may relate to merchandising activity and may, without limitation, encode an item, feature, display, price reduction, special pack, special feature, enhanced feature, special display, special price reduction, special census, and so on. Instead of generating a bridge table that encodes all possible permutations of the bitmap—such a table may contain half a million or more rows in practice—the causal bitmap fake utilizes and/or produces a bridge table containing only the permutations of interest, the permutations that represent combinations of merchandising activity that are probable or possible, or the like. In practice, such bridge tables may contain tens or hundreds of rows. As a result, an aggregation query or other queries that involves a cross join between permutations of causal data and other facts or dimensions may involve far fewer calculations and result in a much smaller result set than would have been the case if all permutations of causal data were considered. In practice, it may be possible to recalculate the bridge table when the permutations of causal data in question become known and/or when the permutations in question change. By doing this, the bridge table may only contain the permutations in question and so calculating aggregations, which may involve processing the entire bridge table, may still be done rapidly as compared with an approach that considers a bridge table that contains all possible permutations.
[0046] An aspect of the present invention relates to dimensional compression. A data or dimensional compression and aggregations of data may be done prior to, in anticipation of, and/or following a query. Referring to FIG. 1, a data mart facility 114 may allow storage of data and metadata about facts (including sales facts, causal facts, and the like) and dimension data, as well as other relevant data and metadata. In embodiments, the data mart facility 114 may compress the data and/or create summaries in order to facilitate faster processing by other of the applications 184 within the platform 100. Further, the data mart 114 may include a dimensional compression facility 129, a causal bitmap facility 130 located within the dimensional compression facility 129. The dimensional compression facility 129 may perform operations, procedures, calculations, data manipulations, and the like, which are in part designed to compress a dataset using techniques, such as a causal bitmap fake. The causal bitmap may refer to a collection of various attributes in a data set that may be associated with causal facts, such as facts about whether a product was discounted, the nature of the display for a product, whether a product was a subject of a special promotion, whether the product was present in a store at all, and many others. The causal bitmap fake 130 compression technique may improve query performance and reduce processing time.
[0047] In embodiments, referring to FIG. 2, systems and methods may involve using a platform as disclosed herein for applications described herein where the systems and methods involve receiving a causal fact dataset including facts relating to items perceived to cause actions, wherein the causal fact dataset includes a data attribute that is associated with a causal fact datum 4502. It may also involve pre-aggregating a plurality of the combinations of a plurality of causal fact data and associated data attributes in a causal bitmap 4504. It may also involve selecting a subset of the pre-aggregated combinations based on suitability of a combination for the analytic purpose 4508. It may also involve storing the subset of pre-aggregated combinations to facilitate querying of the subset 4510.
[0048] The elements depicted in flow charts and block diagrams throughout the figures imply logical boundaries between the elements. However, according to software or hardware engineering practices, the depicted elements and the functions thereof may be implemented as parts of a monolithic software structure, as standalone software modules, or as modules that employ external routines, code, services, and so forth, or any combination of these, and all such implementations are within the scope of the present disclosure. Thus, while the foregoing drawings and description set forth functional aspects of the disclosed systems, no particular arrangement of software for implementing these functional aspects should be inferred from these descriptions unless explicitly stated or otherwise clear from the context.
[0049] Similarly, it will be appreciated that the various steps identified and described above may be varied, and that the order of steps may be adapted to particular applications of the techniques disclosed herein. All such variations and modifications are intended to fall within the scope of this disclosure. As such, the depiction and/or description of an order for various steps should not be understood to require a particular order of execution for those steps, unless required by a particular application, or explicitly stated or otherwise clear from the context.
[0050] The methods or processes described above, and steps thereof, may be realized in hardware, software, or any combination of these suitable for a particular application. The hardware may include a general-purpose computer and/or dedicated computing device. The processes may be realized in one or more microprocessors, microcontrollers, embedded microcontrollers, programmable digital signal processors or other programmable device, along with internal and/or external memory. The processes may also, or instead, be embodied in an application specific integrated circuit, a programmable gate array, programmable array logic, or any other device or combination of devices that may be configured to process electronic signals. It will further be appreciated that one or more of the processes may be realized as computer executable code created using a structured programming language such as C, an object oriented programming language such as C++, or any other high-level or low-level programming language (including assembly languages, hardware description languages, and database programming languages and technologies) that may be stored, compiled or interpreted to run on one of the above devices, as well as heterogeneous combinations of processors, processor architectures, or combinations of different hardware and software.
[0051] Thus, in one aspect, each method described above and combinations thereof may be embodied in computer executable code that, when executing on one or more computing devices, performs the steps thereof. In another aspect, the methods may be embodied in systems that perform the steps thereof, and may be distributed across devices in a number of ways, or all of the functionality may be integrated into a dedicated, standalone device or other hardware. In another aspect, means for performing the steps associated with the processes described above may include any of the hardware and/or software described above. All such permutations and combinations are intended to fall within the scope of the present disclosure.
[0052] While the invention has been disclosed in connection with the preferred embodiments shown and described in detail, various modifications and improvements thereon will become readily apparent to those skilled in the art. Accordingly, the spirit and scope of the present invention is not to be limited by the foregoing examples, but is to be understood in the broadest sense allowable by law.
[0053] All documents referenced herein are hereby incorporated by reference.
Patent CitationsCited PatentFiling datePublication dateApplicantTitleUS5832509 *Dec 17, 1996Nov 3, 1998Chrysler CorporationApparatus and method for adjusting data sizes in database operationsUS5899988 *Feb 28, 1997May 4, 1999Oracle CorporationBitmapped indexing with high granularity lockingUS6523025 *Aug 1, 2000Feb 18, 2003Fujitsu LimitedDocument processing system and recording mediumUS6662192 *Mar 29, 2000Dec 9, 2003Bizrate.ComSystem and method for data collection, evaluation, information generation, and presentationUS7043492 *Aug 22, 2002May 9, 2006Requisite Technology, Inc.Automated classification of items using classification mappingsUS7107254 *May 7, 2001Sep 12, 2006Microsoft CorporationProbablistic models and methods for combining multiple content classifiersUS7191183 *Apr 5, 2002Mar 13, 2007Rgi Informatics, LlcAnalytics and data warehousing infrastructure and servicesUS7430532 *Jun 11, 2002Sep 30, 2008Blackrock Financial Management, Inc.System and method for trade entryUS7437344 *Dec 21, 2001Oct 14, 2008L'oreal S.A.Use of artificial intelligence in providing beauty adviceUS7469246 *May 18, 2001Dec 23, 2008Stratify, Inc.Method and system for classifying or clustering one item into multiple categoriesUS7672877 *Feb 26, 2004Mar 2, 2010Yahoo! Inc.Product data classificationUS7870031 *Dec 22, 2005Jan 11, 2011Ebay Inc.Suggested item category systems and methodsUS7870039 *Aug 17, 2004Jan 11, 2011Yahoo! Inc.Automatic product categorizationUS8160984 *Jan 31, 2008Apr 17, 2012Symphonyiri Group, Inc.Similarity matching of a competitor's productsUS20010044758 *Mar 30, 2001Nov 22, 2001Iqbal TalibMethods and systems for enabling efficient search and retrieval of products from an electronic product catalogUS20020186818 *Feb 27, 2002Dec 12, 2002Osteonet, Inc.System and method for building and manipulating a centralized measurement value databaseUS20030028424 *Jun 5, 2001Feb 6, 2003Catalina Marketing International, Inc.Method and system for the direct delivery of product samplesUS20030088565 *Oct 15, 2002May 8, 2003Insightful CorporationMethod and system for mining large data setsUS20030149586 *Nov 7, 2002Aug 7, 2003Enkata TechnologiesMethod and system for root cause analysis of structured and unstructured dataUS20030210278 *May 6, 2003Nov 13, 2003Kabushiki Kaisha ToshibaData organization support method and program product thereforUS20030228541 *Jun 10, 2002Dec 11, 2003International Business Machines CorporationHybrid electronic maskUS20040220937 *Apr 30, 2003Nov 4, 2004International Business Machines CorporationIntegration of business process and use of fields in a master databaseUS20050065771 *Sep 18, 2003Mar 24, 2005International Business Machines CorporationDatabase script translation toolUS20050149537 *Sep 27, 2004Jul 7, 2005Dmitry BalinApparatus and method for database migrationUS20050187977 *Feb 17, 2005Aug 25, 2005Datallegro, Inc.Ultra-shared-nothing parallel databaseUS20050197883 *Sep 7, 2004Sep 8, 2005Sap AktiengesellschaftMethod and system for classifying retail products and services using characteristic-based grouping structuresUS20050197926 *Apr 6, 2005Sep 8, 2005I2 Technologies Us, Inc.System and method for identifying a productUS20050240085 *Jan 14, 2005Oct 27, 2005Basf AktiengesellschaftBalanced care product customizationUS20050246307 *Mar 25, 2005Nov 3, 2005Datamat Systems Research, Inc.Computerized modeling method and a computer program product employing a hybrid Bayesian decision tree for classificationUS20050267889 *Feb 8, 2005Dec 1, 2005Coremetrics, Inc.System and method of managing software product-line customizationsUS20060009935 *Jul 9, 2004Jan 12, 2006Uzarski Donald RKnowledge-based condition survey inspection (KBCSI) framework and procedureUS20060080141 *Oct 8, 2004Apr 13, 2006Sentillion, Inc.Method and apparatus for processing a context change request in a CCOW environmentUS20060164257 *Jul 17, 2003Jul 27, 2006Paolo GiubbiniMethod and system for remote updates of meters for metering the consumption of electricity, water or gasUS20060212413 *Oct 3, 2005Sep 21, 2006Pal RujanClassification method and apparatusUS20060259358 *May 16, 2005Nov 16, 2006Hometown Info, Inc.Grocery scoringUS20060282339 *Aug 3, 2006Dec 14, 2006Musgrove Timothy ACatalog taxonomy for storing product information and system and method using sameUS20070050340 *Jul 19, 2006Mar 1, 2007Von Kaenel Tim AMethod, system, and program for an improved enterprise spatial systemUS20070118541 *Nov 22, 2006May 24, 2007Amir NathooGeneration of a Categorization SchemeUS20070160320 *Jan 5, 2007Jul 12, 2007The Procter & Gamble CompanyMerchandising systems, methods of mechandising, and point-of-sale devices comprising micro-optics technologyUS20070174290 *Jan 19, 2006Jul 26, 2007International Business Machines CorporationSystem and architecture for enterprise-scale, parallel data miningUS20070203919 *Feb 27, 2006Aug 30, 2007Sullivan Andrew JMethod, apparatus and computer program product for organizing hierarchical informationUS20070276676 *May 23, 2006Nov 29, 2007Christopher HoenigSocial information systemUS20080059489 *Aug 30, 2006Mar 6, 2008International Business Machines CorporationMethod for parallel query processing with non-dedicated, heterogeneous computers that is resilient to load bursts and node failuresUS20080077469 *Sep 27, 2006Mar 27, 2008Philport Joseph CMethod and system for determining media exposureUS20080162302 *Dec 29, 2006Jul 3, 2008Ebay Inc.Method and system for listing categorizationUS20080228797 *Aug 8, 2007Sep 18, 2008Expanse Networks, Inc.Creation of Attribute Combination Databases Using Expanded Attribute ProfilesUS20080256275 *Mar 15, 2008Oct 16, 2008Harm Peter HofsteeMulti-Chip Module With Third Dimension InterconnectUS20080270363 *Jan 31, 2008Oct 30, 2008Herbert Dennis HuntCluster processing of a core information matrixUS20080276232 *Jul 15, 2008Nov 6, 2008International Business Machines CorporationProcessor Dedicated Code Handling in a Multi-Processor EnvironmentUS20080288209 *Jan 31, 2008Nov 20, 2008Herbert Dennis HuntFlexible projection facility within an analytic platformUS20080294372 *Jan 31, 2008Nov 27, 2008Herbert Dennis HuntProjection facility within an analytic platformUS20080294583 *Jan 31, 2008Nov 27, 2008Herbert Dennis HuntSimilarity matching of a competitor's productsUS20090006156 *Jan 28, 2008Jan 1, 2009Herbert Dennis HuntAssociating a granting matrix with an analytic platformUS20090012971 *Jan 31, 2008Jan 8, 2009Herbert Dennis HuntSimilarity matching of products based on multiple classification schemesUS20090018891 *Dec 30, 2003Jan 15, 2009Jeff Scott EderMarket value matrixUS20090055445 *Aug 21, 2007Feb 26, 2009Oracle International CorporationOn demand data conversionUS20090070131 *Jun 27, 2006Mar 12, 2009Lin ChenStandardized urban productUS20090083306 *Sep 26, 2007Mar 26, 2009Lucidera, Inc.Autopropagation of business intelligence metadataUS20090132541 *Nov 19, 2007May 21, 2009Eric Lawrence BarsnessManaging database resources used for optimizing query execution on a parallel computer systemUS20090132609 *Nov 16, 2007May 21, 2009Eric Lawrence BarsnessReal time data replication for query execution in a massively parallel computerUS20090150428 *Jul 20, 2006Jun 11, 2009Analyse Solutions Finland OyData Management Method and SystemUS20100070333 *Apr 24, 2006Mar 18, 2010Isra, LlcEnhanced business and inventory mangement systemsUS20100094882 *Oct 9, 2008Apr 15, 2010International Business Machines CorporationAutomated data conversion and route tracking in distributed databasesUS20120173472 *Mar 13, 2012Jul 5, 2012Herbert Dennis HuntSimilarity matching of a competitor's products* Cited by examinerReferenced byCiting PatentFiling datePublication dateApplicantTitleUS8160984Jan 31, 2008Apr 17, 2012Symphonyiri Group, Inc.Similarity matching of a competitor's productsUS8229781Apr 25, 2008Jul 24, 2012The Nielson Company (Us), LlcSystems and apparatus to determine shopper traffic in retail environmentsUS8489532Mar 13, 2012Jul 16, 2013Information Resources, Inc.Similarity matching of a competitor's productsUS8543523Mar 15, 2013Sep 24, 2013Rentrak CorporationSystems and methods for calibrating user and consumer dataUS8678272Sep 26, 2012Mar 25, 2014Catalina Marketing CorporationDimensional translatorUS8719266Jul 22, 2013May 6, 2014Information Resources, Inc.Data perturbation of non-unique valuesUS8818841Apr 25, 2008Aug 26, 2014The Nielsen Company (Us), LlcMethods and apparatus to monitor in-store media and consumer traffic related to retail environmentsUS8850362 *Nov 30, 2007Sep 30, 2014Amazon Technologies, Inc.Multi-layered hierarchical browsingUS9076121Mar 24, 2014Jul 7, 2015Catalina Marketing CorporationDimensional translatorUS20080294476 *Apr 25, 2008Nov 27, 2008Dupre William JMethods and apparatus to monitor in-store media and consumer traffic related to retail environmentsUS20080294487 *Apr 25, 2008Nov 27, 2008Kamal NasserMethods and apparatus to monitor in-store media and consumer traffic related to retail environmentsUS20100053616 *Mar 4, 2010Macronix International Co., Ltd.Alignment mark and method of getting position reference for waferUS20140244360 *Feb 27, 2013Aug 28, 2014Wal-Mart Stores, Inc.Customer universe exploration* Cited by examinerClassifications U.S. Classification1/1, 707/E17.009, 707/999.107International ClassificationG06F17/30Cooperative ClassificationG06F17/30592European ClassificationG06F17/30S8MLegal EventsDateCodeEventDescriptionAug 6, 2008ASAssignmentOwner name: INFORMATION RESOURCES, INC., ILLINOISFree format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:HUNT, HERBERT D.;WEST, JOHN R.;GIBBS, MARSHALL A.;AND OTHERS;REEL/FRAME:021347/0728;SIGNING DATES FROM 20080625 TO 20080714Owner name: INFORMATION RESOURCES, INC., ILLINOISFree format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:HUNT, HERBERT D.;WEST, JOHN R.;GIBBS, MARSHALL A.;AND OTHERS;SIGNING DATES FROM 20080625 TO 20080714;REEL/FRAME:021347/0728Oct 5, 2010ASAssignmentOwner name: SYMPHONYIRI GROUP, INC., ILLINOISFree format text: CHANGE OF NAME;ASSIGNOR:INFORMATION RESOURCES, INC.;REEL/FRAME:025090/0319Effective date: 20100525Jun 9, 2011ASAssignmentOwner name: BANK OF AMERICA, N.A., CALIFORNIAFree format text: SECURITY AGREEMENT;ASSIGNORS:IRI HOLDINGS, INC.;BLACKCOMB ACQUISITION, INC.;SYMPHONYIRI GROUP, INC.(F/K/A INFORMATION RESOURCES, INC.);AND OTHERS;REEL/FRAME:026418/0382Effective date: 20110601Apr 29, 2013ASAssignmentOwner name: INFORMATION RESOURCES, INC., ILLINOISFree format text: CHANGE OF NAME;ASSIGNOR:SYMPHONYIRI GROUP, INC.;REEL/FRAME:030303/0944Effective date: 20130412Oct 2, 2013ASAssignmentOwner name: IRI HOLDINGS INC. (AS SUCCESSOR IN INTEREST TO BLAFree format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A.;REEL/FRAME:031365/0361Effective date: 20130930Owner name: INFOSCAN ITALY HOLDINGS, INC., ILLINOISFree format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A.;REEL/FRAME:031365/0361Effective date: 20130930Owner name: INFORMATION RESOURCES, INC. (FKA SYMPHONYIRI GROUPFree format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A.;REEL/FRAME:031365/0361Effective date: 20130930Owner name: IRI GREEK HOLDINGS, INC., ILLINOISFree format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A.;REEL/FRAME:031365/0361Effective date: 20130930Owner name: IRI FRENCH HOLDINGS, INC., ILLINOISFree format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A.;REEL/FRAME:031365/0361Effective date: 20130930Owner name: IRI ITALY HOLDINGS, INC., ILLINOISFree format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A.;REEL/FRAME:031365/0361Effective date: 20130930Owner name: 564 RANDOLPH CO. #2, ILLINOISFree format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A.;REEL/FRAME:031365/0361Effective date: 20130930Owner name: INFORMATION RESOURCES DHC, INC., ILLINOISFree format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A.;REEL/FRAME:031365/0361Effective date: 20130930Owner name: SYMPHONYISG, INC., ILLINOISFree format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A.;REEL/FRAME:031365/0361Effective date: 20130930Owner name: IRI GROUP HOLDINGS, INC., ILLINOISFree format text: RELEASE BY SECURED PARTY;ASSIGNOR:BANK OF AMERICA, N.A.;REEL/FRAME:031365/0361Effective date: 20130930Oct 4, 2013ASAssignmentOwner name: BANK OF AMERICA, N.A., NORTH CAROLINAFree format text: SECURITY AGREEMENT;ASSIGNORS:IRI HOLDINGS, INC.;INFORMATION RESOURCES, INC.;INFORMATION RESOURCES DHC, INC.;AND OTHERS;REEL/FRAME:031345/0292Effective date: 20130930RotateOriginal ImageGoogle Home - Sitemap - USPTO Bulk Downloads - Privacy Policy - Terms of Service - About Google Patents - Send FeedbackData provided by IFI CLAIMS Patent Services