Analysis of Mul-- dimensional data with MDX (covering MS Analysis Services, Oracle Hyperion, Cognos TM1, & SAP BW) Mohamed Diakite Pineda
Agenda Overview: Connec-ng to OLAP Sources OLAP Repor5ng Principles OLAP to MicroStrategy Objects OLAP vs. Rela5onal Repor5ng Blending OLAP and Rela5onal Repor5ng Data Import vs. Modeled OLAP Repor5ng Roadmap Ques5ons and Answers 2
Demo Connec5ng to OLAP sources
Connec5ng to OLAP Sources Overview of Components & Protocols to Connect to OLAP Sources IIS Intelligence Server XMLA (HTTP) MicroStrategy MDX Provider ODBO (MSSAS) ODBO (TM1) Essbase C API Java Connector (JCO) SAP JCO (SAP BAPI) Microsoft Analysis Services OLE DB Provider TM1 OLEDB Provider Oracle Essbase C API Third-party libraries
Connec5ng to OLAP Sources Connec5ng to SAP BW Intelligence Server Windows: Add SAP JCO libraries to Intelligence Server s home directory. (E.g. C:\Program Files(x86)\Common\MicroStrategy) Linux: Set SAP JCO library location in env/sap.sh Java Connector (JCO) SAP JCO (SAP BAPI) sapjco.*
Connec5ng to OLAP Sources Connec5ng to SAP BW Intelligence Server Java Connector (JCO) SAP JCO (SAP BAPI)
Connec5ng to OLAP Sources MicroStrategy MDX Cube Provider IIS Intelligence Server XMLA (HTTP) MicroStrategy MDX Provider IIS Install MDX Cube Provider
Connec5ng to OLAP Sources MicroStrategy MDX Cube Provider IIS Intelligence Server XMLA (HTTP) MicroStrategy MDX Provider ODBO (MSSAS) ODBO (TM1) Essbase C API Configure MDX Cube Provider one time in Datasources.xml (only one provider per MDX Cube Provider instance) Authentication methods (simple/integrated) Type of provider (Essbase, MSSAS, TM1)
Connec5ng to OLAP Sources MicroStrategy MDX Cube Provider with MSSAS IIS Intelligence Server XMLA (HTTP) MicroStrategy MDX Provider ODBO (MSSAS) Microsoft Analysis Services OLE DB Provider
Connec5ng to OLAP Sources MicroStrategy MDX Cube Provider with MSSAS IIS Intelligence Server XMLA (HTTP) MicroStrategy MDX Provider ODBO (MSSAS) URL to MDX Cube Provider MSSAS Server Database/Catalog Microsoft Analysis Services OLE DB Provider
Connec5ng to OLAP Sources MicroStrategy MDX Cube Provider with Oracle Essbase IIS Intelligence Server XMLA (HTTP) MicroStrategy MDX Provider Essbase C API Oracle Essbase C API Register Essbase API: Program Files (x86)/common/ MicroStrategyEssbaseConnector_SetEnv_64_64.bat
Connec5ng to OLAP Sources MicroStrategy MDX Cube Provider with Oracle Essbase IIS Intelligence Server XMLA (HTTP) MicroStrategy MDX Provider Essbase C API URL to MDX Cube Provider Essbase Server Essbase Application Oracle Essbase C API
Connec5ng to OLAP Sources MicroStrategy MDX Cube Provider with TM1 IIS Intelligence Server XMLA (HTTP) MicroStrategy MDX Provider ODBO (TM1) TM1 OLEDB Provider
Connec5ng to OLAP Sources MicroStrategy MDX Cube Provider with TM1 IIS Intelligence Server XMLA (HTTP) MicroStrategy MDX Provider ODBO (TM1) URL to MDX Cube Provider TM1 Server TM1 Configuration/Catalog TM1 OLEDB Provider
Connec5ng to OLAP Sources Overview of Components & Protocols to Connect to OLAP Sources IIS Intelligence Server XMLA (HTTP) MicroStrategy MDX Provider ODBO (MSSAS) ODBO (TM1) Essbase C API Java Connector (JCO) SAP JCO (SAP BAPI) Microsoft Analysis Services OLE DB Provider TM1 OLEDB Provider Oracle Essbase C API Third-party libraries
Connec5ng to OLAP Sources Authen5ca5on Authentication Mechanism MSSAS Essbase SAP TM1 Basic Authentication Kerberos Authentication Connection Mapping SAP SCN Trust Authentication N/A N/A N/A 16
Agenda Overview: Connec5ng to OLAP Sources OLAP Repor-ng Principles OLAP Repor5ng in MicroStrategy OLAP vs. Rela5onal Repor5ng Blending OLAP and Rela5onal Repor5ng Data Import vs. Modeled OLAP Repor5ng Roadmap Ques5ons and Answers 17
OLAP Repor5ng Principles OLAP Online Analytical Processing Analysis of business data in a multi-dimensional array of data Cube
OLAP Repor5ng Principles Cubes and Dimensions What is an OLAP cube? Time Product 2001 2002 2003 2004 2005 Electronics 12.15 50.32 300.32 340.00 1,083.32 Books 200.32 300.32 350.32 460.32 500.32 Music 90.13 83.32 89.32 92.32 95.32 Movies 65.34 66.32 70.32 98.50 100.00 Beer 503.35 408.32 300.34 200.21 100.31 Table = 2-Dimensional Cube Cubes are made of Dimensions Measures Product dimension has 5 members (Electronics, Books, etc.) Time dimension has also 5 members (2001, 2002, etc.) Measure is Revenue
OLAP Repor5ng Principles Measures Can I have multiple measures in a cube? YES, cubes can have multiple measures Product Time Measures 2001 2002 Revenue Qty Sld Revenue Qty Sld Electro 12.15 3 300.32 30 Books 200.32 4 350.32 8 Beer 503.35 500 300.34 250 Time Product 2001 2002 Electro 12.15 300.32 Books 200.32 350.32 Beer 503.35 300.34 Revenue Time Product 2001 2002 Electro 3 30 Books 4 8 Beer 500 250 Qty Sold
OLAP Repor5ng Principles Measures Measures is another dimension (generally, without hierarchies, though) Overlap those two individual tables, each with a different measure, and you get a cube Products Beer Music Movies Books Qty Sold Electronic s Measures 2001 2002 2003 2004 2005 2006 Time Revenue CUBE with 3 dimensions: Products, Time, Measures
OLAP Repor5ng Principles Measures Each unique value occurs at at the intersection of three members of different dimensions: Cell (or tuple, in MDX) Products Beer Music Movies (Electronics, 2006, Revenue) = $23.3 Books Electronics 10.32 23.3 2001 2002 2003 2004 2005 2006 Time Measures 3 Dimensions
OLAP Repor5ng Principles Hierarchies Elements in Dimensions are organized in Hierarchies: I want quarterly data, not just monthly data Products Time Electronics Books Music Movies Beer 2001 Q1 Jan 10.00 8.00 3.00 9.00 120.00 Feb 15.00 3.00 37.00 21.00 45.00 Data can exist at multiple levels in the time dimension in the cube: Year, Quarter, Month Mar 5.00 9.00 10.00 30.00 255.00 Q1 Total 30.00 20.00 50.00 60.00 420.00 2001 Total 123.32 50.32 300.32 283.83 500.56 Year, Quarter and Month form a hierarchy of time members. Data can be aggregated at the different time hierarchy levels; cubes can do complex rollups (not just sums)
OLAP Repor5ng Principles Hierarchies The Product Dimension, a hierarchy might look like this This hierarchy has levels [All Products] is also a member! Product Dimension All All Products Category Electronics Books Beer Subcategory Computers TVs & Audio Fiction Non-fiction Travel Lager Ale Item Macbook Pro 13 Samsung LCD 2x5 BI Utopia IT Drives Business MDX for All Lonely Planet: China XX Lager Duvel Chimay Each level has members
OLAP Repor5ng Principles Hierarchies The Products Dimension may be organized differently: by category and by brands Multiple Hierarchies may exist in a Dimension All brands All Products Electronics Beer General Electric Samsung Computers Lager Ale HomeAppliance Plus Pureview XX Lager Duvel Galaxy Chimay
OLAP Repor5ng Principles Wrap- up Products Beer Dimensions Members Hierarchies and Levels Music Movies Books Electronics Jan Feb Mar Apr May Jun Time Measures is another dimension Measures Q1 2001 Q2 2001 2001
Agenda Overview: Connec5ng to OLAP Sources OLAP Repor5ng Principles OLAP Repor-ng in MicroStrategy OLAP vs. Rela5onal Repor5ng Blending OLAP and Rela5onal Repor5ng Data Import vs. Modeled OLAP Repor5ng Ques5ons and Answers 27
OLAP Repor5ng in MicroStrategy ODBO OLE DB for OLAP (Object Linking and Embedding, Database for Online Analytical Processing abbreviated ODBO) is Microsoft published specification and an industry standard for multi-dimensional data processing OLAP Provider ODBO MicroStrategy MSSAS Essbase TM1 SAP Catalog Schema Cube Dimension Hierarchy Level Schema (per DB Instance) Ignored MDX Cube Dimension Hierarchy Attribute Member Attribute Element Member Properties Attribute Forms ODBO Drivers SAP JCO Essbase C API MicroStrategy objects 28
OLAP Repor5ng in MicroStrategy ODBO - MSSAS Sharing: MDX cubes in a given Schema share the Dimensions, Hierarchies, Levels (attributes), as in the source. MSSAS ODBO MicroStrategy Database Catalog Schema (per DB Instance) N/A Schema Ignored Cube/Perspective Cube MDX Cube Dimension Dimension Dimension Hierarchy Hierarchy Hierarchy Level Level Attribute Member Member Attribute Element Member Properties Member Properties Attribute Forms MSSAS ODBO Driver MicroStrategy objects 29
OLAP Repor5ng in MicroStrategy ODBO - Essbase Measures as Dimension: Measures dimension can be treated as an attribute dimension (instead of as Metrics) Sharing: Each MDX cube has its own private Dimensions, Hierarchies, Attributes. Hierarchies: Essbase only exposes a single hierarchy per Dimension. Essbase ODBO MicroStrategy Application Catalog Schema (per DB Instance) N/A Schema Ignored Database Cube MDX Cube Dimension Dimension Dimension Hierarchy Hierarchy Hierarchy Level Level Attribute Member Member Attribute Element Member Properties (9.3+) Member Properties Attribute Forms Essbase Essbase C API MicroStrategy objects 30
OLAP Repor5ng in MicroStrategy ODBO SAP BW Certification: MicroStrategy is SAP-Certified: BW-OBI 2.0 External interface for OLAP client application Sharing: Dimensions/Hierarchies are shared across cubes in a Catalog (as in the Source) SAP BW ODBO MicroStrategy InfoCube Catalog Schema (per DB Instance) N/A Schema Ignored InfoCube/Query Cube MDX Cube Characteristic Dimension Dimension Hierarchy Hierarchy Hierarchy Virtual Level Level Attribute Characteristic Value Member Attribute Element Display Attributes Member Properties Attribute Forms SAP BW SAP JCO (OLAP BAPI) MicroStrategy objects 31
OLAP Repor5ng in MicroStrategy ODBO TM1 Sharing: Dimensions/Hierarchies are shared across cubes in a Catalog (as in the Source) TM1 ODBO MicroStrategy Server Catalog Schema (per DB Instance) N/A Schema Ignored Cube Cube MDX Cube Dimension Dimension Dimension Hierarchy Hierarchy Hierarchy Level Level Attribute Element Member Attribute Element Attribute Member Properties Attribute Forms TM1 ODBO Driver MicroStrategy objects 32
OLAP Repor5ng in MicroStrategy Making OLAP Cube Available in MicroStrategy Corresponding MicroStrategy attributes, hierarchies and metrics. Cube Structure 33
OLAP Repor5ng in MicroStrategy Configura5on SeRngs - Hierarchy Proper5es: Ragged Hierarchies Treats hierarchies as ragged for display purposes only Subtotals are still internally aggregated by Analytical Engine (planned enhancement) 34
OLAP Repor5ng in MicroStrategy Configura5on SeRngs - Hierarchy Proper5es: Ragged Hierarchies Rows when Hierarchy is Balanced Rows when Unbalanced Hierarchy setting set Hierarchies marked as unbalanced/ragged = Keeping all rows even if some do not have corresponding elements in all levels 35
OLAP Repor5ng in MicroStrategy Configura5on SeRngs - Hierarchy & Level Proper5es: Source Order Retrieves & saves member sort order If enabled, recommendation is to update hierarchy structure regularly with changing data. Setting also available for Hierarchy Levels For example: charts of accounts make sense in certain order only. 36
OLAP Repor5ng in MicroStrategy Configura5on SeRngs - Measures: Addi5onal Metrics Compound Metrics based on imported measures. Custom MDX Expressions as calculated members of Measures dimension (useful for transformations, conditional metrics, etc.) 37
OLAP Repor5ng in MicroStrategy Configura5on SeRngs - MDX VLDB SeRngs Control MDX syntax or features For example: Cell Level Formatting Non empty keyword Date format 38
Demo Modeled OLAP Configura5on SeRngs
Agenda Overview: Connec5ng to OLAP Sources OLAP Repor5ng OLAP Repor5ng in MicroStrategy OLAP vs. Rela-onal Repor-ng Blending OLAP and Rela5onal Repor5ng Data Import vs. Modeled OLAP Repor5ng Roadmap Ques5ons and Answers 40
Rela5onal Repor5ng Schema based on Tables Objects Mapped to table columns Attributes Facts Transformations
OLAP Repor5ng Schema based on Cubes OLAP Cubes contain business/reporting logic Attributes, Hierarchies, Metrics represent semantics of OLAP cube
Rela5onal Repor5ng Applica5on Objects Application objects contain business/reporting logic (e.g. how data is aggregated) Application objects determine what and how to get data from databases
OLAP Repor5ng Applica5on Objects Application objects only list what to retrieve from the cube (not how)
Rela5onal Repor5ng Query Language SQL is generated based on reporting logic in application objects SQL says what and how data is retrieved from relational sources
OLAP Repor5ng Query Language MDX says only what is retrieved from OLAP sources Report Report: MDX View
OLAP vs. Rela5onal Repor5ng How do OLAP and Rela5onal repor5ng compare? Schema Objects ROLAP Attributes Facts Transformations Hierarchies Others (Partition Map,etc.) -- MOLAP Attributes -- -- Hierarchies -- Metrics Application Objects Metrics Filters Prompts Consolidations Custom Groups Derived Elements Reports Documents Etc. Metrics Filters Consolidations Custom Groups Prompts Derived Elements Reports Documents Etc.
OLAP vs. Rela5onal Repor5ng Rela5onal and OLAP Repor5ng Together App Objects Schema Objects City Store Discount Data Sources ROLAP MOLAP MOLAP Self- Service Project Schema MDX Schema MDX Schema * Very simplified view
Agenda Overview: Connec5ng to OLAP Sources OLAP Repor5ng OLAP Repor5ng in MicroStrategy OLAP vs. Rela5onal Repor5ng Blending OLAP and Rela-onal Repor-ng Data Import vs. Modeled OLAP Repor5ng Roadmap Ques5ons and Answers 49
Blending OLAP and Rela5onal Repor5ng Map OLAP cube to Project AUributes Multi-source scenario App Objects Schema Objects City Store Discount Data Sources ROLAP MOLAP MOLAP Self- Service Project Schema MDX Schema MDX Schema
Blending OLAP and Rela5onal Repor5ng Map OLAP cube to Project AUributes Go to MDX Cube Catalog Right-mouse click on object, choose Map Refresh Schema 51
Blending OLAP and Rela5onal Repor5ng Map OLAP cube to Project AUributes Mapping to Project ANributes Mul5- source AUributes: reports with project auributes and metrics from database or OLAP cubes Standalone Filters Security Filter Custom Groups Consolida5ons Common selectors, groupings in Report Services documents 52
Blending OLAP and Rela5onal Repor5ng Mapping Objects between OLAP Cubes Cube A Choose a Year Query A Var1 Var 2 Var1 Query B
Blending OLAP and Rela5onal Repor5ng Map OLAP cube to Project AUributes Mapping to Other Cubes Avoiding redundant prompts: SAP BW Variables Switching cubes in a report 54
Demo Mapping OLAP cube to Project Schema and Mul5source
Agenda Overview: Connec5ng to OLAP Sources OLAP Repor5ng OLAP Repor5ng in MicroStrategy OLAP vs. Rela5onal Repor5ng Blending OLAP and Rela5onal Repor5ng Data Import vs. Modeled OLAP Repor-ng Roadmap Ques5ons and Answers 56
Data Import vs. Modeled OLAP Repor5ng Configura5on Feature Modeling Data Import Needs MDX Cube Provider (non-sap) Needs SAP JCO libraries in Intelligence Server (SAP) Supports Kerberos Authentication (MSSAS, TM1, SAP only) Database Instance need to be configured in Developer 57
Data Import vs. Modeled OLAP Repor5ng Func5onality Feature Modeling Data Import Ragged Hierarchy Support Configurable Automatic Source Order Functionality Configurable Unexposed Compound Metrics Pass-through MDX Calculated Members Configurable Unexposed VLDB Settings (Non empty, Cell-level Formatting, etc.) VLDB settings are set at Database Instance and Report levels Configurable Configurable for DB Instance Multi-source reporting / Data Blending Attribute Mapping Visual Insight Attr. Linking 58
Demo OLAP Repor5ng from VI with Data Blending
Data Import vs. Modeled OLAP Repor5ng Recommenda5ons Use Data Import workflows preferably: End user experience is better Improvements will appear first in Data Import Use modeled way if there are needs for advanced features (pass-through metrics, source order, etc.) there is a need to load data to Intelligent Cubes 60
Agenda Overview: Connec5ng to OLAP Sources OLAP Repor5ng OLAP Repor5ng in MicroStrategy OLAP vs. Rela5onal Repor5ng Blending OLAP and Rela5onal Repor5ng Data Import vs. Modeled OLAP Repor5ng Roadmap Ques5ons and Answers 61
Roadmap Overview Short-Term Mid-term Long-term Hierarchical Attribute on template (better support of ragged/unbalanced hierarchies) Subtotals from source (support non-additive measures in MDX) Filter Panel (for hierarchical attribute) Incremental Fetch (Server-to-Client) Derived Elements (on Hierarchical Attribute) / Custom Sorting Calculated members (pass-through DEs)
Questions and Answers MicroStrategy World 2015 63