XCube XML for Data Warehouses Wolfgang Hümmer Andreas Bauer Gunnar Harde DOLAP 2003 New Orleans
Motivation/Outline DOLAP 2002 XML standard for Data Warehouse data is desirable Possible benefits Integration/federation of Data Warehouses Standardize MD data model Data Warehouse Web Service 12.11.2003 Motivation
The Download Use Case Web Cube Data Warehouse cube formulated in XML Web server offers Web Cubes download schema Local DW download dimensions download facts Network Web server Web cubes 12.11.2003 Motivation
The Query Use Case Download case plus selective query Benefit: reduce network traffic Local DW download schema download dimensions query download selected facts Network Web server Web cubes 12.11.2003 Motivation
Further Use Cases The Generating Use Case Create Web Cubes from raw data Create Web Cubes from existing Data Warehouse data Introduction of Standard Dimensions Federation of Data Warehouses Data Warehouse Portal 12.11.2003 Motivation
Requirements for Web Cubes Support for multidimensional model(s) Distinction between Multidimensional schema Dimension/master data Facts/transaction data Flexible: reuse and extensibility Suitable for transport over networks 12.11.2003 Motivation
XCube Collection of XML formats for Describing MD data cubes, i.e. Web Cubes Formulating simple queries on data cubes Goal: exchange of warehouse data Note: XCube is not a (proper) query language! Joint development of OFFIS and FAU 12.11.2003 Basic formats
Overview XCube Formats Basic XCube Formats XCubeSchema XCubeDimension XCubeFact Advanced XCube Formats XCubeText XCubeQuery XCubeFunction 12.11.2003 Basic formats
XCubeSchema Description of MD structure Contains links to Dimensions & their hierarchy levels Facts Extensions Multicubes Data types & unit types Computed facts Inheritance, composition Standard Time Dimension 12.11.2003 Basic formats
XCubeSchema Example <multidimensionalschema> <cubeschema> * <fact> * <dimension> <classschema> * <classlevel> * <rollup> * <attribute> <multidimensionalschema > <cubeschema id="sale"> <fact id="sales"/> <fact id="revenue"/> <dimension id="geography" granularity="branch"/> <dimension id="product" granularity="article"/> </cubeschema> <classschema> <classlevel id="branch"> <attribute id="manager"/> <rollup tolevel="city"/> </classlevel> <classlevel id="city"> <rollup tolevel="region"/> </classlevel> <classlevel id="article"> <attribute id="articlename"/> <attribute id="brand"/> <rollup tolevel="productgroup"/> </classlevel> <classlevel id="productgroup"> <rollup tolevel="productfamily"/> </classlevel> geography product </classschema> </multidimensionalschema> 12.11.2003 Basic formats
XCubeDimension Store data of single dimension Populate classification levels from above Assign units to nodes Special features Shared Roll-Ups Versioning of nodes Reuse & refine standard Time-Dimension 12.11.2003 Basic formats
XCubeDimension Example <dimensiondata version="0.4 > <units><entry unittype="currency" unit="eur"/></units> <dimensiondata> <units> * <entry> <classification> * <level> * <node> * <attribute> * <rollup> <classification> <level id="country"> <node id="germany"/> <node id="switzerland"/> <node id="france"/> </level> geography <level id="region"> <node id="northern Germany"> <rollup tonode="germany" level="country"/> </node> <node id="western Germany"> <rollup tonode="germany" level="country"/> </node> <node id="eastern Germany"> <rollup tonode="germany" level="country"/> </node> <node id="southern Germnamy"> <rollup tonode="germany" level="country"/> </node> </level> </classification> </dimensiondata> 12.11.2003 Basic formats
XCubeFact Stores facts of a data warehouse cube <cubefacts version="0.4 > <cubefacts> * <cube> * <cell> * * <dimension> <fact> <cube id="sale"> <cell> <dimension id="geography" node="branch48"/> <dimension id="product" node="ma-450"/> <dimension id="time" node="2003-07-24"/> MD coordinates <fact id="sales" value="3"/> <fact id="revenue" value="960"/> </cell> fact values <cell> <dimension id="geography node="branch75"/> <dimension id="product" node="ma-450"/> <dimension id="time" node="2003-07-24"/> <fact id="sales" value="2"/> <fact id="revenue" value="640"/> </cell> </cube> </cubefacts> 12.11.2003 Basic formats
Short Summary What we have so far XCubeSchema XCubeDimension XCubeFact Result We are able to express a complete data cube in XML 12.11.2003 Basic formats
XCubeQuery Dynamically explore a web cube Not meant to be YAQL Reduce network traffic by drilling down to the area of interest Usability depends on ability of the data source E.g. dumb sources cannot slice & dice Problem treated with XCubeFunction 12.11.2003 Adv. formats
XCubeQuery Sequence (1) <getcubeschema> Get List of Cubes <cubeschema> * <getcubeschema id= > Get facts & dimensions <cubeschema id= > <fact> * <dimension> * Client Server 12.11.2003 Adv. formats
XCubeQuery Sequence (2) <getclassschema> <dimension id= > * Get all information on dimension(s) <class Schema> <classlevel id= > * <datatypes> <datatype name= > * <unittypes> <unittype> * Client Server 12.11.2003 Adv. formats
XCubeQuery Sequence (3) <getfacts> <cube id= > * <dimension id= > * <fact> * Get facts <cube id= > <cell> * <dimension id= node= >* <fact id= value= >* Client Server 12.11.2003 Adv. formats
Further XCube-Standards XCubeFunction Query the abilities of a server holding web cubes Determines to what degree XCubeQuery can be used XCubeText Add textual descriptions/comments In place vs. external file(s) 12.11.2003 Adv. formats
Prototypical Implementation Oldenburg TPC-H data Erlangen XCube-Generator Windows 2000 MS SQL Server & OLAP Services XCube-Loader Solaris 8.0 Oracle 9i TPC-H data Scale Factor 1 12.11.2003 Prototype
XCube-Loader Metamodel based on CWM Database system independent Pluggable DBS drivers Object structures DB structures XCS Oracle DW 1 Oracle XCD MS Access DW 2 MS Access XCF Driver manager Transformation 12.11.2003 Prototype DW n
Summary XCube Standard formats for formulating cubes Issues No unique MD data model Overhead/size gained by using XML Vision Data Warehouse Web Service Federations of warehouses 12.11.2003 Summary
Thank You for Your Attention Are there any Questions? Find out more at www.xcube-open.org 12.11.2003 Summary