You are on page 1of 3

Semantic Layer

By Dylan Wan
Business Model and Mapping Layer is the semantic layer in BI metadata. Why do
we need it? What if we do not have this layer?
1. Provide the physical (Relational) to dimensional mapping
Although we already know which tables are dimension tables and which tables are
fact tables in the data warehouse, if you are directly reporting from the OLTP
model, the logical mapping is where you are defining the relational to dimensional
mapping.
The data model diagrams from the BMM layer are star schema.
2. Snow flake schema is transformed to Star Schema in the BMM layer
This is accomplished by defining multiple tables within a LTS. A LTS can map the
attributes from the parent tables to form the denormalization.
Another way to view this feature is that it allows the SQL trimming so the
unnecessary table joins will not be used in the query. If you do not model this
type of relationship in BI metadata but define the relationship inside the database
view, these table will always be seen in the query even though you are not
selecting any data.
3. Helper tables are hidden in the BMM Layer
If you are using helper table to adjust the grain of the data, the helper tables are
implemented in the physical layer and joined in the physical layer, but their
existence will be hide in the BMM Layer.
4. Derived metrics are defined in the BMM Layer
You can define the formula in the LTS mapping or in the logical attribute
definitions.
If the metric definition are defined as logical attribute, they are independent from
the source model.
5. A common information model which is independent from the source schema

Translation Lookup – for Performance Optimization You can define the lookup column and the lookup table for supporting translations. this is very difficult. You do not really need to define these by yourselves 7. the BI tool is designed with this assumption and can be used for this purpose. For examples. This is a performance optimization. BI server uses this multiple LTSes mapped in the logical layer to generate different queries based on the level the data is being selected. Reports and Dashboards are created against the presentation layer. the universal data warehouse is also designed with this source agnostic nature in mind. 6.Actually. The rollup dimension tables and aggregate tables can be generated via the BI metadata. You can thus define the aggregate tables and the rollup dimensions. Creating a “common” one is actually creating “another” one. The semantic layer of each source systems are known to the system users. Dimension Hierarchies and Levels are defined in BMM Layer You need to first analyze the requirement about how data are commonly aggregated and design the model upfront. In the real life. Although. Also. Lookup is defined as a very special type of join that is evaluated only on the aggregated data. the temperature of each place . Defining the aggregation rule Not all numbers can be added up. You can use the same presentation catalog even though the source database are different. this feature is defined in the LTS layer (using physical lookup) or in the Business Model layer as a logical lookup table. there is really no logical dependence that presents us to defining it at the physical layer. There is a technical implication about this feature. Unlike the Oracle database server that can perform the SQL rewrite by redirecting the query to Material View. in OBIEE. However. 8. with the aggregate persistence and the summary adviser features.

the data are shown side by side via a full outer join. The truth is that this is a rarely used feature in my expereince. You can declare that multiple LTSes are groups as fragments. . the data from multiple sources will be pulled and the results will be shown together. This can be done at the reporting layer at the presentation catalog though.cannot be added up. the min. When a query is generated with different fact tables. 10. When the query against the logical table. The max. Conformance across tables A logical table may have multiple LTSes which point to different physical tables. or the average of temperature of multiple places are more meaningful. Supporting UNION via fragments The standard way to support UNION is to create fragments in the BMM layer. 9.