OBIEE Repository Metadata Development Table of contents Process for bringing data dat a into OBIEE ............ ....................... ...................... ....................... ....................... ..................... ............... .......... ..... 2 Dimensions Dimensio ns........... ...................... ....................... ....................... ...................... ....................... ....................... ............... ......... .......... .......... .......... .......... ..... 2 Physical Layer............ ....................... ...................... ....................... ....................... ...................... ................. ........... .......... .......... .......... .......... ........ ... 2 Connection Pool........... Pool...................... ....................... ....................... ...................... ....................... ....................... .................... .............. .......... ....... ..3 Create Primary Prima ry Keys.......... ...................... ....................... ...................... ....................... ....................... ...................... ....................... ................ .... 3 Create the Physical Physi cal Diagram Diagr am........... ....................... ....................... ...................... ....................... ....................... ...................... ............... ....3 Business Layer ............ ........................ ......................... .......................... .......................... ................................................ ..................................... ..4 Presentation Presenta tion Layer........... ...................... ...................... ....................... ....................... ...................... .................... .............. .......... .......... .......... ..... 4 Denormalized Denorma lized tables ............ ....................... ...................... ....................... ....................... ...................... ....................... .................... ............. .......4 Reposito ry Documenta Repository Documentation tion Utilit Utilities ies........... ...................... ...................... ....................... .................. ........... .......... .......... .......... .......... ........ ... 5 Rename Wizard Wiza rd........... ...................... ....................... ....................... ...................... ....................... ....................... ...................... ....................... ..............5 Generating Genera ting and Deploying a Metadata Dictionary Dictionar y........... ....................... .................. ........... .......... .......... .......... .......... ....... ..5 Generating Genera ting Documentation Documentat ion of Reposit Repository ory Mappings .......... ...................... ................... ............ .......... ......... ......... .......... ..... 5 Verify Data Type........... ...................... ....................... ....................... ...................... ....................... ....................... ................. ........... .......... .......... .......5 Change the Date Data Type........... ...................... ....................... ....................... ................... ............. .......... .......... .......... .......... .......... ..... 5 Where are system-wide changes change s stored?........... ...................... ....................... ................. .......... .......... .......... .......... .......... .......6 Create Hierarchies Hierarch ies........... ...................... ...................... ....................... ....................... ...................... ....................... ....................... .................. ......... ..6 Hierarchy Hierarc hy Aggregat Aggregation ion.......... ...................... ....................... ...................... ....................... ....................... ..................... .............. ......... .......... ..... 6 Hierarchy Hierarc hy Errors.......... ...................... ....................... ...................... ....................... ....................... ................ .......... .......... .......... .......... .......... ....... ..6 Buildin g Hierarchies Building Hierarchie s With Columns In Different Diffe rent Tables Table s.......... ...................... ....................... ...................... ................... ..........7 Changes Applied Through Answers............ ....................... ...................... ....................... .................. ........... .......... .......... .......... .......... ....... ..8 Formatting Formatti ng Data Values........... ...................... ....................... ....................... ...................... ................. .......... ......... .......... .......... .......... .......... ..... 8 Requestt Filters ........... Reques ...................... ....................... ....................... ...................... ....................... ....................... ..................... ............... .......... ........ ... 10 Protect Filters Fi lters Passed Passe d through Dashboard Da shboard .......... ..................... ....................... ....................... ...................... ................... ........ 10
Process for bringing data into OBIEE (from remarks by Mike Jelen, BICG, 5/13/2008) General: Perform an operation, then immediately save and check integrity. This saves a lot of troubleshooting time.
Dimensions Physical Layer •
•
Use File.> Import from Server with OCI 10g/11g selected (avoids need to change the Connection Pool later) TNS Name = Data source name on Connection Pool dialog o
TNS Name = polydata.world
Connection Pool •
Require fully qualified table names on connection pool (needed for proxy account since it has only read access to tables)
Create Primary Keys •
Verify that primary keys were imported and identified in the tables. If not, add them.
•
Right-click table, select Properties
•
Select the Keys tab
•
If primary key is not marked or the wrong one is selected, modify the keys accordingly.
Create the Physical Diagram •
•
Click Foreign Join button, then click Dimension table and drag to Fact table For various DATES in the fact table, copy the TIME dimension 3 times with different alias names, then join to 3 different dates in the fact table (e.g., withdrawn_date, enrolled_date, dropped_date)
Business Layer •
Use Complex Joins to join new items created in the Business Layer, if any
•
Aggregate items that can be summed
•
Use Rename Wizard to rename fields and tables
•
o
One table at a time (in on-line mode)
o
Rules must be ordered, or perform one rule at a time
Group columns with dummy columns, e.g. --- Program Plan Begin ----- Program Plan End --o
Check "Use existing logical column as the source"
o
Enter the number 1 in the formula box
Presentation Layer •
Group columns with subfolders o
Create new Presentation Table as "– [Name]" (that's hyphen space name)
o
Creates a subfolder under the parent folder
•
It is also possible to do this with "->" in the Description, but this is less desirable because it is not visible in Administrator unless you are looking at the column's Properties
For Administrator convenience, use icons to relate items in Presentation and Business Model layers
Denormalized tables •
•
Physical layer o
Several subject-related denormalized tables may be pulled in together
o
Create an alias of each denormalized table
o
In the Physical Diagram, use a simple join from the original table to the a lias
o
The alias becomes the "fact" table
Business Layer o
•
Delete columns from the "fact" table that are not used for measures (all but the join column in most cases)
Presentation Layer o
o
Delete alias table (assuming it does not contain measures) Create different folders (subject areas) for different denormalized tables so that people don't try using them together. (While this would not be allowed in Answers, trying to do so returns an error message that is confusing for the user.)
Repository Documentation Utilities •
BI Administration Tool > Tools menu > Utilities
•
For more information search Help
Rename Wizard •
Rename columns
•
Remove underscore character
•
Change all column names so that first letter of each word is uppercase and rest is lowercase.
Generating and Deploying a Metadata Dictionary •
Web-based XML file of information in the repository file.
Generating Documentation of Repository Mappings •
Use this tool to document the tables, columns, etc in the repository file.
•
Produces csv or tab-delimited file.
•
Only columns that are in the Presentation Layer will be included in the report.
•
•
Run the utility after ALL columns are brought to the Presentation Layer and after running the Rename Wizard. Run the utility before fields (ex. Keys, Extract Date, Maint Date) are deleted from the Presentation Layer.
Verify Data Type Before moving tables to the Business Model or Presentation Layer verify that the Data Type is correct for the columns. OBIEE may define the column as a different data type than what was intended or used in the Warehouse.
Change the Date Data Type Most date columns come into OBIEE with a Data Type of DATETIME which produces a date format that includes the date and the time. To remove the time from the field change the Data Type to DATE. This change will push through from the Physical Layer through the Business Model and Presentation Layers. Dates are brought in as DATETIME. •
DATETIME = 1900/02/25 00:00:00
•
DATE = 1900/02/25
Columns defined as Number will come into OBIEE as DOUBLE which includes two decimal places. If this is incorrect for the column select INTEGER. •
DOUBLE = 19000225.00
•
INTEGER = 19000225
Note: Column Properties which include Style, Column Format, Data Format and Conditional Format are applied in Answers.
Where are system-wide changes stored? System-wide changes are stored in the Web Catalog and must be moved from development to production servers along with requests and dashboards. These files are stored in folders separate from requests and dashboards.
Create Hierarchies 1. Right-click dimension table and select Create Dimension at the bottom of the shortcut menu. 2. A Hierarchy is created using the name of the dimension table followed by the word Dim. 3. A Grand Total level and Detail level will be created. The Detail level will contain all of the columns of the dimension. 4. Create child levels using names that match your hierarchy. Right-click the Detail level, select New Object, Child level. 5. Create a child level below the lowest child level (this will contain the dimension key.) Move the dimension key to this level. Right-click this key column and remove the checkmark next to Use for drilldown. 6. Move other columns to their respective levels. 7. Delete any unneeded columns from any level. 8. Select columns within each level, right-click and select New Logical Level Key. Select all columns as keys if you want to see them in drilldown. 9. For any levels that should be skipped in the drill-down, select all columns in the level, right-click and remove the checkmark next to Use for drilldown. 10. At level two check for a Detail key that was automatically created. (Right-click level two, Properties, click the Keys tab). Highlight and delete Detail Key.
Hierarchy Aggregation In the hierarchy, starting from the top and moving down. At each level below the Grand Total level, double-click the level. In the field Number of elements at this level: enter 10 and increase in increments of 10 through all levels in the hierarchy.
Hierarchy Errors OBI Tool Metadata Errors and Solutions [nQSError: 15001] Could not load navigation space for subject area Student Enrollment. [nQSError: 15019] Table Student Class Section is functionally dependent upon level Institution Code, but a more detailed child level has associated columns from that same table or a more detailed table. This message occurs when either a key is in the Total level or when the first child level below the Total level contains two keys. Right-click on the Total level and select Properties. The Keys tab should be grayed out. If it is selectable, check to see what is there and delete it. Go to the next level down, right-click, select the Keys tab. Only one Key should appear. Delete the key that does not belong.
http://www.oracle.com/technology/products/bi/index.html
Building Hierarchies With Columns In Different Tables This first step is needed if columns for hierarchy reside in multiple dimension tables or a dimension table and fact table or because the data model contains only one dimension table and no fact table. 1. Create a new or second dimension table from an already existing table 2. Create an alias of the table in the physical layer. 3. Right-click on table in Physical layer, select New object > Alias. 4. Join the new dimension in the Physical diagram. 5. Select the data model, right-click Physical Diagram > Object(s) and All Joins. 6. Click the New Foreign Join button. Click the new dimension table, then click the Fact table. 7. If you are joining a new dimension table to itself then create joins between all of the keys in both tables. 8. Click the first key in the table on the left. Find the matching key in the table on the right. Hold down the CTRL key and click the next key on the left and the matching key on the right. Continue until all keys are identified in the Expression box at the bottom of the Physical Foreign Key window. Click the OK button. 9. A message “ a matching table key doesn’t exist…” will appear. Click Yes. 10. Check in changes. 11. Drag the new dimension (Alias) table from the Physical Layer to the Business Model. 12. Select the data model, right-click Business Model Diagram > Whole Diagram. 13. Use the Complex Join button between the two tables. No changes are made on the Logical Join window. Click OK. Close the Diagram Window. 14. The new dimension table now has a dimension table icon. 15. Check in changes. Save repository. 16. Cleanup on tables •
Remove all “Fact” columns from the new dimension table.
•
Remove all dimension columns that don’t belong in the “Fact” table.
Assuming an item in the newly created dimension A that needs to be used for a hierarchy in a different dimension B: Select items from physical layer table corresponding to A and drag to the B dimension in the Business Model. Expand Sources for B table (click + ) then double-click on the B table source.
Click the Add button on the General tab. In the box below name click the B table then click the Select button. This creates a join between those two dimensions.
Then move Items that you want in the B dimension from the Physical layer to the A dimension Source name. This forces a logical join from the physical join between the dimension table and Fact table.
Changes Applied Through Answers Formatting Data Values Column Properties which include Style, Column Format, Data Format and Conditional Format are applied in Answers. When a certain format is desired for a column everytime the column is used then system-wide changes can be applied. System-wide changes can be saved at the column level or the data type level.
A perfect example for a system-wide change is the GPA (Grade Point Average). The field is defined with a Data Type of DOUBLE which gives you two decimal places but you need three decimal places in Answers and Dashboards. 1. Select the GPA column in Answers. 2. Select the Column Properties button. 3. Select the Data Format tab. 4. Click the Override Default Data Format checkbox 5. Change the number of Decimal Places. 6. Click the Save button and choose "as the system-wide default for "Student.GPA"
Request Filters Protect Filters Passed through Dashboard On the filter in the Answers Request, select Filter Options button > Protect Filter. This ensures that the filter used in the request is not lost or overwritten by another filter or dashboard prompt that may supersede the request. This option is only available if a value has been specified in the filter. If the filter item is set to "is prompted" then the Protect Filter option if not available.