XCube
XML for Data Warehouses
Wolfgang Hümmer Andreas Bauer – Gunnar Harde DOLAP 2003 New Orleans
XCube XML for Data Warehouses Wolfgang Hmmer Andreas Bauer Gunnar - - PowerPoint PPT Presentation
XCube XML for Data Warehouses Wolfgang Hmmer 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
Wolfgang Hümmer Andreas Bauer – Gunnar Harde DOLAP 2003 New Orleans
12.11.2003
Motivation Basic formats
Prototype Summary
DOLAP 2002
XML standard for Data Warehouse data is
Possible benefits
Integration/federation of Data Warehouses Standardize MD data model Data Warehouse Web Service
Motivation
12.11.2003
Motivation Basic formats
Prototype Summary
Web Cube
Data Warehouse cube formulated in XML
Web server offers Web Cubes
Motivation
12.11.2003
Motivation Basic formats
Prototype Summary
Download case plus selective query
Benefit: reduce network traffic
Motivation
12.11.2003
Motivation Basic formats
Prototype Summary
The Generating Use Case
Create Web Cubes from raw data Create Web Cubes from existing Data
Introduction of Standard Dimensions Federation of Data Warehouses Data Warehouse Portal …
Motivation
12.11.2003
Motivation Basic formats
Prototype Summary
Support for multidimensional model(s) Distinction between
Multidimensional schema Dimension/master data Facts/transaction data
Flexible: reuse and extensibility Suitable for transport over networks
Motivation
12.11.2003
Motivation Basic formats
Prototype Summary
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
Basic formats
12.11.2003
Motivation Basic formats
Prototype Summary
Basic XCube Formats
XCubeSchema XCubeDimension XCubeFact
Advanced XCube Formats
XCubeText XCubeQuery XCubeFunction Basic formats
12.11.2003
Motivation Basic formats
Prototype Summary
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 … Basic formats
12.11.2003
Motivation Basic formats
Prototype Summary
< 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> < /classSchema> < /multidimensionalSchema>
< multidimensionalSchema> < cubeSchema> < classSchema> < fact> < dimension> * * < classLevel> * < rollUp> < attribute> * *
geography product
Basic formats
12.11.2003
Motivation Basic formats
Prototype Summary
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 Basic formats
12.11.2003
Motivation Basic formats
Prototype Summary
< dimensionData version= "0.4“ …> < units> < entry unitType= "currency" unit= "EUR"/> < /units> < classification> < level id= "country"> < node id= "Germany"/> < node id= "Switzerland"/> < node id= "France"/> < /level> < 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>
< dimensionData> < units> < classification> < entry> * < level> * < attribute> < rollUp> * * < node> *
geography
Basic formats
12.11.2003
Motivation Basic formats
Prototype Summary
< cubeFacts version= "0.4“ …> < cube id= "sale"> < cell> < dimension id= "geography" node= "branch48"/> < dimension id= "product" node= "MA-450"/> < dimension id= "time" node= "2003-07-24"/> < fact id= "sales" value= "3"/> < fact id= "revenue" value= "960"/> < /cell> < 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>
< cubeFacts> < cube> * < dimension> < fact> * * < cell> *
Stores facts of a data warehouse cube
MD coordinates fact values
Basic formats
12.11.2003
Motivation Basic formats
Prototype Summary
What we have so far
XCubeSchema XCubeDimension XCubeFact
Result
We are able to express a complete data
Basic formats
12.11.2003
Motivation Basic formats
Prototype Summary
Dynamically explore a web cube
Not meant to be YAQL Reduce network traffic by drilling down to
Usability depends on ability of the data
E.g. “dumb” sources cannot slice & dice Problem treated with XCubeFunction
12.11.2003
Motivation Basic formats
Prototype Summary
< getCubeSchema> < cubeSchema> * < getCubeSchema id= …> < cubeSchema id= …> < fact> * < dimension> *
12.11.2003
Motivation Basic formats
Prototype Summary
< getClassSchema> < dimension id= …> * < class Schema> < classLevel id= …> * < dataTypes> < dataType name= …> * < unitTypes> < unitType> *
12.11.2003
Motivation Basic formats
Prototype Summary
< getFacts> < cube id= …> * < dimension id= …> * < fact> * < cube id= …> < cell> * < dimension id= … node= …> * < fact id= … value= …> *
12.11.2003
Motivation Basic formats
Prototype Summary
XCubeFunction
Query the abilities of a server holding web
Determines to what degree XCubeQuery
XCubeText
Add textual descriptions/comments In place vs. external file(s)
12.11.2003
Motivation Basic formats
Prototype Summary
XCube-Generator
Windows 2000 MS SQL Server &
XCube-Loader
Solaris 8.0 Oracle 9i
TPC-H data
Scale Factor 1
TPC-H data
Prototype
12.11.2003
Motivation Basic formats
Prototype Summary
Metamodel based on CWM Database system independent
Pluggable DBS drivers
Prototype Transformation XCF XCS XCD DB structures Driver manager
MS Access
DW2
MS Access
DWn
…
DW1
Oracle Oracle Object structures
12.11.2003
Motivation Basic formats
Prototype 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 …
Summary
12.11.2003
Motivation Basic formats
Prototype Summary
Are there any Questions? Find out more at www.xcube-open.org
Summary