The Objectivity Of Your Business
Business Objects - as well as any other reporting environment - metadata constitutes a vital part of enterprise lineage and dependency graph and therefore needs to be easily accessible for administrative tasks as well as allow itself to be integrated with the rest of enterprise-wide metadata to be usable in lineage tracking and impact analysis exercises. However, Business Objects does not provide any simple interface to access detailed lineage metadata out of the box. This document gives a brief overview of one approach to get access to and integrate this information into a general metadata repository.
Business Objects stores its metadata in its proprietary metadata repository, partially in Central Management Server (CMS), partially in File Repository Server (FRS). CMS is implemented as a set of relational database tables, but the most important information is not directly available and has to be accessed via proprietary Java APIs. The information contained in CMS is mostly useful for administrative purposes and contains no significant lineage data. FRS data is stored as a set of files of various types in hierarchical file system. Of particular interest are universe and report files which contain the lineage and dependency metadata. Having access to this information enables one to answer a multitude of various technical and administrative questions, such as:
The current version of the scanner focuses on and has been developed and tested with Business Objects XI R4 environment. This means support for universes in .UNV and web intelligence reports in .WID formats. Support for other (past or future) formats may become available as the need arises as part of further development.
Business Objects Central Management Server (CMS) is used to store information (mostly administrative in nature) about users, administrative structures (presented as folder hierarchy), universes, reports and relationships between them etc. This information is stored in a relational database schema making general hierarchical information available. Part of the information in CMS is weakly encrypted, but the most important information is not directly readable and is encoded as serialized Java objects stored as Large Binary Objects. Thus the contents of this data is not available by simple SQL queries and has to be accessed via proprietary Java APIs.
Business Objects File Repository Server (FRS) stores most important information covering the structure and contents of Universes and Reports as well as all lineage and dependency metadata required for SQL generation. This data is stored as multiple files in hierarchical file system and is linked with CMS via IDs and directory structure. The files are loosely following the structure of PKZip files, mimicking zip archives with multiple parts. The parts can be either compressed or uncompressed, and the exact structure and composition of the parts is not consistent between different Business Objects versions.
To store metadata imported from Business Objects CMS and FRS into MMX Repository, a metamodel loosely based on Chapter 11 (OLAP) of OMG CWM Framework is utilized, with the following classes, associations and taxonomies:
|BI Server (Business Objects Server)||BI Server (root for other classes)|
|BI Folder (Business Objects Folder)||BI Folder > BI Server|
|BI User (Business Object User)||BI User > BI Server|
|BI Inbox (Business Objects User Inbox)||BI Inbox > BI Server|
|BI Model (Business Objects Universe)||BI Model > BI Folder|
|BI Report (WebIntelligence Report)||BI Report > BI User, BI Report > BI Inbox|
|BI Context (Universe Context)||BI Context > BI Model|
|BI Collection (Universe Class)||BI Collection > BI Model|
|BI Object (Universe Object)||BI Object > BI Collection|
|BI Filter (Universe Filter)||BI Filter > BI Collection|
|BI Table (Universe Table Alias)||BI Table > BI Model|
|BI Join (Universe Join)||BI Join > BI Model|
|BI Query (WebIntelligence Report Query)||BI Query > BI Report|
MMX Framework Business Intelligence (BI) Metamodel
MMX Framework Business Objects metadata scanner supports most of the complex features found in Business Objects Universes, such as:
In addition, query definitions in Business Objects Reports are parsed and decoded into references to Universe objects, as well as lists of all involved string literals, number and date constants and user prompts. All of this information is stored in MMX Repository according to Business Intelligence metamodel and is integrated into the lineage and dependency graph. Having full lineage data integrated into one repository enables solution of several business questions that would not be possible otherwise, eg. verification of references from universe objects to database entities or validation of user-defined custom SQL.
MMX Framework Business Objects metadata scanner is designed for and works with: