746
[1]Oracle® Fusion Middleware Metadata Repository Builder's Guide for Oracle Business Intelligence Enterprise Edition 12c (12.2.1) E57378-02 December 2015 Explains how to build an Oracle Business Intelligence metadata repository, how to set up and connect to data sources, and how to build the Physical layer, Business Model and Mapping layer, and Presentation layer. Includes how to use the multiuser development environment, along with a Logical SQL reference.

Metadata Repository Builder's Guide for Oracle Business

Embed Size (px)

Citation preview

  • [1] Oracle Fusion MiddlewareMetadata Repository Builder's Guide for Oracle Business Intelligence Enterprise Edition

    12c (12.2.1)

    E57378-02

    December 2015

    Explains how to build an Oracle Business Intelligence metadata repository, how to set up and connect to data sources, and how to build the Physical layer, Business Model and Mapping layer, and Presentation layer. Includes how to use the multiuser development environment, along with a Logical SQL reference.

  • Oracle Fusion Middleware Metadata Repository Builder's Guide for Oracle Business Intelligence Enterprise Edition, 12c (12.2.1)

    E57378-02

    Copyright 2010, 2015, Oracle and/or its affiliates. All rights reserved.

    Primary Author: Stefanie Rhone

    Contributors: Oracle Business Intelligence development, product management, and quality assurance team

    This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited.

    The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing.

    If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, then the following notice is applicable:

    U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs. No other rights are granted to the U.S. Government.

    This software or hardware is developed for general use in a variety of information management applications. It is not developed or intended for use in any inherently dangerous applications, including applications that may create a risk of personal injury. If you use this software or hardware in dangerous applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure its safe use. Oracle Corporation and its affiliates disclaim any liability for any damages caused by use of this software or hardware in dangerous applications.

    Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.

    Intel and Intel Xeon are trademarks or registered trademarks of Intel Corporation. All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. AMD, Opteron, the AMD logo, and the AMD Opteron logo are trademarks or registered trademarks of Advanced Micro Devices. UNIX is a registered trademark of The Open Group.

    This software or hardware and documentation may provide access to or information about content, products, and services from third parties. Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to third-party content, products, and services unless otherwise set forth in an applicable agreement between you and Oracle. Oracle Corporation and its affiliates will not be responsible for any loss, costs, or damages incurred due to your access to or use of third-party content, products, or services, except as set forth in an applicable agreement between you and Oracle.

  • iii

    Contents

    Preface ............................................................................................................................................................. xxv

    Audience................................................................................................................................................... xxvDocumentation Accessibility ................................................................................................................. xxvRelated Documentation and Other Resources .................................................................................... xxviConventions ............................................................................................................................................. xxvi

    New Features for Oracle BI Metadata Repository Builders .......................................... xxvii

    New Features for Oracle BI EE 12c Release (12.2.1) .......................................................................... xxvii

    1 Introduction to Building Your Metadata Repository

    About Oracle BI Server and Oracle BI Repository Architecture..................................................... 1-1About Oracle BI Server Architecture............................................................................................... 1-1About Layers in the Oracle BI Repository...................................................................................... 1-3

    Planning Your Business Model ............................................................................................................. 1-4Analyzing Your Business Model Requirements............................................................................ 1-5Identifying the Content of the Business Model ............................................................................. 1-5

    Identifying Logical Fact Tables ................................................................................................. 1-6Identifying Logical Dimension Tables..................................................................................... 1-6Identifying Dimensions.............................................................................................................. 1-7

    About Dimensions with Multiple Hierarchies ................................................................ 1-8Identifying Lookup Tables ........................................................................................................ 1-9

    Identifying the Data Source Content for the Physical Layer........................................................... 1-9About Types of Physical Schemas in Relational Data Sources.................................................... 1-9About Cubes in Multidimensional Data Sources ....................................................................... 1-10Identifying the Data Source Table Structure............................................................................... 1-10

    Guidelines for Designing a Repository ............................................................................................ 1-11General Tips for Working on the Repository ............................................................................. 1-11Design Tips for the Physical Layer ............................................................................................... 1-11Design Tips for the Business Model and Mapping Layer......................................................... 1-12

    Modeling Outer Joins .............................................................................................................. 1-14Design Tips for the Presentation Layer........................................................................................ 1-15

    Topics of Interest in Other Guides .................................................................................................... 1-16System Requirements and Certification........................................................................................... 1-17

  • iv

    2 Before You Begin

    About the Oracle BI Administration Tool........................................................................................... 2-1Opening the Administration Tool ................................................................................................... 2-2About the Administration Tool Main Window............................................................................. 2-2Setting Administration Tool Options.............................................................................................. 2-3About Administration Tool Menus ................................................................................................. 2-7

    File Menu...................................................................................................................................... 2-7Edit Menu..................................................................................................................................... 2-9View Menu................................................................................................................................... 2-9Manage Menu.............................................................................................................................. 2-9Tools Menu ............................................................................................................................... 2-10Diagram Menu ......................................................................................................................... 2-11Window Menu.......................................................................................................................... 2-11Help Menu ................................................................................................................................ 2-11

    Using the Physical and Business Model Diagrams.................................................................... 2-12Editing, Deleting, and Reordering Objects in the Repository .................................................. 2-14About Naming Requirements for Repository Objects............................................................... 2-14Using the Browse Dialog to Browse for Objects ......................................................................... 2-15Changing Icons for Repository Objects........................................................................................ 2-16Sorting Objects in the Administration Tool ................................................................................ 2-16About Features and Options for Oracle Marketing Segmentation.......................................... 2-17

    About the Oracle BI Server Command-Line Utilities .................................................................... 2-17About Options in NQSConfig.INI .................................................................................................... 2-19About the SampleApp.rpd Demonstration Repository................................................................. 2-19Download Repository Command ...................................................................................................... 2-20

    What You Need to Know Before Using the Command............................................................. 2-20How to Use the Download Repository Command .................................................................... 2-21

    Using Online and Offline Repository Modes ................................................................................. 2-22Editing Repositories in Offline Mode........................................................................................... 2-22

    Opening Repositories in Offline Mode................................................................................. 2-23Publish Offline Changes ......................................................................................................... 2-23

    Editing Repositories in Online Mode........................................................................................... 2-23Opening Repositories in Online Mode ................................................................................. 2-24Publishing Online Changes .................................................................................................... 2-24Guidelines for Using Online Mode ....................................................................................... 2-25

    Checking Out Objects ..................................................................................................................... 2-26Checking In Changes...................................................................................................................... 2-26About Read-Only Mode................................................................................................................. 2-27

    Checking the Consistency of a Repository or a Business Model................................................. 2-27About the Consistency Check Manager....................................................................................... 2-28Checking the Consistency of Repository Objects ....................................................................... 2-29Using the validaterpd Utility to Check Repository Consistency ............................................. 2-30Common Consistency Check Messages....................................................................................... 2-32

    3 Setting Up and Using the Multiuser Development Environment

    About the Multiuser Development Environment ............................................................................. 3-1About the Multiuser Development Process ................................................................................... 3-2

  • v

    Setting Up Projects................................................................................................................................... 3-3About Projects..................................................................................................................................... 3-4

    About the Project Dialog............................................................................................................ 3-4Creating Projects................................................................................................................................. 3-5About Converting Older Projects During Repository Upgrade ................................................. 3-7

    Setting Up the Multiuser Development Directory ............................................................................ 3-7Identifying the Multiuser Development Directory ....................................................................... 3-8Copying the Master Repository to the Multiuser Development Directory............................... 3-8Setting Up a Pointer to the Multiuser Development Directory................................................... 3-8

    Making Changes in a Multiuser Development Environment......................................................... 3-9About Changing and Testing Metadata ......................................................................................... 3-9Making Changes to a Repository Using Projects ....................................................................... 3-10

    Checking Out Repository Projects......................................................................................... 3-10About Repository Project Checkout............................................................................... 3-10Checking Out Projects...................................................................................................... 3-11Using the extractprojects Utility to Extract Projects .................................................... 3-12

    Refreshing the Local Project Extract...................................................................................... 3-13Making Changes to an Entire Repository.................................................................................... 3-13About Multiuser Development Menu Options .......................................................................... 3-14

    Publishing Changes to Multiuser Development Repositories .................................................... 3-14About the Multiuser Development Merge Process.................................................................... 3-15

    How Are Multiuser Merges Different from Standard Repository Merges? ................... 3-16Publishing to the Network............................................................................................................. 3-16Enforcing Consistent Repositories When Publishing Changes................................................ 3-17

    Branching in Multiuser Development .............................................................................................. 3-18About Branching ............................................................................................................................. 3-18Using the Multi-Team, Multi-Release Model in Oracle Business Intelligence....................... 3-20Synchronizing RPD Branches........................................................................................................ 3-21

    Viewing and Deleting History for Multiuser Development ........................................................ 3-21Viewing Multiuser Development History................................................................................... 3-21Deleting Multiuser Development History................................................................................... 3-22

    Setting Multiuser Development Options......................................................................................... 3-23

    4 Using a Source Control Management System for Repository Development

    About Using a Source Control Management System with the Administration Tool ................. 4-1About MDS XML................................................................................................................................ 4-2

    Setting Up Your System for Repository Development Under Source Control Management... 4-3Creating an SCM Configuration File............................................................................................... 4-3Creating an MDS XML Repository and Checking In Files to the SCM System........................ 4-7

    Saving an Existing Repository File in MDS XML Format..................................................... 4-7Creating a New Repository in MDS XML Format ................................................................. 4-7Linking to Source Control Files to Convert Your Repository (Small Repositories Only) 4-8

    Using Source Control Management in Day to Day Repository Development ............................ 4-8Updating, Saving, and Checking In Changes for Repositories Under Source Control ........... 4-9Handling Errors............................................................................................................................... 4-10Testing Repositories Under Source Control................................................................................ 4-10Viewing the Source Control Log................................................................................................... 4-11

  • vi

    Using Source Control Management with MUD.............................................................................. 4-12Putting the MUD Master Repository and MUD Log File Under Source Control ................. 4-12Checking In New Versions of the MUD Master and MUD Log File to Source Control....... 4-12

    Manually Checking In the Updated MUD Master Repository and Log File .................. 4-12Using a Script to Check In the Updated MUD Master Repository and Log File............ 4-13

    5 Importing Metadata and Working with Data Sources

    About Importing Metadata and Working with Data Sources ......................................................... 5-1Creating a New Oracle BI Repository .................................................................................................. 5-2Performing Data Source Preconfiguration Tasks .............................................................................. 5-3

    Setting Up ODBC Data Source Names (DSNs).............................................................................. 5-4Setting Up Oracle Database Data Sources ...................................................................................... 5-4

    Oracle 12c Database In-Memory Data Sources....................................................................... 5-5Oracle 12c on Exadata Data Sources ........................................................................................ 5-5Advanced Oracle Database Features Supported by Oracle BI Server ................................ 5-5Oracle Database Fast Application Notification and Fast Connection Failover ................. 5-6Additional Oracle Database Configuration for Client Installations.................................... 5-6Configuring Oracle BI Server When Using a Firewall .......................................................... 5-6Oracle Database Connection Errors in Windows 7 64-bit Environments........................... 5-6

    About Setting Up Oracle OLAP Data Sources............................................................................... 5-7Additional Oracle OLAP Configuration for Client Installations ......................................... 5-7

    About Setting Up JDBC and JNDI Data Sources ........................................................................... 5-7Configuring Java Data Sources In Weblogic Server .............................................................. 5-7Loading Java Data Sources ........................................................................................................ 5-7

    About Setting Up Oracle TimesTen In-Memory Database Data Sources .................................. 5-8Configuring TimesTen Data Sources ....................................................................................... 5-8Improving Use of System Memory Resources with TimesTen Data Sources.................... 5-9Configuring OBIS to Access the TimesTen DLL on Windows.......................................... 5-10

    About Setting Up Essbase Data Sources...................................................................................... 5-10About Setting up Cloudera Impala Data Sources ...................................................................... 5-10

    Obtaining Windows ODBC Driver for Client Installation................................................. 5-10Importing Cloudera Impala Metadata Using the Windows ODBC Driver .................... 5-11

    About Setting Up Apache Hive Data Sources ............................................................................ 5-12Obtaining Windows ODBC Driver for Client Installation................................................. 5-12Limitations on the Use of Apache Hive with Oracle Business Intelligence .................... 5-12

    Hive Limitation on Dates ................................................................................................ 5-13Hive Does Not Support Count (Distinct M) Together with Group By M ................ 5-13Hive Does Not Support Differing Case Types ............................................................. 5-13Exception Thrown for Locate Function with an Out-of-Bounds Start Position Value ............................................................................................................................................. 5-13Hive May Crash on Queries Using Substring .............................................................. 5-13Hive Does Not Support Create Table ........................................................................... 5-13Hive May Fail on Long Queries With Multiple AND and OR Clauses.................... 5-14Queries with Subquery Expressions May Fail ............................................................. 5-14Hive Does Not Support Distinct M and M in Same Select List.................................. 5-14

    About Setting Up Hyperion Financial Management Data Sources ......................................... 5-14Peforming Additional Hyperion Configuration for Client Installations......................... 5-16

  • vii

    Setting Up SAP/BW Data Sources ............................................................................................... 5-17Setting Up Oracle RPAS Data Sources......................................................................................... 5-17Setting Up Teradata Data Sources ................................................................................................ 5-17

    Avoiding Spool Space Errors for Queries Against Teradata Data Sources..................... 5-18Enabling NUMERIC Data Type Support for Oracle Database and TimesTen ...................... 5-19Configuring Essbase to Use a Shared Logon .............................................................................. 5-20

    Importing Metadata from Relational Data Sources ....................................................................... 5-20About the Map to Logical Model and Publish to Warehouse Screens.................................... 5-23

    Importing Metadata from Multidimensional Data Sources ......................................................... 5-23About Importing Metadata from Oracle RPAS Data Sources .................................................. 5-29

    About Importing Metadata from XML Data Sources..................................................................... 5-30About Using XML as a Data Source ............................................................................................. 5-30Importing Metadata from XML Data Sources Using the XML Gateway ............................... 5-31

    Examples of XML Documents Generated by the Oracle BI Server XML Gateway........ 5-34About Using HTML Tables as a Data Source ...................................................................... 5-40

    Importing Metadata from XML Data Sources Using XML ODBC .......................................... 5-41Example of an XML ODBC Data Source .............................................................................. 5-42

    Examples of XML Documents....................................................................................................... 5-42About Using a Standby Database with Oracle Business Intelligence........................................ 5-45

    Configuring a Standby Database with Oracle Business Intelligence ...................................... 5-46Creating the Database Object for the Standby Database Configuration................................. 5-47Creating Connection Pools for the Standby Database Configuration..................................... 5-48Updating Write-Back Scripts in a Standby Database Configuration....................................... 5-50Setting Up Usage Tracking in a Standby Database Configuration.......................................... 5-50Setting Up Event Polling in a Standby Database Configuration.............................................. 5-51Setting Up Oracle BI Scheduler in a Standby Database Configuration .................................. 5-51

    6 Working with ADF Data Sources

    What Are ADF Business Components? ............................................................................................... 6-1About Operational Reporting with ADF Business Components................................................ 6-2

    About Importing ADF Business Components Into Oracle Business Intelligence ...................... 6-2About Specifying a SQL Bypass Database.......................................................................................... 6-3Setting Up ADF Data Sources................................................................................................................ 6-3

    Creating a WebLogic Domain for ADF Business Components Used with Oracle Business Intelligence ............................................................................................................................ 6-4Deploying OBIEEBroker as a Shared Library in Oracle WebLogic Server................................ 6-4Deploying the Application EAR File to Oracle WebLogic Server from JDeveloper ................ 6-5Setting Up a JDBC Data Source in the WebLogic Server ............................................................. 6-9Setting the Logging Level for the Deployed Application in Oracle WebLogic Server ............ 6-9

    Importing Metadata from ADF Data Sources.................................................................................. 6-10Performing an Initial Import from ADF Data Sources .............................................................. 6-10Using Incremental Import to Propagate Flex Object Changes ................................................. 6-12Automatically Mapping Flex Object Changes to the Logical Model....................................... 6-14

    Customizing the Mapping Behavior..................................................................................... 6-16Manually Mapping Flex Object Changes to the Logical Model........................................ 6-16

    Automatically Mapping Flex Object Changes Using the biserverextender Utility............... 6-16Configuring SSL in Oracle WebLogic Server .................................................................................. 6-18

  • viii

    Configuring One-Way SSL in Oracle WebLogic Server ............................................................ 6-18Configuring Two-Way SSL in Oracle WebLogic Server ........................................................... 6-18

    Enabling the Ability to Pass Custom Parameters to the ADF Application................................ 6-19Propagating Labels and Tooltips from ADF Data Sources ........................................................... 6-20

    What are Labels and Tooltips? ...................................................................................................... 6-21About the Session Variable Naming Scheme for UI Hints ....................................................... 6-21About Determining the Physical Column for a Presentation Column ................................... 6-22About Initializing Session Variables Automatically for Propagating UI Hints..................... 6-23Using UI Hints From an Oracle ADF Data Source When Creating Analyses........................ 6-23Using XML Code in Initialization Blocks to Query UI Hints ................................................... 6-24

    7 Setting Up Database Objects and Connection Pools

    Setting Up Database Objects ................................................................................................................. 7-1About Database Types in the Physical Layer................................................................................. 7-2Creating a Database Object Manually in the Physical Layer....................................................... 7-2

    When to Allow Direct Database Requests by Default ........................................................... 7-3Specifying SQL Features Supported by a Data Source................................................................. 7-4Viewing Database Properties ........................................................................................................... 7-6

    About Connection Pools ......................................................................................................................... 7-6About Connection Pools for Initialization Blocks ......................................................................... 7-7

    Creating or Changing Connection Pools ............................................................................................. 7-7Setting Connection Pool Properties in the General Tab ............................................................... 7-8

    Common Connection Pool Properties in the General Tab.................................................... 7-8Multidimensional Connection Pool Properties in the General Tab.................................. 7-13

    Setting Connection Pool Properties in the Connection Scripts Tab......................................... 7-16Setting Connection Pool Properties in the XML Tab ................................................................. 7-17Setting Connection Pool Properties in the Write Back Tab....................................................... 7-19Setting Connection Pool Properties in the Miscellaneous Tab ................................................. 7-21

    Setting Up Persist Connection Pools ................................................................................................. 7-23About Setting the Buffer Size and Transaction Boundary ........................................................ 7-24

    List Connection Pool Command......................................................................................................... 7-25Update Connection Pool Command .................................................................................................. 7-26Using the BIServerT2PProvisioner.jar Utility to Change Connection Pool Passwords .......... 7-27

    8 Working with Physical Tables, Cubes, and Joins

    About Working with the Physical Layer ............................................................................................. 8-1Working with the Physical Diagram .................................................................................................... 8-2Creating Physical Layer Folders ............................................................................................................ 8-4

    Creating Physical Layer Catalogs and Schemas............................................................................ 8-4Creating Catalogs........................................................................................................................ 8-4Creating Schemas........................................................................................................................ 8-5

    Using a Variable to Specify the Name of a Catalog or Schema................................................... 8-5Setting Up Display Folders in the Physical Layer......................................................................... 8-6

    Working with Physical Tables............................................................................................................... 8-6About Tables in the Physical Layer ................................................................................................. 8-6About Physical Alias Tables ............................................................................................................. 8-8Creating and Managing Physical Tables and Physical Cube Tables ....................................... 8-10

  • ix

    Creating or Editing Physical Tables ...................................................................................... 8-10Creating Alias Tables............................................................................................................... 8-12Viewing Physical Table Properties........................................................................................ 8-12Setting Physical Table Properties for XML Data Sources .................................................. 8-12

    Creating and Managing Columns and Keys for Relational and Cube Tables ....................... 8-13Creating and Editing a Column in a Physical Table........................................................... 8-13Specifying a Primary Key for a Physical Table.................................................................... 8-14Deleting Physical Columns for All Data Sources................................................................ 8-15Viewing Physical Column Properties ................................................................................... 8-15

    Viewing Data in Physical Tables or Columns............................................................................. 8-15Working with Multidimensional Sources in the Physical Layer................................................. 8-15

    About Physical Cube Tables.......................................................................................................... 8-16About Measures in Multidimensional Data Sources ................................................................. 8-16

    About Externally Aggregated Measures .............................................................................. 8-16About Working with Physical Dimensions and Physical Hierarchies.................................... 8-17

    Working with Physical Dimension Objects ......................................................................... 8-17Working with Physical Hierarchy Objects ........................................................................... 8-17

    Adding or Removing Cube Columns in a Hierarchy.................................................. 8-19Working with Cube Variables for SAP/BW Data Sources ....................................................... 8-19Viewing Members in Physical Cube Tables ................................................................................ 8-21

    Working with Essbase Data Sources ................................................................................................. 8-21About Using Essbase Data Sources with Oracle Business Intelligence................................... 8-22

    About Incremental Import...................................................................................................... 8-24Working with Essbase Alias Tables.............................................................................................. 8-24

    Determining the Value to Use for Display........................................................................... 8-24Explicitly Defining Columns for Each Alias ........................................................................ 8-25

    Modeling User-Defined Attributes............................................................................................... 8-25Associating Member Attributes to Dimensions and Levels ..................................................... 8-26Modeling Alternate Hierarchies ................................................................................................... 8-26Modeling Measure Hierarchies..................................................................................................... 8-27Improving Performance by Using Unqualified Member Names ............................................ 8-27

    Working with Hyperion Financial Management and Hyperion Planning Data Sources....... 8-28Importing Metadata From Hyperion Financial Management Data Sources.......................... 8-28Importing Metadata From Hyperion Planning Data Sources .................................................. 8-30About Query Support for Hyperion Financial Management and Hyperion Planning Data Sources ................................................................................................................................ 8-31

    Working with Oracle OLAP Data Sources ....................................................................................... 8-31About Importing Metadata from Oracle OLAP Data Sources ................................................. 8-32Working with Oracle OLAP Analytic Workspace (AW) Objects............................................. 8-32Working with Oracle OLAP Dimensions, Hierarchies, and Levels ........................................ 8-33Working with Oracle OLAP Cubes and Columns ..................................................................... 8-34

    Working with Physical Foreign Keys and Joins.............................................................................. 8-35About Physical Joins ....................................................................................................................... 8-35

    About Primary Key and Foreign Key Relationships .......................................................... 8-35About Complex Joins .............................................................................................................. 8-36About Multi-Database Joins ................................................................................................... 8-36About Fragmented Data ......................................................................................................... 8-36

  • x

    Defining Physical Joins with the Physical Diagram................................................................... 8-37Defining Physical Joins with the Joins Manager ....................................................................... 8-39

    Deploying Opaque Views ................................................................................................................... 8-39About Deploying Opaque Views.................................................................................................. 8-40Deploying Opaque View Objects.................................................................................................. 8-40

    Using the Create View SELECT Statement .......................................................................... 8-40Undeploying a Deployed View..................................................................................................... 8-42When to Delete Opaque Views or Deployed Views .................................................................. 8-42When to Redeploy Opaque Views................................................................................................ 8-43

    Using Hints in SQL Statements.......................................................................................................... 8-43How to Use Oracle Hints ............................................................................................................... 8-43

    About the Index Hint .............................................................................................................. 8-44About the Leading Hint .......................................................................................................... 8-44

    About Performance Considerations for Hints ............................................................................ 8-44Creating Hints.................................................................................................................................. 8-44

    Displaying and Updating Row Counts for Physical Tables and Columns ............................... 8-45

    9 Working with Logical Tables, Joins, and Columns

    About Working with the Business Model and Mapping Layer...................................................... 9-1Creating the Business Model and Mapping Layer ............................................................................ 9-2

    Creating Business Models................................................................................................................. 9-2Automatically Creating Business Model Objects .......................................................................... 9-2Duplicating a Business Model and Subject Area........................................................................... 9-3

    About Working with the Business Model Diagram.......................................................................... 9-3Creating and Managing Logical Tables ............................................................................................... 9-5

    Creating Logical Tables ..................................................................................................................... 9-5Creating and Managing Logical Table Sources ...................................................................... 9-6

    Specifying a Primary Key in a Logical Table ................................................................................. 9-6Reviewing Foreign Keys for a Logical Table.................................................................................. 9-7

    Defining Logical Joins............................................................................................................................. 9-7Defining Logical Joins with the Business Model Diagram .......................................................... 9-8Defining Logical Joins with the Joins Manager ............................................................................. 9-9

    Creating Logical Joins with the Joins Manager ...................................................................... 9-9Creating Logical Foreign Key Joins with the Joins Manager............................................. 9-10

    Specifying a Driving Table ............................................................................................................ 9-10Factors That Determine Join Trimming ....................................................................................... 9-11Identifying Physical Tables That Map to Logical Objects ......................................................... 9-13

    Creating and Managing Logical Columns........................................................................................ 9-14Creating Logical Columns ............................................................................................................. 9-14Basing the Sort for a Logical Column on a Different Column.................................................. 9-15Enabling Double Column Support by Assigning a Descriptor ID Column ........................... 9-15Creating Derived Columns............................................................................................................ 9-16

    Configuring Logical Columns for Multicurrency Support................................................ 9-17Setting Default Levels of Aggregation for Measure Columns ................................................. 9-18

    Setting Up Dimension-Specific Aggregate Rules for Logical Columns........................... 9-20Defining Aggregation Rules for Multidimensional Data Sources.................................... 9-21

    Associating an Attribute with a Logical Level in Dimension Tables ...................................... 9-23

  • xi

    Moving or Copying Logical Columns ......................................................................................... 9-23Enabling Write Back On Columns..................................................................................................... 9-24Setting Up Display Folders in the Business Model and Mapping Layer .................................. 9-26Modeling Bridge Tables ...................................................................................................................... 9-26

    Creating Joins in the Physical Layer for Bridge and Associated Dimension Tables............. 9-27Modeling the Associated Dimension Tables in a Single Dimension ....................................... 9-28Modeling the Associated Dimension Tables in Separate Dimensions .................................... 9-29

    Modeling Binary Large Object (BLOB) Data and Character Large Object (CLOB) Data ....... 9-31

    10 Working with Logical Dimensions

    About Working with Logical Dimensions ....................................................................................... 10-1Creating and Managing Dimensions with Level-Based Hierarchies.......................................... 10-2

    About Level-Based Hierarchies .................................................................................................... 10-2About Using Dimension Hierarchy Levels in Level-Based Hierarchies.......................... 10-5

    Manually Creating Dimensions, Levels, and Keys with Level-Based Hierarchies ............... 10-6Creating Dimensions in Level-Based Hierarchies............................................................... 10-6Creating Logical Levels in a Dimension............................................................................... 10-7Associating a Logical Column and Its Table with a Dimension Level ............................ 10-7Identifying the Primary Key for a Dimension Level ........................................................ 10-10Selecting and Sorting Chronological Keys in a Time Dimension ................................... 10-11Adding a Dimension Level to the Preferred Drill Path.................................................... 10-11Adding Sequence Numbers to a Time Dimension's Logical Level ................................ 10-12

    Automatically Creating Dimensions with Level-Based Hierarchies..................................... 10-12Populating Logical Level Counts Automatically ..................................................................... 10-14

    Creating and Managing Dimensions with Parent-Child Hierarchies ...................................... 10-15About Parent-Child Hierarchies ................................................................................................. 10-15

    About Levels and Distances in Parent-Child Hierarchies ............................................... 10-16About Parent-Child Relationship Tables............................................................................ 10-17

    Creating Dimensions with Parent-Child Hierarchies.............................................................. 10-18Defining Parent-Child Relationship Tables............................................................................... 10-19Modeling Aggregates for Parent-Child Hierarchies ................................................................ 10-21

    Storing Facts for Parent-Child Hierarchies ........................................................................ 10-21Aggregating Parent-Child Hierarchies............................................................................... 10-23

    Adding the Parent-Child Relationship Table to the Model .................................................... 10-25Maintaining Parent-Child Hierarchies Based on Relational Tables ...................................... 10-26

    Modeling Time Series Data............................................................................................................... 10-26About Time Series Functions....................................................................................................... 10-27

    About the AGO Function...................................................................................................... 10-28About the TODATE Function .............................................................................................. 10-29About the PERIODROLLING Function ............................................................................. 10-30

    Creating Logical Time Dimensions ............................................................................................ 10-31Selecting the Time Option in the Logical Dimension Dialog .......................................... 10-32Setting Chronological Keys for Each Level ........................................................................ 10-32

    Creating AGO, TODATE, and PERIODROLLING Measures ................................................ 10-33

  • xii

    11 Managing Logical Table Sources (Mappings)

    About Logical Table Sources .............................................................................................................. 11-1How Fact Logical Table Sources Are Selected to Answer a Query ......................................... 11-1How Dimension Logical Table Sources Are Selected to Answer a Query ............................. 11-2

    Changing the Default Selection Criteria for Dimension Logical Table Sources ............. 11-2Consistency Among Data in Multiple Sources ........................................................................... 11-3

    Creating Logical Table Sources .......................................................................................................... 11-3Setting Priority Group Numbers for Logical Table Sources ........................................................ 11-4Defining Physical to Logical Table Source Mappings and Creating Calculated Items .......... 11-6

    Unmapping a Logical Column from Its Source.......................................................................... 11-8Defining Content of Logical Table Sources..................................................................................... 11-8

    Verifying that Joins Exist from Dimension Tables to Fact Table.............................................. 11-9About WHERE Clause Filters ..................................................................................................... 11-12

    About Working with Parent-Child Settings in the Logical Table Source ............................... 11-13Setting Up Aggregate Navigation by Creating Sources for Aggregated Fact Data ................ 11-13Setting Up Fragmentation Content for Aggregate Navigation .................................................. 11-14

    Specifying Fragmentation Content for Single Column, Value-Based Predicates................ 11-14Specifying Fragmentation Content for Single Column, Range-Based Predicates ............... 11-15

    Specifying Multicolumn Content Descriptions ................................................................. 11-15Specifying Parallel Content Descriptions........................................................................... 11-16

    Examples of Parallel Content Descriptions................................................................. 11-16Specifying Unbalanced Parallel Content Descriptions..................................................... 11-17

    Specifying Fragmentation Content for Aggregate Table Fragments..................................... 11-18Specifying the Aggregate Table Content............................................................................ 11-19Defining a Physical Layer Table with a Select Statement to Complete the Domain.... 11-19Specifying the SQL Virtual Table Content ......................................................................... 11-20Creating Physical Joins for the Virtual Table..................................................................... 11-20

    12 Creating and Maintaining the Presentation Layer

    About the Presentation Layer ............................................................................................................. 12-1Creating and Customizing the Presentation Layer......................................................................... 12-2

    About Creating Subject Areas ....................................................................................................... 12-2Automatically Creating Subject Areas Based on Logical Stars and Snowflakes ............ 12-3

    About Removing Unneeded or Unwanted Columns ................................................................ 12-4Renaming Presentation Columns to User-Friendly Names...................................................... 12-5Exporting Logical Keys in the Subject Area ................................................................................ 12-5Setting an Implicit Fact Column in the Subject Area ................................................................. 12-5Maintaining the Presentation Layer ............................................................................................. 12-5

    Working with Subject Areas ............................................................................................................... 12-6Working with Presentation Tables and Columns........................................................................... 12-7

    Creating and Managing Presentation Tables .............................................................................. 12-7Creating and Managing Presentation Columns ......................................................................... 12-8Nesting Folders in Answers and BI Composer ........................................................................ 12-10

    Working with Presentation Hierarchies and Levels..................................................................... 12-11Creating and Managing Presentation Hierarchies ................................................................... 12-11

    Modeling Dimensions with Multiple Hierarchies in the Presentation Layer ............... 12-12Editing Presentation Hierarchy Objects ............................................................................. 12-14

  • xiii

    Creating and Managing Presentation Levels ............................................................................ 12-15Setting Permissions for Presentation Layer Objects .................................................................... 12-16

    Generating a Permission Report for Presentation Layer Objects........................................... 12-17Sorting Columns in the Permissions Dialog ............................................................................. 12-17

    Creating Aliases (Synonyms) for Presentation Layer Objects ................................................... 12-18Controlling Presentation Object Visibility .................................................................................... 12-19

    13 Creating and Persisting Aggregates for Oracle BI Server Queries

    About Aggregate Persistence in Oracle Business Intelligence .................................................... 13-2Aggregate Persistence Improvements ............................................................................................... 13-2

    Surrogate Keys................................................................................................................................. 13-2Auto Correction (Hardening) of Level Keys............................................................................... 13-3Unbalanced (Ragged) and Skip-Level Hierarchies .................................................................... 13-3Chronological Keys......................................................................................................................... 13-3Count Distinct Measures................................................................................................................ 13-4

    Identifying Query Candidates for Aggregation.............................................................................. 13-4Using Oracle BI Summary Advisor to Identify Query Candidates for Aggregation............... 13-5

    About Oracle BI Summary Advisor ............................................................................................. 13-5Gathering Summary Advisor Statistics ................................................................................ 13-6Generating and Using Summary Advisor Recommendations.......................................... 13-6About Measure Subset Recommendations .......................................................................... 13-6

    Setting Up the Statistics Database................................................................................................. 13-7Columns in the S_NQ_SUMMARY_ADVISOR Table ....................................................... 13-8

    Turning On Usage Tracking .......................................................................................................... 13-8Turning On Summary Advisor Logging ..................................................................................... 13-8Using the Oracle BI Summary Advisor Wizard ....................................................................... 13-10Using the nqaggradvisor Utility to Run the Oracle BI Summary Advisor........................... 13-13

    Using the Aggregate Persistence Wizard to Generate the Aggregate Specification .............. 13-15Using Model Check Manager to Check for Modeling Problems .............................................. 13-19

    About Model Check Manager ..................................................................................................... 13-19Running Model Check Manager Using the Administration Tool ......................................... 13-20Using the Model Check Manager Dialog .................................................................................. 13-21Checking Models Using the validaterpd Utility ...................................................................... 13-22

    Writing the Create Aggregates Specification Manually .............................................................. 13-23What Constraints Are Imposed During the Create Process?.................................................. 13-23Writing the Create Aggregates Specification ............................................................................ 13-24

    Delete Statement for Aggregate Specification ................................................................... 13-25Create Statement for Aggregate Specification ................................................................... 13-25Multiple Aggregates in Aggregate Specification .............................................................. 13-25Where Clause for Aggregate Specification ........................................................................ 13-26

    Adding Surrogate Keys to Dimension Aggregate Tables ....................................................... 13-27About the Create/Prepare Aggregates Syntax.................................................................. 13-27About Surrogate Key Output from Create/Prepare Aggregates ................................... 13-28

    Running the Aggregate Specification Against the Oracle BI Server ........................................ 13-28Life Cycle Use Cases for Aggregate Persistence............................................................................ 13-30Using Double Buffering to Refresh Highly Available Aggregates........................................... 13-32Creating Aggregates on TimesTen Sources ................................................................................... 13-33

  • xiv

    Enabling PL/SQL for TimesTen ................................................................................................. 13-34Creating Aggregates with Compressed Tables ........................................................................ 13-34Enabling Performance Enhancement Features for TimesTen ................................................ 13-34

    Troubleshooting Aggregate Persistence ......................................................................................... 13-35About Aggregate Persistence Errors .......................................................................................... 13-36Avoiding Aggregate Persistence Errors..................................................................................... 13-36

    14 Applying Data Access Security to Repository Objects

    About Data Access Security ................................................................................................................ 14-2Where to Find Information About Security Tasks ..................................................................... 14-2

    Setting Up Row-Level Security .......................................................................................................... 14-3Setting Up Row-Level Security (Data Filters) in the Repository.............................................. 14-4Setting Up Row-Level Security in the Database......................................................................... 14-6

    Setting Up Object Permissions ........................................................................................................... 14-8About Permission Inheritance for Users and Application Roles ........................................... 14-10

    Overview of User and Application Role Commands................................................................... 14-12Rename Application Role Command.............................................................................................. 14-13Delete Application Role Command................................................................................................. 14-14Rename Users Command................................................................................................................... 14-16Delete Users Command...................................................................................................................... 14-17Setting Query Limits .......................................................................................................................... 14-18

    Accessing the Query Limits Functionality in the Administration Tool ................................ 14-19Limiting Queries By the Number of Rows Received............................................................... 14-19Limiting Queries By Maximum Run Time and Restricting to Particular Time Periods..... 14-20Allowing or Disallowing Direct Database Requests................................................................ 14-21Allowing or Disallowing the Populate Privilege...................................................................... 14-21

    About Applying Data Access Security in Offline Mode............................................................. 14-22Setting Up Placeholder Application Roles for Offline Repository Development ............... 14-22

    About the List of Users in the Administration Tool .................................................................... 14-23

    15 Completing Oracle BI Repository Setup

    Configuring the Repository for Oracle Scorecard and Strategy Management ......................... 15-1Configuring the Repository for Comments and Status Overrides .......................................... 15-1

    Saving the Repository and Checking Consistency......................................................................... 15-3Using nqcmd to Test and Refine the Repository ............................................................................ 15-3Upload Repository Command ............................................................................................................ 15-5Making the Repository Available for Queries ................................................................................ 15-6Creating Data Source Connections to the Oracle BI Server for Client Applications............... 15-7Publishing to the User Community ................................................................................................... 15-7

    16 Setting Up Data Sources on Linux and UNIX

    About Setting Up Data Sources on Linux and UNIX ..................................................................... 16-1Configuring Data Source Connections Using Native Gateways ................................................. 16-2

    Troubleshooting OCI Connections ............................................................................................... 16-5About Updating Row Counts in Native Databases ................................................................... 16-6

    Using DataDirect Connect ODBC Drivers on Linux and UNIX .................................................. 16-6

  • xv

    Configuring Oracle Business Intelligence to Use DataDirect .................................................. 16-7Additional DataDirect Configuration for Oracle Essbase.................................................. 16-7

    Configuring the DataDirect Connect ODBC Driver for Microsoft SQL Server Database .... 16-8Configuring the DataDirect Connect ODBC Driver for MySQL Database ............................ 16-9Configuring the DataDirect Connect ODBC Driver for Sybase ASE Database ................... 16-10Configuring the DataDirect Connect ODBC Driver for Informix Database ........................ 16-12Configuring the DataDirect Connect ODBC Driver for Cloudera Impala Database .......... 16-13Configuring the DataDirect Connect ODBC Driver for Apache Hive Database................. 16-16

    Configuring Database Connections Using Native ODBC Drivers ........................................... 16-17Setting Up Oracle TimesTen In-Memory Database on Linux and UNIX ................................ 16-19Configuring Oracle RPAS ODBC Data Sources on AIX UNIX.................................................. 16-19Configuring Essbase Data Sources on Linux and UNIX ............................................................. 16-20Configuring DB2 Connect on IBM z/OS and s/390 Platforms.................................................... 16-21

    17 Managing Oracle BI Repository Files

    Comparing Repositories ...................................................................................................................... 17-1Comparing Repositories Using the Compare Dialog ................................................................ 17-1Comparing Repositories Using comparerpd .............................................................................. 17-4Turning Off Compare Mode.......................................................................................................... 17-5

    Equalizing Objects ................................................................................................................................ 17-5About Equalizing Objects .............................................................................................................. 17-6Using the Equalize Objects Dialog ............................................................................................... 17-7Using the equalizerpds Utility ...................................................................................................... 17-8

    About Values for TypeName ................................................................................................. 17-9Merging Repositories ......................................................................................................................... 17-11

    Performing Full Repository Merges ........................................................................................... 17-11About Full Repository Merges............................................................................................. 17-11Performing Full Repository Merges With a Common Parent......................................... 17-13Performing Full Repository Merges Without a Common Parent ................................... 17-18

    Performing Patch Merges ............................................................................................................ 17-19About Patch Merges .............................................................................................................. 17-19Generating a Repository Patch............................................................................................. 17-21Applying a Repository Patch ............................................................................................... 17-22

    Using patchrpd to Apply a Patch................................................................................. 17-23Querying and Managing Repository Metadata............................................................................. 17-25

    Querying the Repository.............................................................................................................. 17-26Constructing a Filter for Query Results.............................................................................. 17-27

    Querying Related Objects ............................................................................................................ 17-29Changing the Oracle BI Repository Password .............................................................................. 17-30

    Changing the Oracle BI Repository Password Using the Administration Tool .................. 17-31Changing the Oracle BI Repository Password Using the obieerpdpwdchg Utility............ 17-32

    18 Using Expression Builder and Other Utilities

    Using Expression Builder .................................................................................................................... 18-1About the Expression Builder Dialogs......................................................................................... 18-1About the Expression Builder Toolbar......................................................................................... 18-3

  • xvi

    About the Categories in the Category Pane ................................................................................ 18-4Setting Up an Expression ............................................................................................................... 18-5

    Navigating Within Expression Builder................................................................................. 18-6Building an Expression ........................................................................................................... 18-6About the INDEXCOL Conversion Function ...................................................................... 18-7

    Using Administration Tool Utilities ................................................................................................. 18-7Using the Replace Column or Table Wizard............................................................................... 18-8Using the Oracle BI Event Tables Utility ................................................................................... 18-10Using the Externalize Strings Utility.......................................................................................... 18-11Using the Rename Wizard ........................................................................................................... 18-11Using the Update Physical Layer Wizard ................................................................................. 18-13Generating Documentation of Repository Mappings ............................................................. 18-14Generating a Metadata Dictionary ............................................................................................. 18-15Providing Access to Metadata Dictionary Information........................................................... 18-16Removing Unused Physical Objects........................................................................................... 18-17Persisting Aggregates ................................................................................................................... 18-17Using the Oracle BI Summary Advisor Wizard ....................................................................... 18-18Using the Convert Presentation Folders Utility ....................................................................... 18-18Generating a List of Logical Column Types.............................................................................. 18-18

    Using the biservergentypexml Utility to Generate a List of Logical Column Types... 18-19Sample Output for a Logical Column Types Document.................................................. 18-19

    Comparing Logical Column Types ............................................................................................ 18-20Fixing Upgrade IDs....................................................................................................................... 18-21Setting Permissions In Bulk ......................................................................................................... 18-22

    Using the Calculation Wizard ........................................................................................................... 18-22

    19 Using Variables in the Oracle BI Repository

    Working with Repository Variables.................................................................................................. 19-2About Repository Variables........................................................................................................... 19-2

    About Static Repository Variables......................................................................................... 19-2About Dynamic Repository Variables .................................................................................. 19-2

    Creating Repository Variables ...................................................................................................... 19-3Using Repository Variables in Expression Builder ............................................................. 19-4

    Working with Session Variables........................................................................................................ 19-4About Session Variables................................................................................................................. 19-4

    About System Session Variables............................................................................................ 19-5About Nonsystem Session Variables .................................................................................... 19-7

    Creating Session Variables............................................................................................................. 19-7Working with Initialization Blocks ................................................................................................... 19-8

    About Using Initialization Blocks with Variables ...................................................................... 19-8Initializing Dynamic Repository Variables .......................................................................... 19-8Initializing Session Variables ................................................................................................. 19-9About Row-Wise Initialization .............................................................................................. 19-9

    Initializing a Variable with a List of Values................................................................ 19-10Creating Initialization Blocks ...................................................................................................... 19-11

    Assigning a Name and Schedule to Initialization Blocks ................................................ 19-11Selecting and Testing the Data Source and Connection Pool.......................................... 19-12

  • xvii

    Initialization Strings Used in Variables to Override Selection Steps ...................... 19-14Examples of Initialization Strings................................................................................. 19-16Testing Initialization Blocks .......................................................................................... 19-17

    Associating Variables with Initialization Blocks ...................................................................... 19-18Establishing Execution Precedence ............................................................................................ 19-19When Execution of Session Variable Initialization Blocks Cannot Be Deferred.................. 19-20Enabling and Disabling Initialization Blocks............................................................................ 19-20

    Working with Multi-Source Session Variables ............................................................................ 19-21Example to Illustrate the Creation and Usage of Multi-Source Session Variables.............. 19-21

    List Repository Variables Command .............................................................................................. 19-23Update Repository Variables Command ........................................................................................ 19-25

    A Managing the Repository Lifecycle in a Multiuser Development Environment

    Planning Your Multiuser Development Deployment ..................................................................... A-1About Business Organization and Governance Process Best Practices .................................... A-2About Technical Team Roles and Responsibilities ...................................................................... A-2

    Multiuser Development Architecture ................................................................................................. A-4About Multiuser Development Concepts...................................................................................... A-4About Multiuser Development Styles............................................................................................ A-6Multiuser Development Sandbox Architecture............................................................................ A-9Multiuser Development and Lifecycle Management Architecture ......................................... A-11

    Understanding the Multiuser Development Environment .......................................................... A-13About Multiuser Development Environment Task Flow ......................................................... A-14About Multiuser Development Projects ...................................................................................... A-15How to Create Branches................................................................................................................. A-16

    How to Create a Main Branch................................................................................................ A-16How to Create a Side Branch ................................................................................................. A-16How to Create a Delegated Administration Branch........................................................... A-18

    Which Merge Utility Should I Use?.............................................................................................. A-18MUD Tips and Best Practices.............................................................................................................. A-19

    Best Practices for Branching .......................................................................................................... A-20Best Practices for Setting Up Projects ........................................................................................... A-20Best Practices for Three-Way Merges........................................................................................... A-21Best Practices for MUD Merges .................................................................................................... A-21Best Practices for Two-Way Merges ............................................................................................. A-22Best Practices for Production Migration ...................................................................................... A-23Best Practices for Application Roles and Users .......................................................................... A-24

    Troubleshooting Multiuser Development ....................................................................................... A-24

    B MUD Case Study: Eden Corporation

    About the Eden Corporation Fictional Case Study .......................................................................... B-1Phase I - Initiating Multiuser Development (MUD) ........................................................................ B-3

    Starting Initiative S............................................................................................................................ B-4Setting Up MUD Projects ................................................................................................................. B-5First Developer Checks Out............................................................................................................. B-6Second Developer Checks Out........................................................................................................ B-9

  • xviii

    First Developer Publishes Changes to the Master MUD Repository ...................................... B-10Second Developer Publishes Changes to the Master MUD Repository.................................. B-10MUD Administrator Test Migration Activities .......................................................................... B-11Phase I Testing................................................................................................................................. B-11Phase I Migration to Production ................................................................................................... B-11Phase I Summary............................................................................................................................. B-12

    Phase II - Branching, Fixing, and Patching ...................................................................................... B-13Setting Up the Second Branch ....................................................................................................... B-14Developers Check Out Projects..................................................................................................... B-14Patch Fix for the Main Branch ....................................................................................................... B-14Finishing and Merging Phase II Branch....................................................................................... B-17Phase II Summary ........................................................................................................................... B-17

    Phase III - Independent Semantic Model Development ............................................................... B-18Security Considerations for Multiple Independent Semantic Models .................................... B-18Sales Semantic Model Developers Check Out ............................................................................ B-19HR Semantic Model Developer Builds Content ......................................................................... B-19Phase III Summary.......................................................................................................................... B-20

    C Logical SQL Reference

    About Logical SQL in Oracle Business Intelligence ........................................................................ C-1SQL Syntax and Semantics.................................................................................................................... C-2

    Syntax and Usage Notes for the SELECT Statement ................................................................... C-2Basic Syntax for the SELECT Statement ................................................................................. C-3Usage Notes .....................................................................