Skip to main content

Semantic Modeler Series: Introduction

Metadata Management

Oracle BI Administration Tool

BI Administration Tool

Metadata management used to be one of the key strengths of Oracle Business Intelligence. Using BI Administration Tool developers were able to design and implement enterprise data models that were sitting on top of data warehouse data schemas.

OBIEE developer designs and develops a metadata model, a repository, using BI Administration Tool, which results in a RPD file. This binary file is then deployed on BI Server. BI Server is a component of Oracle Business Intelligence architecture and is responsible for processing user requests and data queries against underlying data sources.

Oracle BI Server Architecture

BI Server uses metadata information from repository to perform the following two tasks:

  • use logical SQL query and tranform it into corresponding query (ie. SQL, MDX), depending on the underlying data source (ie. Oracle Database, Microsoft SQL Server, Oracle Essbase, ...)
  • transform and combine physical datasets retrieved and perform required calculations.

Typical metadata model consists of three layers:

Physical layer

Physical layer defines the objects and relationships that the Oracle BI Server required to write native queries against each physical data source. Developer defines connections to connect to data sources, importing tables (or possibly OLAP cubes or even flat files)from data sources.

The other important task is to define relationships between objects in the physical layer. Underlying database model can be dimensional, in 3rd normal form, flat files. It is not that important as long joins and relations between objects are defined. This is the base for query generation.

There are a few important things that you can do in physical layer. First, one physical table can be several times due to possibility to separate physical representation of objects from logical (aliases) that are being used in setting relations. This way,one physical table can be reused multiple times without replicating physical tables in the database.

Another really important feature is modeling aggregated data into same enterprise model. This gives developers possibility to use aggregates transparently - aggregates are used whenever conditions are met (ie. query on specified level). And this is completely hidden from the end-user.

Business Model and Mapping layer

This layer is often called also Logical Layer. This layer defines the business or logical model of the data and specifies the mapping between the business model and the physical schemas. This layer determines business logic of analytical application which objects and relationships available to users that is easy to understand and to use by hiding the complexity of the source data models. Models that are accessible to end users are defined as star schemas.

Oracle BI Server evaluates logical SQL requests against the business model, and then uses the mappings to identify physical tables that are needed for query generation.

Business model defines all dimensional data including hierarchies.

Presentation layer

Presentation layer is often referred to as Subject Area (actually it contains several Subject Areas) presents customized, secure, role-based views of a business model to end users. It adds a level of abstraction on top of logical layer and provides the view of the data seen by end users.

As mentioned above, there can be several subject areas in presentation layer. These subject areas can map to one business model, and can be designed to enable analyses of particular business area.

Oracle BI Repository Layers

In my experience working with Oracle Business Intelligence (before) and Oracle Analytics (now) having single enterprise metadata model is one of the most important features of this product. It can support really diverse data warehouse architectures from single data warehouse schema to distributed architectures running on technologically totally different server platform supporting one single analytical application, for example:

  • most detailed granular data stored in a relational database (ie. Oracle Database),
  • aggregated data stored in multidimensional OLAP database (ie. Oracle Essbase) and
  • specific aggregations stored in in-memory database (ie. TimesTen).

All these in one single model, single application, complexity of the model completely hidden from the end user. There are not many tools out there to do that so efficiently.

Oracle Analytics Semantic Modeler

Oracle Analytics Semantic Modeler is replacing BI Administration Tool. This doesn't mean that BI Administration Tool is retiring. Well, not just yet. Developers can continue using it as they are used to, however there might be some features that would drive adoption of Semantic Modeler in the future:

  • Semantic Modeler is a web based development tool, included with the rest of Oracle Analytics. This means you don't need to install BI Administration Tool on your desktop. This was in particular annoying for those who are not using Windows.

Semantic modeler web based tool - Data Lineage

  • Semantic model is no longer one big binary file. Each part of the semantic model is now stored in SMML (Semantic Model Markup Language), readable, notation. SMML is basically a JSON file.

Semantic modeler - SMML

  • Improved collaborative development using Git. Git can now become part of the development environment where developers can use all features of Git in order to manage their own projects, merge them back into single repository, and probably most importantly, we have finally got proper versioning support.

Semantic modeler - Git Integration

I think these three features are probably enough to decide to start using Semantic Modeler. Developers will obviously observe different user interface, even though logically all components are there slightly adopted to a new web user interface.

Semantic modeler

Funny enough, there might be some other, equally important, reasons to start using Semantic Modeler. The following example has become anecdotal and the following story is 100% true:

Just recently we encountered some tough system administrator with one of our new clients. We asked for BI Administration Tool installation as we wanted to create a new repository. But, the tool's name contains word Administration which was enough for our request to be rejected (!?). Lucky enough, in the same time Oracle Analytics Server 7.6, with Semantic Modeler included for the 1st time, became generally available. This meant that BI Administration Tool was no longer mandatory ... can you imagine?

But let's not jump too quickly. There are some things to pay attention to too. Currently Semantic Modeler doesn't support all data sources - for example, Essbase is not supported, however it is in the plan. So working with Semantic Modeler is favorable, but be careful to verify if data sources are supported. Find out more about supported data sources here.