Oracle® Business Intelligence Server Administration Guide

Version 10.1.3.2 December 2006

Part Number: B31770-01 Copyright © 2006, Oracle. All rights reserved. The Programs (which include both the software and documentation) contain proprietary information; they are provided under a license agreement containing restrictions on use and disclosure and are also protected by copyright, patent, and other intellectual and industrial property laws. Reverse engineering, disassembly, or decompilation of the Programs, except to the extent required to obtain interoperability with other independently created software or as specified by law, is prohibited. The information contained in this document is subject to change without notice. If you find any problems in the documentation, please report them to us in writing. This document is not warranted to be errorfree. Except as may be expressly permitted in your license agreement for these Programs, no part of these Programs may be reproduced or transmitted in any form or by any means, electronic or mechanical, for any purpose. If the Programs are delivered to the United States Government or anyone licensing or using the Programs on behalf of the United States Government, the following notice is applicable: U.S. GOVERNMENT RIGHTS. Programs, software, databases, and related documentation and technical data delivered to U.S. Government customers are "commercial computer software" or "commercial technical data" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the Programs, including documentation and technical data, shall be subject to the licensing restrictions set forth in the applicable Oracle license agreement, and, to the extent applicable, the additional rights set forth in FAR 52.227-19, Commercial Computer Software--Restricted Rights (June 1987). Oracle USA, Inc., 500 Oracle Parkway, Redwood City, CA 94065. The Programs are not intended for use in any nuclear, aviation, mass transit, medical, or other inherently dangerous applications. It shall be the licensee's responsibility to take all appropriate fail-safe, backup, redundancy and other measures to ensure the safe use of such applications if the Programs are used for such purposes, and we disclaim liability for any damages caused by such use of the Programs. Oracle, JD Edwards, PeopleSoft, and Siebel are registered trademarks of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. The Programs may provide links to Web sites and access to content, products, and services from third parties. Oracle is not responsible for the availability of, or any content provided on, third-party Web sites. You bear all risks associated with the use of such content. If you choose to purchase any products or services from a third party, the relationship is directly between you and the third party. Oracle is not responsible for: (a) the quality of third-party products or services; or (b) fulfilling any of the terms of the agreement with the third party, including delivery of products or services and warranty obligations related to purchased products or services. Oracle is not responsible for any loss or damage of any sort that you may incur from dealing with any third party.

Contents

Oracle® Business Intelligence Server Administration Guide 1

Chapter 1: What’s New in This Release Chapter 2: Oracle BI Administration Tool Basics
Administration Tool User Interface Components Online and Offline Repository Modes Setting Preferences
Using Using Using Using Using Using the the the the the the Options Options Options Options Options Options

17 24 26

Features and Options for Oracle’s Siebel Marketing Application 24 Checking the Consistency of a Repository or a Business Model 29
Dialog Dialog Dialog Dialog Dialog Dialog Box—General Tab 29 Box—Repository Tab 31 Box—Sort Objects Tab 32 Box—Cache Manager Tab 32 Box—Multiuser Tab 33 Box—More Tab 33

Setting Permissions for Repository Objects

33 35 35

Editing, Deleting, and Reordering Objects in the Repository Displaying and Updating Row Counts for Tables and Columns Populating Logical Level Counts Automatically Using the Browse Dialog Box 37 36

Chapter 3: Planning and Creating an Oracle BI Repository
Roadmap for Planning and Setting Up an Oracle BI Repository Process of Oracle BI Repository Planning and Design 39
About Repository Planning and Design 39 Planning Your Business Model 40 Identifying the Database Content For The Business Model Guidelines For Designing a Repository 50

39

45

Creating a New Oracle BI Repository File

54

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

3

Contents ■

Chapter 4: Creating and Administering the Physical Layer in an Oracle BI Repository
Process of Creating the Physical Layer from Relational Data Sources
Importing a Physical Schema from Relational Data Sources 56

56 58

Process of Creating the Physical Layer from Multidimensional Data Sources
Importing a Physical Schema from Multidimensional Data Sources 59

Setting Up Database Objects

60
61

About Database Types in the Physical Layer 61 Creating a Database Object Manually in the Physical Layer Specifying SQL Features Supported by a Database 64

Setting Up Connection Pools

65
73 76

Creating or Changing Connection Pools 67 Setting Up Connection Pool Properties for Multidimensional Data Sources Setting Up Additional Connection Pool Properties for an XML Data Source Setting Up Write-Back Properties 77 Setting Up the Persist Connection Pool Property 79

About Physical Tables

81 83

Creating and Setting Up Physical Tables

Creating and Administering General Properties for Physical Tables 85 Viewing Data in Physical Tables or Columns 87 Creating and Administering Columns and Keys in a Physical Table 87 Setting Up Hierarchies in the Physical Layer for a Multidimensional Data Source Setting Physical Table Properties for an XML Data Source 96

91

Creating Physical Layer Folders

96
97

Creating Physical Layer Catalogs and Schemas 97 Using a Variable to Specify the Name of a Catalog or Schema Setting Up Display Folders in the Physical Layer 98

About Physical Joins

99 100
101

Defining Physical Foreign Keys and Joins

Defining Physical Foreign Keys or Complex Joins with the Joins Manager Defining Physical Joins in the Physical Diagram 101

Deploying Opaque Views Using Database Hints

103

106

Chapter 5: Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository
About Creating the Business Model and Mapping Layer 109

4

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

Contents ■

Creating Business Model Objects

110 110 111
112 113

Duplicate Business Model and Presentation Catalog Creating and Administering Logical Tables
Creating Logical Tables 111 Specifying a Primary Key in a Logical Table Reviewing Foreign Keys for a Logical Table

Creating and Administering Logical Columns

113

Creating and Moving a Logical Column 114 Setting Default Levels of Aggregation for Measure Columns 115 Associating an Attribute with a Logical Level in Dimension Tables 116

Creating and Administering Logical Table Sources (Mappings)
Creating or Removing a Logical Table Source 118 Defining Physical to Logical Table Source Mappings Defining Content of Logical Table Sources 121 119

117

About Dimensions and Hierarchical Levels

125 126

Process of Creating and Administering Dimensions

Creating Dimensions 126 Creating Dimension Levels and Keys 126 Setting Up Dimension-Specific Aggregate Rules for Logical Columns

134

Setting Up Display Folders in the Business Model and Mapping Layer Defining Logical Joins 136
139 141 Defining Logical Joins with the Joins Manager 137 Defining Logical Joins with the Business Model Diagram Specifying a Driving Table 140 Identifying Physical Tables That Map to Logical Objects

136

Chapter 6: Creating and Maintaining the Presentation Layer in an Oracle BI Repository
Creating the Presentation Layer in the Repository Presentation Layer Objects 144 143

Working with Presentation Catalogs 145 Working with Presentation Tables 146 Working with Presentation Columns 147 Using the Alias Tab of Presentation Layer Dialog Boxes

149

Generating an XML File from a Presentation Table

149

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

5

Contents ■

Chapter 7: Completing Setup and Managing Oracle BI Repository Files
Process of Completing the Setup for a Repository File
Saving the Repository and Checking Consistency Add an Entry in the NQSConfig.INI File 152 Create the Data Source 153 Start the Oracle BI Server 153 Test and Refine the Repository 154 Publish to User Community 154 152

151

Importing From Another Repository

154 156 159

Querying and Managing Repository Metadata Constructing a Filter for Query Results Comparing Repositories 161 163 Merging Oracle BI Repositories

Exporting Oracle BI Metadata to IBM DB2 Cube Views About Extracting Metadata Subsets Into Projects 167

167 169

Setting up and Using the Oracle BI Multiuser Development Environment
Setting Up a Multiuser Development Environment (Administrator) 170 Making Changes in a Multiuser Development Environment (Developers) Checking In Multiuser Development Repository Projects 175 Viewing and Deleting History for Multiuser Development 178 172

Setting Up the Repository to Work with Delivers
About the SA System Subject Area 180 Setting Up the SA System Subject Area 181

180

Chapter 8: Oracle BI Administration Tool Utilities and Expression Builder
Utilities and Wizards 183
Replace Column or Table Wizard 183 Oracle BI Event Tables 184 Externalize Strings 184 Rename Wizard 185 Update Physical Layer Wizard 185 Generating Documentation of Repository Mappings 186 Generating and Deploying a Metadata Dictionary 187 Removing Unused Physical Objects 189 Aggregate Persistence Wizard 189 Calculation Wizard 190

6

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

Contents ■

Expression Builder

190

Chapter 9: Setting Up Fragmentation Content in an Oracle BI Repository for Aggregate Navigation
About Aggregate Navigation 201 201 Specify Fragmentation Content

Chapter 10:Administering the Oracle BI Server Query Environment
Starting the Oracle BI Server 209
210 211 Starting the Server from Windows Services 209 Configuring the Server for Automatic Startup in Windows Running the Server Startup Script in UNIX 210 Changing the User ID in Which the Oracle BI Server Runs If the Server Fails to Start 211

Shutting Down the Oracle BI Server

212

Shutting Down the Server in Windows Services 212 Shutting Down the Server from a Command Prompt in Windows 213 Running the Server Shutdown Script in UNIX 213 Shutting Down the Oracle BI Server Using the Administration Tool 214

Getting Users to Connect to the Server Administering the Query Log Administering Usage Tracking 214 219

214

Setting Up Direct Insertion to Collect Information for Usage Tracking Setting Up a Log File to Collect Information for Usage Tracking 221

219

Server Session Management

225 227

Server Configuration and Tuning

Chapter 11:Query Caching in the Oracle BI Server
About the Oracle BI Server Query Cache Query Cache Architecture Configuring Query Caching 232 232 234 235
237

229

Monitoring and Managing the Cache

Purging and Maintaining Cache Using ODBC Procedures
Storing and Purging Cache for SAP/BW Data Sources

Strategies for Using the Cache

238

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

7

Contents ■

Creating Aggregates for Oracle BI Server Queries

241

Identifying Query Candidates for Aggregation 242 About Writing the Create Aggregates Specification 242 Generating the SQL Script File 247 About Setting the Logging Level 247 Executing the SQL Script File to Create and Delete Aggregates Post Creation Activities 247

247

Cache Event Processing with an Event Polling Table

248

Setting Up Event Polling Tables on the Physical Databases 249 Making the Event Polling Table Active 252 Populating the Oracle BI Server Event Polling Table 253 Troubleshooting Problems with an Event Polling Table 253

Making Changes to a Repository Using the Cache Manager 255

254
256

Displaying Global Cache Information Purging Cache 256

About the Refresh Interval for XML Data Sources

257

Chapter 12:Connectivity and Third-Party Tools in Oracle BI Server
Configuring Oracle BI ODBC Data Source Names (DSNs) ODBC Conformance Level Importing Metadata 263 263
263

259 262

261

Third-Party Tools and Relational Data Source Adapters Exchanging Metadata with Databases

Finding Information on Metadata Exchange Generating the Import File 264

Using Materialized Views in the Oracle Database with Oracle BI

273
273

About Using Oracle Database Summary Advisor with Materialized Views Process of Deploying Metadata for Oracle 274

Using IBM DB2 Cube Views with Oracle BI

277
278

About Using IBM DB2 Cube Views with Oracle BI Process of Deploying Cube Metadata 278

Chapter 13:Using Variables in the Oracle BI Repository
Using the Variable Manager 283
Understanding and Creating Repository Variables 283 Understanding and Creating Session Variables 286

8

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

3.1.Contents ■ About Using Initialization Blocks With Variables Process of Creating Initialization Blocks 293 290 Assigning a Name and Schedule to Initialization Blocks 294 Selecting and Testing the Data Source and Connection Pool 294 Associating Variables With Initialization Blocks 298 Establishing Execution Precedence 299 Chapter 14:Clustering Oracle BI Servers About the Cluster Server 301 301 303 305 307 Components of the Cluster Server Implementing the Cluster Server Chronology of a Cluster Operation Using the Cluster Manager Performance Considerations 307 313 Viewing and Managing Cluster Information Chapter 15:Security in Oracle BI Oracle BI Security Manager 315 Working with Users 315 Working with Groups 317 Importing Users and Groups from LDAP 321 Authentication Options 324 Setting Up LDAP Authentication 324 Setting Up External Table Authentication 326 Setting Up Database Authentication 327 About Oracle BI Delivers and Database Authentication 328 Maintaining Oracle BI Server User Authentication 329 Order of Authentication 330 Managing Query Execution Privileges 330 Chapter 16:Using XML as a Data Source for the Oracle BI Server Locating the XML URL 335 336 338 Using the Oracle BI Server XML Gateway Oracle BI Server XML Gateway Example Accessing HTML Tables 344 Using the Data Mining Adapter 345 Oracle Business Intelligence Server Administration Guide Version 10.2 9 .

xml 351 84.Contents ■ Using XML ODBC XML Examples 349 349 350 XML ODBC Example 83.1.xml 350 8_sch.xml 352 Island2.2 .htm 353 Chapter 17:Oracle BI Server SQL Reference SQL Syntax and Semantics 355 SELECT Query Specification Syntax 355 SELECT Usage Notes 356 SELECT List Syntax 357 Rules for Queries with Aggregate Functions SQL Logical Operators 363 Conditional Expressions 364 358 SQL Reference 366 Aggregate Functions 366 Running Aggregate Functions 374 String Functions 378 Math Functions 384 Calendar Date/Time Functions 390 Conversion Functions 398 System Functions 402 Expressing Literals 402 Appendix A: Oracle BI Server Usage Tracking Data Descriptions and Using the Log File Method Create Table Scripts for Usage Tracking Data Loading Usage Tracking Tables with Log Files Description of the Usage Tracking Data 406 405 405 Appendix B: Oracle BI Server Authentication APIs Index 10 Oracle Business Intelligence Server Administration Guide Version 10.3.

Oracle Business Intelligence Server Administration Guide Version 10. These changes include the name of this guide and many of the products. with a number of significant enhancements. Oracle recommends reading the Oracle Business Intelligence Enterprise Edition Release Notes before installing.3. Added new shortcuts.1.com/technology/documentation/ bi_ee.1. This guide contains information about setting up the Oracle Business Intelligence Server. The Oracle Business Intelligence Enterprise Edition Release Notes are available: ■ ■ On the Oracle Business Intelligence Enterprise Edition CD-ROM.com/technology/about/index. Topic Changed Features and Information in Oracle Business Intelligence Server Administration Guide.3. On the Oracle Technology Network at http://www.oracle.3. Added topic.2 Table 1 on page 11 lists changes described in this version of the documentation to support Release 10.3.1 What’s New in This Release Oracle Business Intelligence Enterprise Edition consists of components that were formerly available from Siebel Systems as Siebel Business Analytics Platform.1. This guide contains new material and material that was previously published under the title Siebel Business Analytics Server Administration Guide.2 11 . Version 10. Version 10.1. Table 1. opaque views.2 of the software. go to http:// www.2 Description Updated menu items to reflect changes to product names and changed functionality. and aggregate objects.html). Added new icons for physical cube hierarchy types. or upgrading the Oracle BI Infrastructure. The Oracle Business Intelligence Server Administration Guide is part of the documentation set for Oracle Business Intelligence Enterprise Edition.html (to register for a free account on the Oracle Technology Network.oracle. “Menus in the Administration Tool” on page 18 “Keyboard Shortcuts in the Administration Tool” on page 21 “Icons and Symbols in the Administration Tool” on page 21 “Features and Options for Oracle’s Siebel Marketing Application” on page 24 “Checking the Consistency of a Repository or a Business Model” on page 26 Rewrote topic to describe the new Consistency Check Manager. What’s New in Oracle Business Intelligence Server Administration Guide. using.

Added topic.2 Description Updated Calculation Wizard information.1. Updated this topic to include changes for multidimensional data sources and added new properties for alias tables.1. Version 10. Updated general properties for setting up connection pools for all data sources.3. Updated section to include support for SAP/BW and new versions of Microsoft Analysis Services. Updated topic to reflect new properties. Added field needed to create a database using a virtual private database as a source. and removed options for Time Series Wizard and Merge repository mismatch warning. Added topic. added import repository option. Topic Changed Features and Information in Oracle Business Intelligence Server Administration Guide. Updated topic and procedure to include instructions for alias tables. 12 Oracle Business Intelligence Server Administration Guide Version 10. Added information about new tab. “Using the Options Dialog Box— General Tab” on page 29 “Using the Options Dialog Box— Multiuser Tab” on page 33 “Populating Logical Level Counts Automatically” on page 36 “Process of Creating the Physical Layer from Multidimensional Data Sources” on page 58 “Importing a Physical Schema from Multidimensional Data Sources” on page 59 “Creating a Database Object Manually in the Physical Layer” on page 61 “Creating or Changing Connection Pools” on page 67 “Setting Up Connection Pool Properties for Multidimensional Data Sources” on page 73 “About Physical Tables” on page 81 “About Physical Alias Tables” on page 83 “Creating and Administering General Properties for Physical Tables” on page 85 “About Measures in a Multidimensional Data Source” on page 88 “Creating and Administering Columns and Keys in a Physical Table” on page 87 “Setting Up Hierarchies in the Physical Layer for a Multidimensional Data Source” on page 91 Updated topic. Added topic.What’s New in This Release ■ Table 1. Updated the steps to import objects to include support for SAP/BW. Updated general properties for setting up connection pools.2 .3.

Topic Changed Features and Information in Oracle Business Intelligence Server Administration Guide. Added topics that explain how to deploy.3. Added topic.2 13 .2 Description Added topics about updating member counts and viewing member data.3. Added topic. Added topic to update Expression Builder.1. Revised topic and added caution note about authorization and authentication configuration option. This topic replaced by “Generating and Deploying a Metadata Dictionary” on page 187 Removed topic from “Oracle BI Administration Tool Utilities and Expression Builder” on page 183. “Updating Member Counts” on page 94 and “Viewing Members in Physical Cube Tables” on page 94 “Deploying Opaque Views” on page 103 “Creating Dimensions” on page 126 “Creating Dimension Levels and Keys” on page 126 “Selecting and Sorting Chronological Keys in a Time Dimension” on page 130 “Importing From Another Repository” on page 154 “Querying and Managing Repository Metadata” on page 156 “About Extracting Metadata Subsets Into Projects” on page 167 “Setting Up the SA System Subject Area” on page 181 Extracting Analytics Metadata Using Dependency Tracking Time Series Wizard Synchronize Aliases Added information about changes to the import from repository process.What’s New in This Release ■ Table 1. “Generating and Deploying a Metadata Dictionary” on page 187 “Aggregate Persistence Wizard” on page 189 “Calculation Wizard” on page 190 “About Time Series Conversion Functions” on page 197 “About the IndexCol Conversion Function” on page 199 Oracle Business Intelligence Server Administration Guide Version 10. undeploy. Updated procedures for running queries and saving query results to an external file. Added procedures for saving queries and deleting saved queries.1. Added topic. Added topic to update Expression Builder. Added topic. Version 10. Added an explanation about how project extract work. Updated topic. and remove opaque views. Synchronization is now automatic. Removed topic from “Oracle BI Administration Tool Utilities and Expression Builder” on page 183. Updated topic and added topics about working with time dimensions and chronological keys.

INI File” on page 304 and “Setting Parameters in the NQClusterConfig. Added topics.3. Added information about the SAGetSharedRequestKey ODBC procedure.What’s New in This Release ■ Table 1. “Administering Usage Tracking” on page 219 “Purging and Maintaining Cache Using ODBC Procedures” on page 235 “Storing and Purging Cache for SAP/ BW Data Sources” on page 237 “Creating Aggregates for Oracle BI Server Queries” on page 241 “Understanding and Creating Session Variables” on page 286 “Creating Repository Variables” on page 285 and “Creating Session Variables” on page 289 “About Using Initialization Blocks With Variables” on page 290 and “Process of Creating Initialization Blocks” on page 293 “About Authenticating Users Using Initialization Blocks” on page 293 “Clustering Oracle BI Servers” on page 301 “Setting Parameters in the NQSConfig.2 Description Added information about how usage tracking works. Revised all topics to conform to new user interface. Also added information about virtual private database parameters. Added information about Oracle BI Scheduler to this chapter. Reorganized and updated these topics to reflect the changes in user interface design.1.2 . Added cross-reference to Oracle Business Intelligence Enterprise Edition Deployment Guide. Parameters are described in the Oracle Business Intelligence Infrastructure Installation and Configuration Guide.3. Removed parameters from these topics. Topic Changed Features and Information in Oracle Business Intelligence Server Administration Guide. Added and updated several topics about time series functions.INI File” on page 304 “Setting Up LDAP Authentication” on page 324 and “Maintaining Oracle BI Server User Authentication” on page 329 “Maintaining Oracle BI Server User Authentication” on page 329 “Using FILTER to Compute a Conditional Aggregate” on page 362 “Aggregate Functions” on page 366 “IndexCol” on page 400 Retitled and revised topics.1. Added topic. 14 Oracle Business Intelligence Server Administration Guide Version 10. Added topic. Version 10. Expanded and reorganized topics about LDAP authentication. Added description of Oracle Business Intelligence Disconnected Analytics variables. Added conversion function.

What’s New in This Release ■ Table 1.3.1.2 Description Added data columns. Topic Changed Features and Information in Oracle Business Intelligence Server Administration Guide. Version 10.3. Oracle Business Intelligence Server Administration Guide Version 10. Added appendix.2 15 . “Description of the Usage Tracking Data” on page 406 “Oracle BI Server Authentication APIs” on page 409 Other Documentation Changes ■ Added notes throughout the guide to identify the repository Presentation layer catalogs as subject areas.1.

3.What’s New in This Release ■ 16 Oracle Business Intelligence Server Administration Guide Version 10.1.2 .

tables of values and descriptions contain only values that need a detailed description.2 17 . The Administration Tool is a Windows application that allows the Oracle BI Administrator to create and edit repositories. Deleting.1. NOTE: In this guide.2 Oracle BI Administration Tool Basics This section provides an overview of the user interface components included in the Administration Tool. This section contains the following topics: ■ ■ ■ ■ ■ ■ ■ ■ ■ Administration Tool User Interface Components on page 17 Features and Options for Oracle’s Siebel Marketing Application on page 24 Online and Offline Repository Modes on page 24 Checking the Consistency of a Repository or a Business Model on page 26 Setting Preferences on page 29 Setting Permissions for Repository Objects on page 33 Editing. Self-explanatory values such as Show Toolbar do not need to be listed. and Reordering Objects in the Repository on page 35 Displaying and Updating Row Counts for Tables and Columns on page 35 Using the Browse Dialog Box on page 37 Administration Tool User Interface Components This section includes a description of the following interface components: ■ ■ ■ ■ ■ ■ Main Window in the Administration Tool on page 17 Menus in the Administration Tool on page 18 Toolbar in the Administration Tool on page 20 Keyboard Shortcuts in the Administration Tool on page 21 Icons and Symbols in the Administration Tool on page 21 Online Help in the Administration Tool on page 24 Main Window in the Administration Tool The main window of the Administration Tool is a graphical representation of the following three parts of a repository: Oracle Business Intelligence Server Administration Guide Version 10.3.

Represents the physical structure of the data sources to which the Oracle BI Server submits queries. Presentation layer.2 . as described in the preceding list.3. The business models contain logical columns arranged in logical tables. Example Administration Tool Main Window Menus in the Administration Tool The Administration Tool includes the following menus: File The File menu contains options to work with repositories as well as several server-related options that are active when a repository is open in online mode. Represents the presentation structure of the repository. This layer also contains the mappings from the logical columns to the source data in the Physical layer. 18 Oracle Business Intelligence Server Administration Guide Version 10. This layer is displayed in the right pane of the Administration Tool. It is displayed in the left pane of the Administration Tool. Represents the logical structure of the information in the repository. and dimensional hierarchy definitions.1. Figure 1. ■ Figure 1 on page 18 shows the three layers of a repository. This layer allows you to present a view different from the Business Model and Mapping layer to users. logical joins. It is displayed in the middle pane of the Administration Tool. Business Model and Mapping layer. the File menu has fewer commands available. Before you open a repository.Oracle BI Administration Tool Basics ■ Administration Tool User Interface Components ■ ■ Physical layer.

see Oracle Business Intelligence Scheduler Guide. and initialization blocks. logical fact tables. copy. Oracle Business Intelligence Server Administration Guide Version 10. you can view and edit some of the object properties. For information about using Marketing with Oracle BI. Additionally.1. The Joins Manager allows you to work with physical and logical joins. Menu Option Jobs Sessions Cache Clusters Security Joins Variables Projects Marketing Tools The Tools menu options allow you to update all row counts. and delete) on objects in a repository. For more information. This option is available when a repository is opened in online mode and caching is enabled. groups. set options for the Administration Tool. This option is available when the Oracle BI Cluster Server is installed. This option is available when a repository is opened in online mode. The Project Manager allows you to create. edit. The Cache Manager allows you to monitor and manage the cache. Applies to Oracle’s Siebel Marketing product. and refresh the repository view. Table 2. Project elements include presentation catalogs (repository subject areas).3. paste. refer to the administrator documentation for the Siebel Marketing application. Manage Menu Functions Description This option is available when a repository is opened in online mode. give you access to the Join diagrams. and work with various utilities. The Security Manager displays security information for a repository and provides a central location for security configuration and management. duplicate. or remove projects or project elements.2 19 . you can monitor activity on the system. In the Session Manager. refer to “Setting Up a Multiuser Development Environment (Administrator)” on page 170. open the Query Repository dialog box. View The View menu options toggle the view of specific metadata panes. The Job Manager is the management interface to Oracle Business Intelligence Scheduler Guide. Manage The Manage menu allows you to access the management functions described in Table 2 on page 19. variables. The Cluster Manager monitors and manages the operations and activities of the cluster. The Variables Manager allows you to create.Oracle BI Administration Tool Basics ■ Administration Tool User Interface Components Edit The Edit menu options allow you to perform basic editing functions (cut. For more information about using BI Scheduler. You need a separate license to use this product. users. including the current values of repository and session variables. edit or delete variables. You use projects during multiuser development.

To toggle the toolbar on and off ■ Select Tools > Options > Show Toolbar. Help The Help menu allows you to obtain the following information: ■ ■ ■ Help Topics.1. Oracle on Web. NOTE: The Cascade and Tile options are only available if you clear the Tile when resizing check box in the Tools > Options dialog box. About Administration Tool. in the General tab. and then click and drag to where you want to place the toolbar. Toolbar in the Administration Tool The toolbar provides access to functions that you use frequently.3. Obtain version information about Oracle BI Server Administration Tool. Access the Oracle Web site. Access the online help system for the Administration Tool.Oracle BI Administration Tool Basics ■ Administration Tool User Interface Components Window The Window menu options allow you to cascade or tile open layer windows and toggle among them.2 . To dock the toolbar ■ Place your cursor on the double bars to the left of the toolbar. 20 Oracle Business Intelligence Server Administration Guide Version 10.

Some of the items in this list are symbols used in conjunction with other icons to expand their meanings. Oracle Business Intelligence Server Administration Guide Version 10.Oracle BI Administration Tool Basics ■ Administration Tool User Interface Components Keyboard Shortcuts in the Administration Tool Table 3 on page 21 presents the keyboard shortcuts you can use in the Administration Tool to perform frequent tasks. double-clicking the icon and reading the title bar of the dialog box.1. Table 4 on page 21 presents some of the icons and symbols that elaborate on the name in the title bar. Table 3.3. View object.2 21 . as specified by the Object Type option in the General tab of the Physical Table dialog box. Menu File Keyboard Shortcuts Command New Open > Offline Open > Online Save Check Global Consistency Shortcut CTRL + N CTRL + F CTRL + L CTRL + S CTRL + K CTRL + X CTRL + C CTRL + V DEL F5 CTRL + E CTRL + Q Edit Cut Copy Paste Delete View Tools Refresh Show Consistency Checker Query Repository Icons and Symbols in the Administration Tool For most icons. Icon or Symbol Icons and Symbols What It Represents Stored procedure call object. Table 4. you can obtain the object type by. Opaque view object after deployed.

Unknown hierarchy type. A foreign key for a physical or logical table in the Joins Manager (gray). A level for a multidimensional data source in the Physical layer. A level in the Business Model and Mapping layer in which a level key contains one or more columns from another level. A physical or logical column. A derived logical column. A logical column with an aggregation rule. A level in the Business Model and Mapping layer.2 . this icon is assigned to a hierarchy when a cube is imported. Fully Balanced hierarchy type for a multidimensional data source in the Physical layer. A key for a logical dimension level (blue). Typically. Unbalanced hierarchy type for a multidimensional data source in the Physical layer. 22 Oracle Business Intelligence Server Administration Guide Version 10.3. You need to assign a valid type to each hierarchy after import. Network hierarchy type for a multidimensional data source in the Physical layer.1.Oracle BI Administration Tool Basics ■ Administration Tool User Interface Components Table 4. Icon or Symbol Icons and Symbols What It Represents A primary key for a physical or logical table (yellow). Ragged Balanced hierarchy type for a multidimensional data source in the Physical layer. A physical or logical complex join in the Joins Manager. A key for a multidimensional data source physical level (green).

An item that contains an attribute definition. A system session variable. A group association (appears only in the results display of the Query Repository dialog box). Overlays other icons to indicate an object that is checked out. A nonsystem session variable.1. This icon represents columns that are measures. A dynamic repository variable. A system DSN ODBC entry. A collapsed business model in the Business Model and Mapping layer that is not available for queries. if it has no physical mapping.3. a column may be invalid.Oracle BI Administration Tool Basics ■ Administration Tool User Interface Components Table 4. This icon represents columns that are not measures. Icon or Symbol Icons and Symbols What It Represents A physical cube column from a multidimensional data source. For example. this icon would appear on top of a table icon to indicate that the table has been checked out. For example. A measure definition. Appears in the Import dialog box. Overlays other symbols to indicate a new item that has not been checked in (appears in online mode only). An initialization block. An invalid item. Oracle Business Intelligence Server Administration Guide Version 10. A static repository variable. For example.2 23 . An expanded business model in the Business Model and Mapping layer that is not available for queries. A physical cube column from a multidimensional data source. this icon would appear on top of an alias table icon to indicate an alias table is new.

1. A type privilege (appears only in the results display of the Query Repository dialog box). A privilege package (appears only in the results display of the Query Repository dialog box). Icon or Symbol Icons and Symbols What It Represents A level-to-level relationship (appears only in the results display of the Query Repository dialog box). For information. Online and Offline Repository Modes You can open a repository for editing in either online or offline mode. Overlays other icons to indicate an object that has been cut. for example. You can perform different tasks based on the mode in which you opened the repository.3. An object privilege (appears only in the results display of the Query Repository dialog box). Appears with other symbols. Features and Options for Oracle’s Siebel Marketing Application Some features and options in the Oracle BI Server Administration Tool are for use by organizations that have Siebel Marketing.2 .Oracle BI Administration Tool Basics ■ Features and Options for Oracle’s Siebel Marketing Application Table 4. A query privilege (appears only in the results display of the Query Repository dialog box). to indicate that a cut item is an alias table. Online Help in the Administration Tool Most windows and dialog boxes have help buttons that open online help topics containing information to help you complete a task. This section includes the following topics: ■ ■ ■ Opening a Repository in Offline Mode on page 25 Opening a Repository in Online Mode on page 25 Checking In Changes on page 26 24 Oracle Business Intelligence Server Administration Guide Version 10. refer to the administrator documentation for the Siebel Marketing application.

Oracle Business Intelligence Server Administration Guide Version 10.Oracle BI Administration Tool Basics ■ Online and Offline Repository Modes Opening a Repository in Offline Mode Use offline mode to view and modify a repository while it is not loaded into the Oracle BI Server.1. There are certain things you can do in online mode that you cannot do in offline mode. if you open a repository in offline mode and then start the server. Also. If you attempt to open a repository in offline mode while it is loaded into the Oracle BI Server. and then click OK.3. NOTE: If the server is running and the repository you are trying to open is loaded. and then select Open. To open a repository in offline mode 1 2 3 In the Administration Tool. the repository will only open in read-only mode. the repository will be available to users. The Open Online Repository dialog box appears. from which you select a data source. Only one Administration Tool session at a time can edit a repository in offline mode. If you want to edit the repository while it is loaded. select File > Open > Online. you can perform the following tasks: ■ ■ ■ ■ ■ Manage scheduled jobs Manage user sessions Manage the query cache Manage clustered servers Stop the Oracle BI Server To open a repository in online mode 1 In the Administration Tool. select File > Open > Offline. the repository opens in read-only mode. any changes you make will become available only when the server is restarted. In online mode. Navigate to the repository you want to open. The data sources displayed in the dialog box are all the User and System DSNs on your computer that are configured using the Oracle BI ODBC driver. In the Open Offline dialog box.2 25 . The Oracle BI Server must be running to open a repository in online mode. This opens the repository for editing. you have to open it in online mode. Opening a Repository in Online Mode Use online mode to view and modify a repository while it is loaded into the Oracle BI Server. type a valid user ID and password.

navigate to and fix inconsistent objects. and then click OK. If you have made changes to a repository and then attempt to close the repository without first checking in your changes. This is because your changes will be saved automatically when the server shuts down. an informational message appears to alert you to the nature of the problem. Use the Check in Changes dialog box to perform the following tasks: ■ Make changes available immediately for use by other applications. NOTE: If you make changes to a repository open in online mode. but opening items in the tree and checking out items will be faster. Specify that repository changes should be written to disk immediately. If the Oracle BI Server is shut down abnormally.Oracle BI Administration Tool Basics ■ Checking the Consistency of a Repository or a Business Model 2 Select a data source. The repository opens that contains the business model corresponding to the data source selected.) ■ To make changes available and have them saved to disk immediately ■ In the Administration Tool. and limit the consistency check to specific objects. you will be prompted to check in changes before the delete is allowed to proceed. If you move an object from beneath its parent and then attempt to delete the parent. type a valid user ID and password. a dialog box opens automatically asking you to select an action to take. NOTE: If you expect to work extensively with the repository (for example. rather than as selected.2 . Applications that are currently querying the server will recognize the changes the next time they access any items that have changed. Checking In Changes When you are working in a repository open in online mode. (This processing takes place automatically whenever the Oracle BI Server has been shut down abnormally. The Consistency Check Manager allows you to enable and disable rules for consistency checks. If the Administration Tool detects an invalid change. Checking the Consistency of a Repository or a Business Model Repository metadata must pass a consistency check before you can make the repository available for queries. using the Check Changes dialog box will make sure that checked-in changes to the repository can be recovered.3. and then attempt to stop the Oracle BI Server. Changes that are checked in but not saved to disk will be restored through the server’s error recovery processing. select File > Check in Changes.1. Applications that query the Oracle BI Server after you have checked in the changes will recognize them immediately. 26 Oracle Business Intelligence Server Administration Guide Version 10. The initial connect time may increase slightly. you plan to check out many objects). select the Load all objects option. This loads all objects immediately. Correct the problem and perform the check-in again. this option will not be available. you will be prompted to perform a consistency check before checking in the changes you make to a repository.

in the Messages tab. not new errors.."Sheet1$"' has no keys defined.Oracle BI Administration Tool Basics ■ Checking the Consistency of a Repository or a Business Model The Consistency Check Manager does not check the validity of objects outside the metadata using the connection.3.. This typically indicates inconsistencies that had been undetected prior to the upgrade."Product Hierarchy for Material MARA"' in Cube Table '"0RT_C41". you might notice messages that you had not received in previous consistency checks."Forecast".."0RT_C41/MDF_BW_Q02"' needs to be set."MarketDim"' has defined inconsistent values in its levels' property 'Number of elements'. perform the following steps: Oracle Business Intelligence Server Administration Guide Version 10. at least one message type must be enabled. and then run the consistency checker again. the Consistency Check Manager will not report these errors. To set up the Consistency Check Manager 1 2 In the Administration Tool. ■ Warning. If the connection is not working or objects have been deleted in the database. depending upon the intent of the Oracle BI Administrator. the status bar provides a summary of all the rows displayed Setting Up Consistency Check Manager During installation. For example. On each workstation."0RT_C41/MDF_BW_Q02".1. in the Messages tab. These messages describe errors that need to be fixed. The consistency checker returns the following types of messages: ■ Error. The following is an example of an error message: [38082] Type of Hierarchy '"0RT_C41". select Tools > Show Consistency Checker. NOTE: If you disable an object and it is inconsistent. You can disable any of the consistency check rules and change the messages list so that one or more of the messages types do not appear. The following is an example of a warning message: [39024] Dimension '"Paint". all consistency check rules are enabled and all types of messages are set to display after you run a consistency check. Additionally. The message appears if a condition violates a best practice recommendation. These messages indicate conditions that may or may not be errors.2 27 . you can sort the rows of messages by clicking the column headings.. you will receive a message asking if you want to make it unavailable for queries. By default. The following is an example of a best practice message: [89001] The Physical Table '"XLS_Forecast". a default subset of rules is installed. Use the information in the message to correct the inconsistency. such as eliminating a circular join condition. ■ Best practices.. It only checks the consistency of the metadata and not any mapping to the physical objects outside the metadata. However. users can use the default subset of rules or change the subset by adding or deleting rules. In the Consistency Check Manager. These messages provide information about conditions but do not indicate an inconsistency. a warning message about a disabled join may be the result of the Oracle BI Administrator intentionally disabling a join. In the Consistency Check Manager. NOTE: After upgrading from a previous software version and checking the consistency of your repository.

select the rule and click Disable. select the Show Qualified Name check box. To enable a disabled rule. 2 3 In Consistency Check Manager. correct the inconsistency. In the properties dialog box for the object. those rules will not be checked. To disable an enabled rule.2 . in the Options tab.Oracle BI Administration Tool Basics ■ Checking the Consistency of a Repository or a Business Model a b 3 4 5 6 7 Clear the check box for any message types that you do not want to display. you disable the rules for objects that you want to exclude.1. click Copy. If you checked consistency in the current session. If you want the message to show the fully qualified name of each object. select Show Consistency Checker. To limit the objects that are checked. ■ ■ You can check the consistency of a business model from the right click menu of a business model. Click the Options tab. and then click OK. You will receive a message asking if you want to make it unavailable for queries. To check the consistency of a repository 1 In the Administration Tool. click the Options tab and verify the rules are set appropriately. you might notice different messages. in Consistency Check Manager. You can check the consistency of some or all of the objects in the repository from the Consistency Check Manager. the messages from the last check appear in the Messages tab. If you disabled any rules in Consistency Check Manager. 4 To edit the repository to correct inconsistencies. Checking the Consistency of a Repository Currently you can check consistency in the following ways: ■ You can check global consistency of the repository from the File menu and from the Consistency Check Manager (Check All Objects). Click the Messages tab and click Check All Objects.3. To copy the messages so that you can paste them in another file such as a spreadsheet. If you already have checked consistency in the current session and then change the rules. select the rule and click Enable. NOTE: If you disable an object and it is inconsistent. 28 Oracle Business Intelligence Server Administration Guide Version 10. perform the following steps: a b 5 Double-click any cell in a row and the properties dialog box for that object opens. If you do not want to check for consistency at this time. Expand each message type. from the Tools menu. click Close.

Oracle Business Intelligence Server Administration Guide Version 10. To check consistency of the object again. This section includes the following topics: ■ ■ ■ ■ ■ ■ Using the Options Dialog Box—General Tab on page 29 Using the Options Dialog Box—Repository Tab on page 31 Using the Options Dialog Box—Sort Objects Tab on page 32 Using the Options Dialog Box—Cache Manager Tab on page 32 Using the Options Dialog Box—Multiuser Tab on page 33 Using the Options Dialog Box—More Tab on page 33 Using the Options Dialog Box—General Tab Use the General tab of the Options dialog box to set general preferences for the Administration Tool. To set general preferences 1 In the Administration Tool. select Tools > Options. click Copy. all objects in the repository will be checked. the refresh button in the top right corner of the Consistency Check Manager dialog box checks all objects. correct the inconsistency. To check the consistency of a single object in a repository 1 In the Administration Tool. click Check All Objects. perform the following steps: a b 3 4 Double-click any cell in a row and the properties dialog box for that object opens. right-click an object. 2 To edit the repository to correct inconsistencies. and then select Check Consistency.Oracle BI Administration Tool Basics ■ Setting Preferences 6 To check consistency again. and then click OK. NOTE: If you click Check All Objects. If the object is not consistent. click the refresh button at the top right corner of the dialog box.3. a list of messages appears. click Close.2 29 . 7 When finished.1. In the properties dialog box for the object. To copy the messages so that you can paste them in another file such as a spreadsheet. Setting Preferences You can use the Options dialog box to set preferences for the Administration Tool. When you select Show Consistency Checker from the Tools menu or Check Global Consistency from the File menu.

select the General tab. Makes it easier to identify table sources. You start the Calculation Wizard in the Business Model and Mapping layer by right-clicking any logical fact or dimension column of data type numeric. Display qualified names in diagrams Display original names for alias in diagrams Show Calculation Wizard introduction page 30 Oracle Business Intelligence Server Administration Guide Version 10.2 . and then selecting the option Calculation Wizard. NOTE: If the option is not selected. For more information. Check out objects automatically (online mode only) Automatically checks out the object when you double-click it. refer to topics about time dimensions in “Process of Creating and Administering Dimensions” on page 126.Oracle BI Administration Tool Basics ■ Setting Preferences 2 3 In the Options dialog box. the Cascade and Tile options are not available in the Windows menu of the Administration Tool. Select the options you want.3. NOTE: Time Series calculation is not allowed for a logical table not identified as a time dimension. The following list contains the options that need additional explanation: Option Tile when resizing Action When Selected Automatically tiles the layer panes of the repository when you resize the Administration Tool. When this option is checked. Use the Calculation Wizard to create new calculation columns that compare two existing columns and to create metrics in bulk (aggregated).1. including existing error trapping for NULL and divide by zero logic. you will be prompted to check out the object before you can edit it. Displays the Calculation Wizard introduction page. The introduction page also contains an option to suppress its display in the future. Makes it easier to identify the actual table referenced.

When checked. XML Server.2 31 . see “About Extracting Metadata Subsets Into Projects” on page 167. the Import from repository option on the File menu becomes available. the Import from repository option on the File menu is disabled and this option will not be supported in the future. To update the counts.3. For more information. Row counts are not available for XML. Executes a utility to clean the repository of unused physical objects. NOTE: By default. You cannot update row counts on any new objects until you check them in. Note: Row counts are not shown for items that are stored procedure calls (from the optional Object Type drop-down list in the General tab of the Physical Table dialog). You can also right-click on a table or column in the Physical Layer and select the option Update Row Count. refer to “Setting Up Display Folders in the Physical Layer” on page 98 and “Setting Up Display Folders in the Business Model and Mapping Layer” on page 136. and then use repository merge to bring the projects into your current repository. Oracle BI Administrators can create display folders to organize objects in the Physical and Business Model and Mapping layers. or multidimensional databases. specify an existing. After you create a display folder. It might make the resulting repository smaller. Using the Options Dialog Box—Repository Tab You can set the following values in the Repository tab: ■ Show tables and dimensions only under display folders. select Tools > Update All Row Counts. the selected objects appear in the folder as a shortcut and in the database or business model tree as an object. It is recommended that you create projects in the repository that contain the objects that you wish to import. You can hide the objects so that only the shortcuts appear in the display folder. They have no metadata meaning. Oracle Business Intelligence Server Administration Guide Version 10. or create a new logical table source for a moved column. Prompt when moving logical columns Remove unused physical tables after Merge Allow import from repository Allows you to ignore.Oracle BI Administration Tool Basics ■ Setting Preferences Option Show row count in physical view Action When Selected Displays row counts for physical tables and columns in the Physical Layer. For more information about creating display folders. Row counts will not initially display until they are updated.1.

1. 32 Oracle Business Intelligence Server Administration Guide Version 10. select the options you wish to choose. To set options in the Repository tab 1 2 3 From the menu bar. Using the Options Dialog Box—Sort Objects Tab Use the Sort Objects tab to specify which repository objects appear in the Administration Tool in alphabetical order. Using the Options Dialog Box—Cache Manager Tab Use the Cache Manager tab to choose the columns that should be shown in the Cache Manager and the order in which they will be displayed on the Cache tab of the Cache Manager. In the Options dialog box. and then use the Up and Down buttons to change its position. select the Database check box. In the Options dialog box. In the Repository tab.Oracle BI Administration Tool Basics ■ Setting Preferences ■ Hide level-based measure. if you want the database objects that appear in the Physical layer to appear in alphabetical order. level-based measures (columns for which the aggregation rule is other than NONE) will not appear in the Business Model and Mapping layer under the level. click the Repository tab. Clicking on an already checked box removes the check mark. Check the boxes for the columns you want display in the Cache Manager. select Tools > Options. To specify which repository objects appear in alphabetical order 1 2 3 In the Administration Tool. To select columns to display in the Cache Manager 1 2 3 In the Administration Tool. When selected. Check the boxes for the objects you want to appear in alphabetical order. In the Options dialog box. select the Sort Objects tab. 4 To change the order of columns in the Cache Manager. and then click OK.3. select Tools > Options. choose Tools > Options. For example. select the Cache Manager tab.2 . Unchecked items will not appear in the display. select an item.

select Tools > Options. Setting Permissions for Repository Objects You can assign user and group permissions to connection pools in the Physical layer and to Presentation layer objects. Position the cursor on the Scrolling Speed slider to set the speed. For each user and group. select the check box named Show all users/groups. you can allow or disallow access privileges for an object by clicking in the check box to toggle among the following options: ■ ■ ■ A check mark indicates that a permission is granted. you can choose a percentage or Best Fit. refer to “Setting Up a Pointer to the Multiuser Development Directory” on page 172. An empty check box indicates that a permission has not been modified.1. you use Security Manager to set up privileges and permissions. the zoom level changes automatically to Zoom to Fit. For more information. Oracle Business Intelligence Server Administration Guide Version 10.3. The Permissions dialog box displays all currently defined users and groups. the following rules apply: ■ ■ If there are five or fewer objects. If you use the Best Fit option. If there are more than five objects.Oracle BI Administration Tool Basics ■ Setting Permissions for Repository Objects Using the Options Dialog Box—Multiuser Tab Use the Multiuser tab to specify the path to the multiuser development directory. For more information about managing security. select the More tab. You can access the Permissions dialog box from the following dialog boxes: ■ ■ Connection Pool—General tab Presentation Catalog Folder—General tab NOTE: The term Presentation Catalog in the Administration Tool refers to subject areas. The default window size is Best Fit. and to set the default window size for the join diagrams. Additionally. In the Options dialog box. the zoom level will be 50%. refer to “Oracle BI Security Manager” on page 315. An X indicates that a permission is denied. to see all users and groups.2 33 . To set the scrolling speed and default window size 1 2 3 4 In the Administration Tool. In the Default diagram zoom drop-down list. Using the Options Dialog Box—More Tab Use the More tab to set the speed when scrolling through the trees in various Administration Tool dialog boxes.

The second column (sort on this column) contains the name of the User/Group object. The list is sorted by type in ascending order and then within type. select the appropriate options for each user and group that you want to modify. 34 Oracle Business Intelligence Server Administration Guide Version 10. and double-click a connection pool. The first column (sort on this column) has no heading and contains an icon that represents the type of user or group of users. Groups. The following list shows the sort results available by clicking the type column: ■ ■ ■ Everyone. In the Permissions dialog box. Click OK. expand a physical database. In the Permissions dialog box. and the third column (cannot sort on this column) contains the Read check box. by User/Group names in ascending order. 2 If the User/Group name column is in descending order within each type. To change the sort. This results in a total of six possible sort results (3 x 2 = 6). Users (ascending by name of type) Users. There are three ways to sort by type and two ways to sort the list of user and group names. The type column is in ascending order. Groups.1.Oracle BI Administration Tool Basics ■ Setting Permissions for Repository Objects ■ ■ Presentation Table—General tab Presentation Column—General tab To add or edit permissions from a connection pool 1 2 3 4 Open a repository in the Administration Tool. click the heading of the first or second column. use the following steps in the sequence shown: 1 Click the blank heading above the type column until the Everyone type appears at the top. within type. click Permissions. sort the User/ Group names in ascending order.2 . In the Connection Pool dialog box. Everyone (descending by name of type) Type column is in no particular order (Type value is ignored as all names in User/Group column are sorted in ascending order by value in User/Group column) The following list shows the sort results available by clicking the User/Group column: ■ ■ Ascending within the type Descending within the type Examples of Sorting Columns in the Permissions Dialog Box If you want to sort all rows first by type in ascending order and then. click the User/Group heading once. there are three columns. Sorting Columns in the Permissions Dialog box There are six ways that you can sort the types and User/Group names.3.

Deleting. and Reordering Objects in the Repository 3 4 5 To change the sort by type to descending order. double-click the object and complete the fields in the dialog box that appears. These instructions will not be repeated for each object in the chapters discussing the layers of the repository unless the material is needed to perform a task. click the User/Group heading. To reorder objects. drag and drop an object to a new location. the Administration Tool retrieves the number of rows from the physical database for all or selected tables and columns (distinct values are retrieved for columns) and stores those values in the repository. you sometimes might want to update only selected table and column counts.1. In some dialog boxes. To continue ignoring the type column and change the sort for the names in the User/Group column to be in descending order. If you click Cancel. deleting. For information about member counts. click the type heading once more. refer to “Updating Member Counts” on page 94.Oracle BI Administration Tool Basics ■ Editing. Row counts include all tables and columns for which values were retrieved prior to the cancel operation. Therefore.3. you can click Edit to open the appropriate dialog box. Row counts are not available for the following: ■ ■ ■ Stored Procedure object types XML data sources and XML Server databases Multidimensional data sources. Updating all row counts for a large repository might take a long time to complete. the Updating Row Counts window appears while row counts are retrieved and stored. To change the sort to ignore the type column and sort only on the names in the User/Group column in ascending order. The time this process takes depends upon the number of row counts retrieved. In some dialog boxes. leaving the User/Group names in ascending order. ■ ■ ■ To edit objects. When updating all row counts. and Reordering Objects in the Repository This section contains the standard steps for editing. Editing.2 35 . Deleting. you can use an up or down arrow to move objects to a new location. click the type (blank) heading once. NOTE: Reordering is only possible for certain objects and in certain dialog boxes. the retrieve process stops after the in-process table (and its columns) have been retrieved. Displaying and Updating Row Counts for Tables and Columns When you request row counts. select the object and click Delete. and reordering objects. Oracle Business Intelligence Server Administration Guide Version 10. To delete objects.

In the General tab of the Options dialog box.Oracle BI Administration Tool Basics ■ Populating Logical Level Counts Automatically ■ ■ Data sources that do not support the CountDistinct function. the Administration Tool will attempt to check out all objects in the business model. Must be available for query.1. In offline mode. in the Business Model and Mapping layer. the Check Out Objects window may open. and then click OK. If the repository is open in online mode. Level counts are utilized by the query engine to determine the most optimal query plan and optimizes overall system performance. select the option Show row count in physical view. You can select multiple objects and then right-click. 2 Click Yes to check out the objects. after importing or manually creating a physical table or column. Update Row Count will not work with connection pools in which the session variables :USER and :PASSWORD are set as the user name and password. and then execute the Estimate Levels command: ■ Business model. Update Row Count will not be available in the menu until you check in these objects. Therefore. right-click a single table or column. To update all row counts in the Physical layer 1 Select Tools > Update All Row Counts. Microsoft Excel In Online mode. 36 Oracle Business Intelligence Server Administration Guide Version 10. If you select this object. To display row counts in the Physical layer 1 2 Select Tools > Options. Oracle BI Server does not recognize the new objects until you check them in. ■ In online mode. To update selected row counts in the Physical layer 1 2 In the Physical layer. Populating Logical Level Counts Automatically Estimate Levels allows the Oracle BI Administrator to automatically populate level counts for one or more dimension hierarchies. such as Microsoft Access. The repository needs to be opened in online mode and the business model must be available for query.3.2 . In the shortcut menu. the Oracle BI Administrator can select any of the following logical layer elements. Then. Any row counts that have changed since the last update will be refreshed. select Update Rowcount. the Set values for variables dialog box appears so that you can populate the session variables :USER and :PASSWORD.

3. click Yes to check out the objects that appear in the list.2 37 .1. If the parent level count is greater that the child level count. a list of the dimension level counts and any errors or warning messages appear. You use it to navigate to and select an object. The queries and errors are logged to NQQuery. In the Check Out Objects dialog box. ■ The left pane of the Browse dialog box contains the following parts: ■ ■ A tree listing all of the objects in the Presentation Layer. ■ The right pane of the Browse dialog box contains the following parts: Oracle Business Intelligence Server Administration Guide Version 10.log on the Oracle BI Server. an error is returned. open a repository in online mode. When run. To populate logical level counts automatically 1 2 3 In the Administration Tool. Checks the parent-child relationship. For more information. The Oracle BI Administrator should run a consistency check on dimensions to make sure that the dimension is logically sound. Right-click one or more business models and dimension objects. Generates a run report that lists all the counts that were estimated and any errors or consistency warnings. NOTE: Set the log level at 4 or higher to write this info to the log file. A combination of business models and dimensions.Oracle BI Administration Tool Basics ■ Using the Browse Dialog Box ■ ■ Dimension. the action terminates because you must check out items to run Estimate Levels. In the Oracle BI Administration Tool dialog box. Only the tabs for the layers that contain objects that can be manipulated in the dialog box from which you entered the Browse dialog box will appear. see the topic about setting the logging level in “Administering the Query Log” on page 214. The Browse dialog box is accessible from a number of dialog boxes that allow you to make a selection from among existing objects. NOTE: If you click No. Using the Browse Dialog Box The Browse dialog box appears in many situations in the Administration. The Oracle BI Administrator can select multiple dimensions and multiple business models individually. the Estimate Levels command also launches a consistency check on the level counts as described in the following list: ■ ■ ■ ■ Checks that a level key is valid. Business Model and Mapping Layer and the Physical Layer of a repository. and choose Estimate Levels. you can check the global consistency of your repository. Tabs at the bottom of the left pane allow you to select a layer. When you check in the objects. Columns in levels have referential integrity.

and then type Q* in the Name field. View allows you to view properties of a selected object in read-only mode. type *dim in the name field. Refer to the following examples: ■ ■ To search for logical tables that have names beginning with the letter Q. The Name field accepts an asterisk (*) as the wild card character.3. The Browse dialog box closes. and the object appears in the previous dialog box. and then click Select. Type the name of the object or a part of the name and the wild card character (*) in the Name field. 38 Oracle Business Intelligence Server Administration Guide Version 10. 3 Click the Query button. To query for an object in the Browse dialog box 1 2 Select the object type from the Type drop-down list.1. To select an object in the Browse dialog box ■ Select the object you want to select. To search for logical tables that have names ending with the letters dim. Relevant objects appear in the query results list. To synchronize an object in the query results list with the tree control list 1 2 Select an object in the Query list. The Show Qualified Names check box allows you to identify to which parents an object belongs.2 . Click the Synchronize Contents icon. so you can query for partial matches.Oracle BI Administration Tool Basics ■ Using the Browse Dialog Box ■ ■ ■ Query allows you to query objects in the repository by name and type. select Logical Tables from the Type drop-down list.

2 39 . “Creating and Administering the Physical Layer in an Oracle BI Repository” Chapter 5. The following are the topics that you will use to plan and set up an Oracle BI repository: ■ ■ ■ ■ ■ ■ Process of Oracle BI Repository Planning and Design on page 39 Creating a New Oracle BI Repository File on page 54 Chapter 4. “Creating and Maintaining the Presentation Layer in an Oracle BI Repository” Chapter 7. Oracle Business Intelligence Server Administration Guide Version 10. “Completing Setup and Managing Oracle BI Repository Files” Process of Oracle BI Repository Planning and Design This section contains the following topics: ■ ■ ■ ■ About Repository Planning and Design on page 39 Planning Your Business Model on page 40 Identifying the Database Content For The Business Model on page 45 Guidelines For Designing a Repository on page 50 About Repository Planning and Design This topic is part of the “Process of Oracle BI Repository Planning and Design” on page 39.1.3. “Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository” Chapter 6.3 ■ ■ ■ Planning and Creating an Oracle BI Repository This chapter contains the following topics: Roadmap for Planning and Setting Up an Oracle BI Repository on page 39 Process of Oracle BI Repository Planning and Design on page 39 Creating a New Oracle BI Repository File on page 54 Roadmap for Planning and Setting Up an Oracle BI Repository The roadmap topics are discussed in several chapters in this book.

CAUTION: Before you create the physical layer of your repository.3. Repository Presentation layer. and your users so that you can set up the physical layer correctly. After you set up the Physical layer. This model must be one that business analysts will inherently understand and that will answer meaningful questions correctly. ■ Repository Business Model and Mapping layer. It is recommended that you use the information in this chapter when designing and customizing your Oracle BI repository. After you set up the Business Model and Mapping layer.1. After you have followed the planning guidelines in this section. This is a sensitive task and should be done very carefully. you can create the Business Model and Mapping layer by dragging and dropping the Physical layer onto the Business Model and Mapping layer. and Presentation layers. ■ Customization involves modifying the Physical. In a decision support environment. An Oracle BI repository has the following layers: ■ Repository Physical layer. the objective of data modeling is to design a model that presents business information in a manner that parallels business analysts’ understanding of the business structure.Planning and Creating an Oracle BI Repository ■ Process of Oracle BI Repository Planning and Design Before you create a repository or modify the repository that was shipped with Oracle Business Intelligence. You have to understand what business model you want to build before you can determine what the physical layer needs to have in it. A successful model allows the query process to become a natural process by allowing analysts to structure queries in the same intuitive fashion as they would ask business questions. 40 Oracle Business Intelligence Server Administration Guide Version 10. This section contains the following topics: ■ ■ Analyzing Your Business Model on page 40 Identifying the Content of The Business Model on page 41 Analyzing Your Business Model Your first task is to thoroughly understand your business model. you can begin to create your repository. Business Model and Mapping. you must thoroughly analyze and understand your business requirements. For more information. You create this layer (schema) first from the tables in your physical databases. This layer provides the objects that the end user will access through an application such as Oracle’s Siebel Marketing. you need to plan your business model and develop a design for the repository. business data model. Planning your business model is the first step in developing a usable data model for decision support.2 . This preserves the mapping that you established in the Physical layer. refer to “Planning Your Business Model” on page 40. Planning Your Business Model This topic is part of the “Process of Oracle BI Repository Planning and Design” on page 39. you can create the Presentation layer by dragging and dropping the Business Model and Mapping layer onto the Presentation layer.

After you analyze your business model. All dimensional models build on a star schema. they model some measurable facts that are viewed in terms of various dimensional attributes. The Oracle BI Server recognizes that when a table in the Business Model and Mapping layer of a repository has only many-to-one (N:1) logical joins pointing to it. Identifying the Content of The Business Model To create a business model. This section discusses some of the components and variants of representative dimensional models. and they can be specified in terms of dimensions.1. you might want to determine the sum of dollars for a given product in a given market over a given time period. A business might want to compare values of a measure and need a calculation to express the comparison. For example. you can identify and define the elements of your business model. MIN. Businesses are analyzed by relevant dimensional criteria.Planning and Creating an Oracle BI Repository ■ Process of Oracle BI Repository Planning and Design This requires breaking down your business into several components to answer the following questions: ■ ■ ■ ■ What kinds of business questions are analysts trying to answer? What are the measures required to understand business performance? What are all the dimensions under which the business operates? Are there hierarchical elements in each dimension and what are the parent-child relationships that define each hierarchy? After you have answered these questions. you need to identify the specific logical tables and hierarchies that you need to include in your business model. This section will help you identify the components of your business. That is.3. The following sections are discussed in this section: ■ ■ ■ ■ ■ Identifying Fact Tables on page 41 Identifying Dimension Tables on page 43 Identifying Bridge Tables on page 43 Identifying Dimension Hierarchies on page 43 About Star and Snowflake Models on page 44 Identifying Fact Tables A fact table is a table with measures. Measures must be defined in a logical fact table. and the business model is developed from these relevant dimensions. it is typically a fact table.2 41 . Each measure has its own aggregation rule such as SUM. Oracle Business Intelligence Server Administration Guide Version 10. For more information about these objects. Measures. are typically calculated data such as dollar value or quantity sold. The Oracle BI Server can use dimensional models for this purpose. aggregation rules can be specific to particular dimensions. Also. The Oracle BI Server allows you to define complex. These dimensional models form the basis of the valid business models to use with the Oracle BI Server. or MAX. dimension-specific aggregation rules. the data needs to be mapped logically to a business model. AVG. or facts. refer to Identifying the Content of The Business Model on page 41.

respectively. 42 Oracle Business Intelligence Server Administration Guide Version 10. and select Business Model Diagram > Whole Diagram. One store will have many sales transactions and another store might have no transactions (closed for refurbishment) resulting in 1:n and 1:0 relationships.2 . For more information. Diagram of Fact Table Joins NOTE: A bridge table is an exception to this joins rule. In the diagram. Figure 2 on page 42 illustrates the many-to-one joins to a fact table in a Business Model Diagram. Figure 2. NOTE: The fact table is at the end of a 0. refer to “Identifying Bridge Tables” on page 43. all joins have the crow's feet symbol (indicating the many side) pointing into the FactPipeline table and no joins pointing out of it. one-to-many relationship) join. you might have two tables. right-click a fact table. open a repository in the Administration Tool. 1:N (zero. Some transactions do not happen in the stores but at a conference.Planning and Creating an Oracle BI Repository ■ Process of Oracle BI Repository Planning and Design For example.3. resulting in a 0:n (zero to many) relationship. Sales Transactions is a fact table while Stores is a Dimension table. For an example of this in a business model.1.

Region. The primary key is the combination of employee and job. For example. Mike and Gavin can be both first-aid responders and floor leaders. Account. roll up from child to parent. Area. For example. The terminology they use and understand is important to capture. product. for example. Identifying Dimension Hierarchies Understanding the hierarchies you need in your business is essential to provide the metadata that allows the Oracle BI Server to determine if a particular request can be answered by an aggregate that is already computed. Therefore. However. allowing the many to many relationship between Employees and Jobs to be resolved. Identifying Bridge Tables When you need to model many-to-many relationships between dimension tables and fact tables. and so on. This assignments table records employee and job combination. Employee to Assignment is a 1:n relationship and Job to Assignment is also a 1:n relationship. These hierarchy attributes. Every dimension has a set of descriptive attributes. one job might be occupied by more than one employee such as there are 10 floor leaders in the organization. you can create a bridge table that resides between the fact and the dimension tables. Priority. Dimension tables also contain primary keys that identify each member.Planning and Creating an Oracle BI Repository ■ Process of Oracle BI Repository Planning and Design Identifying Dimension Tables A business uses facts to measure performance by well-established dimensions. you create a bridge (intermediate) table called Assignment. and market. for example. For example. There is a many-to-many relationship between Employees and Jobs. Attributes stored in this dimension might include Service Request Owner. and results in a unique record called an assignment. The Assignment table acts as a bridging table between the Job and Employee tables. Country and so on. Additionally. In the Administration Tool. A hierarchy is a set of parent-child relationships between certain attributes within a dimension. As a result.1. A bridge table allows you to resolve many-to-many data relationships. An employee within an organization can have many jobs such as clerk. General tab in the Logical Table dialog box contains a check box that you can select to specify that a table is a bridge table. months can roll up into a year. The best method to identify dimensions and their attributes is to talk with the analysts in the organization who will use the data. if month rolls up into year and an aggregate table exists at the month level. For example. Customer Name. that table can be used to answer questions at the year level by adding up all of the month-level data for a year. such as being able to categorize Service Requests. Address. by time. Dimension tables contain attributes that describe business entities.2 43 . a single table contains all the employees and another single table contains all the jobs within the organization. To record and resolve this many to many relationship. first-aid responder. Dimension table attributes provide context to numeric data. called levels. one employee may have many assignments and one job may also have many assignments. These rollups occur over the hierarchy elements and span natural business relationships. and floor leader. Oracle Business Intelligence Server Administration Guide Version 10. A bridge table stores multiple records corresponding to that dimension. you might have an Employees table and a Jobs table.3.

this may not hold true for calendar weeks. promotion conditions.3. For example. it is implied that each week has exactly one year associated with it. markets. For more information. For example. month. and another where they do not. where the same week could span two years. but some are not and are only known by the end users who interact with particular aspects of the business. quarter. manufacturing plants. A dimensional hierarchy expresses the one-to-many relationships between attributes. as when the combination of month and year roll up into exactly one quarter. week. in Figure 4 on page 45 and Figure 5 on page 45. Within a given dimension. Snowflake schemas have those same types of relationships. Exactly what attributes a dimension contains depends on the way the business is analyzed. As with business questions. You should identify as many natural hierarchies as possible. into weeks. Periods. Sample Hierarchy With this sample time dimension. consider the hierarchies it implies. transportation methods. it implies a one-tomany relationship. Some hierarchies might require multiple elements to roll up. the time period dimension can contain the attributes day. there may be many attributes. products. raw materials. in a model where weeks roll up into a year.1. These hierarchy definitions have to be specific to the business model. media types. For example. as shown in Figure 3 on page 44. Star schemas have one-to-many relationships between the logical dimension tables and the logical fact table. Months may roll up into quarters. suppliers. The Oracle BI Server allows you to define the hierarchy definitions for your particular business. 44 Oracle Business Intelligence Server Administration Guide Version 10.2 . Common dimensions are time periods. About Star and Snowflake Models Star and snowflake models follow the dimensional rules of one-to-many relationships. and quarters into years. Given a sample time dimension. Account Hierarchy. customers. assuring that analyses will conform to your business definitions. You should verify that you understand the hierarchies so you can define them properly using the Administration Tool. some hierarchies are obvious. Figure 3. and time of day. Sales Facts and Facts are fact tables and Markets. but also include one-to-many relationships between elements in the dimensions. days may aggregate. however complex. or roll up. One model may be set up where weeks roll up into a year. Account Region Hierarchy and Account are dimension tables. see “Identifying Bridge Tables” on page 43. When one attribute rolls up to another. Products. and year. Any logical table that is not a fact table or a bridge table is a dimension table.Planning and Creating an Oracle BI Repository ■ Process of Oracle BI Repository Planning and Design Dimensions are categories of attributes by which the business is defined.

Figure 5 on page 45 illustrates a logical snowflake schema. For more information about snowflake schemas. Figure 5. Within a logical table source. refer to “About Types of Physical Schemas” on page 46.Planning and Creating an Oracle BI Repository ■ Process of Oracle BI Repository Planning and Design Figure 4 on page 45 illustrates a star schema: Figure 4. Diagram of a Snowflake Schema Identifying the Database Content For The Business Model This topic is part of the “Process of Oracle BI Repository Planning and Design” on page 39. the joins are only performed when required. When between logical tables.3. Diagram of a Star Schema NOTE: It is recommended that you minimize the use of snowflake schemas.2 45 . the joins are always executed. Oracle Business Intelligence Server Administration Guide Version 10. the server treats outer joins that are within a logical table source differently from other outer joins.1. In a snowflake schema.

they can generate query plans that result in poor performance. Sometimes you can control the physical design of the underlying databases. fully normalized relational schema used in many online transaction processing (OLTP) systems. joins are usually predetermined and can be optimized. or a shipment record. This section discusses the following topics: ■ ■ ■ About Types of Physical Schemas on page 46 About Primary Key-Foreign Key Relationships on page 48 Identifying the Database Table Structure To Import on page 49 About Types of Physical Schemas There are two types of physical schemas (models): entity-relationship (E-R) schemas and dimensional schemas. in database terminology) with the primary goal of reducing data redundancy and bringing about fast update performance.1. there is often an unacceptably high response time in returning results to the user. When E-R databases are queried.2 . you need to understand the structure and content of your physical databases. E-R schemas are designed to minimize data storage redundancy and optimize data updates. E-R schemas have many tables.Planning and Creating an Oracle BI Repository ■ Process of Oracle BI Repository Planning and Design The Oracle BI Server provides an interface that allows you to map the Oracle BI repository to your underlying physical databases. A Database Analyst (DBA) who is very familiar with the data might be able to write a SQL query against an E-R schema that can theoretically answer a business question. an order. but such detailed knowledge of the data is generally beyond the scope of the end-user business analyst. E-R databases are usually queried by applications that know exactly where to go and what to ask. Typically. E-R schemas generally do not work well for queries that perform historical analysis due to two major problems: poor performance and difficulty in posing the question in SQL.3. such as a customer record. ■ Performance problems persist with historical E-R queries because the queries require the database to put the data back together again. E-R schemas are very efficient for OLTP databases. The entity-relationship (E-R) schema is the classic. not necessarily business relationships. Even when the SQL is crafted properly. complex process. The relationships between tables signify relationships between data. sometimes hundreds or even thousands. ■ Entity-Relationship (E-R) Schemas. sometimes the database already exists and you need to work with what is there. There are many tables because the data has been carefully taken apart (normalized. this is a slow. ■ 46 Oracle Business Intelligence Server Administration Guide Version 10. These applications typically query small units of information at a time. Furthermore. Dimensional schemas are designed to enhance understandability and to optimize query performance. In either case. because the cost-based optimizers in database management systems are not designed for the level of complexity in such a query. However.

The fact table also contains all the measures. ❏ Oracle Business Intelligence Server Administration Guide Version 10. resulting in a multiple-star schema. but they work well for queries that analyze the business across multiple dimensions. Dimensional schemas contain dimension tables and fact tables. used to measure business performance. A dimensional schema is a denormalized schema that follows the business model. The following are two types of dimensional schemas: ■ Star schema.1. read “Identifying Fact Tables” on page 41.3. often made up of the foreign key references to the dimension tables. and Color in the sample Products dimension. The lowest level of detail stored is the granularity of the fact table. A star schema is a dimensional schema with a single fact table that has foreign key relationships with several dimension tables. For a discussion of aggregate fact tables. Size. Dimension tables contain attributes of the business. Dimension tables also have a key column (or columns) that uniquely identifies each row in the table. ❏ The dimension tables mirror the business model and contain columns with descriptive attributes. The fact table has a multipart primary key. and fact tables contain individual records with a few facts and foreign keys to each of the dimension tables. or facts. Dimensional schemas are used for business analysis and have two major advantages over E-R schemas for decision support: ■ ■ Better query performance Easier to understand Dimensional schemas are not nearly as efficient as E-R schemas for updating discrete records.Planning and Creating an Oracle BI Repository ■ Process of Oracle BI Repository Planning and Design ■ Dimensional Schemas.2 47 . Information at higher levels of aggregation is either calculated from the detail level records or precomputed and stored in separate aggregate fact tables. such as Product.

A snowflake schema is a dimensional schema where one or more of the dimensions are normalized to some extent. In this case. For example. 48 Oracle Business Intelligence Server Administration Guide Version 10. it is important to become familiar with the concepts behind primary key-foreign key relationships.3. Diagram of a Snowflake Schema One dimension hierarchy should be created for the Products branch. The following is a list of the minimal levels that should be created for this hierarchy: ❏ ❏ ❏ Grand Total Level Detail Level of the dimension that is not joined to the fact table. The primary key is defined as a column (or set of columns) where each value is unique and identifies a single row of the table. Figure 6 on page 48 contains a snowflake schema showing that Product Line > Products is a branch of the snowflake. NOTE: It is recommended that you minimize the use of snowflake schemas. A foreign key is a column or a set of columns in one table that references the primary key columns in another table. Hierarchy for the Products Branch in the Business Model and Mapping Layer About Primary Key-Foreign Key Relationships To fully understand the structure and content of your physical databases. multiple logical tables are considered a single logical table. In a snowflake schema.2 .Planning and Creating an Oracle BI Repository ■ Process of Oracle BI Repository Planning and Design ■ Snowflake schema. Figure 6. Figure 7. A primary key-foreign key relationship defines a one-to-many relationship between two tables in a relational database.1. it is ProductLine. Figure 7 on page 48 shows the hierarchy that should be created. Detail Level of the dimension that is joined to the fact table. The difference between the type of normalization in a snowflake schema and in an E-R schema is that the snowflake normalization is based on business hierarchy attributes. The tables snowflaked off the dimensions have parent-child relationships with each other that mimic the dimensional hierarchies.

Planning and Creating an Oracle BI Repository ■ Process of Oracle BI Repository Planning and Design Consider Figure 8 on page 49. the information is compiled by joining the sales. and the Date dimension table contains one row for every date the database will potentially cover.1. refer to “Setting Up Fragmentation Content in an Oracle BI Repository for Aggregate Navigation” on page 201. the day of the week.3. product. The Sales fact table contains one row for every sales transaction. The following detail is required by the Oracle BI Server: ■ ■ The columns by which the table is grouped (the aggregation level) The type of aggregation (SUM. you can join the Sales and Date tables to combine the other attributes of the Date table with the records in the Sales table. AVG. Column 2 of the Sales fact table is a foreign key referencing the Date dimension table Indicates many-to-one relationship between Sales and Date Column 1 is the primary key of the Date dimension table Figure 8. Identifying the Database Table Structure To Import The Administration Tool provides an interface to map logical tables to the underlying physical tables in the database. Primary Key-Foreign Key Sample Because of this primary key-foreign key relationship. and store tables through the primary key-foreign key relationships between the Sales table and the various dimension tables. and the store in which the product was sold. ■ Identify the contents of each column Oracle Business Intelligence Server Administration Guide Version 10. Before you can map the tables. if an analyst asks for the total sales. date.2 49 . you need to identify the following contents of the physical database: ■ ■ ■ Identify the contents of each table Identify the detail level for each table Identify the table definition for each aggregate table. where the upper table is a fact table named Sales and the lower table is a dimension table named Date. To do this correctly. the product name. MAX. This allows you to set up aggregate navigation. you need to identify the contents of the physical database as it relates to your business model. MIN. For example. or COUNT) For information on how to set up aggregate navigation in a repository.

To access a help topic. save backups of the online repository before and after every completed unit of work. After analyzing your business model needs and identifying the database content your business needs. or the application developers of applications that create the data. you might also need to ask people in the organization who are users of the data. For more information about these final steps. These layers are not visible to the end user. you can complete your repository design. Each layer appears in a separate pane in the Administration Tool user interface and has a tree structure (similar to the Windows Explorer). owners of the data. use Copy As on the File menu to make an offline copy containing the changes. Typically. This would occur during the final steps in completing the setup of your repository. To fully understand all the data elements. If you work in Online mode. 50 Oracle Business Intelligence Server Administration Guide Version 10. Guidelines For Designing a Repository This topic is part of the “Process of Oracle BI Repository Planning and Design” on page 39.2 . or you might need to spend some time with the DBA for each database to get this information. The following topics are discussed in this section: ■ ■ ■ ■ General Tips For Working on the Repository on page 50 Design Tips For the Physical Layer (Schema) on page 51 Design Tips for the Business Model and Mapping Layer on page 52 Design Tips For the Presentation Layer on page 53 General Tips For Working on the Repository The Oracle BI Server stores metadata in repositories. In some environments. The Oracle BI Administrator uses the graphical user interface (GUI) of the Administration Tool software to create and maintain repositories. Most windows and dialog boxes have online help containing information to help you complete a task. click the help button in a dialog box or select Help from some menus. If needed.3.Planning and Creating an Oracle BI Repository ■ Process of Oracle BI Repository Planning and Design ■ ■ Identify how each measure is calculated Identify the joins defined in the database To acquire this information about the data.1. this might save time during the development effort. you could refer to any available documentation that describes the data elements created when the database was implemented. you should not make performance tuning changes until you have imported and tested your databases. An Oracle BI repository consists of three layers. refer to “Completing Setup and Managing Oracle BI Repository Files” on page 151. This section contains some design best practices that will help you implement a more efficient repository. The following list contains some recommended design strategies for the Oracle BI repository structure: ■ Perform the majority of repository editing in offline mode to make your results more consistent.

a simplified business model. To reduce problems that might be caused by importing physical joins. By using qualified Physical Layer names.2 51 . import the physical data without foreign keys and then create the keys as needed. For each data source. there is at least one corresponding connection pool. One way to identify tables that you do want to use right away in the Business Model and Mapping layer. NOTE: To have the name of a table to which you assigned an alias appear. you might have one database for each application. You can also define other attributes of the physical data source. ■ Use a naming standard in the Physical Layer that identifies the logical components followed by the physical table name as shown in the following example: Created By Employee (W_PERSON_D) NOTE: The Physical layer object name is included in the Physical SQL. including databases and XML documents. eliminate all outer joins in the data warehouse. For example. You will probably import some tables into the Physical layer that you might not use right away but that you do not want to delete. Use the Physical diagrams in the Administration Tool to verify sources and joins. If you import metadata. Make sure the metadata is generating the correct record set before performing performance tuning activities. many of the properties are configured automatically based on the information gathered during the import process. import databases for each business model separately. debugging is made easier. For more information about supported databases. that might not exist in the data source metadata. refer to “Setting Up Connection Pools” on page 65 and Chapter 4. This eliminates the need for cross-database joins. ■ ■ Oracle Business Intelligence Server Administration Guide Version 10. ■ ■ Design Tips For the Physical Layer (Schema) The Physical layer contains information about the physical data sources. For more information. the number of connections allowed. There can be one or more data sources in the Physical layer. After importing a database. Use Extract. timeout information.1. is to assign aliases to physical tables before mapping them to the business model layer. The connection pool contains data source name (DSN) information used to connect to a data source. test it before importing another. refer to System Requirements and Supported Platforms.” The following is a list of tips to use when designing the Physical layer: ■ Before importing metadata from a data warehouse into the Physical layer of your repository. Some tables may exist in more than one database and you can customize each table for a different business model. make sure you turn on the following option in the Tools > Options > General menu path: Display original names for alias in diagrams. Eliminating outer joins results in a more consistent record set. and Load (ETL) lookups to find them. and improved performance. The most common way to create the schema in the Physical layer is by importing metadata from databases and other data sources. “Creating and Administering the Physical Layer in an Oracle BI Repository. Transform. such as join relationships. and other connectivity-related administrative details.3.Planning and Creating an Oracle BI Repository ■ Process of Oracle BI Repository Planning and Design ■ For design independence.

use the Content tab of the Logical Table Source properties window to assign the correct logical level to each dimension. Logical tables map to the source data in the Physical layer. refer to “Process of Oracle BI Repository Planning and Design” on page 39. Where needed. You can change the names of physical objects independently from corresponding business model object names and properties. Aggregate sources should be created as a separate Source in a logical table. ■ ■ ■ 52 Oracle Business Intelligence Server Administration Guide Version 10. NOTE: If you use the snowflake model. For more information.2 . For more information about business model schemas. refer to “Deploying Opaque Views” on page 103. A traditional database view is not needed because it is identical to the opaque view. ■ Outer joins should be avoided in the reporting SQL. The relationship between logical columns can be hierarchical. Ideally.1. but by doing so.” The following is a list of tips to use when designing the Business Model and Mapping layer: ■ Create the business model with one-to-many complex joins between logical dimension tables and the fact tables wherever possible. you might have more flexibility (for example. This should occur during the ETL process for optimal performance. and vice versa. it is recommended that you minimize the use of snowflake schemas. a physical table should be created. For fact aggregates. Each business model contains logical tables. For more information about setting up the Business Model and Mapping layer. You set up aggregation content in the Content tab of the Logical Table Source properties window.3. Every logical dimension table should have a dimensional hierarchy associated with it. the ability to use outer joins) but it may create more columns in the presentation layer. Combine all similar dimensional attributes into one logical dimension table. not only can an additional table be removed from the report SQL. Design Tips for the Business Model and Mapping Layer The Business Model and Mapping layer organizes information by business model. The Business Model and Mapping layer defines the meaning and content of each physical source in business model terms. They can be eliminated in the ETL via a variety of techniques. Make sure that all appropriate fact sources link to the proper level in the hierarchy using aggregation content.Planning and Creating an Oracle BI Repository ■ Process of Oracle BI Repository Planning and Design ■ An opaque view (a physical layer table that consists of a Select statement) should be used only if there is no other solution. refer to Chapter 5. However. Relationships need to be defined between all the logical tables. Logical tables have relationships to each other expressed by logical joins. The logical schema defined in each business model needs to contain at least two logical tables. or alternatively a materialized view. Logical tables are composed of logical columns. “Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository. Any changes in the underlying physical databases or the mappings between the business model tables and physical tables might not change the view in the end-user applications that view and query the repository. The Oracle BI Server uses these definitions to assign the appropriate sources for each data request. The mapping can include complex transformations and formulas. include data from other dimension tables into the main dimension source using aliases in the Physical layer tables. but the performance will also improve. as defined in business model hierarchies. The business model should ideally resemble a simple star schema in which each fact table is linked directly to its dimensions.

NOTE: Renaming an element in the Presentation layer will automatically create an alias. even if the table source is not used. you can alter the fact source selected by Oracle Business Intelligence. This prevents reports that reference the original element from failing. Eliminate all circular joins (intra-dimensional circular joins) in a logical table source in the Physical Model by creating physical table aliases. Fact sources are selected on a combination of the fields selected as well as the levels in the dimensions to which they link. You can organize columns using a different structure from the table structure in the Business Model and Mapping layer. ■ Design Tips For the Presentation Layer You set up the user view of a business model in the Presentation layer. Order the logical table source with the outer join after the non-outer join so that it will be used only when necessary.2 53 .1. The Presentation layer is the appropriate layer in which to set user permissions. tables. It is recommended that you do not use aliases for Presentation layer columns. Outer joins in logical table sources are always included in a query. You can export logical keys to ODBC-based query and reporting tools. make sure that each logical level of a dimension hierarchy contains the correct value in the field named Number of elements at this level.Planning and Creating an Oracle BI Repository ■ Process of Oracle BI Repository Planning and Design ■ It is recommended that you use table aliases frequently in the Business Model layer to eliminate extraneous joins. Oracle Business Intelligence Server Administration Guide Version 10. You can set permissions to grant or deny users access to individual catalogs. You can display column names that are different from the column names in the Business Model and Mapping layer. and columns. If possible. create one logical table source without the outer join and another with the outer join. In this layer.3. refer to Chapter 6. “Creating and Maintaining the Presentation Layer in an Oracle BI Repository. By adjusting these values. For example. you can do the following: ■ ■ ■ ■ ■ You can show fewer columns than exist in the Business Model and Mapping layer. To prevent problems with aggregate navigation. For more information about setting up the Presentation layer.” The following is a list of tips to use when designing the Presentation layer: ■ Column aliases. including the following: ■ ■ Eliminate all physical joins that cross dimensions (inter-dimensional circular joins) by using aliases. ■ ■ Renaming an element in the Business Model and Mapping layer will automatically create an alias. The names of folders and columns in the Presentation layer appear in localized language translations. you can exclude the key columns because they have no business meaning.

describe the steps you should follow to set up and populate repositories. A RPD file extension will automatically be added if you do not explicitly specify it. you can import tables into the Physical layer. For information about the Presentation layer. 54 Oracle Business Intelligence Server Administration Guide Version 10. Checks global consistency and then saves the repository file. see “Checking the Consistency of a Repository or a Business Model” on page 26. and the Presentation layer last. Creating a New Oracle BI Repository File Now that you have completed your planning and design tasks. as outlined in “Roadmap for Planning and Setting Up an Oracle BI Repository” on page 39. However. The new repository is empty. Cancel. Does not check global consistency and then saves the repository file. To create a single table model. You can save a repository in offline mode even though the business models may be inconsistent. you could construct a subject area that consists of a single table. and then present it as a single table schema in the Administration Tool’s Presentation layer. No. To create a new repository file 1 2 From the Administration Tool menu. you can create a repository. For the greatest simplicity. You can set up security when you are ready to begin testing the repository. select File > New or click the New button in the toolbar. you can work on each layer at any stage in creating a repository. After Creating a Repository File After you create a repository file in the Administration Tool. You have the following options: ■ ■ ■ Yes. The first step in creating a repository is creating a repository file. the Business Model and Mapping layer next.3. Does not check global consistency and does not save the repository file. you first create a logical dimensional model. refer to “Creating and Administering the Physical Layer in an Oracle BI Repository” on page 55. remember to save your repository from time to time. For more information.Planning and Creating an Oracle BI Repository ■ Creating a New Oracle BI Repository File ■ Single table model. NOTE: The typical order is to create the Physical layer first. NOTE: In offline editing.1. The logical dimensional model is required to set up the necessary metadata for the Oracle BI Server to navigate to the proper physical tables. For more information. Each time you save the repository. The remaining steps in the repository setup process. refer to “Creating and Maintaining the Presentation Layer in an Oracle BI Repository” on page 143.2 . a dialog box asks if you want to check global consistency. The default location for all repositories is in the Repository subdirectory. located in the Oracle BI software installation folder (Oracle BI\server\Repository). Type a name for the repository.

For more information. design. you can create the physical layer manually but it is a laborintensive and error-prone activity. (Your licensing options determine whether you can add databases and connection pools to the physical layer. and then create a repository file. This section provides the following topics to help you use the Administration Tool to create the physical layer of a repository: ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ Process of Creating the Physical Layer from Relational Data Sources on page 56 Process of Creating the Physical Layer from Multidimensional Data Sources on page 58 Setting Up Database Objects on page 60 Setting Up Connection Pools on page 65 About Physical Tables on page 81 Creating and Setting Up Physical Tables on page 83 Creating Physical Layer Folders on page 96 About Physical Joins on page 99 Defining Physical Foreign Keys and Joins on page 100 Deploying Opaque Views on page 103 Using Database Hints on page 106 Oracle Business Intelligence Server Administration Guide Version 10. Additionally. For more information. you need to plan. You can import schemas or portions of schemas from existing data sources. refer to “Planning and Creating an Oracle BI Repository” on page 39. Before you create the physical layer of a repository. refer to “Process of Oracle BI Repository Planning and Design” on page 39 The Physical layer of the Administration Tool defines the data sources to which the Oracle BI Server submits queries and the relationships between physical databases and other data sources that are used to process multiple data source queries.4 Creating and Administering the Physical Layer in an Oracle BI Repository This section is part of the roadmap for planning and setting up a repository.2 55 . You can import the physical schema for supported data source types.3.1.) The first step in creating the physical layer is to create the schema. CAUTION: It is strongly recommended that you import physical schemas.

1. ■ When you import physical tables. be careful to limit the import to only those tables that contain data that are likely to be used in the business models you create. and system tables. You can import physical schema for supported data source types. You can also import database views. refer to the Oracle Reference 10g Release 2 documents from the oracle. To create the physical layer by importing the schema. ■ ■ NOTE: Data Warehouse (OLAP) objects are stored in and accessed through Oracle Analytic Workspaces (AWs).2 . If you do not import the schema.com Web site.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Process of Creating the Physical Layer from Relational Data Sources Process of Creating the Physical Layer from Relational Data Sources Importing the physical schema saves you time and effort by importing the structure for the physical layer.3. This makes it easier to locate and select the tables that you want to import. Data from these sources can be displayed on an Oracle BI Interactive Dashboard. Importing large numbers of extraneous tables and other objects adds unnecessary complexity and increases the size of the repository. NOTE: It is recommended that you not import foreign keys from a database because the process is lengthy when importing a large number of tables. and any other objects against which you want to generate queries. primary key. For information about how to extract these objects. and foreign keys. The following is a list of tips to help you when importing a physical schema: ■ When you import schema for most databases. You can import schema for supported data sources. the default is to import tables. primary keys. Import these objects only if you want the Oracle BI Server to generate queries against them. synonyms. you must create each table. foreign key. complete the following tasks in the sequence shown: ■ ■ ■ ■ ■ Importing a Physical Schema from Relational Data Sources on page 56 Setting Up Database Objects on page 60 Setting Up Connection Pools on page 65 About Physical Tables on page 81 Creating and Setting Up Physical Tables on page 83 Importing a Physical Schema from Relational Data Sources This topic is part of the “Process of Creating the Physical Layer from Relational Data Sources” on page 56. you need to select one of the following import options and the appropriate connection type: 56 Oracle Business Intelligence Server Administration Guide Version 10. You can use a filter (table mask) to limit the number of tables that appear in the import list. When you can use importing to create the physical schema. aliases.

You can use the following connection types with the Import option: ■ ■ Available connection types are ODBC. For more information about importing XML data using the Oracle BI Server XML gateway. using a table mask helps locate the tables. and then select the source type of your physical schema from the following options: ■ ■ ■ from Database through Server from Repository 2 In the Select Data Source dialog box. NOTE: It is recommended that you use ODBC 3. Available in Offline and Online modes. select the correct type. see “Using the Options Dialog Box—General Tab” on page 29.1. see “About Extracting Metadata Subsets Into Projects” on page 167. ■ From a repository.3. To import a physical schema from an ODBC connection type 1 In the Administration Tool. Use this option when you want to use the Oracle BI Server connections to import schema. refer to “Oracle BI Server XML Gateway Example” on page 338. Oracle Business Intelligence Server Administration Guide Version 10. ■ From XMLA. NOTE: It is recommended that you create projects in the repository that contain the objects that you wish to import. When you have one or more specific tables that you want to import. When it is running on a UNIX platform. This option allows Oracle BI Administrators to use the Data Source Name (DSN) of the Oracle BI Server machine to import physical schema information. Available in Online mode. Used to import multidimensional data sources. Use this option when you have all database connections set up on your machine. DB2 CLI (Unicode). You can use the following connection types with the Import option: ■ ■ Most physical schema imports are performed using an ODBC connection type.5 or DB2 CLI Unicode for importing schema with International characters such as Japanese table and column names. perform the following steps: a From the Connection Type drop-down list. By default. Connectivity software and duplicate DSNs do not have to reside on the Oracle BI Administrator's machine and the Oracle BI Server machine. DB2 CLI. If you must import metadata using this method. Available in Offline mode. and then use repository merge to bring the projects into your current repository. For more information. the Import from repository option on the File menu is disabled and this option will not be supported in the future. refer to “Importing a Physical Schema from Multidimensional Data Sources” on page 59.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Process of Creating the Physical Layer from Relational Data Sources ■ From a database. and XML.2 57 . select File > Import. Native database gateways for schema import are supported for only DB2 (using DB2 CLI or DB2 CLI Unicode) and XML connection types. the Oracle BI Server does not support importing schema using an ODBC connection type. ■ ■ Through the Oracle BI Server. You can use a table mask to limit (filter) the list of tables that appear in the Import dialog box. For more information.

Process of Creating the Physical Layer from Multidimensional Data Sources This section describes how you use the Administration Tool to add a multidimensional data source to the physical layer of a repository. Keys. The setup in the business model and presentation layers for multidimensional data sources and relational data sources is almost identical. 4 In the Import dialog box. The Oracle BI Server connects to the multidimensional source using XML for Analysis (XMLA) standards protocol. When you import through the Oracle BI Server. click Import or drag and drop them into the Physical layer.2 . The ability to use multidimensional data sources allows the Oracle BI Server to connect to sources such as Microsoft Analysis Services and SAP/BW (SAP/Business Warehouse) to extract data. 58 Oracle Business Intelligence Server Administration Guide Version 10. type a table mask such as F%. not on the local machine. 6 Select the tables and columns you want to import. The primary differences between setting up multidimensional data sources and relational data sources are in the physical layer. and Foreign Keys. For example. Data from these sources can be displayed on an Oracle BI Interactive Dashboard. select the Read from CRM metadata tables check box. Tables that meet the filter criteria appear. the DSN entries are on the Oracle BI Server. select the check boxes for the types of objects that you want to import. the user name will be obtained from the machine’s DSN configuration. select a data source from which to import the schema. Importing data from a multidimensional source creates the metadata of the data source in the Oracle BI repository. Tables. type a valid user ID and password for the data source. The Oracle BI Administrator must supply the user name and password for the data source. If you are performing an import on the Oracle BI Administrator's machine.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Process of Creating the Physical Layer from Multidimensional Data Sources b In the DSN list. Click OK. 5 To use a table mask. and then click the highest level database folder. The standard dictates the various protocols that the Oracle BI Server can use to connect to the target and query data. If a logon screen appears.3. and then click OK. This requires that the target data source have a fully functional Web services interface available. all the columns in the table will be imported. 7 After you select all the objects you want to import. NOTE: If you select just a table without identifying the columns.1. Some objects check boxes are automatically selected. c d 3 To import from Customer Relationship Management (CRM) tables. These default selections depend on your data source.

each cube in a multidimensional data source is created as a single physical cube table. Therefore. During the import process. ■ To import a physical schema from multidimensional data sources 1 2 3 From your data source administrator.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Process of Creating the Physical Layer from Multidimensional Data Sources To create a physical layer for a multidimensional data source. select File > Import from XMLA. The Oracle BI Server uses XMLA standards to import data from a multidimensional data source into the Oracle BI repository. The Oracle BI Server only imports the dimensions and hierarchies that are supported by Oracle BI. CAUTION: Manually creating a physical schema from a multidimensional data source is laborintensive and error prone. It is recommended that you remove hierarchies and columns from the physical layer if they will not be used in the business model. The Oracle BI Server imports the cube. it will not be imported.2 59 . Additionally. dimensions and hierarchies. After importing the cubes. In the Administration Tool.3. For more information. complete the following tasks in the sequence shown: ■ ■ ■ ■ ■ Importing a Physical Schema from Multidimensional Data Sources on page 59 Setting Up Database Objects on page 60 Setting Up Connection Pools on page 65 About Physical Tables on page 81 Creating and Setting Up Physical Tables on page 83 Importing a Physical Schema from Multidimensional Data Sources This topic is part of “Process of Creating the Physical Layer from Multidimensional Data Sources” on page 58. including its metrics. it is strongly recommended that you import it.1. if a cube has a ragged hierarchy or a parent-child hierarchy. This eliminates maintaining unnecessary objects in the Administration Tool and might result in better performance. Therefore. measure hierarchies are not imported or supported. The following list includes information that you should consider before importing data: ■ ■ Microsoft Analysis Services and SAP/BW are the only supported XMLA-compliant data sources currently available. complete the following fields: Oracle Business Intelligence Server Administration Guide Version 10. you need to make sure that the physical cube columns have the correct aggregation rule and that the default member type ALL is correctly imported for a hierarchy. refer to “Adding a Hierarchy to a Physical Cube Table” on page 91. obtain the URL connection string and user name and password for the data source. In the Import From XMLA dialog box.

The Import button is unavailable until you select an object that can be downloaded. click Import. Setting Up Database Objects This topic is part of the “Process of Creating the Physical Layer from Relational Data Sources” on page 56 and the “Process of Creating the Physical Layer from Multidimensional Data Sources” on page 58. 4 Click OK. refer to System Requirements and Supported Platforms. For example: Hierarchy "[Measures]" from data source "SDCHS40I023". Use the user name and password that you obtained from your data source administrator. 7 In the Oracle BI Administration Tool dialog box. The Administration Tool connects to the destination source to obtain a list of the available data catalogs (databases). and select the catalogs (databases) or cubes to import. To copy the contents of the window so that you can paste the messages in another file. Use the URL connection string obtained from your data source administrator. 6 After you select all the objects you want to import.1. click OK and then Close.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Setting Up Database Objects a In the URL field. a list of warning messages appears in the Oracle BI Administration Tool dialog box. in each dialog box. click Find and then Find Again. catalog "XMLA_council_interop". click Copy. If some objects could not be imported.2 . expand the data source and catalog (database). if necessary. type a valid username and password for the data source. cube "BeverageSales" is of measure type and not imported. 5 In the Browse dialog box. b In the username and password fields. you can perform the following actions: ■ ■ To search for specific terms. 8 When finished importing. perform the following tasks: ■ ■ ■ About Database Types in the Physical Layer on page 61 Creating a Database Object Manually in the Physical Layer on page 61 Specifying SQL Features Supported by a Database on page 64 60 Oracle Business Intelligence Server Administration Guide Version 10. For more information about supported databases. type the URL for the Web service that acts as the XMLA provider. Importing a schema automatically creates a database object for the schema but you need to set up the database properties. To create or edit database objects in the physical layer.3.

an approximate ODBC type is assigned to the database object. right-click and choose New Database. the database type is usually assigned automatically. that belong to the same catalog (database) in the data source.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Setting Up Database Objects About Database Types in the Physical Layer If you import the physical schema into the Physical layer. During the import process. all of these cubes must be in the same catalog in the data source. A physical database can have more than one cube. if the server cannot determine the database type. Microsoft Analysis Services and SAP/BW are the only supported XMLA-compliant data sources currently available. Replace the ODBC type with the closest matching entry from the database type drop-down menu.3. you need to create one database in the physical layer for each cube. if you create the physical schema in the physical layer of the repository. You specify a catalog in the Connection Pool dialog box. you need to manually set up all database elements such as connection pool. you need to select the appropriate database type and version. Oracle Business Intelligence Server Administration Guide Version 10. Multidimensional data sources. CAUTION: It is strongly recommended that you import your physical schema. some ODBC drivers provide the Oracle BI Server with the database type. tables. ■ Creating a Database Object Manually in the Physical Layer If you create a database object manually. When you import a multidimensional data source.1.2 61 . NOTE: For multidimensional data sources. or set of cubes. Make sure that no object is selected when you right-click. However. and columns. However. The following list contains additional information about automatic assignment of database types: ■ Relational data sources. To create a database object 1 In the Physical layer of the Administration Tool.

CAUTION: If configured incorrectly. Data Source Definition CRM Metadata Tables Data Source Definition Database The database type for your database.3. and Interactive Dashboards User Guide. and then charted. For more information about limiting queries. 62 Oracle Business Intelligence Server Administration Guide Version 10. refer to Oracle Business Intelligence Answers. If you want most but not all users to be able to execute physical queries. For more information. rendered in a dashboard. check this option and then limit queries for specific users or groups. physical SQL directly to an underlying database. allows everyone to execute POPULATE SQL. refer to “Managing Query Execution Privileges” on page 330. This is for legacy Siebel Systems sources only. The Oracle BI Server will send unprocessed. For more information about limiting queries. the import utility will look for the table definition in Oracle’s Siebel CRM specific tables. For more information about using the Features tab to examine the SQL features supported by the specified database type. allows everyone to execute physical queries. user-entered. refer to “Recommendations for Allowing Direct Database Requests by Default” on page 63. refer to “Specifying SQL Features Supported by a Database” on page 64.2 . in the General tab. Allow direct database requests by default (check box) Allow populate queries by default (check box) When checked. If you want most but not all users to be able to execute POPULATE SQL. The returned results set can be rendered in Oracle BI Presentation Services. Not available for multidimensional data sources.1. For more information about executing physical SQL. and treated as an Oracle BI request. check this option and then limit queries for specific users or groups. Field Fields General Tab of the Database Dialog Box Description When checked. this can expose sensitive data to an unintended audience. Delivers. the import reads the Siebel metadata dictionary to define the definition of physical tables and columns (it does not read the database data dictionary).Creating and Administering the Physical Layer in an Oracle BI Repository ■ Setting Up Database Objects 2 In the Database dialog box. For Siebel CRM tables. complete the fields using Table 5 on page 62 as a guide. refer to “Managing Query Execution Privileges” on page 330. Table 5. When selected.

you might want to make an exception for users with Administrator permissions. see “Creating Session Variables” on page 289. For more information. ■ Access to the advanced SQL page of Answers to create reports. Oracle Business Intelligence Server Administration Guide Version 10. it can expose sensitive data to an unintended audience. Use the following recommended guidelines when setting this database property: ■ The Oracle BI Server should be configured to accept connection requests only from a machine on which the Oracle BI Server. refer to Oracle Business Intelligence Presentation Services Administration Guide. This restriction should be established at the TCP/IP level using the Oracle BI Presentation Services IP address. Therefore.1. For more information.3. NOTE: If you select this check box. you must set up a temporary table first. Data Source Definition Virtual Private Database Persist Connection Pool To use a persistent connection pool. you also should select the Security Sensitive check box in the Session Variable dialog box. For more information. Field Fields General Tab of the Database Dialog Box Description Identifies the physical database source as a virtual private database (VPD). returned data results are contingent on the users authorization credentials. or Oracle BI Scheduler Server are running. If configured incorrectly.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Setting Up Database Objects Table 5. see “Query Caching in the Oracle BI Server” on page 229. For more information. These data results affect the validity of the query result set that will be used with Caching. ■ Only users with Administrator permissions should be allowed to perform the following tasks: ■ TELNET into the Oracle BI Server and Oracle BI Presentation Services machines to perform tasks such as running nQCmd. refer to “Setting Up the Persist Connection Pool Property” on page 79.exe (a file that executes SQL script) by logging in remotely to this machine. To prevent users from running nQCmd. Oracle BI Presentation Services. Recommendations for Allowing Direct Database Requests by Default This property allows all users to execute physical queries. This will allow only a TCP/IP connection from the IP Address of the Oracle BI Presentation Services. When a VPD is used. For more information.2 63 . it is important to identify these sources. you should disallow access by the following to the machine on which you installed the Oracle BI Presentation Services: ■ ■ ■ ■ ■ TELNET Remote shells Remote desktops Teleconferencing software (such as Windows NetMeeting) If necessary.exe for cache seeding. see “Executing the SQL Script File to Create and Delete Aggregates” on page 247.

use the information in Table 6 on page 64 to help you specify properties for each SQL features. You can tailor the default query features for a database. Specifying SQL Features Supported by a Database When you import the schema or specify a database type in the General tab of the Database dialog box. Allows you to perform multiple searches for the same string. you can change this default setting in the Feature table. click the Features tab. Select to enable a query type or clear to disable a query type. Default SQL features that are supported by the database type of the data source are automatically selected. A button that allows you to type a string to help you locate a feature in the list.3. A check box that allows you to specify additional SQL features. double-click the database.1. Table 6. If you disable supported SQL features. the server could issue less efficient SQL to the database. For example.2 . It allows you to query this database for Feature table entries.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Setting Up Database Objects ■ Setup group/user-based permissions on the Oracle BI Presentation Services to control access to editing (preconfigured to allow access by the Oracle BI Presentation Services Administrators) and executing (preconfigured to not allow access by anyone) direct database requests. If you enable SQL features that the database does not support. refer to “Changing Feature Table Entries Using Ask DBMS” on page 65. A check box that identifies default SQL features. Field or Button Ask DBMS Default Find Find Again Revert to Defaults Value 64 Oracle Business Intelligence Server Administration Guide Version 10. SQL Feature Tab Descriptions Description A button that is used only if you are installing and querying a database that has no Features table. To specify SQL features supported by a database 1 2 3 In the Physical layer of the Administration Tool. A button that restores the default values. CAUTION: Be very careful when modifying the Feature table. In the Database dialog box. For more information. your query may return errors and unexpected results. It is strongly recommended that you do not disable the default SQL features. In the Features tab. refer to Oracle Business Intelligence Presentation Services Administration Guide. These are the SQL features that the Oracle BI Server uses with this data source. if a data source supports left outer join queries but you want to prohibit the Oracle BI Server from sending such queries to a particular database. the Feature table is automatically populated with default values appropriate for the database type. A button that becomes available after you click Find. For more information.

the connection pool is created automatically. It contains information about the connection between the Oracle BI Server and that data source. refer to “Creating or Changing Connection Pools” on page 67. For each connection pool. if the data sources have a charge back system based on the number of connections. When you create the physical layer by importing a schema for a data source. Setting Up Connection Pools This topic is part of the “Process of Creating the Physical Layer from Relational Data Sources” on page 56 and the “Process of Creating the Physical Layer from Multidimensional Data Sources” on page 58. Increasing the allowed number of concurrent connections can potentially increase the load on the underlying database accessed by the connection pool. NOTE: The Ask DBMS button is not available if you are using an XML or a multidimensional data source. You can change the entries that appear in the Feature table based on your query results. For additional information. After this limit is reached. The results of the features query are not always an accurate reflection of the SQL features actually supported by the data source. you must specify the maximum number of concurrent connections allowed. Test and consult with your DBA to make sure the data source can handle the number of connections specified in the connection pool. the Oracle BI Server allocates shared memory for each connection upon server startup.1. The connection pool is an object in the Physical layer that describes access to the data source. The Ask DBMS button on the Features tab of the Database dialog box allows you to query a database for the SQL features it supports.2 65 .3. Oracle Business Intelligence Server Administration Guide Version 10. the connection request waits until a connection becomes available. CAUTION: Be very careful when using Ask DBMS. You can configure multiple connection pools for a database. You should only use this functionality with the assistance of Oracle Technical Support. reducing the overhead of connecting to a database. The Physical layer in the Administration Tool contains at least one connection pool for each database. the Oracle BI Server routes all other connection requests to another connection pool or. NOTE: It is recommended that you create a dedicated connection pool for initialization blocks. In addition to the potential load and costs associated with the database resources. if no other connection pools exist. you might want to limit the number of concurrent connections to keep the charge-back costs down. Also. This raises the number of connections and increases Oracle BI Server memory usage. Connection pools allow multiple concurrent data source requests (queries) to share a single database connection.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Setting Up Connection Pools Changing Feature Table Entries Using Ask DBMS You should use the Ask DBMS button only if installing and querying a database that has no Features table.

DSN is the same as the connection pool name. Preconfigured Connection Pools Description Enterprise visibility to the Oracle Business Analytics Warehouse. (For Oracle’s Siebel Industry Applications customers only. (Real-time Forecasting Oracle BI customers only. (Pharmaceutical industry-specific customers only. Connection Name BBB Data Warehouse BBB OLTP BBB XLS Data ERM OLTP Oracle’s Siebel Workforce Analytics connection to Oracle’s Siebel transactional database.) Connection to Oracle’s Siebel operational application database to load the translations of Metadata Strings. Real-time Oracle BI (all customers). Enterprise visibility to Oracle’s Siebel transactional database.) 66 Oracle Business Intelligence Server Administration Guide Version 10. (Incentive Compensation Oracle BI customers only. Financial Services customers and all customers deploying Oracle BI in a language other than English. NOTE: This connection pool is configured to be the same as the Oracle’s Siebel transactional database.1.) Database connection to Oracle’s Siebel transactional database. Externalized Metadata Strings Forecasting Oracle Business Analytics Warehouse Forecasting Siebel OLTP Incentive Compensation Siebel OLTP Pharma Data Warehouse Real-time OLTP SIA Data Warehouse Connection to the Oracle Business Analytics Warehouse.3. Oracle’s Siebel operational applications (Oracle BI customers only).) Connection to the Pharmaceutical data warehouse. Table 7.) Connection to Oracle’s Siebel transactional database.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Setting Up Connection Pools Table 7 on page 66 contains a brief description of preconfigured connection pools. (Workforce Oracle BI customers only.2 . Oracle’s Siebel operational applications (Oracle BI customers only). Data is stored in C:\Data\Applications\BBB\BBB. (Forecasting Oracle BI customers only. Connection for Oracle’s Siebel Industry Applications data warehouse. Oracle’s Siebel operational applications (Oracle BI customers only).) Connection to Oracle’s Siebel transactional database.

(All customers. Preconfigured Connection Pools Description Usage Tracking Writer Connection Pool connects to the database where you store the usage statistics of the Oracle BI Server. Oracle’s Siebel Universal (Queuing customers only.) NOTE: Using this requires that the Oracle BI Scheduler Server be set up to load the usage statistics into the database. Typically. the database object and connection pool are created automatically when you import the physical schema. The user name and password is preconfigured to USER and PASSWORD and should be left as such if you want to use database logons to authenticate users. (Optional for all customers. (Oracle BI applications customers only. Both should be configured properly. CAUTION: It is strongly recommend that customers use OCI for connecting to Oracle. (Oracle BI applications customers only.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Setting Up Connection Pools Table 7. You create or change a connection pool in the Physical layer of the Administration Tool.) NOTE: There are two connection pools to Oracle’s Siebel transactional database. This section contains the following topics: Oracle Business Intelligence Server Administration Guide Version 10.2 67 .) Database connection to the Oracle Business Analytics Warehouse. OLTP DbAuth connects to Oracle’s Siebel transactional database for Authentication and Authorization.) UQ Siebel OLTP Usage Accelerator Datawarehouse Connection to Oracle’s Siebel transactional database.) This section includes the following topics: ■ ■ ■ ■ ■ Creating or Changing Connection Pools on page 67 Setting Up Write-Back Properties on page 77 Setting Up Connection Pool Properties for Multidimensional Data Sources on page 73 Setting Up Additional Connection Pool Properties for an XML Data Source on page 76 Setting Up the Persist Connection Pool Property on page 79 Creating or Changing Connection Pools You must create a database object before you create a connection pool.3. ODBC should only be used to import from Oracle. Connection Name Oracle BI Usage Oracle Business Intelligence Warehouse Siebel OLTP Database connection to the Oracle Business Analytics Warehouse.1.

All initialization blocks that set repository variables. externalized strings. and when they are scheduled to run.1. Typically.2 . These initialization blocks should always be run using the system Administrator user login. one for each variable. it is recommended that you isolate the connections pools for different types of initialization blocks. 68 Oracle Business Intelligence Server Administration Guide Version 10. their scheduled refresh rate.3. Initialization blocks should be designed so that the maximum number of Oracle BI Server variables may be assigned by each block. Setting Up General Properties For Connection Pools Use this section to complete the General tab. Be aware of the number of these initialization blocks. The following types should have separate connection pools: ■ ■ ■ All Authentication and login-specific initialization blocks such as language. refresh rates set in minutes. would result in five calls to the back end tables for assignment. This also makes sure that authentication and login-specific initialization blocks do not slow down the login process. Additionally. the values will be resolved with one call to the back end tables using the initialization string. if you have five variables. you might want to disable query logging for the default Oracle BI Administrator. Constructing five initialization blocks. it would take an extreme case for this scenario to affect resources. and a situation in which either of these scenarios could occur during prime user access time frames. To avoid straining the available resources.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Setting Up Connection Pools ■ ■ About Connection Pools for Initialization Blocks on page 68 Setting Up General Properties For Connection Pools on page 68 About Connection Pools for Initialization Blocks It is recommended that you create a dedicated connection pool for initialization blocks. and group assignments. All initialization blocks that set session variables. greater than 15 initialization blocks that refresh concurrently. For example. it is more efficient and less resource intensive to construct a single initialization block containing all five variables. This connection pool should not be used for queries. When using one initialization block. For example.

Oracle Business Intelligence Server Administration Guide Version 10. or double-click an existing connection pool.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Setting Up Connection Pools To set up general properties for connection pools 1 In the Physical layer of the Administration Tool.1. The following is an illustration of the General tab in the Connection Pool dialog box.2 69 . right-click a database and choose New Object > Connection Pool.3.

Connection Pool General Properties Description The application program interface (API) with which to access the data source. the XML tab is available but options that do not apply to XML data sources are not available. The drop-down list shows the User and System DSNs configured on your system. This allows mainframe environments to maintain security in one central location. each query sent to the database opens a new connection.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Setting Up Connection Pools 2 In the Connection Pool dialog box. If the call interface is XML. In a mainframe environment. Indicates whether the data source supports asynchronous queries. Connection pooling saves the overhead of opening and closing a new connection for every query. and some work both ways.1. Field or Button Call interface Data source name Enable connection pooling Execute on Connect Execute queries asynchronously 70 Oracle Business Intelligence Server Administration Guide Version 10. The command may be any command accepted by the database. click the General tab. the database logon specified in the DSN will fail. The data source name needs to contain valid logon information for a data source. Table 8. some use ODBC.3. For example. and then complete the fields using information in Table 8 on page 70. Some databases may be accessed using native APIs. it could be used to turn on quoted identifiers. Allows a single database connection to remain open for the specified time for use by future query requests. If the information is invalid. it could be used to set the secondary authorization ID when connecting to DB2 to force a security exit to a mainframe security package such as RACF.2 . Allows the Oracle BI Administrator to specify a command to be executed each time a connection is made to the database. If you do not select this option. A data source name that is configured to access the database to which you want to connect. Properties that are specific to a multidimensional data sources can be found in Table 9 on page 75.

Places a range lock on the data set. The Oracle BI Server does this by simulating parameter support within the gateway/adapter layer by sending extra SQLPrepare calls to the database. Field or Button Isolation level Maximum connections The maximum number of connections allowed for this connection pool. This number may be adjusted based on usage. Because concurrency is lower. NOTE: For deployments with Intelligence Dashboard pages. you might use the number of users concurrently logged on during initialization block execution. Connection Pool General Properties Description For ODBC and DB2 gateways. The isolation level setting controls the default transaction locking behavior for all statements issued by a connection. Parameters supported Oracle Business Intelligence Server Administration Guide Version 10. this is prefilled. Only one of the options can be set at a time. special code executes that allows the Oracle BI Server to push filters (or calculations) with parameters to the database. The default is 10.2 71 .3. resulting in non repeatable reads or phantom data. However. This is the least restrictive of the isolation levels. the data can be changed before the end of the transaction. preventing other users from updating or inserting rows into the data set until the transaction is complete. it is possible to read uncommitted or dirty data. If the database features table supports parameters and the connection pool check box property for parameter support is unchecked.1. If you do not type a name. Repeatable Read. The total number of all connections in the repository should be less than 800. When this option is set. the value sets the transaction isolation level on each connection to the back-end database. new phantom rows can be inserted into the data set by another user and are included in later reads in the current transaction. preventing other users from updating the data. use this option only if necessary. Implements dirty read (isolation level 0 locking). To estimate the maximum connections needed for a connection pool dedicated to an initialization block.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Setting Up Connection Pools Table 8. This is the most restrictive of the four isolation levels. However. Specifies that shared locks are held while the data is read to avoid dirty reads. consider estimating this value at 10% to 20% of the number of simultaneous users multiplied by the number of requests on a dashboard. It remains set for that connection until it is explicitly changed. Dirty Read. This value should be determined by the database make and model and the configuration of the hardware box on which the database runs as well as the number of concurrent users who require access. the Administration Tool generates a name. For multidimensional and XML data sources. Serializable. change values in the data. The following is a list of the options: Committed Read. Places locks on all data that is used in a query. Name The name for the connection pool. and have rows appear or disappear in the data set before the end of the transaction.

If this option is not selected. When this option is selected. Connection Pool General Properties Description Assigns permissions for individual users or groups to access the connection pool. if you do not select this option. For example.1. you can safely check the option.2 .3. If the table named foo exists in the master database. that table is queried. a query against a table named foo first looks for that table in the master database. the queries will succeed against the new database objects. all requests sent from the connection pool use fully qualified names to query the underlying database. if the RDBMS supports a master database concept. and then looks for it in the specified database. Field or Button Permissions Require fully qualified table names Shared logon Select the Shared logon check box if you want all users whose queries use the connection pool to access the underlying database using the same user name and password. You can also set up a privileged group of users to have its own connection pool. 72 Oracle Business Intelligence Server Administration Guide Version 10. If you have migrated your repository from one physical database to another physical database that has different database and schema names. For some data sources. if the database requires it. Select this check box. then all connections to the database that use the connection pool will use the user name and password specified in the connection pool. even if the user has specified a database user name and password in the DSN (or in user configuration). the fully qualified names would be invalid in the newly migrated database. connections through the connection pool use the database user ID and password specified in the DSN or in the user profile. The fully qualified names are based on the physical object names in the repository.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Setting Up Connection Pools Table 8. If you are querying the same tables from which the physical layer metadata was imported. If this option is selected. fully qualified names might be safer because they guarantee that the queries are directed to the desired tables in the desired database. not the table named foo in the specified database. In this case.

Oracle BI Server terminates idle physical queries (threads). Connection Pool General Properties Description Specifies the amount of time.1. The lower number in the range is the number of threads that are kept open before Oracle BI Server takes action. that a connection to the data source will remain open after a request completes. The parameter DB_GATEWAY_THREAD_RANGE in the Server section of NQSConfig.3. that is. if DB_GATEWAY_THREAD_RANGE is set to 40-200 and 75 threads are open. one thread is tied to one database connection (number of threads = maximum connections). Oracle BI Server terminates idle threads. each connection to the data source terminates immediately when the request completes. in minutes. Table 8 on page 70 describes some general properties that are shared among connection pools with different data sources. new requests use this connection rather than open a new one (up to the number specified for the maximum connections). Table 9 on page 75 describes the properties in this dialog box that are unique to multidimensional data sources. Oracle BI Server terminates any idle threads. The time is reset after each completed connection request. connection pooling is disabled. Setting Up Connection Pool Properties for Multidimensional Data Sources When you import an external multidimensional data source. they consume memory. When not selected. For example. If you set the timeout to 0. the connection pool is automatically set up in the physical layer.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Setting Up Connection Pools Table 8. During this time.2 73 . Oracle Business Intelligence Server Administration Guide Version 10.ini establishes when Oracle BI Server terminates idle threads. If the number of open threads exceeds the low point in the range. Any new connections either use another connection pool or open a new connection. Field or Button Timeout (Minutes) Use Multithreaded Connections When the check box is select ed. You can add a connection pool manually using the instructions in this section. Even if threads are idle.

1. right-click a database and select New Object > Connection Pool.2 .3.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Setting Up Connection Pools To set up connection pools for a multidimensional data source 1 In the Physical layer of the Administration Tool. The following is an illustration of the General tab for a multidimensional data source in the Connection Pool dialog box. or double-click an existing connection pool. 74 Oracle Business Intelligence Server Administration Guide Version 10.

Select the Shared logon check box if you want all users whose queries use the connection pool to access the underlying database using the same user name and password. NOTE: Table 9 on page 75 describes the connection pool properties or descriptions that are unique to multidimensional data sources.dll Use session Controls whether queries go through a common session. This virtual directory needs to be associated with msxisapi.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Setting Up Connection Pools 2 In the Connection Pool dialog box. The cube tables correspond to the catalog you use in the connection pool. if you use v1. Default is Off (not checked). then it should be Local Analysis Server.dll (part of the Microsoft XML for Analysis SDK installation). connections through the connection pool use the database user ID and password specified in the DSN or in the user profile.Data Source-local. Consult your multidimensional data source administrator to determine whether this option should be enabled.1. Consult your multidimensional data source administrator for setup instructions because specifications may change.3. If this option is selected. the URL might look like the following: http://SDCDL360i101/xmla/msxisap. then all connections to the database that use the connection pool will use the user name and password specified in the connection pool. if you imported data from your data source. For example. Shared logon URL The URL to connect to the XMLA provider. Oracle Business Intelligence Server Administration Guide Version 10. in the General tab. If using v1.2 75 . even if the user has specified a database user name and password in the DSN (or in the user configuration).1. complete the fields using information in Table 8 on page 70 and Table 9 on page 75. It points to the XMLA virtual directory of the machine hosting the cube. For example.0 of the XML for Analysis SDK then the value should be ProviderMSOLAP. Property Multidimensional Data Source Connection Pool General Properties Description The list of catalogs available. If this option is not selected. Table 9. Data Source Information: Catalog Data Source Information: Data Source The vendor-specific information used to connect to the multidimensional data source.

If you specified a URL to access the data source.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Setting Up Connection Pools Setting Up Additional Connection Pool Properties for an XML Data Source Use the XML tab of the Connection Pool dialog box to set additional properties for an XML data source. ■ ■ Select a value from the drop-down list (Infinite. Days. The refresh interval is analogous to setting cache persistence for database tables. set the URL refresh interval. Connection method Search script Connection properties Maximum connections Connection properties URL loading time out Default is 10. Used for XML data source. Minutes or Seconds). meaning the XML data source will never be refreshed. However. when you set the properties in the XML tab of the Physical Table dialog box you will override the corresponding settings in the Connection Pool dialog box. 76 Oracle Business Intelligence Server Administration Guide Version 10. Complete the fields. Specify a whole number as the numeric portion of the interval. select New Object > Connection Pool. If you specified a URL to access the data source.3. Property XML Connection Pool Properties Description Used for XML Server data source. Days. Hours. Table 10. Hours. set the URL loading timeout as follows: ■ ■ Select a value from the drop-down list (Infinite. The URL refresh interval is the time interval after which the XML data source will be queried again directly rather than using results in cache. Minutes or Seconds). Specify a whole number as the numeric portion of the interval. click the XML tab. Connection properties URL refresh interval Used for XML data source. The default is 15 minutes. In the Connection Pool dialog box.1. Time-out interval for queries. CAUTION: The XML tab of the Connection Pool dialog box provides the same functionality as the XML tab of the Physical Table dialog box.2 . The default setting is infinite. using Table 10 on page 76 as a guide. To set up connection pool properties for an XML data source 1 2 3 Right-click the XML database.

or use the Browse button. but it is supported for convenience.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Setting Up Connection Pools Table 10. for example. you can specify an XSLT file on a per-table basis on the XML tab of the Physical Table object. you cannot specify an XPath expression on the XML tab of the Physical Table object. you cannot specify an XSLT file on the XML tab of the Physical Table object.2 77 . An XPath expression is a simple XSLT transformation rule that fits into one line. The current implementation of the XML gateway does not support all XML files. type the path to and name of the XSLT file in the XSLT File field. customers can specify an XSLT file to preprocess an XML file to a form that the Oracle BI Server supports. only those that resemble a tabular form. A sample entry might be */BOOK[not(PRICE>'200')]. This overrides what you specified in the connection pool. For an XML Server data source. Query input supplements Header file/Trailer file Query output format XPath expression Choose only XML for an XML data source.3. Setting Up Write-Back Properties Use this section to complete the Write Back tab in the Connection Pool dialog box. Oracle Business Intelligence Server Administration Guide Version 10. It is not essential. To increase the versatility of the XML gateway. type the XPath expression in the XPath Expression field.1. or use the Browse button. Specifying the XSLT file in the connection pool applies it to all the XML physical tables in the connection pool. with repeating second level elements. ■ To specify query output format settings 1 2 (Optional) For an XSLT file. ■ For an XML Server data source. XSLT file An XSLT file contains formatting rules written according to the XSLT standard. Other choices are available for an XML Server data source. given the support of XSLT. ■ For an XML data source. //XML. Property XML Connection Pool Properties Description Used for XML Server data source. It defines how an XML file may be transformed. (Optional) For an XPath expression.

Creating and Administering the Physical Layer in an Oracle BI Repository ■ Setting Up Connection Pools To set up write-back properties for connection pools 1 2 3 In the Physical layer of the Administration Tool.tablename.2 .3. In the Write Back tab. click the Write Back tab. When the Oracle BI Server creates a temporary table. If left blank. Bulk Insert Buffer Size (KB) Bulk Insert Transaction Boundary Temporary table Database Name Database where the temporary table will be created. Table owner name used to qualify a temporary table name in a SQL statement. The default value is TT. This property applies only to IBM OS/390 because IBM OS/390 requires database name qualifier to be part of the CREATE TABLE statement.1. right-click a database and select New Object > Connection Pool. Temporary table Owner Temporary table Prefix 78 Oracle Business Intelligence Server Administration Guide Version 10. these are the first two characters in the temporary table name. OS/390 will default the target database to a system database for which the users may not have Create Table privileges. If left blank. or double-click an existing connection pool. Controls the batch size for an insert in a database table. complete the fields using Table 11 on page 78 as a guide. In the Connection Pool dialog box. Field Field Descriptions for Write Back Tab Description Used for limiting the number of bytes each time data is inserted in a database table. for example to create the table owner. Table 11. the user name specified in the writeable connection pool is used to qualify the table name and the Shared Logon field on the General tab should also be set.

If left blank. This makes sure that the binding is correct and data will be inserted correctly. In some queries. Select this check box when working with columns of an explicit Unicode data type. This property applies to OS/390 only as OS/390 requires tablespace name qualifier to be part of the CREATE TABLE statement. Temporary table Tablespace Name Unicode Database Type NOTE: Unicode and non-Unicode datatypes cannot coexist in a single non-Unicode database. Reduces data movement between the Oracle BI Server and the database and supports unlimited IN list values and might result in improved performance. On a database where NCHAR data type is available. the user issuing the logical SQL needs to have been granted the Populate privilege on the target database. Oracle Business Intelligence Server Administration Guide Version 10. such as NCHAR. Different database vendors provide different character data types and different levels of Unicode support. it is recommended to select this check box.2 79 . You could use the persist connection pool in the following situations: ■ ■ Populate stored procedures. do not select this check box. selecting this check box is optional.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Setting Up Connection Pools Table 11. Use the following general guidelines to determine when to set this check box: ■ ■ ■ On a database where CHAR data type supports Unicode and there is no separate NCHAR data type. Stores a nonfunction subquery in a temporary table and then rewrites the original subquery result against this table.1. For example. On a database where CHAR and NCHAR data type are configured to support Unicode. Setting Up the Persist Connection Pool Property A persist connection pool is a database property that is used for specific types of queries (typically used to support Marketing queries). OS/390 will default the target database to a system database for which the users may not have Create Table privileges. Typically used by Oracle’s Siebel Marketing Server to write segmentation cache result sets. This issue might be solved by temporarily constructing a physical table in the database and rewriting the Oracle BI Server query to reference the new temporary physical table. Use to rewrite the logical SQL result set to a managed table.3. mixing the CHAR and NCHAR data types in a single non-Unicode database environment is not supported. in an Unicode database. Perform a generalized subquery. all of the logical query cannot be sent to the transactional database because that database might not support all of the functions in the query. Field Field Descriptions for Write Back Tab Description Tablespace where the temporary table will be created. NOTE: In these situations.

In the connection pool list.2 . You can assign one connection pool in a single database as a persist connection pool. click Set. To remove a persist connection pool 1 2 3 In the Physical layer. The first time the server commits after row 60 (3 * 20). In the Persist Connection Pool area. In the Database dialog box. In the Connection Pool dialog box. Example of Using Buffer Size and Transaction Boundary If each row size in a result set is 1 KB and the buffer size is 20 KB.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Setting Up Connection Pools The persist connection pool functionality designates a connection pool with write-back capabilities for processing this type of query. click the Write Back tab. If there is a failure when the server commits. in the Browse dialog box. To make sure that the array-based insert runs successfully. and then click OK. then the maximum array size will be 20 KB. it is recommended that you not set the transaction boundary greater than 10 and you set the buffer size to approximately 32 KB. select the appropriate connection pool. Complete the fields using Table 11 on page 78 as a guide. it appears in the Persist Connection Pool field. 5 6 7 8 9 (Optional) To set write-back properties. If you set the Transaction boundary field to 3. 4 Click OK. The second time the server commits after row 120. For example. if there are two commits and the first commit succeeds but the second commit fails. the server will only rollback the current transaction. Click OK twice to save the persist connection pool. click Clear. If there are 120 rows. click the Connection Pools tab. In the Persist Connection Pool area. The selected connection pool name appears in the Persist connection pool field. click the General tab.1. the User name specified in the connection pool must have the privileges to create DDL (Data Definition Language) and DML (Data Manipulation Language) in the database. The database name is replaced by not assigned in the Persist connection pool field. If there is only one connection pool. the server will commit twice. If this functionality is enabled.3. the server only rolls back the second commit. 4 If there are multiple connection pools. there will be 6 batches with each batch size limited to 20 rows. click the General tab. To assign a persist connection pool 1 2 3 In the Physical layer. 80 Oracle Business Intelligence Server Administration Guide Version 10. double-click the database icon. double-click the connection pool. double-click the database icon. In the Database dialog box.

They provide the metadata necessary for the Oracle BI Server to access the tables with SQL requests. Table Types for Physical Tables The Table Type drop-down list in the General tab of the Physical Table dialog box allows you to specify the physical table object type. Oracle Business Intelligence Server Administration Guide Version 10. A virtual physical table can be a stored procedure or a Select statement. Table Type Physical Table Table Type Descriptions for Physical Tables Description Specifies that the physical table object represents a physical table. Table 12 on page 81 provides a description of the available object types. Creating virtual tables can provide the Oracle BI Server and the underlying databases with the proper metadata to perform some advanced query requests.Creating and Administering the Physical Layer in an Oracle BI Repository ■ About Physical Tables About Physical Tables This topic is part of the “Process of Creating the Physical Layer from Relational Data Sources” on page 56 and the “Process of Creating the Physical Layer from Multidimensional Data Sources” on page 58.2 81 . using values in the Table Type field in the Physical Table dialog box. you can create virtual physical tables in the Physical layer.3. In addition to importing physical tables.1. Table 12. Physical tables are usually imported from a database or another data source. A physical table is an object in the Physical layer of the Administration Tool that corresponds to a table in a physical database.

the default configuration will be executed. Using Stored Procedures with an Oracle Database Stored Procedures within Oracle do not return result sets.3. first_name || ' ' || last_name from csx_security_table where user_id = ':USER' and password = ':PASSWORD' 82 Oracle Business Intelligence Server Administration Guide Version 10. For information about stored procedures and alias tables. you type the stored procedure in the text box. otherwise. get_roles(user_id). The function uses the GET_ROLES function and takes a user Id as a parameter and returns a semicolon delimited list of group names. select the Use database specific SQL check box. you type the select statement in the text field and you need to manually create the table columns. When you select this option. At run time. and then associate it with the appropriate Oracle BI session variables in the Session Variables dialog box. use it in a select statement in the Administration Tool initialization block. For Select statements that are database specific. see “About Physical Alias Tables” on page 83. if a stored procedure has been defined. The following is an example of an initialization SQL string using the GET_ROLES function that is associated with the USER.1. The column names must match the ones specified in the Select statement. if a Select statement has been defined. NOTE: Stored procedures using an Oracle database do not return result sets. such as aggregates and case statements. At run time. DISPLAYNAME variables: select user_id. Select Specifies that the physical table object is a Select statement. Requests for this table will execute the Select statement.Creating and Administering the Physical Layer in an Oracle BI Repository ■ About Physical Tables Table 12. the default configuration will be executed. When you select this option. Table Type Stored Proc Table Type Descriptions for Physical Tables Description Specifies that the physical table object is a stored procedure. You need to rewrite the procedure as an Oracle function. Requests for this table will call the stored procedure. Therefore they cannot be initiated from within Oracle BI. refer to “Using Stored Procedures with an Oracle Database” on page 82.2 . the Select statement will be executed. select the Use database specific SQL check box. Column aliases are required for advanced SQL functions. the stored procedure will be executed. otherwise. For more information. For stored procedures that are database specific. GROUP.

columns. You can allow an alias table to have cache properties that differ from its source table by setting an override flag in the Physical Table dialog box. Alias Tables can be an important part of designing a physical layer. columns cannot be added. and select statements.1. a primary key. A logical table source shows how the logical objects are mapped to the physical layer and can be mapped to physical tables. About Physical Alias Tables An Alias table (Alias) is a physical table with the type of Alias. It is a reference to a logical table source. The following is a list of the main reasons to create an alias table: ■ ■ ■ To reuse an existing table more than once in your physical layer (without having to import it several times. all its alias tables and columns will be checked out. or joins. When you edit a physical table or column in online mode. and inherits all its column definitions and some properties from the logical table source. The behavior of online checkout uses the following conventions: ■ ■ ■ If a source table or column is checked out. You can change the source table of an alias table. or modified. For all data sources. For example. a warning message appears to let you know that this could cause a problem and allows you to cancel the action.2 83 . if the new source table is a superset of the current source table. Alias tables are critical in the process of converting ER Schemas to Dimensional Schemas. Columns are automatically synchronized. To set up multiple alias tables. see “Identifying the Database Content For The Business Model” on page 45. Oracle Business Intelligence Server Administration Guide Version 10. NOTE: Synchronization makes sure that source tables and their related alias tables have the same column definitions. this could result in an inconsistent repository if changing the source table deletes columns that are being used. see “Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository” on page 109. In alias tables. If you attempt to do this. and foreign keys. stored procedures. NOTE: Running a consistency check identifies orphaned aliases. if you delete a column in the source table the column is automatically removed from the alias table.3. To help you design sophisticated star or snowflake structures in the business model layer. you can define general properties. deleted. all alias tables and columns must be checked out. However. The checkout option is available for online repositories (if not read-only) and for all source and alias tables and columns. each with different keys. no manual intervention is required. If an alias table or column is checked out.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Creating and Setting Up Physical Tables Creating and Setting Up Physical Tables This topic is part of the “Process of Creating the Physical Layer from Relational Data Sources” on page 56 and the “Process of Creating the Physical Layer from Multidimensional Data Sources” on page 58. names. For more information. its source table and column will be checked out. An alias table can be a reference to any of these logical table source types. For more information. You cannot delete source tables unless you delete all its alias tables first.

It also has cube-specific metadata such as hierarchies and levels. ever. a type of physical table. A property that is proxied is a value that is always the same as the source table. including its metrics. Expanding the hierarchy icon reveals the levels in the hierarchy. The following is a list of the properties that are proxied: ■ ■ ■ ■ ■ ■ IsCacheable (the inherited property can be overridden) CacheExpiry (the inherited property can be overridden) Row Count Last Updated Table Type External Db Specifications The following is list of the properties that are not proxied: ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ Name Description Display Folder Containers Foreign Keys Columns (tables don't share columns. Aliases and sources have distinctly different columns that alias each other) Table Keys Complex Joins Source Connection Pool Polling Frequency All XML attributes About Creating and Setting Up Physical Tables for Multidimensional Data Sources Each cube from a multidimensional data source is set up as a physical cube table. the same will be applied on the alias table. the Hierarchies tab lists the dimensional hierarchies in the cube. In the Physical layer. the Oracle BI Server imports the cube.3. When you import the physical schema.2 . and cannot be changed.1. hierarchies. It has all the capabilities of a table such as physical cube columns and keys (optional) and foreign keys (optional). In the Physical Cube Table dialog box. and levels.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Creating and Setting Up Physical Tables Alias tables inherit some properties from their source tables. For more information about icons. a physical cube table looks like a regular table but will have a different icon. If the source table changes its value for that particular property. 84 Oracle Business Intelligence Server Administration Guide Version 10. refer to “Icons and Symbols in the Administration Tool” on page 21.

You can import one or more of these cubes into your BI repository. perform the following tasks: ■ ■ ■ ■ Creating and Administering General Properties for Physical Tables on page 85 Creating and Administering Columns and Keys in a Physical Table on page 87 Setting Up Hierarchies in the Physical Layer for a Multidimensional Data Source on page 91 Setting Physical Table Properties for an XML Data Source on page 96 Creating and Administering General Properties for Physical Tables Use the General tab of the Physical Table dialog box to create or edit a physical table in the Physical layer of the Administration Tool. When it is correct. To create a physical cube table for a multidimensional data source. not create them manually. create the time hierarchy and a measure.3. right-click the physical database and choose New Object > Physical Cube Table. NOTE: If creating a cube manually. and then test it. For example. perform one of the following steps: ■ ■ To create a physical table. ■ To create an alias table. NOTE: You can also create aliases on opaque views and stored procedures. You can create a cube table manually. NOTE: It is strongly recommended that you import cube tables. To create a physical table or a physical cube table and any necessary properties. To create a physical table or edit general properties for tables and alias tables 1 In the Physical layer of the Administration Tool. Oracle Business Intelligence Server Administration Guide Version 10. it is recommended that you import cube tables and their components.1. This includes physical cube tables and alias tables. and choose New Object > Alias. create the geography hierarchy and test it.2 85 . This will help make sure you have set up each cube correctly and make it easier to identify any setup errors. However. right click a physical table. it is strongly recommended that you build each cube one hierarchy at a time and test each one before building another.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Creating and Setting Up Physical Tables Each multidimensional catalog in the database can contain multiple physical cubes. This section contains the following topics: ■ ■ Creating or Editing Physical Tables on page 85 Deleting a Physical Table on page 87 Creating or Editing Physical Tables This section describes how to create or edit the general properties for a table. right-click the physical database and choose New Object > Physical Table.

3. metadata changes. Typically. If you select a Table Type of Physical Table. Check box available for alias tables. Set this option for too many objects and the cache will become manageably large or objects might begin dropping out of the cache at inefficient times. This could be useful when a table will be important to a large number of queries users might run. Applies to alias tables. If a query references multiple physical tables with different persistence times. This is useful for OLTP data sources and other data sources that are updated frequently. Other invalidation techniques. For more information.2 . LRU (Least Recently Used) replacement. double-click the physical table icon.1. When you select this option. and use of the cache polling table. the cache entry for the query will exist for the shortest persistence time set for any of the tables referenced in the query. If you change the default to minutes or seconds. such as manual purging. this does not mean that an entry will always remain in the cache.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Creating and Setting Up Physical Tables ■ To edit an existing physical table. This makes sure that no subsequent query gets a cache hit from an expired cache entry. the cacheable properties become available and you can clear or select the appropriate options. Property Name Cacheable Physical Table General Properties for Relational and XML Data Sources Description The Oracle BI Administrator assigns a name to new table. type a whole number into the field on the left. if most of your queries have a reference to an account object. The Select button allows you to choose the physical table from which to create an alias table. When selected. the Cache persistence time settings become active. 2 In the selected Physical Table dialog box. Cache never expires Cache persistence time How long table entries should persist in the query cache. complete the fields using Table 13 on page 86 as a guide. you should check this option for most tables. CAUTION: This is only of use on some objects. When you select this check box. The default value is Infinite. External name Override Source Table Caching Properties Source Table Applies to physical cube tables from a multidimensional data source. meaning that cache entries do not automatically expire. Table 13. keeping it cached indefinitely could actually improve performance rather than compromise it. For example. result in entries being removed from the cache. 86 Oracle Business Intelligence Server Administration Guide Version 10. cache entries do not expire. However. To include the table in the Oracle BI Server query cache. the external data source name appears. refer to “Troubleshooting Problems with an Event Polling Table” on page 253. select this check box.

For information. locate the table that you want to delete. hierarchies are also deleted. Physical Cube Table values: Physical Table or Select. the Set values for variables dialog box appears so that you can populate :USER and :PASSWORD as part of the viewing process.1. refer to “Viewing Members in Physical Cube Tables” on page 94. this appears if you choose a Table Type of Select.2 87 . When you delete a physical cube table. Stored Proc (stored procedure). Table Type Use Dynamic Name Check box available for non-multidimensional data source tables when you select a Table type of Physical Table. and foreign keys. CAUTION: View Data will not work if you set the user name and password for connection pools to :USER and :PASSWORD. For example columns. Right-click the table and choose Delete. Creating and Administering Columns and Keys in a Physical Table Each table in the Physical layer of the Administration Tool has one or more physical columns. Property Physical Table General Properties for Relational and XML Data Sources Description Physical Table values: Physical Table. When selected. In offline mode. this appears if you choose a Table Type of Stored Proc or Select. or Select. For non-multidimensional data source tables (not alias tables). you must check in changes before you can use View Data. When you select the check box. View Data is not available for physical cube tables or columns. For multidimensional data source tables. Oracle Business Intelligence Server Administration Guide Version 10. a dialog box opens in which you can choose a session variable. keys. Viewing Data in Physical Tables or Columns You can view the data in a physical table or an individual physical column by right-clicking the object and choosing View Data.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Creating and Setting Up Physical Tables Table 13. Use Database Specific SQL Default Initialization String Deleting a Physical Table When you delete a physical table. you can specify the database and type the SQL. all dependent objects are deleted.3. NOTE: The deletion fails if an alias exists on the physical table. To delete a physical table from the Physical layer 1 2 In the Physical layer of the Administration Tool. In online editing mode.

the dialog box that corresponds to the tab appears. If the Oracle BI Administrator assigns an aggregation rule of Aggr_External. When imported. and Foreign Keys tabs in the Physical Table dialog box allow you to view. create new. 88 Oracle Business Intelligence Server Administration Guide Version 10. Keys. Set the aggregation rule to match its definition in the multidimensional data source. Use the following guidelines to verify and assign the aggregation rule correctly: ■ Verify aggregation rules after importing a cube.3. However.2 . you should examine the aggregation rule for all measures after importing a cube to verify that the aggregation rule has been assigned correctly. and edit existing columns. For all measures assigned an aggregation rule value of None. aggregation rules are assigned correctly when you import the cube. keys. the BI Server will bypass its internal aggregation mechanisms and use the pre-aggregated measures. the aggregation rule will be reported as None. Delete. Deletes the selected object. if a measure is a calculated measure. The following are some guidelines for working with pre-aggregated measures: ■ External aggregation only applies to multidimensional data sources (such as MS Analysis Services and SAP/BW) that support these complex calculations. you can change it in the Physical Cube Column dialog box. Therefore.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Creating and Setting Up Physical Tables The Columns. Typically. some cubes contain very complex. About Externally Aggregated Measures In a multidimensional data source. The following list describes the buttons that appear in the tabs: ■ ■ ■ New. and foreign keys that are associated with the table. these measures are assigned an aggregate value of None. When you select an object and then click Edit. Edit. Setting it correctly might improve performance. multi-level based measures.1. ■ Setting the aggregation rule when you build the measures manually. You can then edit the object’s properties. If you need to change the aggregation rule. Opens the dialog box that corresponds to the tab. contact the multidimensional data source administrator to verify that the value of the aggregation rule is accurate. This section contains the following tasks: ■ ■ ■ ■ About Measures in a Multidimensional Data Source on page 88 Creating and Editing a Column in a Physical Table on page 89 Specifying a Primary Key for a Physical Table on page 90 Deleting a Physical Column For All Data Sources on page 91 About Measures in a Multidimensional Data Source You need to select the aggregation rule for a physical cube column carefully to make sure your measures are correct.

Modifying a column in the physical source table. It is generally safe to change a non-nullable value to a nullable value in a physical column. To create or edit a physical column 1 In the Physical layer of the Administration Tool. Setting the values to ones that are incorrect in the underlying data source might cause unexpected results.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Creating and Setting Up Physical Tables ■ You cannot assign external aggregation to measures from standard data sources (relational). causes the following results: ■ ■ ■ Creating a Source Column. perform one of the following steps: Oracle Business Intelligence Server Administration Guide Version 10. If you reimport columns.1. Data type. the properties of the column are set automatically. The data type of a logical column in the business model must match the data type of its physical column source. You can mix noncomplex measures from standard data sources (relational) with noncomplex measures from multidimensional data sources if they are aggregated through the Oracle BI Server. NOTE: Except when stated otherwise. ■ About Creating and Editing a Column With an Associated Column in an Alias Table Creating and editing a column in a physical source table that has a corresponding column in an alias table. The Oracle BI Server will pass these logical column data types to client applications. the characteristics and behavior of a physical cube column are the same as for other physical columns. then it is not complex and does not require external aggregation.3. If there are any data type mismatches. If null values can exist in the underlying table. correct them in the repository or reimport the columns with mismatched data types. you need to select this option. creates the same column on all its alias tables. You cannot mix noncomplex measures from standard data sources (relational) with complex measures from multidimensional data sources. Use caution in changing the data type values. ■ ■ Creating and Editing a Column in a Physical Table If the column is imported. Modifying a Source Column.2 89 . which is expected with certain functions and with outer joins. Creating a column in the physical source table. ■ Nullable. The option Nullable in the Physical Columns dialog box indicates whether null values are allowed for the column. The data type list indicates the data type of the columns. This allows null values to be returned to the user. Here are the steps involved: Deleting a Source Column. you also need to remap any logical column sources that reference the remapped columns. deletes the same column on all its alias tables. Deleting a column in the physical source table. modifies the same column on all its alias tables. If the measure is supported and can be mapped to a relational database. The following list contains information about nullable and data type values for columns imported into the Physical layer.

90 Oracle Business Intelligence Server Administration Guide Version 10. 8 Click OK. In the Keys tab. and then click OK. type a name for the key. ■ ■ Required if the same name (such as STATE) is used in multiple hierarchies. this field will store and display the unqualified name of a column (attribute) in an XML document. 5 6 Select the Nullable option if the column is allowed to have null values. For XML data sources.1. click the Keys tab. right-click a physical table and choose New Object > Physical Column from the shortcut menu. if you select VARCHAR.3.2 .Creating and Administering the Physical Layer in an Oracle BI Repository ■ Creating and Setting Up Physical Tables ■ ■ ■ To create a physical column. right-click a physical cube table. and choose New Object > Physical Cube Column. 7 (Multidimensional data sources) When the physical cube column is a measure. click New. For multidimensional data sources. type a name for the physical column. Optional for XML documents. NOTE: A new physical cube column is created as a measure by default. select a data type for the physical column. In the External Name field. select the appropriate value. 3 4 In the Type field. refer to “Setting Up Hierarchies in the Physical Layer for a Multidimensional Data Source” on page 91. type a description for the key. 2 In the Physical Column dialog box. (Optional) In the Physical Key dialog box. you need to type a value in the Length field. To create a physical cube column for a multidimensional data source. type an external name. To change this. double-click the physical column icon. To specify a primary key for a physical table 1 2 3 4 5 6 In the Physical layer of the Administration Tool. In the Physical Key dialog box. The External Name field stores and displays the fully qualified name of a column (attribute). In the Physical Table dialog box. If applicable. Select the check box for the column that defines the primary key of the physical table. Specifying a Primary Key for a Physical Table Use the Physical Key dialog box to specify the column or columns that define the primary key of the physical table. specify the length of the data type. in the Aggregation rule drop-down list. To edit an existing physical column. right-click a physical table and choose Properties.

queries may appear to work but might not return the correct results. Right-click the column and choose Delete. ■ ■ Hierarchies that are ragged or have a parent-child hierarchy are not imported.1. Alias tables. Setting Up Hierarchies in the Physical Layer for a Multidimensional Data Source The following are some guidelines to follow when setting up hierarchies in the Physical layer. The following is a list of some results that occur: ■ ■ Multidimensional data source. You can set up unbalanced hierarchies in the physical layer by changing the hierarchy type. To create and maintain hierarchies in the Physical Layer.3.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Creating and Setting Up Physical Tables Deleting a Physical Column For All Data Sources You delete a physical column in the same way for all data sources. To change the column from a measure to a property or a level key. perform the following tasks: ■ ■ ■ ■ ■ ■ ■ Adding a Hierarchy to a Physical Cube Table on page 91 Verifying Hierarchy Levels on page 93 Updating Member Counts on page 94 Viewing Members in Physical Cube Tables on page 94 Adding or Removing a Cube Column in an Existing Hierarchy on page 95 Removing a Hierarchy from a Physical Cube Table on page 95 Associating a Physical Cube Column with a Hierarchy Level on page 96 Adding a Hierarchy to a Physical Cube Table Most hierarchies are imported into the physical layer. Deleting a column in a physical source table from which an alias table has been created. the column will change back to a measure under the parent cube table. deletes the same column on all its alias tables. If you delete property or key columns from a level. If you delete a property or level key column from a level. CAUTION: You will need to build a matching hierarchy in the Business Model and Mapping layer. This section contains instructions for adding a hierarchy. If you do not do this. first add these columns to the physical layer and then associate them with a level in a hierarchy. If users need access to columns that are not imported.2 91 . locate the column that you want to delete. Columns associated with a hierarchy that is not imported will not be imported. To delete a physical column from the Physical layer 1 2 In the Physical layer of the Administration Tool. you need to set up a hierarchy and associate the cube column with the hierarchy. the association is deleted and the column changes to a measure under the parent cube table. Oracle Business Intelligence Server Administration Guide Version 10.

6 In the Browse dialog box. Subsequent columns will be properties. you should not select the Default member type ALL check box. click OK. starting with the highest level. 1997 might be designated as the default member. it is recommended that you select them in hierarchical order. The icon for the column that you select first changes to the key icon after it is associated with the level of a hierarchy. When you select columns to add to a hierarchy. complete the fields using Table 14 on page 93 as a guide. typically the ALL member. In the Physical Cube Table dialog box.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Creating and Setting Up Physical Tables Each level in a hierarchy has a level key. For example. The following list contains some guidelines about selecting the check box: ■ ■ If you import the cube. for the Year level. 5 To add one or more columns to the level. Before selecting the check box. NOTE: In a hierarchy.3. click the Hierarchies tab and click Add. In the Physical Level dialog box. In the Hierarchy dialog box. ask your multidimensional data source administrator if a non-ALL default member has been defined.1. complete the fields using Table 14 on page 93 as a guide. a default member must be used. In this case. To create a level. If a query does not explicitly refer to a member of a hierarchy. After adding columns to the hierarchy. locate the columns that you want to add to the hierarchy.2 . the Default member type ALL check box should be automatically selected. If you select multiple columns and bring them into the hierarchy at the same time. every hierarchy must be associated with a default member. and then click Select. double-click the table to which you want to add a hierarchy. The ALL member is identified during import. The data source cube table cannot set one column as a level key and the Oracle BI physical layer table set a different column as a level key. The Hierarchy dialog box contains a check box (Default member type ALL) that you use when you want to designate the ALL member as the default. 92 Oracle Business Intelligence Server Administration Guide Version 10. the order of the selected group of columns remains the same. Using the correct hierarchical sequence allows your queries to return accurate information and avoids errors. the check box will not be automatically selected. In the Physical Level dialog box. Therefore. perform the following steps: a b In the Hierarchy dialog box. perform the following steps: a b c In the Name list. To add a hierarchy to a physical cube table 1 2 3 4 In the Physical layer of the Administration Tool. levels should be added from the top down (you can reorder them later). If you build the hierarchies manually. Select the key column first. click Add. you can change the order of the columns in the Browse dialog box. This must match with the data source definition of the cube. in the Physical Level dialog box. NOTE: You can also add columns to a physical level by dragging and dropping physical columns on the level object. The first cube column associated with (added to) the level of a hierarchy is the level key. The first column you add will be a key. click Add.

(Dimension Unique Name) Dimension to which the hierarchy belongs. Type of hierarchy: Fully Balanced.1. verify the levels are correct. Check box that identifies a dimension as one involving time such as year. select a level and click Up or Down to correct the order of the levels. In the Hierarchies tab. 5 If you need to reorder the hierarchy levels. repeat Step 5 on page 92 through Step 6 on page 92. In the Hierarchy dialog box. click the Hierarchies tab. 8 When finished adding columns. The highest level in the hierarchy should be the first (highest) item in the list. In the Physical Cube Table dialog box. NOTE: You can add multiple columns by pressing Ctrl on your keyboard while clicking each column. quarter. you should verify the order of the levels in the hierarchy. Fully qualified name for the object. and Network. Property Hierarchy and Level Properties for Physical Cube Tables Description Check box used to designate the ALL member as the default. and then clicking Select. Use this property to change the order of the levels. In the Physical Cube Table dialog box. Table 14. Oracle Business Intelligence Server Administration Guide Version 10. click OK. Should not be selected for non-ALL default members. click OK.2 93 . Ragged Balanced. Default member type ALL Dimension Name External Name Level Number Time Dimension Type Verifying Hierarchy Levels It is strongly recommended that after setting up a hierarchy containing more than one level. click OK. The Hierarchy dialog box lists all the defined levels for the selected hierarchy.3. Identifies the order of levels in a hierarchy.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Creating and Setting Up Physical Tables 7 To add more columns. day. select a hierarchy. 6 7 When the levels are correct. double-click the table you want to verify. To verify the levels in a hierarchy 1 2 3 4 In the Physical layer of the Administration Tool. Unbalanced. in the Hierarchy dialog box. There must be multiple levels and you must select a level for the buttons to be available. and then click Edit.

the repository must be opened in online mode. last updated <time stamp>) To update member counts 1 2 3 In the Administration Tool. the current number of members are returned from the selected hierarchy. You might need to enlarge the window and the columns to view all the returned data. When you update member counts. Viewing Members in Physical Cube Tables To view members. This is available for physical cube tables from Analysis Services and SAP/BW data sources. The list of members by level in the hierarchy can help you determine if the XMLA connection on the server is set up properly. move your mouse over the hierarchy or level name.1. Select View Members. select Update Member Count. You can view members of hierarchies or levels in the physical layer of repositories. the updated member count appears in a message when you move the mouse above the hierarchy or level name.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Creating and Setting Up Physical Tables Updating Member Counts You must open the repository in online mode to update member counts. A window opens showing the number of members in the hierarchy and a list of the levels. click Close. Right-click one or more hierarchies and levels. move your cursor over a hierarchy or level. A message appears to let you know that the counts need to be updated or when they were last updated. To determine if counts need to be updated. If the counts need to be updated. You might want to reduce the time it takes to return data or the size of the returned data by specifying a starting point (Starting from option) and the number of rows you want returned (Show option). in the Physical layer. 94 Oracle Business Intelligence Server Administration Guide Version 10. An updated message appears if the update was successful. In the menu. right-click a hierarchy or level. a message appears. 3 4 Click Query to display results.3. After successfully updating the member count. When finished. The message appears in the following syntax: <hierarchy name> (<x> members.2 . in the Physical layer. To view members 1 2 In the Administration Tool.

3. you might import an entire physical multidimensional schema and only want to keep parts of it in the business model. you remove the hierarchy and the columns that are part of the hierarchy. select the columns that you want to add. In the Physical Cube Table dialog box. NOTE: When you delete a hierarchy in the Physical layer. In the Physical Level dialog box. double-click the table that you want to change. b c d 6 7 To remove a column. In the Physical Cube Table dialog box. In the Hierarchy dialog box. it is deleted from the hierarchy but remains in the cube table and is available for selection to add to other levels. Select the hierarchy you want to remove. click OK. Removing a Hierarchy from a Physical Cube Table You might want to remove a hierarchy if it has been built incorrectly and you want to start over or if you want to remove objects that are not being used.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Creating and Setting Up Physical Tables Adding or Removing a Cube Column in an Existing Hierarchy After setting up a hierarchy you may need to add or remove a column.1. Click Select. ❏ ❏ In the Browse dialog box. and then click Remove. and then click Edit. You might want to remove a hierarchy if it has been built incorrectly and you want to start over. To add a cube column to or remove a cube column from an existing hierarchy 1 2 3 4 5 In the Physical layer of the Administration Tool. To remove a hierarchy from a physical cube table 1 2 3 In the Physical layer of the Administration Tool. click the Hierarchies tab. in the Name list. select the column and click Remove. click Add. double-click the table that you want to change.2 95 . select the level and click Up or Down. perform one of the following steps: a To add a column. To change the sequence of the levels in a hierarchies. select the level and click Edit. In the Hierarchy dialog box. Select the hierarchy you want to change. In the Physical Cube Table dialog box. click the Hierarchies tab. For example. If you remove a cube column from a hierarchy. click OK. Oracle Business Intelligence Server Administration Guide Version 10. Click OK.

In the Physical Level dialog box. select the Population column and click Select. However. Create the physical cube column for Population. There can be zero or more attributes associated with a level.1. The XML tab of the Physical Table dialog box provides the same functionality as the XML tab of the Connection Pool dialog box. Creating Physical Layer Folders This section contains the following topics: ■ ■ ■ Creating Physical Layer Catalogs and Schemas on page 97 Using a Variable to Specify the Name of a Catalog or Schema on page 97 Setting Up Display Folders in the Physical Layer on page 98 96 Oracle Business Intelligence Server Administration Guide Version 10. In the Hierarchy dialog box.3. click Add. refer to “Setting Up Additional Connection Pool Properties for an XML Data Source” on page 76. The first physical cube column that is associated with a level becomes the level key.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Creating Physical Layer Folders Associating a Physical Cube Column with a Hierarchy Level Attributes are used in the physical layer to represent columns that only exist at a particular level of a hierarchy. For more information. In the Browse dialog box. ■ ■ ■ ■ ■ ■ Create the hierarchy and the State level. If you associate subsequent columns with a level. In the Physical Cube Table dialog box. select the State level and click Edit. if Population is an attribute that is associated with the level State in the Geography hierarchy. The measure icon changes to the property icon. click Add.2 . setting properties in the Physical Table dialog box will override the corresponding settings in the Connection Pool dialog box. Setting Physical Table Properties for an XML Data Source Use the XML tab to set or edit properties for an XML data source. in the Hierarchies tab. when you query for Population you are implicitly asking for data that is at the State level in the hierarchy. they become attributes. Example of Associating a Physical Cube Column with a Hierarchy You have a level called State and you want to associate a column called Population with this level. For example. not level keys.

and then choose New Object > Physical Catalog. NOTE: The Dynamic Name tab is not active unless at least one session variable is defined. and then click OK. and then click OK. You would initialize a session variable named Client.3. In the Physical Schema dialog box. Creating Schemas The schema object contains tables and columns for a physical schema. Creating Catalogs In the Physical layer of a large repository. Using a Variable to Specify the Name of a Catalog or Schema You can use a variable to specify the names of catalog and schema objects. that could be used to set the name for the catalog object dynamically when a user signs on to the Oracle BI Server.2 97 .1. you have data for multiple clients and you structured the database so that data for each client was in a separate catalog. Oracle Business Intelligence Server Administration Guide Version 10. Type a description for the catalog. type a name for the catalog. Type a description for the schema. A schema contains only the metadata information for a particular user or application. To create a catalog 1 2 3 In the Physical layer. you cannot create a catalog. right-click a database object. you cannot create schemas. and then choose New Object > Physical Schema. If your database has one or more schemas. To create a schema 1 2 3 In the Physical layer. Oracle BI Administrators can create catalogs that contain one or more physical schemas. A database can have either catalogs or schemas but not both. Model the physical layer after the way your database is structured. For example. A catalog contains all the schema (metadata) for a database object.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Creating Physical Layer Folders Creating Physical Layer Catalogs and Schemas Catalogs are optional ways to group different schemas. In the Physical Catalog dialog box. type a name. right-click a database object. If your database has one or more catalogs. Schema objects are optional in the Physical layer of the Administration Tool. for example. NOTE: You must create a database object before you create a catalog object or a schema object.

Click OK. refer to “Using the Options Dialog Box—Repository Tab” on page 31. To select the highlighted variable. Setting Up Display Folders in the Physical Layer Oracle BI Administrators can create display folders to organize table objects in the Physical layer. They have no metadata meaning. The name of the variable appears in the dynamic name field. When a dynamic name is assigned. right-click a database object. In the Physical Display Folder dialog box. and choose New Object > Physical Display Folder. NOTE: Deleting objects in the display folder deletes only the shortcuts to those objects. the Select button toggles to the Clear button. When no dynamic name is assigned.2 . In the Browse dialog box. To sort column entries in the Dynamic Name tab ■ You can sort the entries in a column by clicking on the associated column heading. You can hide the objects so that you only view the shortcuts in the display folder. according to the column type. For more information about hiding these objects. After you create a display folder. The value Not Assigned displays in the dynamic name field. Not Assigned displays in the dynamic name field to the left of the Select button. Name or Default Initializer. type a name for the folder. the selected tables appear in the folder as a shortcut and in the Physical layer tree as an object. To remove assignment for a session variable in the Dynamic Name tab ■ Click Clear to remove the assignment for the variable as the dynamic name. To add tables to the display folder. The initial value for the variable (if any) is shown in the Default Initializer column. select the fact or physical tables you want to add to the folder and click Select. and the name of the variable displays in the dynamic name field. click Select. in the Tables tab. and the Select button toggles to the Clear button.3. perform the following steps: a b 4 Click Add. To set up a physical display folder 1 2 3 In the Physical layer. click the name of the session variable that you want to use. and the Clear button toggles to the Select button. 98 Oracle Business Intelligence Server Administration Guide Version 10.1. Clicking on a column heading toggles the order of the entries in that column between ascending and descending order.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Creating Physical Layer Folders To specify the session variable to use in the Dynamic Name tab 1 2 In the Name column of the Dynamic Name tab.

You need to specify multi-database joins to combine the data from different databases. For more information about the Physical Table Diagram. multi-database joins will be significantly slower than joins between tables within the same database.2 99 . regardless of the database type. It is recommended to avoid them whenever possible. Fragmented Tables Example Oracle Business Intelligence Server Administration Guide Version 10. With fragmented tables. refer to “Defining Physical Joins in the Physical Diagram” on page 101. Joins that are defined to enforce referential integrity constraints can result in incorrect joins being specified in queries. While the Oracle BI Server has several strategies for optimizing the performance of multi-database joins.1. you need to define all of the join conditions between each fragment and all the tables it relates to. Any other joins within each database or between databases have to be explicitly defined to express relationships between tables in the physical layer. Figure 9 on page 99 shows the physical joins with a fragmented sales table and a fragmented customer table where they are fragmented the same way (A through M and N through Z). joins between a multipurpose lookup table and several other tables can result in unnecessary or invalid circular joins in the SQL issued by the Oracle BI Server. When you import keys in a physical schema. The joins can be between tables in any databases.3. NOTE: Imported key and foreign key joins do not have to be used in metadata.Creating and Administering the Physical Layer in an Oracle BI Repository ■ About Physical Joins About Physical Joins All valid physical joins need to be configured in the Physical layer of the Administration Tool. Multi-Database Joins A multi-database join is defined as a table under one metadata database object that joins to a table under a different metadata database object. a database might store sales data for customers with last names beginning with the letter A through M in one table and last names from N through Z in another table. For example. Fragmented Data Fragmented data is data from a single domain that is split between multiple tables. Edit the Physical Table Diagram window to specify multi-database joins. For example. the primary key-foreign key joins are automatically defined. and are performed within the Oracle BI Server. Figure 9. NOTE: You do not create joins for multidimensional data sources.

The primary key is defined as a column or set of columns where each value is unique and identifies a single row of the table. Joins for Fragmented Tables Example TIP: Avoid adding join conditions where they are not necessary (for example. complex joins. Defining Physical Foreign Keys and Joins You can create physical foreign keys. Figure 10. you do not specify expressions. you can specify expressions and the specific columns on which to create the join. complex joins are joins over nonforeign key and primary key columns.2 .1. as shown in Figure 10 on page 100.3. NOTE: You do not create joins for multidimensional data sources. A foreign key is a column or a set of columns in one table that references the primary key columns in another table. Primary Key and Foreign Key Relationships A primary key and foreign key relationship defines a one-to-many relationship between two tables. To define physical joins. between Sales A to M and Customer N to Z in Figure 9 on page 99). When you create a complex join in the physical layer. you need to define all of the valid joins. In this case. Complex Joins In the physical layer of the repository. and logical joins using the Joins Manager or the Physical or Logical Table Diagram. Extra join conditions can cause performance degradations.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Defining Physical Foreign Keys and Joins In some cases. you might have a fragmented fact table and a fragmented dimension table. You can specify primary key and foreign keys in the Physical Table Diagram or by using the Keys tab and Foreign Keys tab of the Physical Table dialog box. refer to the following topics: 100 Oracle Business Intelligence Server Administration Guide Version 10. When you create a complex join in the business model layer. but the fragments might be across different values. Also refer to “Defining Physical Joins in the Physical Diagram” on page 101 and “Creating and Administering Columns and Keys in a Physical Table” on page 87.

If you right-click a physical object. refer to Table 15 on page 102. To create a physical foreign key or complex join 1 2 In the Administration Tool toolbar.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Defining Physical Foreign Keys and Joins ■ ■ Defining Physical Foreign Keys or Complex Joins with the Joins Manager on page 101 Defining Physical Joins in the Physical Diagram on page 101 Defining Physical Foreign Keys or Complex Joins with the Joins Manager You can use the Joins Manager to view join relationships and to create physical foreign keys and complex joins. and then locate the table that the foreign key references. type a name for the foreign key. If you click the Physical diagram icon on the toolbar. choose an option from Table 15 on page 102. whether or not the tables are in the same database. 3 4 5 6 7 In the Physical Foreign Key dialog box.3. In the Joins Manager dialog box. Click the Browse button for the Table field on the left side of the dialog box. 8 To open the Expression Builder. In the Browse dialog box. select Manage > Joins. The Physical Complex Join dialog box appears. the Physical Table Diagram window opens and only the selected objects appear. 9 Click OK to save your work. To display the Physical Table Diagram 1 2 In the Administration Tool. specify a database hint. right-click a table and choose Physical Diagram. Defining Physical Joins in the Physical Diagram You can define foreign keys and complex joins between tables.2 10 1 . ■ Select Action > New > Foreign Key. The expression displays in the Expression pane. Select the columns in the left table that the key references. For more information about these options. in the Physical layer. perform one of the following tasks: ■ Select Action > New > Complex Join. If appropriate.1. several options are available. In the shortcut menu. For more information. Oracle Business Intelligence Server Administration Guide Version 10. Select the columns in the right table that make up the foreign key columns. click the button to the right of the Expression pane. double-click a table. refer to “Using Database Hints” on page 106.

3.2 . NOTE: The driving table is shown on this window. then using this option diagrams every table. If all the objects in a schema are related. Joins display only if they exist between the objects that you select. 5 Select the joining columns from the left and the right tables. To define a foreign key join or a complex join 1 2 In the Physical layer of the Administration Tool. Repeat this process until all the tables you need appear in the Physical Table Diagram window. The SQL join conditions appear in the expression pane of the window. in the Physical Table Diagram window. Table 15.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Defining Physical Foreign Keys and Joins 3 To add another table to the Physical Table Diagram window. refer to “Specifying a Driving Table” on page 140. select one or more tables and execute one of the Physical Diagram commands from the right-click menu. Displays the selected objects and any tables that join to the objects that you select. Physical Diagram Menu Object(s) and all joins Object(s) and direct joins Object(s) and direct joins in the business model Selected object(s) only Displays the selected objects only. as well as each object that is related directly or indirectly to the selected object through some join path. perform the following steps: a b Leave the Physical Table Diagram window open. but it is not available for selection because the Oracle BI Server implements driving tables only in the Business Model and Mapping layer. Physical Diagram Shortcut Menu Options Description Displays the selected objects.1. Move the cursor to the table to which you want to join (the table representing many in the one-to-many join). The Physical Foreign Key or Physical Join dialog box appears. For more information about driving tables. Click one of the following icons on the Administration Tool toolbar: ■ ■ New foreign key New complex join 3 4 With this icon selected. Right-click to select a table you want to add and choose one of the Physical Diagram options described in Table 15 on page 102. left-click the first table in the join (the table representing one in the one-to-many join) to select it. even if you only select one table. Option Not available at this time. and then left-click the second table to select it. 102 Oracle Business Intelligence Server Administration Guide Version 10.

Opaque views can be used without deploying them but the Oracle BI Server has to generate a more complex query when an opaque view is encountered. For instructions. click the button to the right of the Expression pane. NOTE: Databases such as XLS and nonrelational database do not support opaque views and. An opaque view should be used only if there is no other solution. In the repository. The expression displays in the Expression pane. For more information. you should create a physical table or a materialized view. cannot run the view deployment utility. 7 To open the Expression Builder.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Deploying Opaque Views 6 If appropriate.1. In online mode. After deploying an opaque view. refer to “Using Database Hints” on page 106.2 10 3 . Oracle Business Intelligence Server Administration Guide Version 10. in the Features tab. make sure that the CREATE_VIEW_SUPPORTED SQL feature is selected in the Database dialog box. Oracle Native (client) drivers are also supported in the offline mode for deploying views. opaque views appear as view tables in the physical databases but the view does not actually exist.3. You deploy an opaque view in the physical database using the Deploy View(s) utility. When you need a new table. To verify opaque views are supported by a database. it is called a deployed view. refer to “Specifying SQL Features Supported by a Database” on page 64. specify a database hint. therefore. 8 Click OK to apply the selections. view deployment is available for supported databases using Import through server (the settings on the client will be ignored). Deploying Opaque Views This section contains the following topics: ■ ■ ■ ■ ■ About Deploying Opaque Views on page 103 Deploying Opaque View Objects on page 103 Undeploying a Deployed View on page 105 Guidelines for Deleting an Opaque View or Deployed View on page 106 Guidelines for Redeploying Opaque Views on page 106 About Deploying Opaque Views An opaque view is a physical layer table that consists of a Select statement. Deploying Opaque View Objects In offline mode. the Deploy View(s) utility is available when importing from databases with ODBC and DB2cli data sources.

If you change the preassigned name. the Create View SQL statement executes and attempts to create the deployed views for any qualifying objects. or viewname. The connection pool settings determine if the schema name is added. When you select Deploy View(s). the object name will be automatically transformed to a valid name using the following Name Transform algorithm: 1 2 3 All non-alphanumeric characters will be removed. the Create View SQL statement executes and attempts to create the deployed view objects. The following list describes the ways you can initiate view deployment and the results of each method: ■ ■ Right-click a single opaque view object.2 . Right-click a physical schema or physical catalog. the following occurs: ■ ■ Views that have been successfully and unsuccessfully deployed appear in a list.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Deploying Opaque Views The Create View Select Statement The SQL statement for deploying opaque views in the physical layer of the repository is available for supported databases. the create view statement will fail during view deployment. Syntax: CREATE VIEW <view name> AS <select statement>. If any opaque view object exists in the schema or catalog. the right-click menu contains the Deploy View(s) option. the right-click menu contains the Deploy View(s) option. If these guidelines are not followed. To determine which of your databases support opaque views. Only repository variables can be used in the definition. a brief reason appears in the list. the new name must be alphanumeric and no more than 18 characters. When you select Deploy View(s). Right-click several objects. For opaque view objects. the Create View SQL statement executes and attempts to create a deployed view for the object. the first 16 characters will be kept. If there are 16 or more after Step 1 on page 104. Two formats: schema. the Create View SQL statements for all qualifying objects execute and attempt to create deployed views for the qualifying objects contained in the selected schema or catalog. If at least one of the selected objects is an opaque view object. the right-click menu contains the Deploy View(s) option. When you select Deploy View(s).3. ■ During deployment. where <select statement> <view name> The user-entered SQL in the opaque view object. Two digits starting from 00 to 99 will be appended to the name to make the name unique in the corresponding context. contact your system administrator or consult your database documentation. After the deployment process completes. 104 Oracle Business Intelligence Server Administration Guide Version 10. If SQL is invalid. An error will generate if a session variable is used in the view definition. For unsuccessful deployments.1.viewname. names are assigned to the views. When you select Deploy View(s).

1. NOTE: If you change the type back to Select. in the Select Connection Pool dialog box. If there are multiple connection pools defined for the database.2 10 5 . clear the check boxes. To deploy an opaque view 1 2 3 In the Physical layer of the repository.Deploy View(s) dialog box. the right-click menu contains the Undeploy View(s) option. and then the View Deployment Messages dialog box appears. 5 6 In the View Deployment Messages dialog box. choose Deploy View(s). right-click a database. To undeploy a deployed view 1 In the Physical layer of the repository. physical catalog. Undeploying a Deployed View Running the Undeploy View(s) utility against a deployed view deletes the views and converts the table back to an opaque view with its original SELECT statement. or physical table. When you have performed the desired tasks. In the right-click menu. the object type of the opaque view changes from Select to None and the deployed view will be treated as a regular table. if you wish.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Deploying Opaque Views ■ If deployment is successful. perform the following steps: a In the New Table Name column. change the new deployed view names. b 4 If you do not wish to deploy one or more of the views at this time. Oracle Business Intelligence Server Administration Guide Version 10. the associated opaque views will be dropped from database or an error message will appear. the view icon changes to the deployed view icon for successfully deployed views. refer to “Guidelines for Deleting an Opaque View or Deployed View” on page 106 ■ In the Administration Tool. This action will repeat until all names pass validation. schema. A list of views that will be undeployed appears. The SQL statement (CREATE VIEW) executes. For information about deleting deployed views. 2 Choose Undeploy View(s). If a deployed view exists that is related to the selected object. click OK.3. in the appropriate rows. right-click the opaque view that you want to deploy. choose a connection pool and click Select. you can search for views using Find and Find Again or copy the contents. If the change does not conform to the naming rules a new name will be assigned and the dialog box appears again so that you can accept or change it. In the View Deployment .

3. you can delete it from the repository. you can search for undeployed views using Find and Find Again. If the opaque view has not been deployed. you associate it with database objects. in both online and offline modes. 9i. Removing a deployed view. the Oracle BI Server will not be able to query the view object.Undeploy View(s) dialog box. When you add a hint to the repository. a database view table is created physically in the back-end database and the repository. you can add hints to a repository. When the object associated with the hint is queried.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Using Database Hints 3 4 5 6 If you do not wish to undeploy one or more of the views at this time. 106 Oracle Business Intelligence Server Administration Guide Version 10. or you can copy the contents. Guidelines for Deleting an Opaque View or Deployed View Use the following guidelines to remove an opaque or deployed view object in the repository: ■ ■ Removing an undeployed opaque view in the repository. you can choose to redeploy it. CAUTION: You should not delete the physical database view in the back-end database. click OK to remove the views. When you have performed the desired tasks. When you deploy an opaque view. The Oracle BI Server supports hints only for Oracle 8i. to optimize the performance of queries.1. Make sure that you remove a deployed view before deploying the opaque view again. the Oracle BI Server inserts the hint into the SQL statement. clear the check boxes. The Administration Tool does not distinguish between a first-time deployment and a redeployment. Failure to do this causes the deploy operation to fail. NOTE: Hints are database specific. Hints override the optimizer’s execution plan. and restores the SELECT statement of the object in the physical layer of repository. A message appears if the undeployment was successful. This removes the opaque view from the back-end database. you must undeploy the view before deleting it. click OK. changes the Object Type from None to Select. and an error message will be returned from the database. Using the Administration Tool. In the View Deployment Messages dialog box. Therefore. Using Database Hints Database hints are instructions placed within a SQL statement that tell the database query optimizer the most efficient way to execute the statement. If deleted. You use the Undeploy View(s) utility in the Administration Tool. so you can use hints to improve performance by forcing the optimizer to use a more efficient plan. View Deployment . When you undeploy the view it is removed automatically from the back-end database. Guidelines for Redeploying Opaque Views After removing an opaque view. and 10g servers.2 . in the appropriate rows.

However. You find queries against the ORDER_ITEMS table to be slow. The syntax for the Leading hint is leading(table_name). Each of these dialog boxes contains a Hint field. Database Objects That Accept Hints Dialog Box Physical Join . Index Hint The Index hint instructs the optimizer to scan a specified index rather than a table. FAST_INDEX) Leading Hint The Leading hint forces the optimizer to build the join order of a query with a specified table. The syntax for the Index hint is index(table_name. hints can also negatively affect performance if they result in a suboptimal execution plan. You review the query optimizer’s execution plan and find the FAST_INDEX index is not being used. The following guidelines are provided to help you create hints to optimize query performance: ■ You should only add hints to a repository after you have tried to improve performance in the following ways: Oracle Business Intelligence Server Administration Guide Version 10.2 10 7 . Table 16. refer to the Oracle SQL Reference documentation for the version of the Oracle server that you use.General tab Database Object Physical complex join Physical foreign key Physical table .3.General tab Physical Table . If you were creating a foreign key join between the Products table and the Sales Fact table and wanted to force the optimizer to begin the join with the Products table.object type of Alias Physical table .Creating and Administering the Physical Layer in an Oracle BI Repository ■ Using Database Hints Table 16 on page 107 shows the database objects with which you can associate hints.object type of None Usage Examples This section provides a few examples of how to use Oracle hints in conjunction with the Oracle BI Server. index_name). navigate to the Administration Tool’s Physical Table dialog box and type the following text in the Hint field: index(ORDER_ITEMS. The following hypothetical example explains how you would use the Index hint. you would navigate to the Administration Tool’s Physical Foreign Key dialog box and type the following text in the Hint field: leading(Products) Performance Considerations Hints that are well researched and planned can result in significantly better query performance. For more information about Oracle hints. It also shows the Administration Tool dialog box that corresponds to the database object.Complex Join Physical Foreign Key Physical Table . To add this hint to the repository. into which you can type a hint to add it to the repository.1. You create an Index hint to force the optimizer to scan the FAST_INDEX index rather than the ORDER_ITEMS table.

NOTE: Although hints are identified by using SQL comment markers (/* or --).1. refer to Oracle8i SQL Reference. For a description of available Oracle hints and hint syntax. To create a hint 1 Navigate to one of the following dialog boxes: ■ ■ ■ Physical Table—General tab Physical Foreign Key Physical Join—Complex Join 2 Type the text of the hint in the Hint field and click OK. The Oracle BI Server inserts the comment markers when the hint is executed. do not type SQL comment markers when you type the text of the hint.3. Creating Hints The following procedure provides the steps to add hints to the repository using the Administration Tool.Creating and Administering the Physical Layer in an Oracle BI Repository ■ Using Database Hints ■ ■ Added physical indexes (or other physical changes) to the Oracle database. ■ Avoid creating hints for physical table and join objects that are queried often. NOTE: If you drop or rename a physical object that is associated with a hint. 108 Oracle Business Intelligence Server Administration Guide Version 10.2 . Made modeling changes within the server. you must also alter the hints accordingly.

or logical. Oracle Business Intelligence Server Administration Guide Version 10. refer to “Creating and Administering the Physical Layer in an Oracle BI Repository” on page 55 and “Creating the Business Model Layer for a Multidimensional Data Source” on page 110. After creating all of the elements of the Physical layer. You create one or more business models in the logical layer and create logical tables and columns in each business model. To automatically map objects in the Business Model and Mapping layer to sources in the Physical layer.2 10 9 . When you drag a physical table to the Business Model and Mapping layer.1. The Business Model and Mapping layer of the Administration Tool defines the business.5 Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository The following topics contain information about creating the business model and logical objects: ■ ■ ■ ■ ■ ■ ■ ■ ■ Creating Business Model Objects on page 110 Duplicate Business Model and Presentation Catalog on page 110 Creating and Administering Logical Tables on page 111 Creating and Administering Logical Columns on page 113 Creating and Administering Logical Table Sources (Mappings) on page 117 About Dimensions and Hierarchical Levels on page 125 Process of Creating and Administering Dimensions on page 126 Setting Up Display Folders in the Business Model and Mapping Layer on page 136 Defining Logical Joins on page 136 About Creating the Business Model and Mapping Layer This section is part of the roadmap for planning and setting up a repository. a logical join is created for each physical join. a corresponding logical table is created. a corresponding logical column is created. If you drag multiple tables at once.3. For more information. For each physical column in the table. For more information. you can drag and drop Physical layer objects to a business model in the logical layer. but only the first time the tables are dragged onto a new business model. model of the data and specifies the mapping between the business model and the physical layer schemas. you can drag tables or columns from the Physical layer to the Business Model and Mapping layer. refer to “Planning and Creating an Oracle BI Repository” on page 39.

In the right-click menu. If you wish to make the corresponding presentation layer available for queries. select the business model to copy. However. You can save a repository in offline mode even though the business models may be inconsistent. To create the business model layer. remember to save your repository from time to time. select the option Available for queries. you can drag and drop the physical layer cube to the logical layer. Duplicate Business Model and Presentation Catalog This allows you to select a matching business model and presentation catalog. and assign new names to the duplicates. NOTE: The business model should be consistent before you make select this option. and then click OK. To create a business model 1 2 3 4 Right-click in the Business Model and Mapping layer below the existing objects.1. NOTE: Aliases are not copied. you still have to reorganize the columns into appropriate logical tables and recreate the hierarchies. right-click a business model. 110 Oracle Business Intelligence Server Administration Guide Version 10. In the Copy Business Model and Presentation Catalog dialog box. Creating Business Model Objects The Business Model and Mapping layer of the Administration Tool can contain one or more business model objects. make a copy. Specify a name for the business model. because the contents of the physical cube are added as one logical table. Select the option New Business Model from the shortcut menu.3.Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository ■ Creating Business Model Objects Creating the Business Model Layer for a Multidimensional Data Source Setting up the Business Model and Mapping (logical) layer for multidimensional data sources is similar to setting up the logical layer for a relational data source. To copy a business model and its presentation catalog 1 2 3 In the Business Model and Mapping layer. 5 (Optional) Type a description of the business model. NOTE: When you work in a repository in offline mode. A business model object contains the business model definitions and the mappings from logical to physical tables for the business model. choose Duplicate with Presentation Catalog.2 .

The logical schema defined in each business model needs to contain at least two logical tables and you need to define relationships between them. If a table does not exist in your physical schema. refer to “Defining Logical Joins with the Joins Manager” on page 137 and “Defining Logical Joins with the Business Model Diagram” on page 139. if you create new tables or subsequently drag additional tables from the Physical layer to the Business Model and Mapping layer.Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository ■ Creating and Administering Logical Tables 4 Specify new names for the business model and its catalog in the appropriate name fields. When you drag physical tables (with key and foreign key relationships defined) to a business model. If you drag and drop physical tables from the Physical layer to the Business Model and Mapping layer. Each logical table has one or more logical columns and one or more logical table sources associated with it. After you drag and drop objects into the Business Model and Mapping layer. Drag and drop operations are usually the fastest method for creating objects in the Business Model and Mapping layer. and configure the logical keys (primary and foreign). the columns belonging to the table are also copied. Creating and Administering Logical Tables Logical tables exist in the Business Model and Mapping layer. The copied business model appears in the Business Model and Mapping layer window.3. and then click OK. you create logical tables by dragging and dropping a physical table from the Physical layer to a business model in the Business Model and Mapping layer.1. reorder the logical table sources. You can change the logical table name. Additionally. This occurs only if the tables that you drag include the table with the foreign keys. logical keys and joins are created that mirror the keys and joins in the physical layer. the logical links between the new or newly dragged tables and the previously dragged tables must be created manually. Oracle Business Intelligence Server Administration Guide Version 10. This section includes the following topics: ■ ■ ■ Creating Logical Tables on page 111 Specifying a Primary Key in a Logical Table on page 112 Reviewing Foreign Keys for a Logical Table on page 113 Creating Logical Tables Typically.2 11 1 . For more information about joins. you can modify them in any way necessary without affecting the objects in the Physical layer. you would need to create the logical table manually.

Click OK. For more information. When you drop them. select the Keys tab and then click New. Specifying a Primary Key in a Logical Table After creating tables in the Business Model and Mapping layer. 112 Oracle Business Intelligence Server Administration Guide Version 10. refer to “Creating and Administering Logical Table Sources (Mappings)” on page 117. 2 Drag and drop the table objects to a business model in the Business Model and Mapping layer.1. you must create all keys and joins manually. You must include the table with the foreign keys if you want to preserve the keys and joins from the physical layer. the table objects. refer to “Reviewing Foreign Keys for a Logical Table” on page 113. To specify a primary key in a logical table 1 2 In the Business Model and Mapping layer. Logical keys can be composed of one or more logical columns. create or change mappings to the table source. 2 3 In the General tab. NOTE: After creating a logical table manually. right-click the business model in which you want to create the table and select New Object > Logical Table. you specify a primary key for each table. However. Adding or Editing Logical Table Sources You can add a new logical table source. are created automatically in the Business Model and Mapping layer. edit or delete an existing table source. NOTE: Logical keys are optional for logical fact tables. refer to “Identifying Dimension Hierarchies” on page 43. and define when to use logical tables sources and how content is aggregated.2 . type a name for the logical table.Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository ■ Creating and Administering Logical Tables To create a logical table by dragging and dropping 1 Select one or more table objects in the Physical layer. For instructions about how to perform these tasks. double-click a table. To create a logical table manually 1 In the Business Model and Mapping layer. including the physical source mappings. In the Logical Table dialog box. select the option Bridge table. The Logical Table dialog box appears.3. For more information. it is recommended that you do not specify logical keys for logical fact tables. If this is a bridge table. Logical dimension tables must have a logical primary key. 4 5 (Optional) Type a description of the table.

For more information. You can reorder logical columns in the Business Model and Mapping layer. select the Foreign Keys tab. Logical columns are displayed in a tree structure expanded out from the logical table to which they belong. double-click a table. If the physical table has a primary key. it is displayed with a sigma icon. refer to “Defining Logical Joins” on page 136. To review foreign key information for a logical table 1 2 3 In the Business Model and Mapping layer. However. In the Logical Table dialog box. can be created later. CAUTION: It is recommended that you do not have foreign keys for logical tables. Reviewing Foreign Keys for a Logical Table You can use the Foreign Keys tab to review the foreign keys for a logical table. This is the method recommended for the Oracle BI repository. it is recommended that you use complex logical joins instead of foreign key logical joins. then there is more flexibility in defining the primary key.1. Other logical columns. Click OK. If the column is a primary key column or participates in a primary key. Select the check box for the column that defines the key of the logical table.3. in the Foreign Keys list. This section includes the following topics: ■ ■ ■ Creating and Moving a Logical Column Setting Default Levels of Aggregation for Measure Columns on page 115 Associating an Attribute with a Logical Level in Dimension Tables on page 116 Oracle Business Intelligence Server Administration Guide Version 10. The Logical Foreign Key dialog box appears. especially ones that involve calculations based on other logical columns. perform the following steps: a b 4 Type a name for the key. For more information about changing information in this dialog box. If the column has an aggregation rule.Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository ■ Creating and Administering Logical Columns 3 In the Logical Key dialog box. A logical key for a fact table must be made up of the key columns that join to the attribute tables. select a key and click Edit. the column is displayed with the key icon. To review an existing foreign key. In fact tables. Creating and Administering Logical Columns Many logical columns are automatically created by dragging tables from the Physical layer to the Business Model and Mapping layer. If complex logical joins are used. refer to “Defining Logical Joins” on page 136. then this field can be used as a logical key for the fact table.2 11 3 . you can create logical foreign keys and logical complex joins using either the Joins Manager or the Business Model Diagram.

The name of the business model and the associated logical table appear in the Belongs to Table field. numbers are ordered by their alphabetic spelling and not divided into a separate group. Therefore. you can specify a different column on which to base the sort. in lexicographical sort order. you might want months to be sorted in chronological order. To achieve the desired sort. About Sorting on a Logical Column For a logical column. Click OK. your table should have a month key (such as MONTH_KEY) with values of 1 (January). and then drag and drop it to the Presentation layer. Lexicographical sort arranges the results in alphabetic order such as in a dictionary. d 6 7 In the Browse dialog box. 3 (March). In the General tab.2 . click View to open the Logical Column dialog box for that column. and so on. 2 (February). (Optional) If you want the logical column to be derived from other logical columns. From the shortcut menu. select a column To view the column details. In the Logical Column dialog box. To create a logical column 1 2 3 4 In the Business Model and Mapping layer. January. and then click Cancel. click Clear. and so on. If you make changes. the results would be returned as February.1. perform the following steps: a b Select the check box for Use existing logical columns as source. right-click a logical table.3. For example. NOTE: You can make some changes in this dialog box. You can create a logical column object in the Business Model and Mapping layer. In this type of sort. select the General tab. if you sorted on month (using a column such as MONTH_NAME). Click the ellipsis button next to the text box to open the Expression Builder. (Optional) To remove the Sort order column value. you set the Sort order column field for the MONTH_NAME column to be MONTH_KEY. perform the following steps: a b c Next to the Sort order column field. type a name for the logical column. This changes the sort order of a column when you do not want to order the values lexicographically. In the Browse dialog box. Then a request to order by MONTH_NAME would return January. 114 Oracle Business Intelligence Server Administration Guide Version 10. March. March. However. 5 (Optional) If you want to assign a different column on which to base the sort order for a column. select New Object > Logical Column. click OK to accept the changes instead of Cancel. February. click Set. and so on.Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository ■ Creating and Administering Logical Columns Creating and Moving a Logical Column Use the General tab to create or edit the general properties of a logical column.

A logical table source is considered to have dense data if it has row for every combination of its associated dimension levels. Oracle Business Intelligence Server Administration Guide Version 10. If you select Ignore.Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository ■ Creating and Administering Logical Columns c d 8 In the Expression Builder . you can set the default aggregation rule to Aggr_External. When setting up a aggregate rules for a measure column. drag and drop a logical column to a different logical table. NOTE: The type and length fields are populated automatically based upon the column’s source.Derived logical column dialog box.2 11 5 . CAUTION: Specifying data is dense when any table source that is used by this column does not contain dense data will return incorrect results. This helps the Oracle BI Server take advantage of aggregate tables when the default aggregation rule is Count Distinct. NOTE: You can select multiple columns to move. 9 Click OK. you can specify that data is dense only if all the logical table sources to which it is mapped are dense.3. 2 3 4 5 In the Sources for moved columns dialog box. Setting Default Levels of Aggregation for Measure Columns You need to specify aggregation rules for mapped logical columns that are measures. By default. specify the expression from which the logical column should be derived. Aggregation should only be performed on measure columns. on rare occasions you might have logical table source with dense data. a copy of the logical source associated with the logical column will be created in the Sources folder of the destination table. The column that you moved or copied will be associated with this logical source. with the possible exception of the aggregation COUNT and Count Distinct. To move or copy logical columns 1 In the Business Model and Mapping layer. You can specify an override aggregation expression for specific logical table sources. then the default rule prevails. NOTE: For multidimensional logical columns. However. data is considered sparse.1. in the Use existing drop-down list. select an action. in the Action area. (Optional) In the Logical Column dialog box. no logical source will be added in the Sources folder of the destination table. Measure columns should exist only in logical fact tables. If you do not specify any override. you must select a logical source from the Sources folder of the destination table. Click OK. If you select Use existing. If you select Create new. type a description of the logical column.

Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository ■ Creating and Administering Logical Columns

To specify a default aggregation rule for a measure column 1 2 3
In the Business Model and Mapping layer, double-click a logical column. In the Logical Column dialog box, click the Aggregation tab. In the Aggregation tab, complete the following fields.

If the aggregation rule will be based on a time dimension, select the Based on dimensions check box. The Data is dense check box appears.

If all the logical table sources to which this column is mapped are dense, you should select the Data is dense check box. CAUTION: Selecting this check box indicates that all sources to which this column is mapped have a row for every combination of dimension levels that they represent. Checking this box when any table source that is used by this column does not contain dense data will return incorrect results.

Select one of the aggregate functions from the Default Aggregation Rule drop-down list. The function you select is always applied when an end user or an application requests the column in a query.

4

Click OK.

Associating an Attribute with a Logical Level in Dimension Tables
Attributes can be associated with a logical level by selecting the dimensional level on the Levels tab. Measures can be associated with levels from multiple dimensions and will always aggregate to the levels specified. Dimensions appear in the Dimensions list. If this attribute is associated with a logical level, the level appears in the Levels list. Another way to associate a measure with a level in a dimension is to expand the dimension tree in the Business Model and Mapping layer, and then use drag-and-drop to drop the column on the target level. For more information about level-based measures, refer to “Level-Based Measure Calculations Example” on page 131.

To associate a measure with a logical level in a dimension 1 2 3
In the Business Model and Mapping layer, double-click a logical column. In the Logical Column dialog box, click the Levels tab. In the Levels tab, click the Logical Levels field for the dimension from which you want to select a logical level. NOTE: In the Levels tab, in the levels list, you can sort the rows (toggle between ascending order and descending order) by clicking a column heading.

116

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository ■ Creating and Administering Logical Table Sources (Mappings)

4 5

In the Logical Levels drop-down list, select the level. Repeat this process to associate this measure with other logical levels in other dimensions.

To remove the association between a dimension and a measure 1 2 3 4
In the Business Model and Mapping layer, double-click a logical column. In the Logical Column dialog box, click the Levels tab. In the Levels tab, click the delete button next to the Logical Levels field. Click OK.

Creating and Administering Logical Table Sources (Mappings)
You can add a new logical table source, edit or delete an existing table source, create or change mappings to the table source, and define when to use logical tables sources and how content is aggregated. Additionally, you can copy aggregation content to the Windows clipboard or from another logical table source, and check the aggregation content of logical fact table sources. You would add new logical table sources when more than one physical table could be the source of information. For example, many tables could hold information for revenue. You might have three different business units (each with its own order system) where you get revenue information. In another example, you might periodically summarize revenue from an orders system or a financial system and use this table for high-level reporting. One logical table source folder exists for each logical table. The folder contains one or more logical table sources. These sources define the mappings from the logical table to the physical table. Complex mappings, including formulas, are also configured in the logical table sources. Logical tables can have many physical table sources. A single logical column might map to many physical columns from multiple physical tables, including aggregate tables that map to the column if a query asks for the appropriate level of aggregation on that column. When you create logical tables and columns by dragging and dropping from the Physical layer, the logical table sources are generated automatically. If you create the logical tables manually, you need to also create the sources manually. For examples of how to set up fragmentation content for aggregate navigation, refer to “Specify Fragmentation Content” on page 201. This section includes the following topics: ■ ■ ■ Creating or Removing a Logical Table Source on page 118 Defining Physical to Logical Table Source Mappings on page 119 Defining Content of Logical Table Sources on page 121

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

11 7

Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository ■ Creating and Administering Logical Table Sources (Mappings)

Creating or Removing a Logical Table Source
Use the General tab of the Logical Table Source dialog box to define general properties for the logical table source.

To create a logical table source 1 2 3
In the Business Model and Mapping layer, right-click a logical table and choose New Object > Logical Table Source. In the Logical Table Source dialog box, click the General tab, and then type a name for the logical table source and click Add. In the Browse dialog box, you can view joins and select tables for the logical table source. When there are two or more tables in a logical table source, all of the participating tables must have joins defined between them.

4 5 6 7 8

To view the joins, in the Browse dialog box, select a table and click View.

In the Physical Table dialog box, review the joins, and then click Cancel.

To add tables to the table source, select the tables in the Name list and click Select. In the Logical Table Source dialog box, click the Column Mapping tab and complete the fields using the instructions in “Defining Physical to Logical Table Source Mappings” on page 119. In the Logical Table dialog box, click the Content tab and complete the fields using the instructions in “Defining Content of Logical Table Sources” on page 121. Click OK.

To remove a table as a source 1 2 3 4
In the Business Model and Mapping layer, right-click a logical table source and choose Properties. In the Logical Table Source dialog box, click the General tab. In the tables list, select the table you want to remove and click Remove. After removing the appropriate table, click OK.

Example of Creating Sources for Each Level of Aggregated Fact Data
In addition to creating the source for the aggregate fact table, you should create corresponding logical dimension table sources at the same levels of aggregation. NOTE: You need to have at least one source at each level referenced in the aggregate content specification. If the sources at each level already exist, you do not need to create new ones. For example, you might have a monthly sales table containing a precomputed sum of the revenue for each product in each store during each month. You need to have the following three other sources, one for each of the logical dimension tables referenced in the example: ■ A source for the Product logical table with one of the following content specifications:

118

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository ■ Creating and Administering Logical Table Sources (Mappings)

■ ■

By logical level: ProductDimension.ProductLevel By column: Product.Product_Name

A source for the Store logical table with one of the following content specifications:
■ ■

By logical level: StoreDimension.StoreLevel By column: Store.Store_Name

A source for the Time logical table with one of the following content specifications:
■ ■

By logical level: TimeDimension.MonthLevel By column: Time.Month

Defining Physical to Logical Table Source Mappings
Use the Column Mapping tab of the Logical Table Source dialog box to map logical columns to physical columns. The physical to logical mapping can also be used to specify transformations that occur between the Physical layer and the Business Model and Mapping layer. The transformations can be simple, such as changing an integer data type to a character, or more complex, such as applying a formula to find a percentage of sales per unit of population.

To map logical columns to physical columns 1 2 3
In the Business Model and Mapping layer, double-click a logical table source, if the Logical Table Source dialog box is not already open. In the Logical Table Source dialog box, click the Column Mapping tab. In the Column Mapping tab, maximize or enlarge the dialog box to show all the contents, as shown in Figure 11 on page 120. NOTE: In the Column Mapping tab, in the Logical column to physical column area, you can sort the rows (toggle among ascending order, descending order, and then restore original order) by clicking a column heading.

4

In the Physical Table column, select the table that contains the column you want to map. When you select a cell in the Physical Table column, a drop-down list appears. It contains a list of tables currently included in this logical table source.

5

In the Expression list, select the physical column corresponding to each logical column. When you select a cell in the Expression column, a drop-down list appears. It contains a list of tables currently included in this logical table source.

6

To open the Expression Builder, click the ellipsis button to the left of the Expression you want to view or edit. NOTE: All columns used in creating physical expressions must be in tables included in the logical table source. You cannot create expressions involving columns in tables outside the source.

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

11 9

Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository ■ Creating and Administering Logical Table Sources (Mappings)

7

To remove a column mapping, click the delete button. You might need to scroll to the right to locate the delete button.

8

After you map the appropriate columns, click OK.

Figure 11. Logical Table Source Dialog Box

To remove a column mapping 1 2 3 4 5
In the Business Model and Mapping layer, right-click a logical table and choose New Object > Logical Table Source. In the Logical Table Source dialog box, click the Column Mapping tab. In the Column Mapping tab, maximize or enlarge the dialog box to show all the contents, as shown in Figure 11 on page 120. To remove a column mapping, click the delete button next to the Physical Table cell. Click OK.

Unmapping a Logical Column from Its Source
In the Logical Column dialog box, the Datatype tab contains information about the logical column. You can edit the logical table sources from which the column derives its data, or unmap it from its sources.

To unmap a logical column from its source 1 2 3 4
In the Business Model and Mapping layer, double-click a logical column. In the Logical Column dialog box, click the Datatype tab. In the Datatype tab, in the Logical Table Source list, select a source and click Unmap. Click OK.

120

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository ■ Creating and Administering Logical Table Sources (Mappings)

Defining Content of Logical Table Sources
To use a source correctly, the Oracle BI Server has to know what each source contains in terms of the business model. Therefore, you need to define aggregation content for each logical table source of a fact table. The aggregation content rule defines at what level of granularity the data is stored in this fact table. For each dimension that relates to this fact logical table, define the level of granularity, making sure that every related dimension is defined. For more information, refer to “Example of Creating Sources for Each Level of Aggregated Fact Data” on page 118. If a logical table is sourced from a set of fragments, it is not required that every individual fragment maps the same set of columns. However, the server returns different answers depending on how columns are mapped. ■ If all the fragments of a logical table map the same set of columns, than the set of fragmented sources is considered to be the whole universe of logical table sources for the logical table. This means that measure aggregations can be calculated based on the set of fragments. If the set of mapped columns differ across the fragments, than we assume that we do not have the whole universe of fragments, and therefore it would be incorrect to calculate aggregate rollups (since some fragments are missing). In this case we return NULL as measure aggregates. NOTE: It is recommended that all the fragments map the same set of columns Use the Content tab of the Logical Table Source dialog box to define any aggregate table content definitions, fragmented table definitions for the source, and Where clauses (if you want to limit the number of rows returned). NOTE: For examples of how to set up fragmentation content for aggregate navigation, refer to “Setting Up Fragmentation Content in an Oracle BI Repository for Aggregate Navigation” on page 201.

Verify Joins Exist From Dimension Tables to Fact Table
This source content information tells the Oracle BI Server what it needs to know to send queries to the appropriate physical aggregate fact tables, joined to and constrained by values in the appropriate physical aggregate dimension tables. Be sure that joins exist between the aggregate fact tables and the aggregate dimension tables in the Physical layer. One recommended way to verify joins is to select a fact logical table and request a Business Model Diagram (Selected Tables and Direct Joins). Only the dimension logical tables that are directly joined to this fact logical table appear in the diagram. It does not show dimension tables if the same physical table is used in logical fact and dimension sources.

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

12 1

Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository ■ Creating and Administering Logical Table Sources (Mappings)

Figure 12 on page 122 is an example of how the Fact - Asset fact logical table appears in a Business Model Diagram (Selected Tables and Direct Joins) view.

Figure 12. Diagram of Direct Joins for a Fact Table Table 17 on page 122 contains a list of the logical level for each dimension table that is directly joined the Fact - Assess fact table shown in Figure 12 on page 122.

Table 17.

Dimension and Logical Level as Shown in Content Tab Logical Level Postal Code Detail Postal Code Detail Day Detail Account Detail Opty Detail Detail Detail Detail Detail Day Details

Dimension Account Geography Person Geography Time Account Organization Opportunity Primary Visibility Organization Employee Assessment Contact (W_PERSON_D) FINS Time Positions

To create logical table source content definitions 1
In the Business Model and Mapping layer, double-click a logical table source.

122

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository ■ Creating and Administering Logical Table Sources (Mappings)

2 3

In the Logical Table Source dialog box, click the Content tab and perform the following steps using Table 18 on page 124 as a guide. If a logical source is an aggregate table and you have defined logical dimensions, perform the following steps:

a

Select Logical Level from the Aggregation content, group-by drop-down list. CAUTION: Although you have the option to specify aggregate content by logical level or column, it is recommended that you use logical levels exclusively.

b

In the Logical Level drop-down list, select the appropriate level for each dimension logical table to which the fact logical table is joined. You should specify a logical level for each dimension, unless you are specifying the Grand Total level. Dimensions with no level specified will be interpreted as being at the Grand Total level.

4

If a logical source is an aggregate table and you want to define content for columns, do the following:

a

Select Column from the Aggregation content, group-by drop-down list. CAUTION: Although you have the option to specify aggregate content by logical level or column, it is recommended that you use logical levels exclusively.

b c

In the Table pane, select each logical dimension table that defines the aggregation level of the source. In the Column pane, select the logical column for each dimension that defines how the aggregations were grouped. When there are multiple logical columns that could be used, select the one that maps to the key of the source physical table. For example, if data has been aggregated to the Region logical level, pick the logical column that maps to the key of the Region table. NOTE: Do not mix aggregation by logical level and column in the same business model. It is recommended that you use aggregation by logical level.

5

To specify fragmented table definitions for the source, use the Fragmentation content window to describe the range of values included in the source when a source represents a portion of the data at a given level of aggregation. You can type the formula directly into the window, or click the Expression Builder button to the right of the window. In the Fragmentation Content Expression Builder, you can specify content in terms of existing logical columns. For examples of how to set up fragmentation content for aggregate navigation, see“Specify Fragmentation Content” on page 201.

6

Select the following option: This source should be combined with other sources at this level NOTE: This option is only for multiple sources that are at the same level of aggregation.

7

(Optional) Specify Where clause filters in the Where Clause Filter window to limit the number of rows the source uses in the resultant table. For more information, refer to “About WHERE Clause Filters” on page 125.

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

12 3

) Get Levels.) Aggregation content.Level info into a text editor and use it for searching or for adding to documentation. You can paste the Dimension. (If the same tables exist in the fact and dimension sources and there are no physical joins between tables in the sources.Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository ■ Creating and Administering Logical Table Sources (Mappings) a b 8 Click the Expression Builder button to open the Physical Where Filter Expression Builder. (Multiple business models appear but only the logical table sources from the current business model are selectable. Check Levels will not include the aggregation content of this dimension. group by Fragmentation content More (button) ■ ■ ■ 124 Oracle Business Intelligence Server Administration Guide Version 10. You need to specify the source from which to copy the aggregation content. For examples of how to set up fragmentation content for aggregate navigation. Select the option Select distinct values if the values for the source are unique. the following options appear: ■ Copy. see“Specify Fragmentation Content” on page 201. Check Levels. (Available only for fact tables) Changes aggregation content. if the same physical table is in both sources). The information returned depends on the existence of dimensions and hierarchies with logical levels and level keys. A common situation would be to have data fragmented by time period. When you click More. (Available only for fact tables) check the aggregation content of logical fact table sources (not dimension table sources). Type the Where clause and click OK. the aggregation content determined by the administration tool will not include the aggregation content of this dimension. (Available for fact tables and dimension tables) Copies aggregation content from another logical table source in the same business model.1. Data is fragmented when information at the same level of aggregation is split into multiple tables depending on the values of the data.2 . Table 18. A description of the contents of a data source in business model terms. (Available only for fact tables) Copies aggregation content to the Windows clipboard.3. If joins do not exist between fact table sources and dimension table sources (for example. Field Content Tab Fields for Logical Table Source Description How the content is aggregated. and physical joins between tables in dimension table sources and the tables in the fact table source. Copy from.

and reporting needs required by your business. manufacturing plants. Any constraints in the WHERE clause filter are made on the physical tables in the source. all sources must be combined to get a complete picture of information at this level of aggregation. products. Dimensions exist in the Business Model and Mapping (logical) layer and are not visible to end users. If there are no constraints on the aggregate source. customers.1. a dimension represents a hierarchical organization of logical columns (attributes) belonging to a single logical dimension table. Dimension hierarchical levels are used to perform the following actions: ■ ■ ■ Set up aggregate navigation Configure level-based measure calculations (refer to “Level-Based Measure Calculations Example” on page 131) Determine what attributes appear when Oracle BI Presentation Services users drill down in their data requests Oracle Business Intelligence Server Administration Guide Version 10. raw materials.2 12 5 . Common dimensions might be time periods. that had sales data at both the Brand and Manufacturer levels. and time of day. Select distinct values This source should be combined with other sources at this level (check box) About WHERE Clause Filters The WHERE clause filter is used to constrain the physical tables referenced in the logical table source. In this situation. Each logical table source should contain data at a single intersection of aggregation levels. They provide the structure (metadata) that the Oracle BI Server uses to drill into and across dimensions to get more detailed views of the data. About Dimensions and Hierarchical Levels In a business model. Field Content Tab Fields for Logical Table Source Description Used if the values for the source are unique. add an appropriate WHERE clause constraint to filter values to a single level. for example. promotion conditions.3. Check this box when data sources at the same level of aggregation do not contain overlapping information. These logical levels represent the organizational rules. media types. In each dimension. suppliers. If the physical tables include data at more than one level. leave the WHERE clause filter blank. You would not want to create a source.Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository ■ About Dimensions and Hierarchical Levels Table 18. markets. you organize attributes into hierarchical levels. transportation methods.

1.Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository ■ Process of Creating and Administering Dimensions Process of Creating and Administering Dimensions Each business model can have one or more dimensions. NOTE: The Default root level field will be automatically populated after you associate logical columns with a dimension level. right-click a business model and select New Object > Dimension. and each logical level has one or more attributes (columns) associated with it. the tables in which these columns exist will appear in the Tables tab of the Dimension dialog box. each dimension can have one or more logical levels. Click OK. working down to the lowest level. type a name for the dimension. After you associate logical columns with a dimension level. A dimension is specific to a particular multidimensional data source (cannot be used by more than one) and cannot be created and manipulated individually. select the Time Dimension check box. Creating Dimension Levels and Keys A dimension contains two or more logical levels. The following are the parts of a dimension: 126 Oracle Business Intelligence Server Administration Guide Version 10. If the dimension is a time dimension. The recommended sequence for creating logical levels is to create a grand total level and then create child levels. in the General tab. To create a dimension 1 2 3 In the Business Model and Mapping Layer. you do not create dimension level keys.3. each dimension can be associated with attributes (columns) from one or more logical dimension tables and level-based measures from logical fact tables. NOTE: The concept of dimensions for a multidimensional data source is less complex than for dimensions in other data sources. In the Dimension dialog box. 4 5 (Optional) Type a description of the dimension. each cube in the data source should have at least one dimension and one measure in the logical layer. For example. The following sections explain how to create dimensions: ■ ■ ■ Creating Dimensions Creating Dimension Levels and Keys on page 126 Creating Dimensions Automatically on page 133 Creating Dimensions After creating a dimension. Additionally.2 .

need to have at least one column. The following is a list of some guidelines you should use when setting up and using time dimensions: ■ ■ At least one level of a time dimension must have chronological key. for example. For information.1. specify the key that is the primary key of that level. it is not necessary to explicitly associate all of the columns from a table with logical levels. When that is the case. Any physical table that is part of a time logical table cannot appear in another logical table. repeating every year. The level key defines the unique elements in each logical level. you can associate measures with a grand total level. A logical level may have more than one level key. ■ Oracle Business Intelligence Server Administration Guide Version 10. At least one level of a time dimension must have a chronological key. Hierarchy. click the Add button in this dialog and select the logical column from the dialog that is presented. in a model where weeks roll up into a year. To define Month as a level key. and so on—values that are not unique to a particular month. Year) as a time dimension. Level keys. Level. select the Use for drill down check box on the Level Key dialog box. Each logical level should have one level key that will be displayed when an Answers or Intelligence Dashboard user clicks to drill down. The dimension table logical key has to be associated with the lowest level of a dimension and has to be the level key for that level. Ago and ToDate aggregates are created as derived logical columns. where the same week could span two years. This may or may not be the primary key of the level. All time series measures using the Ago and ToDate functions must be on time levels. All dimension sources which have an aggregate content at a specified level need to contain the column that is the primary key of that level. To add Year. For example. Each logical level (except the topmost level defined as a Grand Total level) needs to have one or more attributes that compose a level key. except the Grand Total level. refer to “About Time Series Conversion Functions” on page 197. However. In each business model. A special level representing the grand total for a dimension. February. All levels. you need to establish the hierarchy (parent-child levels). Each dimension can have just one Grand Total level. as when the combination of month and year roll up into exactly one quarter. You define the hierarchical levels for your particular business so that results from analyses conform to your business needs and requirements. To set the level key to display. All logical columns in the same dimension table have to be associated with the same dimension. it is implied that each week has exactly one year associated with it.Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository ■ Process of Creating and Administering Dimensions ■ Grand total level. This might not be true for calendar weeks. For more information. Another model might be set up so that weeks do not roll up. Any column that you do not associate with a logical level will be automatically associated with the lowest level in the dimension that corresponds to that dimension table. However. Some hierarchies might require multiple elements to roll up.3. ■ ■ ■ ■ Time dimensions and chronological keys. This prevents using date fields from calendar table as measures. in the logical levels. Be careful using level keys such as Month whose domain includes values January.2 12 7 . Year. One model might be set up so that weeks roll up into a year. A grand total level does not contain dimensional attributes and does not have a level key. You can identify a dimension (for example. see Selecting and Sorting Chronological Keys in a Time Dimension on page 130. you also need to include an attribute from a higher level. The aggregation level for those measures will always be the grand total for the dimension.

The number does not have to be exact. ■ ■ If you want the logical level to roll up to its parent.3. This number is used by the Oracle BI Server when picking aggregate sources. perform the following tasks: ■ ■ ■ ■ ■ ■ ■ ■ Creating a Logical Level in a Dimension on page 128 Associating a Logical Column and Its Table with a Dimension Level on page 129 Identifying the Primary Key for a Dimension Level on page 129 Selecting and Sorting Chronological Keys in a Time Dimension on page 130 Adding a Dimension Level to the Preferred Drill Path on page 131 Level-Based Measure Calculations Example on page 131 Grand Total Dimension Hierarchy Example on page 132 Creating Dimensions Automatically on page 133 Creating a Logical Level in a Dimension When creating a logical level in a dimension. except the most detailed ones. Specify the number of elements that exist at this logical level. but ratios of numbers from one logical level to another should be accurate. NOTE: There should be only one grand total level for a dimension. cannot have joins to table outside their source. 5 To define child logical levels. it cannot be a complex join. select the Supports rollup to parent elements check box. select the Grand total level check box. in the General tab. you also create the hierarchy by identifying the type of level and defining child levels. For more information about creating hierarchies for a multidimensional data source. For more information. perform the specified action: ■ If the logical level is the grand total level. click Add.Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository ■ Process of Creating and Administering Dimensions ■ Physical tables in time sources.1. The join can only be based on foreign key. leave this field blank. right-click a dimension and choose New Object > Logical Level. If the logical level is not the grand total level and does not roll up. In the Logical Level dialog box. ■ To create and administer dimension hierarchy levels. The join has to be between the time table and the fact table. Ago or ToDate functionality is not supported on fragmented logical table sources.2 . 128 Oracle Business Intelligence Server Administration Guide Version 10. 4 When the following criteria is met. To define general properties for a logical level in a dimension 1 2 3 In the Business Model and Mapping layer. The system will set to a value of 1 by default. refer to “Creating the Business Model Layer for a Multidimensional Data Source” on page 110. If this level will be the Grand Total level. refer to “About Time Series Conversion Functions” on page 197. do not select either check box. specify a name for the logical level.

The child level and all of its child levels are deleted from the Child Levels pane. To change the logical level to be associated with that logical column. The tables list contains tables that you associated with that dimension. 3 Click OK or Cancel to close the Dimensions dialog box. you need to drag and drop one or more columns from the dimension table to each logical level except the Grand Total level. click the Keys tab. Click OK. The child levels appear in the Child Levels pane. To specify a primary key for a dimension level 1 2 3 4 In the Business Model and Mapping layer. from the Primary key drop-down list. you can drag a column from one logical level to another. Identifying the Primary Key for a Dimension Level Use the Keys tab in the Logical Level dialog box to identify the primary key for a level. NOTE: The logical column(s) comprising the logical key of a dimension table must be associated with the lowest level of the dimension.1. 7 To remove a previously defined child level.Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository ■ Process of Creating and Administering Dimensions 6 In the Browse dialog box.3. The first time you drag a column to a dimension it associates the logical table to the dimension. In the Dimensions dialog box. 8 9 (Optional) Type a description of the logical level. NOTE: If only one level key exists. Oracle Business Intelligence Server Administration Guide Version 10. To verify tables that are associated with a dimension 1 2 In the Business Model and Mapping layer. select the level in the Child Levels pane and click Remove. Associating a Logical Column and Its Table with a Dimension Level After you create all logical levels within a dimension. In the Logical Level dialog box. select a level key. After you associate a logical column with a dimension level. the tables in which these columns exist appear in the Tables tab of the Dimensions dialog box. This list of tables includes only one logical dimension table and one or more logical fact tables (if you created level-based measures). select the child logical levels and click OK. expand a dimension and then expand the highest level (grand total level) of the dimension. click the Tables tab. Double-click a logical level below the grand total level.2 12 9 . It also associates the logical column with that level of the dimension. double-click a dimension. it will be the primary key by default. In the Keys tab.

Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository ■ Process of Creating and Administering Dimensions 5 To add a column to the list. For any level. The column you selected appears in the Columns list of the Logical Level Key dialog box and the check box is automatically selected. select a chronological key column. NOTE: To use a dimension as a time dimension. In the Logical Level Key dialog box. and then click OK. To select a chronological key. In the Logical Level dialog box. you can select one or more chronological keys and then sort keys in the level. double-click a chronological key.2 . type a name for the key. Selecting and Sorting Chronological Keys in a Time Dimension At least one level of a time dimension must have a chronological key. NOTE: For a dimension to be recognized as a time dimension. click the Keys tab. only the first chronological key is used at this time. (Optional) Type a description for the key and then click OK. click Up or Down to reorder the column. click OK. In the Chronological Key dialog box. If you click Add. select the Chronological Key check box.1. 2 3 4 5 6 Double-click a logical level below the grand total level. To sort chronological keys. click New. expand a time dimension and then expand the highest level (grand total level) of the dimension. 6 7 8 9 If the level is in a time dimension. select a column or click Add. 130 Oracle Business Intelligence Server Administration Guide Version 10. Repeat Step 2 on page 129 through Step 7 on page 130 to add primary keys to other logical levels. in the Keys tab.3. you can select chronological keys and sort the keys by name. you must select the Time Dimension check box in the Dimension dialog box. perform the following steps: a b c d In the Logical Level dialog box. in the Browse dialog box. select the column. In the Logical Level dialog box. in the Keys tab. you need to select the Time Dimension check box in the Dimension dialog box. In the Logical Level Key dialog box. and then click OK. To select and sort chronological keys for a time dimension 1 In the Business Model and Mapping layer. however.

The measure AllProductRevenue is an example of a level-based measure at the Grand Total level. You can delete a logical level from a drill path or reorder a logical level in the drill path. respectively. To set up these calculations. and CityRevenue). Region. that are calculated by taking some measure and dividing it by a level-based measure to calculate a percentage. you need to build a dimensional hierarchy in your repository that contains the levels Grandtotal. there are many regions but each region is in only one country. To add a dimension level to the preferred drill path 1 Click the Add button to open the Browse dialog box. and CityRevenue. You can set up columns to measure CountryRevenue. a company might want to measure its revenue based on the country. there are many cities but each city is in only one region. Click OK to return to the Level dialog box. For example. and based on the city. You can select logical levels from the current dimension or from other dimensions. Region. and City. RegionRevenue. The Revenue column has a default aggregation rule of SUM and has sources in the underlying databases. and CityRevenue columns into the Country. RegionRevenue. You then drag the CountryRevenue. Next. This hierarchy will contain the metadata that defines a one-to-many relationship between Country and Region and a one-to-many relationship between Region and City. RegionRevenue. The names of the levels are added to the Names pane. For example. Similarly. Country. It is most commonly used to drill from one dimension to another. Oracle Business Intelligence Server Administration Guide Version 10. They are also useful in creating share measures. For each country. for each region. 2 Level-Based Measure Calculations Example A level-based measure is a column whose values are always calculated to a specific level of aggregation. Each of these columns uses the logical column Revenue as its source. Level-based measures allow a single query to return data at multiple levels of aggregation. You should use this only to specify a drill path that is outside the normal drill path defined by the dimensional level hierarchy.2 13 1 .Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository ■ Process of Creating and Administering Dimensions Adding a Dimension Level to the Preferred Drill Path You can use the Preferred Drill Path tab to identify the drill path to use when Oracle BI Presentation Services users drill down in their data requests.3. where you can select the logical levels to include in the drill path. based on the region.1. you need to create three logical columns (CountryRevenue. you can divide salesperson revenue by regional revenue to calculate the share of the regional revenue each salesperson generates. and City levels. Each query that requests one of these columns will return the revenue aggregated to its associated level.

columns are attributes of the Country. then the grand total product revenue is 600 (the sum of each product’s revenue). and 300 respectively. and Products. Figure 13. there might be a column called Revenue that is defined with a default aggregation rule of Sum. that uses Revenue as its source (as specified in the General tab of the Logical Column dialog). Each query that includes this column will return the total revenue for all products. The value is returned regardless of any constraints on Brands or Products. the grand total product revenue is for all products sold in 1999 and 2000.3. A. Additionally. allproductrevenue 132 Oracle Business Intelligence Server Administration Guide Version 10. If you have constraints on columns in other tables. 200. if the scope of the query asks for data from 1999 and 2000. AllProductRevenue. If you have set up a repository as described in this example. Now drag AllProductRevenue to the grand total level. CountryRevenue and RegionRevenue columns use the Revenue column as their source. For example. the following query produces the results listed: select product. productrevenue. B. Brands.2 . Example Business Model in the Business Model and Mapping Layer Grand Total Dimension Hierarchy Example You might have a product dimensional hierarchy with levels TotalProducts (grand total level). the grand total is limited to the scope of the query.1. Revenue column has a default aggregation rule of SUM and is mapped to physical detail data or physical aggregate data. You can then create a logical column. and C with total revenues of 100. CountryRevenue and RegionRevenue.Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository ■ Process of Creating and Administering Dimensions Figure 13 on page 132 shows what the business model in the Business Model and Mapping layer would look like for this example. If you have three products. and Region levels of the Geography dimension.

the join relationships between tables in the source determine the physical table containing the lowest level attributes. (not counting columns that are constructed from other logical columns). For example. the tool uses attribute mappings and physical joins to determine the hierarchical order of the tables in the physical sources. ■ ■ If there is more than one logical table source. The following rules apply: ■ ■ ■ ■ Create Dimensions is only available if the selected logical table is a dimension table (defined by 1:N logical joins) and no dimension has been associated with this table. the AllProductRevenue column will always return a value of 600.1. The order of joins determines the hierarchical arrangement of the logical levels. For example. The lowest level in the hierarchy is named [name of logical table] Detail. if a table is named Periods.Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository ■ Process of Creating and Administering Dimensions from sales_subject_area where product in 'A' or 'B' PRODUCT A B PRODUCTREVENUE 100 200 ALLPRODUCTREVENUE 600 600 In this example. An automatically created dimension uses the same name as the logical table. the dimension is named Periods Dim. adding Dim as a suffix. For example. A grand total level is automatically named [name of logical table] Total. The logical key of the dimension table is mapped to the lowest level of the hierarchy and specified as the level key.3. regardless of the products the query constrains on. For example. 15. This logical column should map to the key column of the lowest level table in the dimension source. The following is a list of the results of creating a dimension for this table automatically: Oracle Business Intelligence Server Administration Guide Version 10. the lowest level of the periods table is Periods Detail. Therefore. respectively. ■ ■ If there are two or more physical tables in a source. the columns that map to the keys of those tables become additional logical levels. These additional level names use the logical column names of these key columns. it is best to create a dimension in this way after all the logical table sources have been defined for a dimension table. C) each containing a single physical table and attribute mappings for 10. you might have three sources (A. B. To create a dimension automatically. Creating Dimensions Automatically You can set up a dimension automatically from a logical dimension table if a dimension for that table does not exist. and 3 attributes. The level keys of these new logical levels are set to the logical columns that map to the keys of the tables in the source. the grand total level of the Periods Dim table is Periods Total. When there is more than one table in a source.2 13 3 . the Administration Tool examines the logical table sources and the column mappings in those sources and uses the joins between physical tables in the logical table sources to determine logical levels and level keys.

the Product table may join to the Flavor table and a Subtype table. counting the grand total and detail levels. However.2 . some measures can have different aggregation rules for different dimensions. If the table is not yet joined to any other table. The key of the table in source B (that has the greatest number of columns mapped and contains the column mapping for the logical table key) should be the level key for the detail level. 134 Oracle Business Intelligence Server Administration Guide Version 10. one flavor level and one subtype level.1. In the Business Model and Mapping layer of a repository. Any attributes that are mapped to both A and B should be associated with level A. Setting Up Dimension-Specific Aggregate Rules for Logical Columns The majority of measures have the same aggregation rule for each dimension. The Oracle BI Server allows you to configure dimension-specific aggregation rules. The parent of level A should be the logical level named for the logical column that maps to the key of the physical table in source C. If more then one child table exists for a dimension table.3. This would result in two parents of the product detail level. From the right-click menu. while creating dimension automatically hierarchy will be split hierarchy. ■ In a snowflake schema. The child tables will form intermediate levels between the grand total level and detail level. if you use a table with only one source. the option is not available because it is considered a fact table. You can specify one aggregation rule for a given dimension and specify other rules to apply to other dimensions. A dimension appears in the Business Model and Mapping layer. ■ ■ ■ ■ ■ Table joins in a physical source might represent a pattern that results in a split hierarchy. and create the dimension automatically the child tables will automatically be incorporated into a hierarchy. You cannot create a dimension automatically in the following situations: ■ ■ ■ If a dimension with joins and levels has already been created. bank balances might be averaged over time but summed over the individual accounts.Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository ■ Process of Creating and Administering Dimensions ■ ■ The Administration Tool creates a dimension containing 4 logical levels. Any columns that are mapped to both A and C should be associated with level C. choose Create Dimension. For example. The parent of the detail level should be the logical level named for the logical column that maps to the key of the physical table in source A. right-click a logical table. Create Dimension will not appear on the right-click menu. To create a dimension automatically 1 2 3 In the Administration Tool. For example. open a repository.

In the Aggregation tab. click New. Right-click and select Set Aggregation. aggregation rules are applied in the order (top to bottom) established in the dialog box. In the Aggregation dialog box. In the Aggregation tab. 8 Click OK To specify dimension-specific aggregation rules for multiple logical fact columns 1 2 3 In the Business Model and Mapping layer. When checked. and then click OK. NOTE: After selecting rules for specified dimensions. select a rule. from the Formula drop-down list. The Browse dialog box automatically opens. 4 5 In the Browse dialog box. double-click a logical column. select a dimension over which you want to perform aggregation. to change the order in which the dimension-specific rules are performed. click the ellipsis button to the right of the Formula column to open the Expression Builder. set the aggregation rule for any remaining dimensions by using the dimension labeled Other. For more information about setting up aggregate navigation.Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository ■ Process of Creating and Administering Dimensions You need to configure dimensions in the Business Model and Mapping layer to set up dimension-specific aggregation. you can set aggregation rules that will apply to all selected columns.3. click Up or Down. To specify dimension-specific aggregation rules for a single logical column 1 2 3 In the Business Model and Mapping layer. select the Based on dimensions check box. If you clear the check box. If you have multiple dimensions. In the Browse dialog box. 4 5 In the Aggregation tab. When calculating the measure. The check box is checked by default. In the Logical Column dialog box. Oracle Business Intelligence Server Administration Guide Version 10. select a dimension over which you want to aggregate. 6 7 If you need to create more complex formulas.1. you can set aggregation rules separately for each selected column. and then click OK. select multiple logical fact columns. click the Use advanced options check box. refer to “Setting Up Fragmentation Content in an Oracle BI Repository for Aggregate Navigation” on page 201. If the fact column has an aggregation rule. After setting up the rule for a dimension. specify aggregation rules for any other dimensions in the entry labeled Other. 6 Click the ellipsis button to the right of the Formula column. Set Aggregation will not appear in the menu. select or clear the All columns the same check box.2 13 5 . click the Aggregation tab.

When calculating the measure. select the aggregation to perform over the dimension.1. NOTE: Deleting objects in the display folder only deletes the shortcuts to those objects. in the Tables tab. refer to “Using the Options Dialog Box—Repository Tab” on page 31. To add dimensions to the display folder. For more information about hiding these objects. right-click a business model. To change the order in which the dimension-specific rules are performed.Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository ■ Setting Up Display Folders in the Business Model and Mapping Layer 7 8 In the Expression Builder . Cardinality expresses how rows in one table are related to rows in the table to which it is joined. 136 Oracle Business Intelligence Server Administration Guide Version 10. from the Formula drop-down list. You can hide the objects so that you only view the shortcuts in the display folder. and then click OK. Defining Logical Joins Logical tables are related to each other. perform the following steps: a b 4 Click Add. In the Logical Display Folder dialog box.2 . select the fact or dimension tables you want to add to the folder and click Select. A one-to-many cardinality means that for every row in the first logical dimension table there are 0. Click OK. or many rows in the second logical table. and choose New Object > Logical Display Folder. type a name for the folder. In the Browse dialog box. The Administration Tool considers a table to be a logical fact table if it is at the Many end of all logical joins that connect it to other logical tables.Aggregate dialog box. After you create a display folder. To set up a logical display folder 1 2 3 In the Business Model and Mapping layer. To add tables to the display folder. 1. In the Browse dialog box. click the Dimensions tab and perform the following steps: a b 5 Click Add. aggregation rules are applied in the order (top to bottom) established in the dialog box. select the dimensions that you want to add to the folder and click Select. How they are related is expressed in logical joins. click Up or Down. the selected tables and dimensions appear in the folder as a shortcut and in the business model tree as the object.3. A key property of a logical join is cardinality. They have no metadata meaning. Setting Up Display Folders in the Business Model and Mapping Layer Oracle BI Administrators can create display folders to organize objects in the Business Model and Mapping layer.

Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository ■ Defining Logical Joins

Specifying the logical table joins is required so that the Oracle BI Server can have the necessary metadata to translate a logical request against the business model to SQL queries against the physical data sources. The logical join information provides the Oracle BI Server with the many-to-one relationships between the logical tables. This logical join information is used when the Oracle BI Server generates queries against the underlying databases. The joins between the logical layer and the physical layer will be automatically created if both of the following statements are true: ■ ■ You create the logical tables by simultaneously dragging and dropping all required physical tables to the Business Model and Mapping layer. The logical joins are the same as the joins in the Physical layer.

However, you will probably have to create some logical joins in the Business Model and Mapping layer, because you will rarely drag and drop all physical tables simultaneously except in very simple models. In the Business Model and Mapping layer, you should create complex joins with one-to-many relationships and not key or foreign key joins. You can create logical foreign keys and logical complex joins using either the Joins Manager or the Business Model Diagram. When you create a complex join in the Physical layer, you can specify expressions and the specific columns on which to create the join. When you create a complex join in the Business Model and Mapping layer, you cannot specify expressions or columns on which to create the join. The existence of a join in the Physical layer does not require a matching join in the Business Model and Mapping layer. CAUTION: It is recommended that you do not have foreign keys for logical tables. However, you can create logical foreign keys and logical complex joins using either the Joins Manager or the Business Model Diagram. A logical key for a fact table must be made up of the key columns that join to the attribute tables. To create logical joins, perform the following tasks: ■ ■ Defining Logical Joins with the Joins Manager on page 137 Defining Logical Joins with the Business Model Diagram on page 139

Defining Logical Joins with the Joins Manager
You can use the Joins Manager to view logical join relationships and to create logical foreign keys and complex joins. This section includes the following topics: ■ ■ Creating a Logical Foreign Key on page 138 Creating a Logical Complex Join on page 138

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

13 7

Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository ■ Defining Logical Joins

Creating a Logical Foreign Key
Logical foreign key joins might be needed if the Oracle BI Server is to be used as an ODBC data source for certain third-party query and reporting tools. Typically, you should not create logical foreign keys. This capability is in the Administration Tool to provide compatibility with previous releases.

To create a logical foreign key 1
In the Administration Tool toolbar, select Manage > Joins. The Joins Manager dialog box appears.

2 3

Select Action > New > Logical Foreign Key In the Browse dialog box, double-click a table. The Logical Foreign Key dialog box appears.

4 5 6 7 8

Type a name for the foreign key. In the Table drop-down list on the left side of the dialog box, select the table that the foreign key references. Select the columns in the left table that the foreign key references. Select the columns in the right table that make up the foreign key columns. (Optional) To specify a driving table for the key, select a table from the Driving drop-down list, and an applicable cardinality. This is for use in optimizing the manner in which the Oracle BI Server processes multi-database inner joins when one table is very small and the other table is very large. Do not select a driving table unless multi-database joins are going to occur. For more information about driving tables, refer to “Specifying a Driving Table” on page 140. CAUTION: Use extreme caution in deciding whether to specify a driving table. Driving tables are used for query optimization only under rare circumstances and when the driving table is extremely small, that is, less than 1000 rows. Choosing a driving table incorrectly can lead to severe performance degradation.

9

Select the join type from the Type drop-down list.

10 To open the Expression Builder, click the button to the right of the Expression pane.
The expression displays in the Expression pane.

11 Click OK to save your work.

Creating a Logical Complex Join
The use of logical complex joins is recommended over logical key and foreign key joins.

138

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository ■ Defining Logical Joins

To create a logical complex join 1
In the Administration Tool toolbar, select Manage > Joins. The Joins Manager dialog box appears.

2

Select Action > New > Logical Complex Join. The Logical Join dialog box appears.

3 4 5

Type a name for the complex join. In the Table drop-down lists on the left and right side of the dialog box, select the tables that the complex join references. (Optional) To specify a driving table for the key, select a table from the Driving drop-down list, and an applicable cardinality. This is for use in optimizing the manner in which the Oracle BI Server processes multi-database inner joins when one table is very small and the other table is very large. Do not select a driving table unless multi-database joins are going to occur. For more information about driving tables, refer to “Specifying a Driving Table” on page 140. CAUTION: Use extreme caution in deciding whether to specify a driving table. Driving tables are used for query optimization only under rare circumstances and when the driving table is extremely small, that is, less than 1000 rows. Choosing a driving table incorrectly can lead to severe performance degradation.

6 7

Select the join type from the Type drop-down list. Click OK.

Defining Logical Joins with the Business Model Diagram
The Business Model Diagram shows logical tables and any defined joins between them. Logical foreign key joins may be needed if the Oracle BI Server is to be used as an ODBC data source for certain third-party query and reporting tools. NOTE: It is recommended that you use the Business Model Diagram to define complex joins. It is recommended that you do not use the Diagram to define logical foreign keys.

To display the Business Model Diagram 1 2
In the Administration Tool, right-click a business model, and then select Business Model Diagram > Whole Diagram. Click one of the following buttons on the Administration Tool toolbar:
■ ■

New complex join (Recommended) New foreign key (Not recommended. This capability exists to provide compatibility with previous releases.)

3

With one of the buttons selected, move the cursor to the first table in the join (the one of the one-to-many join).

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

13 9

Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository ■ Defining Logical Joins

4

Left-click and move the cursor to the table to which you want to make the join (the many of the one-to-many join), and then left-click on the second table. The Logical Foreign Key or Logical Join dialog box appears.

5 6

For a logical foreign key, select the joining columns from the left and the right tables. (Optional) To specify a driving table for the key, select a table from the Driving drop-down list, and an applicable cardinality. This is for use in optimizing the manner in which the Oracle BI Server processes multi-database inner joins when one table is very small and the other table is very large. Do not select a driving table unless multi-database joins are going to occur. For more information about driving tables, refer to “Specifying a Driving Table” on page 140. CAUTION: Use extreme caution in deciding whether to specify a driving table. Driving tables are used for query optimization only under rare circumstances and when the driving table is extremely small (fewer than 1000 rows). Choosing a driving table incorrectly can lead to severe performance degradation.

7 8

Select the join type from the Type drop-down list. To open the Expression Builder, click the button to the right of the Expression pane. Only columns, designated predicates, and operators are allowed in the expression. For more information, see “Expression Builder” on page 190.

9

Click OK to save your work.

Specifying a Driving Table
You can specify a driving table for logical joins from the Logical Joins window. Driving tables are for use in optimizing the manner in which the Oracle BI Server processes cross-database joins when one table is very small and the other table is very large. Specifying driving tables leads to query optimization only when the number of rows being selected from the driving table is much smaller than the number of rows in the table to which it is being joined. CAUTION: To avoid problems, only specify driving tables when the driving table is extremely small - less than 1000 rows. When you specify a driving table, the Oracle BI Server will use it if the query plan determines that its use will optimize query processing. The small table (the driving table) is scanned, and parameterized queries are issued to the large table to select matching rows. The other tables, including other driving tables, are then joined together. CAUTION: If large numbers of rows are being selected from the driving table, specifying a driving table could lead to significant performance degradation or, if the MAX_QUERIES_PER_DRIVE_JOIN limit is exceeded, the query terminates. In general, driving tables can be used with inner joins, and for outer joins when the driving table is the left table for a left outer join, or the right table for a right outer join. Driving tables are not used for full outer joins. For instructions about specifying a driving table, refer to “Defining Logical Joins” on page 136.

140

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository ■ Defining Logical Joins

There are two entries in the database features table that control and tune driving table performance. ■ MAX_PARAMETERS_PER_DRIVE_JOIN This is a performance tuning parameter. In general, the larger its value, the fewer parameterized queries that will need to be generated. Values that are too large can result in parameterized queries that fail due to back-end database limitations. Setting the value to 0 (zero) turns off drive table joins. ■ MAX_QUERIES_PER_DRIVE_JOIN This is used to prevent runaway drive table joins. If the number of parameterized queries exceeds its value, the query is terminated and an error message is returned to the user.

Identifying Physical Tables That Map to Logical Objects
The Physical Diagram shows the physical tables that map to the selected logical object and the physical joins between each table. One of the joins options, Object(s) and Direct Joins within Business Model, is unique to the logical layer. It creates a physical diagram of the tables that meet both of the following conditions: ■ ■ Tables in the selected objects and tables that join directly Tables that are mapped (exist in logical table sources in the business model) in the business model

To open the physical diagram of a logical object 1 2 3
In the Business Model and Mapping layer, right-click a business model, logical table, or logical table source. Choose Physical Diagram and then one of the joins options. Click and drag any object to more clearly view the relationship lines such as one-to-many.

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

14 1

Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository ■ Defining Logical Joins

142

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

6

Creating and Maintaining the Presentation Layer in an Oracle BI Repository

This section is part of the roadmap for planning and setting up a repository. For more information, refer to “Planning and Creating an Oracle BI Repository” on page 39. After you have created the Business Model and Mapping layer, you can drag and drop that layer to the Presentation layer in the Administration Tool. For more information about the Business Model and Mapping layer, refer to “Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository” on page 109. This section provides instructions for using the Administration Tool to create and edit objects in the Presentation layer of a repository. This is the fourth step in setting up a repository. This chapter contains the following topics: ■ ■ ■ Creating the Presentation Layer in the Repository on page 143 Presentation Layer Objects on page 144 Generating an XML File from a Presentation Table on page 149

Creating the Presentation Layer in the Repository
The Presentation layer provides a way to present customized views of a business model to users. Presentation Catalogs in the Presentation layer (called Subject Area in Oracle Answers) are seen as business models by Oracle BI Presentation Services users. They appear as catalogs to client tools that use the Oracle BI Server as an ODBC data source. The following topics describe the Process of creating the Presentation layer. NOTE: In offline editing, remember to save your repository from time to time. You can save a repository in offline mode even though the business models may be inconsistent.

Copy Business Models to Publish to Users
There are several ways to create a Presentation Catalog in the Presentation layer. The recommended method is to drag and drop a business model from the Business Model and Mapping layer to the Presentation layer, and then modify the Presentation layer based on what you want users to see. You can move columns between presentation tables, remove columns that do not need to be seen by the users, or even present all of the data in a single presentation table. You can create presentation tables to organize and categorize measures in a way that makes sense to your users.

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

14 3

Creating and Maintaining the Presentation Layer in an Oracle BI Repository ■ Presentation Layer Objects

Remove Any Unneeded or Unwanted Columns
One important reason to use a custom Presentation layer is to make the schema as easy to use and understand as possible. Therefore, users should not be able to view columns that have no meaning to them. The following columns are examples of columns that you might want to remove from the Presentation layer: ■ ■ ■ Key columns that have no business meaning. Columns that users do not need to view (for example, codes, when text descriptions exist). Columns that users are not authorized to see.

NOTE: You can also restrict access to tables or columns in the security layer. For more information, refer to Chapter 15, “Security in Oracle BI.”

Rename Presentation Columns to User-Friendly Names
By default, presentation columns have the same name as the corresponding logical column in the Business Model and Mapping layer. However, you can specify a different name to be shown to users by changing the name in the Presentation Column dialog box. Whenever you change the name of a presentation column, an alias is automatically created for the old name, so compatibility to the old name remains.

Export Logical Keys in the Presentation Catalog
For each presentation catalog in the Presentation layer, decide whether to export any logical keys as key columns to tools that access it in the Presentation Catalog dialog box. Exporting logical keys is irrelevant to users of Oracle BI Presentation Services, but it may be advantageous for some query and reporting tools. If you decide to export logical keys, be sure the logical key columns exist in the table folders. In this situation, your business model should use logical key/foreign key joins. When you select the option Export logical keys in the Presentation Catalog dialog box, any columns in the Presentation layer that are key columns in the Business Model and Mapping layer are listed as key columns to any ODBC client. This is the default selection. In most situations, this option should be selected. NOTE: If you are using a tool that issues parameterized SQL queries, such as Microsoft Access, do not select the option Export logical keys. This will stop the tool from issuing parameterized queries.

Presentation Layer Objects
The Presentation layer adds a level of abstraction over the Business Model and Mapping layer. It is the view of the data seen by client tools and applications. The Presentation layer provides a means to further simplify or customize the Business Model and Mapping layer for end users. For example, you can hide key columns or present the schema as a single table. Simplifying the view of the data for users makes it easier to craft queries based on users’ business needs. The section provides instructions for using the Administration Tool’s Presentation layer dialog boxes to create and edit repository objects.

144

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

Creating and Maintaining the Presentation Layer in an Oracle BI Repository ■ Presentation Layer Objects

This section includes the following topics: ■ ■ ■ ■ Working with Presentation Catalogs on page 145 Working with Presentation Tables on page 146 Working with Presentation Columns on page 147 Using the Alias Tab of Presentation Layer Dialog Boxes on page 149

Working with Presentation Catalogs
In the Presentation layer, presentation catalogs (subject areas) allow you to show different views of a business model to different sets of users. Presentation catalogs have to be populated with contents from a single business model. They cannot span business models. When creating a presentation catalog, selecting the option Export logical keys causes any columns in the Presentation layer that are key columns in the Business Model and Mapping layer to be listed as key columns to any ODBC client. This is the default selection. In most situations, this option should be selected. Many client tools differentiate between key and nonkey columns, and the option Export logical keys provides client tools access to the key column metadata. Any join conditions the client tool adds to the query, however, are ignored; the Oracle BI Server uses the joins defined in the repository. If you set an implicit fact column this column will be added to a query when it contains columns from two or more dimension tables and no measures. The column is not visible in the results. It is used to specify a default join path between dimension tables when there are several possible alternatives. The Presentation Catalog dialog box has three tabs: General, Presentation Tables, and Aliases. The functionality provided in each tab is described in the following list: Tab General Presentation Table Aliases Comment Use this tab to create or edit a presentation catalog. Use this tab to reorder or sort the Presentation layer tables in the Administration Tool workspace, and to delete tables. You can also use this tab to access the Presentation Table dialog box, where you can create and edit tables. Use this tab to specify or delete an alias for a catalog folder.

To create a presentation catalog 1 2 3
In the Presentation layer, right-click and select New Presentation Catalog. In the Presentation Catalog dialog box, in the General tab, type a name for the presentation catalog and click Permissions. In the Permissions dialog box, assign user or group permissions to the catalog folder, and then click OK. For more information about assigning permissions to a presentation catalog, refer to “Setting Permissions for Repository Objects” on page 33.

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

14 5

Creating and Maintaining the Presentation Layer in an Oracle BI Repository ■ Presentation Layer Objects

4

In the Presentation Catalog dialog box, from the Business Model drop-down list, select a business model. After you add columns to the presentation catalog, the drop-down list becomes inactive because you can add columns from only one business model in each presentation catalog.

5

To expose the logical keys to other applications, select the option Export logical keys. NOTE: If you are using a tool that issues parameterized SQL queries, such as Microsoft Access, do not select the Export logical keys option. Not exporting logical keys stops the tool from issuing parameterized queries.

6

(Optional) Type a description of the catalog folder. This description will appear in a mouse-over ToolTip for the presentation column in Oracle Business Intelligence Answers. CAUTION: When you move columns into presentation catalog folders, be sure columns with the same name or an alias of the same name do not already exist in the catalog.

7 8

Set an Implicit Fact Column. Click OK.

Working with Presentation Tables
You can use presentation tables to organize columns into categories that make sense to the user community. Presentation tables in the Presentation layer contain columns. A presentation table can contain columns from one or more logical tables. The names and object properties of the presentation tables are independent of the logical table properties. The Presentation Tables dialog box has three tabs: General, Columns, and Aliases. The functionality provided in each tab is described in the following list: Tab General Columns Comment Use this tab to create or edit a presentation table. Use this tab to reorder or sort the Presentation layer columns in the Administration Tool workspace, and to delete columns. You can also use this tab to access the Presentation Column dialog box, where you can create and edit columns. Use this tab to specify or delete an alias for a presentation table.

Aliases

To create a presentation table 1
Right-click a catalog folder in the Presentation layer, and then select New Presentation Table from the shortcut menu. The Presentation Table dialog box appears.

2

In the General tab, specify a name for the table.

146

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

Creating and Maintaining the Presentation Layer in an Oracle BI Repository ■ Presentation Layer Objects

3

Click the Permissions button to open the Permissions dialog box, where you can assign user or group permissions to the table. For more information about assigning permissions to a presentation table, refer to “Setting Permissions for Repository Objects” on page 33.

4

(Optional) Type a description of the table. NOTE: To give the appearance of nested folders in Answers, prefix the name of the presentation folder to be nested with a hyphen and a space and place it after the folder in which it nests (<folder name>). For example, to nest the Sales Facts folder in the Facts folder, place the Sales Facts folder directly after Facts in the metadata and change its name to - Sales Facts. When Answers displays the folder name in the left pane, it omits the hyphen and space from the folder name. To nest a second folder, for example Marketing Facts, in the Facts folder, change its name to - Marketing Facts and place it directly after Sales Facts. The standard preconfigured repositories provide additional examples for you to review.

To delete a presentation table 1 2 3
In the Presentation layer, right-click a catalog and select Properties. In the Presentation Catalog dialog box, click the Presentation Tables tab. In the Presentation Tables tab, select a table and click Remove. A confirmation message appears.

4 5

Click Yes to remove the table, or No to leave the table in the catalog. Click OK.

To reorder a table or sort all tables in a presentation catalog 1 2 3
In the Presentation layer, right-click a catalog and select Properties. In the Presentation Catalog dialog box, click the Presentation Tables tab. To move a table, perform the following steps:

a b 4

In the Presentation Tables tab, in the Name list, select the table you want to reorder. Use drag-and-drop to reposition the table, or click the Up and Down buttons.

To sort all tables in alphanumeric order, click the Name column heading. This toggles the sort between ascending and descending alphanumeric order.

Working with Presentation Columns
The presentation column names are, by default, identical to the logical column names in the Business Model and Mapping layer. However, you can present a different name by clearing both the Use Logical Column Name and the Display Custom Name check boxes in the Presentation Column dialog box.

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

14 7

Creating and Maintaining the Presentation Layer in an Oracle BI Repository ■ Presentation Layer Objects

To provide a convenient organization for your end users, you can drag and drop a column from a single logical table in the Business Model and Mapping layer onto multiple presentation tables. This allows you to create categories that make sense to the users. For example, you can create several presentation tables that contain different classes of measures—one containing volume measures, one containing share measures, one containing measures from a year ago, and so on. The Presentation Column dialog box has the following tabs: ■ ■ General. Use this tab to create or edit presentation columns. Aliases. Use this tab to specify or delete an alias for a presentation column.

To create a presentation column 1 2
Right-click a presentation table in the Presentation layer, and then choose New Presentation Column. In the Presentation Column dialog box, to use the name of the logical column for the presentation column, select the Use Logical Column check box. The name of the column and its associated path in the Business Model and Mapping layer appears in the Logical Column Name field.

3 4 5

To specify a name that is different from the Logical Column name, clear the Use Logical Column check box, and then type a name for the column. To assign user or group permissions to the column, click Permissions. In the Permissions dialog box, assign permissions, and then click OK. For more information about assigning permissions, refer to “Setting Permissions for Repository Objects” on page 33.

6 7 8 9

To select the logical column, click Browse. In the Browse dialog box, select the column, and then click Select. (Optional) Type a description of the presentation column. To define any aliases for the logical column, click the Aliases tab.

To edit a presentation column 1 2 3
In the Business Model and Mapping layer, double-click the presentation column. In the Presentation Column dialog box, click Edit. In the Logical Column dialog box, make any changes or review the information, and then click OK.

To delete a presentation column 1 2
Right-click a presentation table in the Presentation layer, and then select Properties. Click the Columns tab.

148

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

Creating and Maintaining the Presentation Layer in an Oracle BI Repository ■ Generating an XML File from a Presentation Table

3 4

Select the column you want to delete. Click Remove, or press the Delete key, and then click Yes.

To reorder a presentation column 1 2 3 4 5
Right-click a presentation table in the Presentation layer, and then select Properties. Click the Columns tab. Select the column you want to reorder. Use drag-and-drop to reposition the column, or click the Up and Down buttons. Click OK.

Using the Alias Tab of Presentation Layer Dialog Boxes
An Alias tab appears on the Presentation Catalog, Presentation Table, and Presentation Column dialog boxes. You can use this tab to specify or delete an alias for the Presentation layer objects.

To add an alias 1 2 3 4
Double-click a presentation catalog. In the Presentation Layer dialog box, click the Aliases tab. Click the new button, and then type the text string to use for the alias. Click OK.

To delete an alias 1 2 3 4
Double-click a presentation catalog. In the Presentation Layer dialog box, click the Aliases tab. In the Aliases list, select the alias you want to delete. Click the delete button, and then click OK.

Generating an XML File from a Presentation Table
You can import the structure of an Oracle BI presentation table into Oracle’s Siebel Tools. To do this, you create an XML file from a table in the Presentation layer of an Oracle BI repository and then import the XML file into Oracle’s Siebel Tools. For more information, refer to the documentation for Oracle’s Siebel Tools.

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

14 9

Creating and Maintaining the Presentation Layer in an Oracle BI Repository ■ Generating an XML File from a Presentation Table

150

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

refer to “Planning and Creating an Oracle BI Repository” on page 39.7 Completing Setup and Managing Oracle BI Repository Files This section is part of the roadmap for planning and setting up a repository. For more information.2 15 1 . the Physical layer. you need to perform several tasks to complete the initial repository setup. and Presentation layer.3. Business Model and Mapping layer. After you have created the repository file. This section contains these setup steps and topics for managing your repository files.INI File on page 152 Create the Data Source on page 153 Start the Oracle BI Server on page 153 Test and Refine the Repository on page 154 Publish to User Community on page 154 Oracle Business Intelligence Server Administration Guide Version 10. This section contains instructions for the following topics: ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ Process of Completing the Setup for a Repository File Importing From Another Repository on page 154 Querying and Managing Repository Metadata on page 156 Constructing a Filter for Query Results on page 159 Comparing Repositories on page 161 Merging Oracle BI Repositories on page 163 Exporting Oracle BI Metadata to IBM DB2 Cube Views on page 167 About Extracting Metadata Subsets Into Projects on page 167 Setting up and Using the Oracle BI Multiuser Development Environment on page 169 Setting Up the Repository to Work with Delivers on page 180 Process of Completing the Setup for a Repository File Perform the following tasks to complete the repository file setup: ■ ■ ■ ■ ■ ■ Saving the Repository and Checking Consistency on page 152 Add an Entry in the NQSConfig.1.

152 Oracle Business Intelligence Server Administration Guide Version 10. Oracle recommends that you use Oracle Application Server Control to modify configuration files. To determine if business models are consistent.2 . CAUTION: Although you can use an editor such as Windows Notepad. After upgrading from a previous software version and checking the consistency of your repository. When you check for consistency. The NQSConfig. determines whether any physical tables referenced in a business model are not joined to the other tables referenced in the business model. You can check for errors in the whole repository with the File > Check Global Consistency command or in a particular logical business model by selecting a business model and using the Check Consistency command from the right-click menu.Completing Setup and Managing Oracle BI Repository Files ■ Process of Completing the Setup for a Repository File Saving the Repository and Checking Consistency In offline editing.1. checks for undefined logical join conditions. see Oracle Business Intelligence Infrastructure Installation and Configuration Guide. NOTE: Passing a consistency check does not guarantee that a business model is constructed correctly. Therefore. NOTE: The consistency check algorithm was enhanced in Siebel Business Analytics 7. you might observe messages that you had not received in previous consistency checks. Oracle recommends that you use JConsole. any errors or warnings that occur are displayed in a dialog box.INI file is located in the following location: [drive path]:\OracleBI\Config\ If errors occur in the file. For organizations that use other application servers. This typically indicates inconsistencies that had been undetected prior to the upgrade. Correct any errors and check for consistency again. The entry allows the Oracle BI Server to load the repository into memory upon startup.INI file for the repository. You can save a repository in offline mode even though the business models may be inconsistent. A warning message identifies a possible problem to the Oracle BI Administrator. not new errors. repeating this process until there are no more errors. and checks for existence of a presentation catalog for each business model.INI File After you build a repository and it is consistent. the consistency check finds any logical tables that do not have logical sources configured or any logical columns that are not mapped to physical sources. it's not recommended. For more information. For example. The consistency check analyzes the repository for certain kinds of errors and inconsistencies. but it does rule out many common problems. Add an Entry in the NQSConfig.2.8. use the Check Consistency command to check for compilation errors. remember to save your repository from time to time. An error message indicates a problem that needs to be corrected. you need to add an entry in the NQSConfig. restart the Oracle BI Server. you might not be able to restart the server. Refer to “Checking the Consistency of a Repository or a Business Model” on page 26. if you want your changes to take effect immediately. You can review the log messages in the log (NQServer.log) at the following location: [drive path]:\OracleBI\server\Log\ For organizations that use Oracle Application Server.3.

For more information. For more information about the NQSConfig. In the repository section. refer to “Starting the Oracle BI Server” on page 209. 3 Save the file and restart the Oracle BI Server. For example.INI file is loaded and is available for queries. Create the Data Source For end user client applications to connect to the new repository. refer to Oracle Business Intelligence Infrastructure Installation and Configuration Guide. NOTE: Oracle BI Presentation Services has the same relationship to the Oracle BI Server as any other client application. Save the configuration file after adding the entry.INI file 1 2 Open the NQSConfig. You can create standard data sources.3. the repository specified in the NQSConfig. see “Starting the Oracle BI Server” on page 209.1.rpd. the entry will read as follows: star = northwind. “Connectivity and Third-Party Tools in Oracle BI Server. the entry would read as follows: star = northwind.INI file.rpd . and data sources that will participate in a cluster. Filenames consisting of more than a single word should be enclosed in single quotes.Completing Setup and Managing Oracle BI Repository Files ■ Process of Completing the Setup for a Repository File To add an entry in the NQSConfig. For detailed information on starting the server.” Start the Oracle BI Server When you start the Oracle BI Server. each user needs to define a data source using an ODBC driver. add an entry for your new repository in this format: logical_name = repository_file_name . default. One of the repositories should be specified as the default and using the same repository name. Oracle Business Intelligence Server Administration Guide Version 10. The logical name is the name end users have to configure when configuring a DSN in the Oracle BI ODBC setup wizard. if the repository file is named northwind.2 15 3 . The steps to create a new data source are given in Chapter 12.INI file in an editor such as Notepad.rpd and the logical name you assign it is star.

repeating this process until you are satisfied with the results. They may also need to know the logical names of repositories when multiple repositories are used and the data source name (DSN) being created does not point to the default repository.1. Tips For Performance Tuning The Physical Data Model should more closely resemble the Oracle BI metadata model (for example the star schema) instead of a transactional database system. In general. users accessing the Oracle BI Server with a query tool or report writer client application) need to know the subject area names. notify the user community that the data sources are available for querying.2 . Presentation Services users need only know the URL to type in their browser. Precalculation of additive metrics and attributes will reduce query complexity and therefore response time. run sample queries against it to test that it is created properly. Use base and extension tables to allow for a cleaner upgrade path.3. To improve runtime performance. 154 Oracle Business Intelligence Server Administration Guide Version 10. and they need to have the ODBC setup installed on their PCs. performance problems and configuration problems could likely arise. For additional tips. NOTE: Make sure the metadata is generating the correct record set first. This includes tasks such as filtering. their user IDs and passwords. ■ ■ Publish to User Community After testing is complete. If the Physical model is set up like the underlying transactional model. merge the two tables into a third one. which is then mapped into Oracle BI. see “Merging Oracle BI Repositories” on page 163. it insulates the system from upgrade errors while still providing optimal performance. Importing From Another Repository It is recommended that you create projects in the repository that contain the objects that you wish to import. For more information. Move as much of the query logic to the ETL as possible to improve system response time. the machine on which the server is running. ■ ■ ■ Accuracy of metadata is more important than improved performance. Denormalize data into _DX (dimension extension) tables using the ETL process to reduce runtime joins to other tables. and additive measures.Completing Setup and Managing Oracle BI Repository Files ■ Importing From Another Repository Test and Refine the Repository When the repository is created and you can connect to it. then focus on performance tuning activities (such as adding sources). Correct any problems you find and test again. and then use repository merge to bring the projects into your current repository. Although this technique requires more effort and a larger ETL batch window. Client/server users (for example. push as much processing to the database as possible. refer to “Guidelines For Designing a Repository” on page 50. string manipulation.

the Import from repository option on the File menu is disabled. If any objects need to be checked out. groups. 2 In the Repository Import Wizard. This option is only available when opening a repository offline. Type the Oracle BI Administrator user ID and password. When you import objects from one repository into another. Oracle Business Intelligence Server Administration Guide Version 10. If the user clicks No. If an object of the same name and type exists. the import process continues.Completing Setup and Managing Oracle BI Repository Files ■ Importing From Another Repository Use the Repository Import Wizard to import a presentation catalog (called Subject Area in Answers) and its associated children business model and physical layer objects from another repository.1. 6 Click Next to continue. choose a category using Table 19 on page 156 as a guide. initialization blocks. If the user clicks yes in the dialog box. the import process overwrites the existing object with the new object. select a repository by its file name or. open the repository in offline mode. see “Using the Options Dialog Box—General Tab” on page 29.3. variables. You can also import users. To turn on this option. notifying you that objects will be checked out. the repository from which you are importing must be consistent. the Deprecated feature warning dialog box appears each time a user begins the import. You can add only the selected object. To import from another repository 1 In the Administration Tool. Available buttons (options) depend on the category that you select. NOTE: By default. Use this option when the objects you import are unrelated to objects already in the repository such as when the business model and physical layer objects do not exist. and then click Next. and projects.2 15 5 . and then choose File > Import from Repository. from the drop-down list. by the ODBC DSN that points to the desired repository on that server. or the selected object with its parent objects. In the Repository Import Wizard-Objects to Update dialog box. the import process terminates. the Check Out Objects screen appears. the selected object with its child objects. 3 4 5 Repeat Step 4 until you have added all the objects you want to import. if it is being used by Oracle BI. When this option is enabled.

When you select a user. you can query a repository for objects in the repository based on name. You can then edit or delete objects that appear in the Results list. the Add with Children button becomes active. If you query using the All Types option. The list does not contain objects such as aggregate rules. Groups Initialization Blocks List Catalogs Projects Target levels Users Variables Querying and Managing Repository Metadata You can query for objects in the repository using the Query Repository tool. When you select a variable. For example.1. (You can view information about group membership from the Security Manager. from the Presentation layer to the Physical layer. Key. Table 19. you might want to run a report prior to making any physical changes in a database that might affect the repository. all repository objects that you choose to update and synchronize appear. Add with Children. content filters for logical sources. the Add with Children button is active. Complex Join.3. Presentation catalogs are always added with all their child objects. type (such as Catalog. click finish. the Add. When you select a group. Category Catalogs Categories of Repository Objects to Import Description When you select a catalog. a list appears that contains the exposed object types in the repository. or on a combination of name and type. You can also create new objects. and other objects that are considered internal objects.Completing Setup and Managing Oracle BI Repository Files ■ Querying and Managing Repository Metadata 7 In the Finish screen. all references to a particular physical column. privilege packages. will be updated and synchronized. Query a repository and view reports that show such items as all tables mapped to a logical source. the Add with Children button becomes active. When you select a list catalog. the buttons that become active depend on the user that you select in the left pane. When you select a target level. For example. logical source folders.2 . You can save the report to a file in comma-separated value (CSV) or tab-delimited format.) When you select an initialization block. When you select a project. Defined system and session variables appear in the left pane. and Add with Parents buttons become active. the Add and Add with Parents buttons are active. initialization blocks. You can use repository queries to help manage the repository metadata in the following ways: ■ Examine and update the internal structure of the repository. and security and user permissions. All associated objects. and view parent hierarchies. and LDAP Server). the Add with Children button become active. ■ 156 Oracle Business Intelligence Server Administration Guide Version 10.

Unicode. To save a query results to an external file 1 2 3 4 5 6 7 8 After running the query. Oracle Business Intelligence Server Administration Guide Version 10. In the Save Query As dialog box. type a name for the query and click Save. in the Query Repository dialog box. click Add Columns. You can view the results.Completing Setup and Managing Oracle BI Repository Files ■ Querying and Managing Repository Metadata ■ You can save a query to run again in the future or save the query results to an external file.1. select a Save as type. To add additional columns of information to the results.3. 5 Click Query.2 15 7 . and then open your repository. choose a type of file and an Encoding value. or make changes and overwrite the existing query or save as a new query. To delete a saved query 1 2 Open the Administration Tool. In the Query Repository dialog box. and UTF-8. save the results to an external file. the type of object is prefilled. choose Query Repository. In the Select information to add to the report dialog box. To save a query to run it again later 1 2 3 After running the query. In the Save As dialog box. To query a repository 1 2 3 4 Open the Administration Tool. You can re-order the columns by selecting a checked column and clicking Up or Down. click Save Query As. right-click any object and choose Display Related > [type of object on which you want to search]. In the Query Repository dialog box. the encoding options are ANSI. in the Query Repository dialog box. and then open your repository. From the Tools menu. Click OK In the Save as dialog box. complete the query information using Table 20 on page 158 as a guide. type a name. In the Query Repository dialog box. Click Save. click Save. When you save to an external file. click Close. select the columns you want from the list. In the repository. Table 20 on page 158 contains a description of most fields and buttons in the Query Repository dialog box.

You can mark objects to make them easier to visually identify as you develop metadata.1. scroll to the right or maximize the dialog box. You can use an asterisk ( * ) wildcard character to specify any characters. For example privilege objects and user database sign-on objects. After executing a query. The wildcard character can represent the first or last characters in the search string. Use this button to create or edit a filter for your query. and then open your repository. In the Query Repository dialog box. Use to request a new query. After you create a filter. refer to “Constructing a Filter for Query Results” on page 159. the filter criteria appear in the text box on the left of the button.2 . To run a saved query 1 2 3 4 5 Open the Administration Tool. After executing a query. Allows a search by object name. Field or Button Delete Edit Query Repository Fields and Some Buttons Description After executing a query. choose Query Repository. click Query. If an object cannot be edited from the results list. the Edit button will not be available. Filter GoTo Mark Name New 158 Oracle Business Intelligence Server Administration Guide Version 10. and then click Select. click Saved Queries. Not all repository objects can be edited from the results list. For more information. use this button to mark the selected objects. To unmark an object click the button again.Completing Setup and Managing Oracle BI Repository Files ■ Querying and Managing Repository Metadata 3 4 5 In the Query Repository dialog box. Click the delete button for the query that you wish to delete. From the Tools menu. After executing a query. use this button to edit an object in the list of query results. or make changes and overwrite the existing query or save as a new query. click Saved Queries.3. In the Saved Queries dialog box. In the Query Repository dialog box. Table 20. In the Saved Queries dialog box. use this button to go to the object in the Administration Tool view of the repository. You can view the results. and then click Close. use this button to delete an object in the list of query results. select the row that contains the query you wish to run. Searches are not case sensitive. save the results to an external file.

Use this check box to display the fully qualified name of the object(s) found by the query. if you select the Show Qualified Names check box.logicaltablename. for example.Completing Setup and Managing Oracle BI Repository Files ■ Constructing a Filter for Query Results Table 20. Oracle Business Intelligence Server Administration Guide Version 10. Click New. However. Available only after you have created a query. You can set special icons for objects to make it easier to visually identify them as having common characteristics. The dialog boxes that appear depend on the object type that you select. want to pick a special icon to identify columns that will be used only by a certain user group. If the object does not have a parent. For more information refer to the section of this documentation that pertains to creating that object. choose Tools > Query Repository. However. a message appears. use this button to view the parent hierarchy of an object.columnname. if you delete an object. In the Query Repository dialog box. Query Save Query As Saved Queries Set Icon Use this button when you are ready to submit your query. Opens a dialog box in which you can save a query and select or delete a previously saved query. In the Parent Hierarchy dialog box. select the type of object you want to create. you can edit or delete objects. You may. use this button to select a different icon for an object. After executing a query. Select a type from the drop-down list to narrow your search to a particular type of object. This button is only available if you have previously saved queries. use this button and select Remove associated icon. For example.2 15 9 . any child objects of the selected object will also be deleted.3. Opens a dialog box in which you can type a new name for the query or browse existing saved queries. To change the icon back to this original icon. Field or Button Parent Query Repository Fields and Some Buttons Description After executing a query. the default value in the Name list is the table name. in the Type drop-down list. Constructing a Filter for Query Results Use the Query Repository Filter dialog box to filter the results in the Results list of the Query Repository dialog box. the value in the Name list changes to businessmodelname. Show Qualified Name Type To create a new object 1 2 3 From the Administration Tool menu bar. if you query for logical tables.1.

3. 160 Oracle Business Intelligence Server Administration Guide Version 10. 4 In the Item drop-down list. In the Query Repository dialog box. choose Query Repository. In the Query Repository dialog box. click the Item field. other options may become available. In the Query Repository Filter dialog box. choose Query Repository. and then click Filter.2 . and then click Filter. choose Query Repository. choose Select object. In the Query Repository Filter dialog box.Completing Setup and Managing Oracle BI Repository Files ■ Constructing a Filter for Query Results The Query Repository Filter dialog box contains five columns: Item column and its operator or selection column. a Value column and its operator or selection column. select Related to. To access the Query Repository Filter dialog box 1 2 From the Tools menu. select an item in the Results list or select an item from the Type list. 5 6 Click the ellipsis button to the right of the Value field. 7 Click OK to return to the Query Repository dialog box. The filter appears in the Filter text box of the Query Repository dialog box. click the Item field. To construct a filter 1 2 3 From the Tools menu. and then click Filter. In the Select dialog box. The equals sign (=) appears in the column to the right of the Item field. In the Query Repository dialog box. select the business model by which you want to filter. Your selection appears in the Value field. 4 In the Item drop-down list. The Item drop-down list contains the items by which you can filter. Depending on what you select in the Item drop-down list. and in the drop-down list. The Item drop-down list contains the items by which you can filter. and then click Select. To construct a filter to view all databases referenced in a business model 1 2 3 From the Tools menu. and a Delete column that lets you delete the highlighted filter.1. select the filter that you want to apply to the Results or Type object you selected in Step 2 on page 160. select an item in the Results list or select an item from the Type list. select Database from the Type drop-down list.

Your selection appears in the Value field.3. Business Model and Mapping.1. When the Operator field is active.2 16 1 . In the Query Repository Filter dialog box. To compare two repositories 1 In the Administration Tool. you can use this option to compare your customized repository to a new version of the repository received with Oracle BI Applications. Oracle Business Intelligence Server Administration Guide Version 10. In the Query Repository dialog box. you may want to click OK after adding each constraint to verify that the filter construction is valid for each constraint. when you do. the Operator field becomes active. select the column by which you want to filter and click Select.Completing Setup and Managing Oracle BI Repository Files ■ Comparing Repositories To construct a filter to view all Presentation layer columns mapped to a logical column 1 2 3 From the Tools menu. select Compare. refer to “Merging Oracle BI Repositories” on page 163. select Column. and Presentation layers. You can construct more than one filter. and in the drop-down list. 7 Click OK to return to the Query Repository dialog box. 4 5 6 In the Item drop-down list. It allows you to compare the contents of two repositories. TIP: If you are constructing a complex filter. For more information about merging the contents of your customized Oracle BI Applications repository with that of a new version of the repository. choose Select object. select Presentation Column and then click Filter. In the Select dialog box. click the Item field. The repository that you open in this step is referred to as the current repository. For instructions on opening a repository. Click the ellipsis button to the right of the Value field. The equals sign (=) appears in the column to the right of the Item field. from the Type drop-down list. including all objects in the Physical. refer to “Online and Offline Repository Modes” on page 24. Comparing Repositories This section explains how to use the Compare Repositories option in the Administration Tool. open a repository in offline mode. choose Query Repository. you can set AND and OR conditions. If you are using an Oracle BI Applications repository and have customized its content. 2 From the File menu. The Item drop-down list contains the items by which you can filter. The filter appears in the Filter text box of the Query Repository dialog box.

type the password and click OK. the tool will filter out the child objects of created and deleted objects. Opens created objects for editing. By default. they are considered to be the same object. select the repository you want to compare to the open repository.3. Object exists in the original repository but has been deleted from the current repository. In the Open Offline dialog box.2 . allowing you to view only the parent objects. Boxes appear around created and modified objects. Search by an object Name and Type (such as Initialization Block). Marks the object you select. Search again for the most recent Find value. choose Turn off Compare Mode. If you select the check box (Group created and deleted objects). Allows you to select a repository to compare with the current repository.1. If objects have the same upgrade id. all items are shown. This equalizes the upgrade id of the objects. Not available when merging repositories. You can specify what you want to appear and what you want to be hidden. Filter Find Find Again Mark Save Select 162 Oracle Business Intelligence Server Administration Guide Version 10. Opens the Comparison Filter dialog box to allow you to filter the objects that appear in the Compare repositories dialog box by type of change and type of object. Object exists in the original repository but has been modified in the current repository. Saves a list of the differences between the two repositories. from the File menu.Completing Setup and Managing Oracle BI Repository Files ■ Comparing Repositories 3 4 5 In the Select Original Repository dialog box. Use the Compare repositories dialog box to review the differences between the two repositories. Not available when merging repositories. Not available when merging repositories. The following is a list of some of the buttons in the Compare repositories dialog box and a description of the functionality provided: Button Diff Edit 2 Equalize Functionality Differences between the current repository and the original repository. To remove marks. The following list contains the values in the Change column and a description: Change Created Deleted Modified Description Object was created in the current repository and does not exist in the original repository.

3. The repository that is installed with this version and is currently opened as the main repository. During the merge process. The repository that contains the customizations you made to the original repository. However. To enable the Turn Off Compare Mode ■ From the Administration Tool toolbar. This section uses Oracle’s SiebelAnalytics. Oracle Business Intelligence Server Administration Guide Version 10. you can compare the original repository with the modified repository and the original repository with the current repository. ■ ■ ■ Original repository. Opens deleted objects in read-only mode. Merging Oracle BI Repositories This section is intended for organizations that use an Oracle BI Applications repository. View 1 Turn Off Compare Mode This option allows you to remove marks applied to objects while using the Compare Repositories and Merge Repositories options. During a multiuser development merge.Current. Modified repository. The terms used in the following descriptions are the terms used in the Administration Tool user interface.1.rpd as an example. Current repository.2 16 3 . The repository you received with the previous version of Oracle BI Applications. The Turn off Compare Mode option is only available after you have clicked Mark during the File > Compare action.Modified. this allows you to view an overview of the merge decisions that will take place.Original.rpd as an example. The merge process involves three versions of an Oracle BI repository. This section uses Oracle’s SiebelAnalytics.Completing Setup and Managing Oracle BI Repository Files ■ Merging Oracle BI Repositories Button Stats Functionality Provides the number of changes by Change type. The Merge Repository option allows you to decide on an object-by-object basis if you want to merge your customizations with the current repository. this option is not available. select File > Turn Off Compare Mode. This section uses Oracle’s SiebelAnalytics.rpd as an example. If no repository object is marked. the Merge Repository option can also be used by customers to upgrade their custom repositories.

Merge Repositories Dialog Box The Original repository and Modified repository fields appear at the top of the dialog box. Figure 14. ■ ■ 164 Oracle Business Intelligence Server Administration Guide Version 10.2 .1. The Select buttons at the right of the fields allow you to select repositories. The read-only text box describes the type of merge that you selected.Completing Setup and Managing Oracle BI Repository Files ■ Merging Oracle BI Repositories Figure 14 on page 164 shows the following parts of the Merge repositories dialog box. Table 21 on page 165 contains descriptions of columns and buttons on the Merge repositories dialog box.3.

you can select the choices for the properties. Description of the changes between the original repository and the modified repository. Selecting this type means that you want to leave the object in the current repository as is).3. This type can have an A (add). Search again for the most recent Find value.Completing Setup and Managing Oracle BI Repository Files ■ Merging Oracle BI Repositories ■ The decision table in the middle of the dialog box dynamically changes based on the choices you make in this window. The object was not added or deleted but at least one of its properties was modified. the decision table displays the following information: Table 21. After saving the changes (decisions) you need to close the Merge repositories dialog box by clicking Cancel. Object type Stats (button) Type Oracle Business Intelligence Server Administration Guide Version 10. and between the original repository and the current repository. NOTE: AR means that the Modified version will be accepted but because it conflicts with another name in the repository. For examples of some results that will occur. In multiuser development. if both the Current and Modified repositories add the same object with the same name and the user chooses to accept both versions.1. Merge Repositories Decision Table Column Name Decision Description Allows you to select an action you want to perform on the selected repository change. For example. this allows you to view an overview of the merge decisions that will take place. For example.2 16 5 . Search by an object Name and Type (such as Initialization Block. both would be added and the object from the Modified repository would be renamed. refer to “Examples of the Results of Some Decision Choices” on page 166. if you select the option to merge repository contents. or an AR (after renaming) suffix. Available for objects that are labelled Mix (not added or deleted). Modified. ■ ■ Current. ■ Description Diff (button) Find (button) Find Again (button) Load (button) Name Save (button) Mix. Loads a saved decisions file from the Repository subdirectory so that you can continue processing a repository merge. Shows which properties of an object have been modified. For example. it will be renamed. Object name Saves a file containing interim changes in the Repository subdirectory so that you can stop work on the merge and continue it later. This type has no suffix. a D (delete).

Current.Completing Setup and Managing Oracle BI Repository Files ■ Merging Oracle BI Repositories ■ When you select an object in the decision table. From the Administration Tool menu bar.Original. the following are choices in the Decision column and their results: ■ ■ Selecting Current keeps the repository as is without adding the object back into the current repository. To merge versions of the Oracle BI repository 1 2 3 4 5 In the Administration Tool. the choices apply to each property level on an object. Click Select for the Modified Repository field. Selecting Modified (D) deletes the added object from the current repository. the following are choices in the Decision column and their results: ■ ■ Selecting Current keeps the repository as is without deleting the object. In the Select Original Repository dialog box. select the repository received with your previous version of the software (for example.2 . Selecting Modified (A) adds the object back into the current repository.1.3.rpd) in offline mode. NOTE: If a decision choice is Mix. choose File > Merge. Selecting Modified (A) adds the object back into the current repository. Click the ellipses button to open the Properties dialog box. Type the password and click OK. 166 Oracle Business Intelligence Server Administration Guide Version 10. Examples of the Results of Some Decision Choices The following examples show the results of some decision choices when the current and modified repositories are different: ■ If the Description column for an object contains Added to Current. SiebelAnalytics.rpd). the read-only text box below the decision table describes what changes were made to that object in the current repository. ■ If the Description column for an object contains Deleted from Modified. ■ If the Description column for an object contains Deleted from Current. Modified (A). ■ If the Description column for an object contains Added to Modified. Selecting Modified (D) deletes the object from the current repository. open the newly installed Oracle BI repository (for example SiebelAnalytics. the following are choices in the Decision column and their results: ■ ■ Selecting Current keeps the repository as is without adding the object back into the current repository. The procedure in this section explains how to use the Merge Repository option of the Administration Tool to merge your repository customizations from a prior release with a new version of the Oracle BI repository. the following are choices in the Decision column and their results: ■ ■ Selecting Current keeps the addition in the current repository.

and then click OK. dimensions. This makes sure that project extracts are consistent and makes licensing much easier to manage. you want to split up the work (metadata) between different teams within your company. and save the current repository under a new name. you want to make sure that only the metadata that is relevant to the licensed application is in a project and that everything is consistent and complete. choose Save As. About Extracting Metadata Subsets Into Projects A project consists of a discretely-defined subset of the metadata. and initialization blocks. ■ Project extractions are fact table centric.2 16 7 . Multiuser development. click the Decision header cell. Prior to releasing a new software version. groups. The following is a list of the types of fact tables: ■ Simple (base) fact table. the Merge button is enabled. Projects can consist of Presentation layer catalogs (subject areas) and their associated business model logical facts. 11 From the File menu.1. The Oracle BI Administrator creates projects so that developers and groups of developers can work on projects in their area of responsibility. Exporting Oracle BI Metadata to IBM DB2 Cube Views You can convert Oracle BI proprietary metadata to an XML file and import the metadata into your DB2 database. 7 8 9 10 Click Merge. users. or accept the default action. A message appears to let you know that the merge is complete.3. To locate subsequent rows with empty Decision fields. You accomplish this by adding only the fact tables that are relevant to the application. variables. select the action you want to take regarding the repository change. You accomplish this by extracting the metadata into projects so that each project group can access a different part of the metadata. When all rows have a value in the Decision field. For more information.rpd). In the Decision drop-down list. select the repository that contains the customizations you made to the previous version of the repository (for example. The following is a list of some of the reasons you might wish to create projects: ■ Licensing. Click Open.Modified. Fact tables with nonderived columns or with columns that are derived but whose expressions are made up of constants. type the password. Oracle Business Intelligence Server Administration Guide Version 10. NOTE: The term IBM DB2 Cube Views is a registered trademark of IBM.Completing Setup and Managing Oracle BI Repository Files ■ Exporting Oracle BI Metadata to IBM DB2 Cube Views 6 In the Select Modified Repository dialog box. SiebelAnalytics. During the development process. refer to “Using IBM DB2 Cube Views with Oracle BI” on page 277.

3. In the Project dialog box. You can choose to group objects by Catalog or Business Model. Get presentation columns related to the presentation catalogs. the compound fact table will not appear on the right pane.2 . Get all the base logical columns from all the presentation columns. list catalogs. Although. and presentation catalogs cannot be added to or removed from projects. For example. Their nonderived columns are used in the compound fact table. target levels. it appears that you can add a presentation catalog.1. and existing fact tables are automatically converted into simple (base) fact tables in the following way: ■ ■ ■ ■ ■ Get presentation columns related to the target levels through the qualifying keys. Get presentation columns related to the list catalogs through the qualifying keys. presentation catalogs.1. 168 Oracle Business Intelligence Server Administration Guide Version 10. list catalogs.2 version of Oracle BI the project definition is upgraded. Simple (base) fact tables that are part of a compound fact table. Fact tables with derived columns whose components come from other fact tables Component fact table. underlying fact tables of other Presentation catalogs will be automatically be added if needed to make the extract consistent. The objects in the right pane are all the objects you chose (directly or indirectly) that reflect the complete set of data that makes each addition consistent. Compound fact tables do not appear. you are actually adding only the underlying fact tables. About the Project Dialog Box Target levels. Additionally.3. it adds any other objects that are necessary to make the extract consistent. During the upgrade. The presentation catalogs appear as choices only to make it easier for you to add the elements you want in your project. If you add some but not all components of a compound fact table. the left pane displays only facts that belong to the business model. if you select a presentation catalog to add to your project. When grouped by business model. About Converting Older Projects During Repository Upgrade When you upgrade to the 10. The following describes what you will see in the right pane of the Project dialog box: ■ ■ ■ Only simple (base) fact tables and component fact tables appear. Get all the base logical columns from the fact tables in the project. in the left pane. Catalogs that will be extracted when you click OK. the left pane contains objects that you can use to create a project. The user interface reflects what is happening in the code. the project definition. The following describes what you will see in the left pane of the Project dialog box: ■ ■ ■ ■ Only simple (base) fact tables and component fact tables appear.Completing Setup and Managing Oracle BI Repository Files ■ About Extracting Metadata Subsets Into Projects ■ ■ Compound fact table.

projects contain only simple (base) fact tables. A single developer might manage all development. you might need to use an older version of the repository. To support this. ■ In both examples. an administrator might want to deploy Oracle BI to other functional areas. this developer might want to use an Oracle BI multiuser development environment to maintain metadata code in smaller chunks instead of in a large repository. after completing an implementation of data warehousing at a company. Developers can check out projects. Oracle BI Administrators must understand the metadata creation process. About Using Older Repositories After Upgrading Occasionally.1. Oracle Business Intelligence Server Administration Guide Version 10. Setting up and Using the Oracle BI Multiuser Development Environment Oracle BI allows multiple developers to work on repository objects from the same repository during group development of Oracle BI applications. paying close attention to the messages that appear.2. the administrator creates projects in the repository file in the Administration Tool.2 16 9 . Add all the list catalogs whose qualifying key columns are contained in the presentation column. list catalogs. For example.Completing Setup and Managing Oracle BI Repository Files ■ Setting up and Using the Oracle BI Multiuser Development Environment ■ Get the base fact tables from all the base logical columns. Get all the presentation columns under the presentation catalogs. To downgrade the project definition. For simplicity and performance. The following are examples of how you might use a multiuser development environment: ■ Multiple developers need to work concurrently on subsets of the metadata and then merge these subsets back into a master repository without their work conflicting with other developers. the project definition might need to be converted to the old project definition. it is important for the administrator to perform setup tasks and for the developers to perform checkout and checkin procedures carefully. Therefore. the fact tables will be converted into a project definition that contains presentation catalogs. All the security objects remain unchanged.1.3 version. the following actions occur: ■ ■ ■ ■ ■ Get all the presentation catalogs related to the fact tables. the Administration Tool automatically copies and overwrites files in the background. Add all the target levels whose qualifying key columns are contained in the presentation column. and compound fact tables.3. Add the presentation catalogs to the project. When developers check out projects. When you open a repository with a version number older than the 10. and then copies this repository file to a shared network directory. NOTE: After the upgrade. make changes and then merge the changes into the master repository. NOTE: To perform the tasks in this section. target levels.

170 Oracle Business Intelligence Server Administration Guide Version 10.Completing Setup and Managing Oracle BI Repository Files ■ Setting up and Using the Oracle BI Multiuser Development Environment This section contains the following topics: ■ ■ ■ ■ Setting Up a Multiuser Development Environment (Administrator) on page 170 Making Changes in a Multiuser Development Environment (Developers) on page 172 Checking In Multiuser Development Repository Projects on page 175 Viewing and Deleting History for Multiuser Development on page 178 Setting Up a Multiuser Development Environment (Administrator) To prepare for multiuser development. An object can be part of multiple projects. create the projects that your developers need. dimensions. In this repository. As you add business model and presentation catalog metadata. The Oracle BI Administrator creates projects in a repository and copies this repository to a shared network directory. Set Up the Shared Network Directory on page 171. and the Administration Tool automatically adds any business model and physical layer objects that are related. A best practice is to create projects of manageable size based on individual logical star schemas in the business model. Projects can consist of Presentation layer catalogs (subject areas) and their associated business model logical facts. variables. you create a logical fact table as a placeholder in the Business Model and Mapping layer and a presentation catalog as a placeholder in the Presentation layer. For Oracle BI projects that are just beginning. you copy the repository file in which you created the projects to the shared network directory where it will be used as your master repository for multiuser development. new projects based on individual presentation catalogs and logical facts can be created. we use the phrase master repository to refer to this copy of a repository in the shared network directory. groups. NOTE: In this section.2 . the best practice is to begin with a repository containing all the necessary physical table and join definitions. After creating all projects. Identify or create a shared network directory that will be dedicated to multiuser development. users. NOTE: Only one person at a time can create projects in a master repository. and initialization blocks. Creating Projects for a Multiuser Development Environment A project consists of a discretely-defined subset of the metadata. When creating a project. In the repository. the administrator performs the following tasks: ■ ■ ■ Creating Projects for a Multiuser Development Environment on page 170.3. the Oracle BI Administrator selects a presentation catalog or a subset of logical fact tables related to the selected presentation catalog. Copy the Master Repository to the Shared Network Directory on page 172.1.

they become part of the metadata and are available to multiple developers who need to perform development tasks on the same master repository. 9 Click OK. select the repository that you want to make available for multiuser development. and then click OK. choose File > Open > Offline. In the Project Manager dialog box.2 17 1 . Variables. This shared network directory needs to be used only for multiuser development. Perform one of the following steps to finish creating the project: ■ In the Project dialog box. In the Administration Tool menu. The project is defined as explicitly containing the logical fact tables and implicitly containing all logical dimension tables that are joined to the selected logical fact tables (even though they do not appear in the right pane). in the right panel. The left pane contains the objects that are available to be placed in a project. Groups. For more information about creating projects. NOTE: You must add all developers who need to work on the project or they will not be allowed to check out objects. The Administration Tool automatically adds all the logical fact tables.1. see “About Extracting Metadata Subsets Into Projects” on page 167. Add any Catalogs. Set Up the Shared Network Directory After defining all projects and set up the shared network directory.3. Users. projects typically become a consistent repository after a developer checks out the projects and saves them as a new repository file. type a name for the project. To create a project for a multiuser development environment 1 2 3 4 In the Administration Tool menu. In the Open dialog box. select the fact table and click Remove. and then upload the new master repository to that location. ■ In the Project dialog box. and then click Add. This directory typically contains copies of repositories that need to be maintained by multiple developers. expand the catalogs and select one or more logical fact tables within the business model that are related to the presentation catalog. Oracle Business Intelligence Server Administration Guide Version 10. 7 8 To remove any fact table from the project.Completing Setup and Managing Oracle BI Repository Files ■ Setting up and Using the Oracle BI Multiuser Development Environment After you create projects. The right pane contains the objects that you select to be part of the project. the Oracle BI Administrator needs to identify or create a shared network directory that all developers can access. right-click and then select New Project. choose Manage > Projects. When defined this way. select a presentation catalog and then click Add. 5 6 In the Project dialog box. in the right pane. or Initialization Blocks needed for the project.

shared network directory that is dedicated to multiuser development. CAUTION: The Oracle BI Administrator must set up a separate. see “Setting Up a Multiuser Development Environment (Administrator)” on page 170 During checkout and checkin. a copy of the master repository is temporarily copied to the developer’s local repository directory (\Oracle BI\Repository by default). The repositories in this location are shared with other developers. NOTE: Until the pointer is set up. the multiuser options will not be available in the Administration Tool.Completing Setup and Managing Oracle BI Repository Files ■ Setting up and Using the Oracle BI Multiuser Development Environment Developers create a pointer to this shared network directory when they set up the Administration Tool on their machines. the developers need to set up to the Administration Tool to point to the shared network directory containing the master repository. Making Changes in a Multiuser Development Environment (Developers) Before checking out projects. After checking out projects and making changes in a local repository file. perform the following tasks: ■ ■ ■ Setting Up a Pointer to the Multiuser Development Directory on page 172 Checking Out Repository Projects on page 173 About Changing and Testing Metadata on page 174 Setting Up a Pointer to the Multiuser Development Directory Before checking out projects.3. Copy the Master Repository to the Shared Network Directory Make a copy of the master repository file and paste it in the directory that you have dedicated to multiuser development. notify developers that the multiuser development environment is ready.2 . After you copy the repository to the shared network directory. each developer can check in (merge) changes into the master repository or discard the changes. critical repository files can be unintentionally overwritten and repository data can be lost. This must be the multiuser development directory created by the Oracle BI Administrator. the network directory contains the master repositories. 172 Oracle Business Intelligence Server Administration Guide Version 10. Projects from this master repository will be extracted and downloaded by the developers who will make changes and then merge these changes back into the master repository. To make changes in a multiuser development environment. For more information. If not set up and used as specified. each developer must set up their Administration Tool application to point to the multiuser development directory on the network. Initially. The Administration Tool stores this path in a hidden Windows registry setting on the workstation of the developer and uses it when the developer checks out and checks in objects in the shared directory.1.

Completing Setup and Managing Oracle BI Repository Files ■ Setting up and Using the Oracle BI Multiuser Development Environment

When setting up the pointer, the developer can also complete the Full Name field. Although the field is optional, it is recommended that the developer complete this field to allow other developers to know who has locked the repository. The Full Name value is stored in HKEY_CURRENT_USER in the registry, and is unique for each login.

To set up a pointer to the multiuser default directory 1 2 3 4 5 6
From the Administration Tool menu, choose Tools > Options. In the Options dialog box, click the Multiuser tab. In the Multiuser tab, next to the Multiuser development directory field, click Browse. In the Browse For Folder dialog box, locate and select the multiuser development network directory, and then click OK. In the Options dialog box, verify that the correct directory appears in the Multiuser development directory field. In the Full Name field, type your complete name, and then click OK.

Checking Out Repository Projects
After setting up a pointer to the multiuser development default directory, a developer can check out projects, change metadata, and test the metadata. In the File > Multiuser submenu, the Checkout option is only available when there is a multiuser development directory defined in the More tab of the Options dialog box. For more information, refer to “Setting up and Using the Oracle BI Multiuser Development Environment” on page 169. If a developer checks out a local repository and attempts to exit the application before publishing it to the network or discarding local changes, a message appears to allow the developer to select an action. For more information, refer to “About Closing a Repository Before Publishing It to the Network” on page 177.

To check out projects 1 2
From the Administration Tool menu, choose File > Multiuser > Checkout. In the Multiuser Development Checkout dialog box, select the repository, and then click Open. This dialog box will not appear if there is only one repository in the multiuser development directory.

3

If prompted for your user name and password, in the Extract from dialog box, type your user name and password, and then click OK. If no projects exist in the repository, a message appears and the repository does not open.

4

In the Browse dialog box, select the projects that you want to be part of your project extract, and then click OK. If only one project exists in the master repository, it is selected automatically and the Browse dialog box does not appear.

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

17 3

Completing Setup and Managing Oracle BI Repository Files ■ Setting up and Using the Oracle BI Multiuser Development Environment

5

In the New Repository dialog box, type a name for the new repository and then click Save. A working project extract repository is saved on your local machine. The name is exactly as you specified and is opened in offline mode. A log file is also created. The extracted repository might not be consistent. CAUTION: A second copy of the project extract repository is saved in the same location. The name of this version contains the word Original added at the beginning of the name that you assigned to the repository extract. Do not change the Original project extract repository. It will be used when you want to compare your changes to the original projects.

About Changing and Testing Metadata
Most types of changes that can be made to standard repository files are also supported for local repository files. Developers can add new logical columns, logical tables, change table definitions, logical table sources, and so on. Developers may also work simultaneously on the same project locally. It is important to note, however, that Oracle BI assumes the individual developer understands the implications these changes might have on the master repository. For example, if a developer deletes an object in a local repository, this change will be propagated to the master repository without a warning prompt. The following modifications should not be made in a local repository: ■ ■ ■ Hierarchy definitions. When modified concurrently by two developers, the changes will not be merged correctly during checkin. Project definitions. These should only be changed by the Oracle BI Administrator in the master repository. Physical Connection settings. These are intentionally not propagated and developers should not test in local environments.

After making changes to a local repository, the developer can edit the local NQSConfig.INI file, enter the name of the repository as the default repository, and test the edited metadata. NOTE: DSNs specified in the metadata need to exist on the developer's workstation. For more information about testing the metadata, refer to “Test and Refine the Repository” on page 154. After the local developer makes changes, tests the changes, and saves the repository locally, the local developer can perform the following tasks from the File > Multiuser submenu: ■ Compare with Original. Compares the working extracted local repository to the original extracted repository. When this option, the Compare repositories dialog box opens and lists all the changes made to the working extracted repository since you checked out the projects. For more information, see “Comparing Repositories” on page 161. Discard local changes. Anytime after check out and before check in, you can discard your changes. When you select this option, the working repository closes without giving you an opportunity to save your work. CAUTION: If you select this option, there is no opportunity to change your mind. For example, no Are You Sure? dialog box appears.

174

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

Completing Setup and Managing Oracle BI Repository Files ■ Setting up and Using the Oracle BI Multiuser Development Environment

Merge local changes. Locks the master repository on the network multiuser directory to allow you to check in your changes. For more information, see “Checking In Multiuser Development Repository Projects” on page 175. Publish to the network. After you successfully merge your changes, the master repository opens locally and the Publish to Network submenu item is available. When you select this option, the lock is removed, the repository is published, and the repository closes. For more information, see “Checking In Multiuser Development Repository Projects” on page 175.

Checking In Multiuser Development Repository Projects
After changing and testing the metadata on a local machine, the developer needs to merge the local changes into the local master check in the projects into the master repository on the shared network directory. Only one developer at a time can merge metadata from a local repository into the master repository. Therefore, the master repository is locked at the beginning of the merge process.

About Checking-In Projects
When the check-in process begins, the following actions occur: ■ The Administration Tool determines if the master repository is currently locked. If not, it locks the master repository, preventing other developers from performing a merge until the current merge is complete, and records the lock in the log file. For other developers, the Merge Local Changes option on the File > Multiuser menu will be unavailable until the current check-in process has been successfully completed. The Administration Tool automatically copies the current version of the master repository from the shared network directory to the \\Oracle BI\Repository directory on the developer’s machine and updates the log files in the local and shared network directories. This is necessary because the master repository in the shared network directory might have changed after the developer checked out the projects.

■ ■

About Merging Multiuser Development Metadata
The merge process involves the following files: ■ Original of the local (subset) repository. Contains the state of the projects as originally extracted. This repository name begins with Original. An example of the file name for this copy might be OriginalDevelopment2.rpd. This version is stored in the same location as the modified (or working) version of the local repository. Modified local (subset) repository. Contains the extracted projects after being modified by the developer. This version is stored in the same location as the original version of the local repository. Master repository in network shared directory. This may have been modified by other developers before this merge. (For example, Master_SiebelAnalytics.rpd.)

During the merge, the Administration Tool checks for added objects and if found, a warning message appears. The following list describes what happens during this step:

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

17 5

Completing Setup and Managing Oracle BI Repository Files ■ Setting up and Using the Oracle BI Multiuser Development Environment

Warning about added objects. When a person checks out a project, they have the ability to modify that project in any way and check it back in. Deletions and modifications are ways in which the integrity of the project is maintained. However, adding objects might introduce objects into the repository that do not belong to any project. Therefore, all project related objects are checked and if a new object is found, a warning message appears. Aggregation of related objects. In the warning message, only the parent object is reported. The Administration tool aggregates all the objects to make the message more usable. For example, if a developer added a new business model, only the business model appears in the warning message to the user, not the tables, columns, dimensions, and so on.

When the developer closes the Administration Tool, the following actions occur: ■ ■ The master repository on the shared network directory is overwritten with the master repository containing the developer’s changes. The [master repository].lck file is deleted. If another developer checks out the changed project from the master repository, the changes made by the first developer are exposed to the other developer. CAUTION: The Oracle BI Administrator needs to add newly created metadata to the project definition in the master repository for it to be visible in future extracted versions of the project. For example, if a developer checks out a project, adds a new object, and then checks it in, the new object will not be visible in extracted versions of the project until it is explicitly added to the project definition. For instructions, refer to “Creating Projects for a Multiuser Development Environment” on page 170.

Tracking Changes to the Master Repository
A summary of the development activities on the master repository is in the [master_repository].log. This log contains a record of the following activities: ■ ■ ■ Projects that have been checked in and checked out and when these actions occurred The NT login name and computer name initiating the transaction When locks are created and removed

Differences Between the Multiuser Merge and Standard Repository Merge Processes
The multiuser development check-in process uses the same technology as the standard repository merge process with a few important differences. For more information about the standard repository merge, refer to “Merging Oracle BI Repositories” on page 163. The following list describes the differences that occur during a multiuser development merge: ■ Inserts are applied automatically. Because a subset of the master repository is being used as the original repository, most objects in the master repository appear to be new. This would result in many unnecessary prompts that the developer would have to manually approve. Therefore, inserts are applied without a prompt during a multiuser development merge. Conflicts that are not inserts but are resolved as a result of the automatic inserts are applied without a prompt during a multiuser development merge.

176

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

Completing Setup and Managing Oracle BI Repository Files ■ Setting up and Using the Oracle BI Multiuser Development Environment

The database and connection pool properties on the server take precedence over the same properties on the developer’s machine. This precedence are applied without a prompt during a multiuser development merge.

About Closing a Repository Before Publishing It to the Network
If you attempt to close an unpublished, locked repository without selecting one of the options in the File > Multiuser submenu, the Closing MUD repository dialog box opens with the following options: ■ Publish to Network. Publishes the merged repository to the network share as the new master, releases the lock on the master, and the event is logged. This option is available after a Merge Local Changes event occurs. This option is also available on the File > Multiuser submenu. Discard Local Changes. Releases the lock on the master repository and records the event in the log. This option is available after a Checkout or Merge Local Changes is performed. available on the File > Multiuser submenu. Close repository and keep lock. This closes the repository leaving the master repository locked.

To check in projects to the master repository 1 2 3
From the Administration Tool menu, choose File > Multiuser > Merge Local Changes. In the Lock Information dialog box, in the Comment field, type a description of the changes that you made, and then click OK. In the Merge repositories dialog box, verify that the Original local repository and Modified local repository file names are correct. In the Merge repositories dialog box, it might appear that there are no differences between the repositories. However, what this means is that there are no decisions that have to be explicitly made by the developer to check-in changes.

4 5 6 7

For an overview of the merge decisions that will take place, click Stats. In the Results dialog box, click close. Click Merge. If asked if you want to check global consistency, click Yes or No. The changes are merged and the merged local repository file opens. In the developer's local directory, a CSV file is created that contains details of the merged changes.

8

Verify that the changes made in the modified local repository are reflected in this merged local repository. CAUTION: The merged repository has the same name as the shared repository, but this is still a local copy.

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

17 7

Completing Setup and Managing Oracle BI Repository Files ■ Setting up and Using the Oracle BI Multiuser Development Environment

9

After you confirm all the changes, click Save. This saves the merged repository locally, and then, uploads this repository to the shared network directory with a 000 file extension. For example, Master_Sales.000. At this point, the changes made by the developer are still not saved to the master repository in the shared network directory.

10 To commit these changes to the master repository in the shared network directory, close the
Administration Tool.

11 In the Closing MUD repository dialog box, select Publish to Network.
The master repository on the shared network directory is overwritten with the copy of the repository containing the developer’s changes. For more information about the options in this dialog box, see “About Closing a Repository Before Publishing It to the Network” on page 177

Viewing and Deleting History for Multiuser Development
You can view the development history of a multiuser development repository. In the Administration Tool, multiuser development history is only available when no repository is open and after the administrator sets up the shared network directory. This prevents the confusion that could occur if a user opened a history log that did not match an open, unrelated repository.

To view multiuser development history 1 2 3
Open the Administration Tool. Without opening a repository, from the Administration Tool menu, choose File > Multiuser > History. In the Multiuser Development History dialog box, select a repository. A list of all master repositories in the multiuser development directory appears. If directory contains only one master repository, it is selected by default, and no list appears.

4 5

In the Open Offline dialog box, type the password for the repository. In the Multi User History dialog box, right-click a row and select one of the following items: Action View Repository View Projects Description Loads the selected master version of the repository in the Administration Tool in read-only mode. Loads the selected version of a modified subset repository in the Administration Tool in read-only mode.

178

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

Completing Setup and Managing Oracle BI Repository Files ■ Setting up and Using the Oracle BI Multiuser Development Environment

Action View Conflict Resolution

Description Loads all necessary repositories of the selected version. Also shows the Merge dialog box in read-only mode with all selected decisions as they were during the Merge Local Changes activity at that time. NOTE: The Conflict Resolution check box has to be selected in the dialog, in order to this menu item to be enabled (otherwise, there is nothing to show - there were no decisions decided by the user).

View Details

Displays a log with details for the selected versions, or displays details for all versions if no specific versions are selected. Compares modified subset repository of the selected version with original subset repository and shows all changes made by the user in the selected version. Allows you to search the list. Selects all items displayed in the dialog. Available only to the Administrator.

View Changes

Find and Find Again Select All Delete

Deleting Multiuser Development History
Only the Administrator can delete history. Administrators are defined in a special hidden option file in multiuser development directory. This option file has the following properties and characteristics: ■ ■ ■ Must have the HIDDEN flag turned on. Can have network access privileges assigned only to multiuser development administrators. Has the same base name as the master repository, but the extension is OPT. For example, for \\network\MUD\sales.rpd, the administrator might create the hidden file \\network\MUD\sales.opt. The OPT file is a TXT file in the format: [Options] Admin=admin1;admin2 Administrators are defined by their network login names. When multiple administrators exist, administrator names are separated by semicolons. For example: [Options] Admin=jsmith;mramirez;plafleur

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

17 9

Completing Setup and Managing Oracle BI Repository Files ■ Setting Up the Repository to Work with Delivers

An administrator can delete the entire MUD history or the oldest 1 to n versions. It is not possible to delete versions in the middle of the range. For example, an administrator cannot delete version 3 if there are still versions 2 and 1. If an administrator deletes the entire MUD history, newly assigned version numbers restart at version 1. If one or more versions are not deleted, the newly assigned version numbers continue from.

Setting Up the Repository to Work with Delivers
The Oracle BI Presentation Services needs to deliver alerts from Delivers to entire groups and to specified email addresses, phone numbers, and so on. Delivers uses a tool called iBot to deliver alerts. iBots are software-based agents driven by a schedule or events that can access, filter, and perform analysis on data based upon defined criteria. For more information about iBots, refer to the chapter about using Delivers in Oracle Business Intelligence Answers, Delivers, and Interactive Dashboards User Guide. You need to set up a presentation catalog (called subject area in Answers) with the name SA System in the Presentation layer of the Oracle BI repository for this to function correctly. NOTE: For information about setting the BI Presentation Server parameters, refer to Oracle Business Intelligence Presentation Services Administration Guide. This section contains the following topics: ■ ■ About the SA System Subject Area on page 180 Setting Up the SA System Subject Area on page 181

About the SA System Subject Area
In Oracle BI, data visibility can be defined by the groups to which a user belongs. For example, when Oracle BI applications customers log on, the GROUP system session variable can be populated and the user sees certain subject areas and columns depending on the groups that exist in the variable. Although the GROUP system session variable provides Oracle BI with the groups to which each user belongs, it does not identify the users that are in each group. SA System is a presentation catalog (called subject area in Answers) that addresses this data visibility issue by exposing users in a group to Delivers. It also allows contact information such as email addresses to be retrieved from a database and used as delivery devices in Delivers. This allows Oracle BI Administrators to set up the Oracle BI Server to automatically populate delivery devices and profiles for users instead of requiring users to update their My Account screen in Delivers. Group membership is often maintained in an external database such as Oracle’s Siebel transactional database and not in the Oracle BI repository. This information can be propagated to the Oracle BI Server and Oracle BI Presentation Services through the GROUP session variable. The SA System subject area provides group membership and external email addresses to Delivers when used in conjunction with the GROUP session variable.

180

Oracle Business Intelligence Server Administration Guide Version 10.1.3.2

This section contains the following topics: ■ ■ Guidelines for Implementing the SA System Subject Area on page 181 Setting Up the SA System Subject Area for a Stand-Alone Implementation on page 181 Guidelines for Implementing the SA System Subject Area The name for the subject area must always be SA System. You can import any external schema that holds group membership. you can allow only the Oracle BI Administrator to have access to this subject area. For example. login names might be converted to all uppercase. CAUTION: An existing configuration option (the Alerts element) in instanceconfig. Oracle BI does not support group membership through a mix of internal Oracle BI repository users and external users in the SA System subject area. You can add columns to the SA System table (for example. Oracle Business Intelligence Server Administration Guide Version 10. If you use the SA System subject area.2 18 1 . and so on). the Oracle BI Administrator loses the ability to perform a mass update of email addresses. security settings are not compromised. Delivery profile. If a user does set up a delivery profile. For more information. and users' SMTP devices (cell phones. and then map it to the SA System subject area. ■ Security settings. handhelds. adding a provider name) by extending the underlying physical tables and columns.3. For related information about database authentication. refer to “About Oracle BI Delivers and Database Authentication” on page 328. the following set-up guidelines apply: ■ Users and groups.Completing Setup and Managing Oracle BI Repository Files ■ Setting Up the Repository to Work with Delivers Setting Up the SA System Subject Area The Oracle BI Presentation Services is preconfigured to look for the SA System subject area on startup and will use it if it exists. If group membership is seen as privileged data. For example. Authorization and authentication.xml controls how logon names are treated before accessing the SA System subject area. not who users are (authentication). It is not recommended for the user to set up a delivery profile because there is no way for Oracle BI Administrators to control this profile. This option affects what users are allowed to do in the system (authorization). ■ ■ Setting Up the SA System Subject Area for a Stand-Alone Implementation Oracle BI standalone customers also need to create and populate the SA System subject area in the Oracle BI repository. The SA System subject area only needs to have read-access to the Administrator account and as a result. users' primary email addresses. refer to Oracle Business Intelligence Presentation Services Administration Guide.1. the delivery profile will take precedence over what is shown in the SA System subject area. Every user and group must be present in the data.

Map the tables and columns from the Business Model and Mapping layer to the Presentation layer. For instructions.2 . 182 Oracle Business Intelligence Server Administration Guide Version 10. User table. refer to “Creating and Administering the Business Model and Mapping Layer in an Oracle BI Repository” on page 109. ■ NOTE: For Oracle BI Application customers. Map the tables and columns from the Physical Layer to the Business Model and Mapping layer. refer to “Creating and Administering the Physical Layer in an Oracle BI Repository” on page 55. the SA System subject area is preconfigured in their Oracle BI repository. and columns. Create and build the subject area in the Oracle BI repository. The Presentation layer metadata needs to contain the SA System folder. For instructions. refer to “Creating and Maintaining the Presentation Layer in an Oracle BI Repository” on page 143. For instructions. ■ ■ Import schema that stores the appropriate information.1.3.Completing Setup and Managing Oracle BI Repository Files ■ Setting Up the Repository to Work with Delivers Customers who install the Oracle BI Server in a standalone environment (without Oracle BI Applications) must perform the following tasks in the order shown: ■ ■ Create tables and columns in your data source (for example your external database).

aggregations.1.3. This section contains the following topics: ■ ■ Utilities and Wizards on page 183 Expression Builder on page 190 Utilities and Wizards The Administration Tool provides a number of wizards and utilities to aid you in performing various tasks.2 18 3 . and other definitions within a repository. It also describes the Expression Builder and provides instructions for creating constraints.8 Oracle BI Administration Tool Utilities and Expression Builder This section describes the various utilities and wizards contained in the Administration Tool. To start the Replace Column or Table Wizard 1 2 From the Tools menu. Oracle Business Intelligence Server Administration Guide Version 10. The wizard prompts the Oracle BI Administrator to replace columns as well as tables. choose Utilities > Replace Column or Table in Logical Table Sources Click Execute. This section provides a description of the following utilities and wizards: ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ Replace Column or Table Wizard on page 183 Oracle BI Event Tables on page 184 Externalize Strings on page 184 Rename Wizard on page 185 Update Physical Layer Wizard on page 185 Generating Documentation of Repository Mappings on page 186 Generating and Deploying a Metadata Dictionary on page 187 Removing Unused Physical Objects on page 189 Aggregate Persistence Wizard on page 189 Calculation Wizard on page 190 Replace Column or Table Wizard The Replace Wizard automates the process of replacing physical columns or tables in logical table sources by allowing the Oracle BI Administrator to select the sources from those displayed.

choose Utilities > Oracle BI Event Tables Click Execute. In the Save As dialog box.2 . click Close. and their descriptions into other languages. In the Externalized Strings dialog box.3. In the right-click menu. or polls. choose Utilities > Externalize Strings. the event table. tables. An event polling table is a way to notify the Oracle BI Server that one or more physical tables have been updated. and UTF-8 coding options. columns. These will be placed in session variables for use by Oracle BI Presentation Services. Externalize Strings This utility is primarily for use by translators to translate Presentation layer catalogs. You can save these text strings to an external file with ANSI.Oracle BI Administration Tool Utilities and Expression Builder ■ Utilities and Wizards Oracle BI Event Tables This utility allows you to identify a table as an Oracle BI event polling table. In the right pane. click a presentation catalog in the left pane. and then click Execute. choose a type of file and an encoding value and click Save. and purges cache entries that reference those physical tables. NOTE: The term Presentation Catalog in the Administration Tool refers to subject areas. both options appear with a check next to them. The cache system reads rows from.1. 3 4 From the Tools menu. 184 Oracle Business Intelligence Server Administration Guide Version 10. the translated values and the original strings (names) appear. To translate a string 1 In the Presentation layer. For more information about event tables. (Optional) To clear the check marks next to these options. 5 6 7 8 Click Save. right-click the presentation catalog and click each option. CAUTION: When using this utility. In the Externalize Strings dialog box. NOTE: You can select all catalogs at once or select them individually and create a separate string file for each one. right-click the same presentation catalog and choose Externalize Descriptions. To start the Oracle BI Event Tables utility ■ ■ From the Tools menu. Unicode. extracts the physical table information from the rows. right-click a presentation catalog and choose Externalize Display Names. Each row that is added to an event table describes a single update event. 2 In the Presentation layer. translators should work closely with Oracle BI contacts to verify that the correct process is followed for each situation. refer to “Cache Event Processing with an Event Polling Table” on page 248.

for Oracle. and then click Execute. the server running the Administration Tool connects to each back-end database. To start the Rename Wizard ■ From the Tools menu. and then click Execute. because they are not available for updating. When the wizard processes the update. the following text is displayed: Object does not exist in the database NOTE: The wizard does not add columns or tables to the repository that exist in the back-end database but not in the repository.Oracle BI Administration Tool Utilities and Expression Builder ■ Utilities and Wizards Rename Wizard The Rename Wizard allows you to rename presentation and Business Model and Mapping layer tables and columns. such as data type-length mismatches and objects that are no longer found in the back-end database. Oracle Business Intelligence Server Administration Guide Version 10. but an Oracle ODBC source must be used for the update. Explanatory text alerts you to differences between objects as defined in the database in the Physical layer and as defined the back-end database. The objects in the Physical layer are compared with those in the back-end database. For example.3. For more information about connection pool settings. you would set the connection pool to the Oracle ODBC setting used for the import. For example. It is recommended that you rename the business model layer logical columns instead. In this case. It provides a convenient way to transform physical names to user-friendly names. the connection pool may be set to native OCI. and then. refer to “Setting Up Connection Pools” on page 65. if the values don't match. The connection pool settings for each database need to match the connection pool settings used when the objects were last imported into the Physical layer from the back-end database. choose Utilities > Rename Wizard. To update objects in the Physical layer 1 From the Tools menu.1. the Wizard doesn't update column Key assignments.2 18 5 . It checks that there is a column in the repository that matches the column in the database. choose Utilities > Update Physical Layer. NOTE: Renaming the presentation layer columns will reset the Use Logical Column Name property to false. if an object exists in the database in the Physical layer of the repository but not in the back-end database. the wizard updates the type and length of the column in the repository. NOTE: This wizard is not available for repositories that are opened in read-only mode. The databases in the Physical layer of the repository are listed in the left pane of the wizard. Update Physical Layer Wizard This wizard allows you to update database objects in the Physical layer of a repository based on their current definitions in the back-end database. Additionally.

The wizard updates the objects in the Physical layer. select the databases that you want to update in the left pane.000. click Next. Excel only allows data sets of 1. Therefore.1. Generating Documentation of Repository Mappings The Repository Documentation utility documents the mapping from the presentation columns to the corresponding logical and physical columns.2 . select the connection pool for each database that you want to update and then click Next. and then closes automatically. what logical columns will be affected?” or “How many places in the business model refer to the physical table W_SRVREQ_F”. 7 8 9 If you decide that you do not want the wizard to update a particular object in the Physical layer. The databases move to the right pane. click the Back button and remove the object. The wizard alerts you if it needs to check any objects out. click File > Save to save the updated objects in the Physical layer. see “Setting up and Using the Oracle BI Multiuser Development Environment” on page 169. Click Finish. You can query the resulting file to answer questions such as “If I delete physical column X. The Repository Documentation utility allows you to extract Oracle BI metadata to a flat file so that it can be loaded into Excel and RDBMS. NOTE: This file excludes any information about repository variables and marketing objects. On the Administration Tool toolbar. 186 Oracle Business Intelligence Server Administration Guide Version 10.000 rows. select it and click Remove. The documentation can be saved in comma separated (CSV) or tab delimited (TXT) format. The Repository Documentation utility creates a comma-separated values file or a tab-separated values file that shows the connections between the presentation and physical layers in the current repository. In the next window. Then you can establish dependency relationships among elements in the repository. NOTE: You can sort the rows (toggle between ascending order and descending order) by clicking the Name column heading. You might exceed this in a large repository. The documentation also includes conditional expressions associated with the columns.3. After you select the objects that you want to update in the Physical layer. you may wish to run the Repository Documentation utility on a subset of the repository by extracting relevant business models into a new project.Oracle BI Administration Tool Utilities and Expression Builder ■ Utilities and Wizards 2 In the Update Physical Layer Wizard dialog box. 3 4 5 To remove a database from the update list. 6 Review the information about each update. For more information. and then click Add. This file can be imported into a repository as a physical layer.

If you know that location before you generate the dictionary. Current encoding options are ANSI. You can select a destination for your dictionary in the following ways: Oracle Business Intelligence Server Administration Guide Version 10.3. and then click Execute. you can specify the location in the Save As dialog box before you generate the dictionary files and folders. choose the directory where you want to save the file. In the Utilities dialog box. Therefore. you can set the output location to the final location or to a temporary location. you can copy the files to the desired location at that time. Type a name for the file. Therefore. Each XML document describes a metadata object such as a physical table or a logical column. The dictionary does not change dynamically as repository changes are made. CAUTION: Repositories can be large (containing tens of thousands of objects). you might need to resolve issues caused by confusing metadata object names or to obtain more details when an attribute is derived in a complicated way. and UTF-8. For example. A metadata dictionary is a static set of XML documents. Generating and Deploying a Metadata Dictionary When using Oracle BI.2 18 7 . you might need to obtain more information about metrics or attributes for repository objects. Choose a type of file and an Encoding value and click Save. Generating a dictionary for a large repository can take a significant period of time. A metadata dictionary can help you resolve conflicting information and understand the metrics and attributes of repository objects. If you obtain the location after you generate the dictionary. Generating a Metadata Dictionary When you generate the dictionary. In the Save As dialog box. Unicode. choose Utilities. These XML documents are viewed using index files in a browser. select Repository Documentation.1. including its properties and relationships with other metadata objects. the metadata dictionary needs to be located on the BI Presentation Server. you will need to generate the dictionary periodically to update the content.Oracle BI Administration Tool Utilities and Expression Builder ■ Utilities and Wizards To run the Repository Documentation utility 1 2 3 4 5 From the Tools menu.

3. copy the entire folder to the physical directory associated with the IIS virtual directory. choose the physical directory associated with the IIS virtual directory. When you generate the dictionary.2 . NOTE: If dictionary has been generated. In the Choose Directory dialog box. You cannot generate the metadata dictionary in Online mode. including the style sheets. You can use following URLs to locate and view objects: ■ ■ http://<hostname>:<portname>/<repository name>/NameIndex. NOTE: Each index file contains a link to the other so that you can quickly switch views. The dictionary folders and files will be created in that subdirectory. For example. will be located in the following location: J:\BI_DataDictionary\demo1\ NOTE: If the dictionary you wish to use has been generated. After you generate a metadata dictionary. you can create or select a virtual directory in IIS before you generate the dictionary. The related style sheets (XSL files) are created and stored in the following location: [drive]:\[path]\[repository name]\xsl A name index and tree index are created and stored in the [drive]:\[path]\[repository name] root folder. From the Tools menu. 188 Oracle Business Intelligence Server Administration Guide Version 10. and then click Execute. http://<hostname>:<portname>/<repository name>/TreeIndex. ■ If you want to use an IIS virtual directory. style sheets and index files are created for that dictionary.1. copy the entire folder to the desired location. the dictionary files.Oracle BI Administration Tool Utilities and Expression Builder ■ Utilities and Wizards ■ Select a local or network location when you generate the dictionary. click Browse to locate and select the location where you want to store the dictionary. a subdirectory with the same name as the repository will be created in that location. If you select J:\BI_DataDictionary\ and your repository name is demo1.xml.xml. choose Utilities > Generate Metadata Dictionary. Allows you to search for repository objects by name. To generate the metadata dictionary 1 2 3 Open the repository in Offline mode. You should receive the following message: Metadata dictionary has been successfully created in [drive]:\[path]\ 4 Click OK.rpd. Allows you to drill down from top-level objects to the object that you want to view. When the dictionary is generated.

and then click Execute. To remove the checked objects.2 18 9 . You can specify a new or an existing file name. Additionally. Guidelines for Using the Aggregate Persistence Wizard The traditional process of creating aggregates for Oracle BI Server queries is a manual process. choose Utilities > Remove Unused Physical Objects. select the type of object. click No. NOTE: The View Script button is not available during the creation of the first aggregate table block. from the Type drop-down list. This section describes how you can use the Aggregate Persistence Wizard to create the SQL file that will be used to create aggregate tables and map them into the metadata. In the Select file location dialog box. ■ Oracle Business Intelligence Server Administration Guide Version 10. and variables. specify the complete path and file name of the aggregate creation script. select the Generate DDL file check box. physical catalogs. You can remove databases. This is a time-consuming and potentially error-prone process. The following is a list of the guidelines you should follow when using the Aggregate Persistence Wizard: ■ ■ From the Tools menu. In the list of objects. Additionally. development activities take longer on a large repository. The Aggregate Persistence Wizard allows the Oracle BI Administrator to automate the creation of these aggregate tables and their mappings into the metadata.3. Aggregate Persistence Wizard Aggregates are created and persisted in the Oracle BI Server metadata as well as in the back-end databases.Oracle BI Administration Tool Utilities and Expression Builder ■ Utilities and Wizards Removing Unused Physical Objects Large repositories use more memory on the server and are harder to maintain. choose Utilities > Aggregate Persistence Wizard. select the items. To remove unused physical objects 1 2 3 4 5 From the Tools menu. initialization blocks. To cancel. If you want to generate a DDL file.1. these tables need to be mapped into the repository metadata to be available for queries. click Yes. requiring that you write complicated DDL and DML files that create and populate tables in the databases. In the Remove Unused Physical Objects dialog box. Below the list of objects. and then click Execute. the number of checked and the total number of objects appears. verify that only the objects that you want to remove are checked. This utility allows you to remove objects that you no longer need in your repository. In the Select Business Model & Measures dialog box.

the complete path and file name appears. The expressions you create with the expression builder are similar to expressions created with SQL. including existing error trapping for NULL and divide by zero logic. select the items. the View Script button becomes available for use. ■ For information about using the SQL file to create aggregate tables.INI) is added to the file name. A default aggregate table name will be provided and a prefix (defined in NQSConfig. Calculation Wizard You use the Calculation Wizard to create new calculation columns that compare two existing columns and to create metrics in bulk (aggregated). you can use all expressions constructed with the expression builder in SQL queries against the Oracle BI Server. refer to “SQL Syntax and Semantics” on page 355. refer to “SQL Reference” on page 366. the join to the fact table will be expensive. For information about the SQL functions supported by the Oracle BI Server. Expression Builder You can use the Expression Builder dialog boxes in the Administration Tool to create constraints.2 .Oracle BI Administration Tool Utilities and Expression Builder ■ Expression Builder ■ In the Select Dimensions & Levels dialog box. In the Complete Aggregate Script dialog box. For information about setting up the Calculation Wizard. a surrogate key in the level aggregate table would simplify this join. The default join option between the fact and level aggregate tables is to use the primary keys from the level aggregate. If the primary key of the level is large and complex. the logical SQL appears for your review.1. ■ ■ In the Select Output Connection Pool. refer to “Creating Aggregates for Oracle BI Server Queries” on page 241. You start the Calculation Wizard in the Business Model and Mapping layer by right-clicking any logical fact or dimension column of data type numeric. and other definitions within a repository. usually a number. and you have a choice of defining another aggregate (default) or ending the wizard. and then selecting the option Calculation Wizard. In the Aggregate Definition dialog box. refer to “Using the Options Dialog Box—General Tab” on page 29. removing unnecessary (level primary key) columns from the fact table and resulting in a smaller fact table. Except where noted. For example. This section includes the following topics: ■ ■ ■ ■ About the Expression Builder Dialog Boxes on page 191 Expression Builder Toolbar on page 192 Folders in the Selection Pane on page 193 Example of Setting Up an Expression on page 195 190 Oracle Business Intelligence Server Administration Guide Version 10. You might want to specify a surrogate key to be used for the fact-dimension join. aggregations. A surrogate key is an artificially generated key. expand the window to view all columns. For information about using SQL with the expression builder.3. Container & Name.

the panes are automatically redrawn without changing the contents of the panes or your filtering criteria. When you locate the item you want to insert into the expression. It displays the available categories for the folder you select in the Selection pane. In the lower half of the dialog box. The item you selected will appear in the expression in the expression box. It displays the folders that are appropriate for the dialog box from which you accessed the expression builder. When you first open the Expression Builder dialog box. you can search the categories pane and building blocks pane. the items are not sorted. After typing search criteria in a search box. select it and click Insert in the dialog box or press Enter on your keyboard. The toolbar in the middle of the dialog box contains commonly used expression building blocks. you can move up and down the list using arrows and tab between the first search box and the second search box. the left pane is the Selection pane. it filters out the nonmatching strings and only the ones that match will appear.3. Figure 15 on page 192 shows an example of an expression builder and the dialog box contains the following sections: ■ ■ ■ ■ The edit pane at the top of the dialog box allows you to edit the current expression.Oracle BI Administration Tool Utilities and Expression Builder ■ Expression Builder ■ ■ ■ Navigating Within the Expression Builder on page 196 Building an Expression on page 196 About Time Series Conversion Functions on page 197 About the Expression Builder Dialog Boxes You can access the expression builder from the following dialog boxes: ■ ■ ■ ■ ■ ■ ■ ■ Logical Table Source—Content tab Logical Table Source—Column Mapping tab Logical Column—General tab Logical Column—Aggregation tab Logical Foreign Key Physical Foreign Key Session Variable—Variable tab Static Repository Variable—Variable tab When creating expressions in the Expression Builder dialog boxes. The lower middle pane is the Categories pane. Oracle Business Intelligence Server Administration Guide Version 10. As soon as you select the check box. When checked the Sort Panes check box sorts all items in the panes. The Search field below the middle pane allows you to search for a value in the middle pane.1. When you type a value into the search box. To return to the full list of results. you delete the search string from the Search field.2 19 1 .

192 Oracle Business Intelligence Server Administration Guide Version 10. Divide by sign for division.Oracle BI Administration Tool Utilities and Expression Builder ■ Expression Builder ■ The lower right pane is the Building Blocks pane. Character string concatenation. indicating the same value.2 . It displays the individual building blocks for the category you select in the Category pane. indicating values higher than the comparison. Multiply sign for multiplication.1. indicating values lower than the comparison. Close parenthesis. Table 22. Operator + * / || ( ) > < = Expression Builder Toolbar Description Plus sign for addition. Open parenthesis. Example Expression Builder Expression Builder Toolbar The toolbar is located in the middle portion of the expression builder.3. Greater than sign. Minus sign for subtraction. Table 22 on page 192 describes each icon and its function in an expression. Equal sign. Less than sign. Figure 15. The Search field below the right pane allows you to search for a value in the right pane.

but not the same. Aggregate sources must use one of the functions listed here to specify the level of their content. indicating values higher or lower. indicating values the same or higher than the comparison. Operator <= >= <> AND OR NOT . and each column for the selected logical table displays in the right pane. Operators The Operators folder contains the available SQL logical operators. Comma. indicating intersection with one or more conditions to form a compound condition. indicating values the same or lower than the comparison. This section describes the folders that may appear.3. Dimensions The Dimensions folder contains the dimension configured in the business model. indicating a condition is not met. each logical table in the business model displays in the middle pane. OR connective. Oracle Business Intelligence Server Administration Guide Version 10. Not equal to. Logical Tables The Logical Tables folder contains the logical tables configured in the business model. the Dimension folder is not displayed. Aggregate Content The Aggregate Content folder contains the available aggregate functions.2 19 3 . When you select the Dimensions folder. AND connective. each configured dimension displays in the middle pane. Expression Builder Toolbar Description Less than or equal to sign. or if the dimension folder is not pertinent to a particular expression builder. indicating the union with one or more conditions to form a compound condition. NOT connective. and each level for the selected dimension displays in the right pane. If logical tables are not pertinent to a particular expression builder.Oracle BI Administration Tool Utilities and Expression Builder ■ Expression Builder Table 22. used to separate elements in a list. Folders in the Selection Pane The folders that appear in the Selection pane vary based on the dialog box from which you accessed the expression builder. the Logical Tables folder is not displayed. Greater than or equal to sign. If no dimension exists in a business model. When you select the Logical Tables folder.1.

Oracle BI Administration Tool Utilities and Expression Builder ■ Expression Builder Expressions The Expressions folder contains the available expressions. If no session variables are defined. Constants The Constants folder contains the available constants. Session Variables This folder contains the available system session and non system session variables. this folder does not appear. this folder does not appear. Types The Types folder contains the available data types. Functions The Functions folder contains the available functions. The functions that appear depend on the object you selected.2 . If no repository variables are defined. 194 Oracle Business Intelligence Server Administration Guide Version 10. Repository Variables This folder contains the available repository variables.3.1.

Oracle BI Administration Tool Utilities and Expression Builder ■ Expression Builder Example of Setting Up an Expression Figure 16 on page 195 shows the expression builder for a derived logical column. Figure 16. In the expression builder’s edit box. click once between the parentheses of the function to select the area as the insertion point for adding the argument of the function.3. Oracle Business Intelligence Server Administration Guide Version 10. Double-click the function in the right pane to paste the function in the edit box.2 19 5 .1. Expression Builder for Derived Logical Columns Select the Functions folder in the left pane.

The available categories for the folder appear in the Categories pane.3.1.Oracle BI Administration Tool Utilities and Expression Builder ■ Expression Builder Double-click the logical column to paste the logical column at the insertion point as the argument of the function. Figure 17 on page 196 shows where the expression appears in the window. Select the appropriate category for the expression you want to build. 196 Oracle Business Intelligence Server Administration Guide Version 10. Example Logical Column Function in the Editing Pane Navigating Within the Expression Builder Use the following procedure to navigate within an Expression Builder dialog box. The available building blocks for that category appear in the Building Blocks pane. Building an Expression Use this procedure to build an expression in the Expression Builder dialog box. select the appropriate folder for the type of expression you want to build. 3 4 Double-click a building block to move it into the Editing pane.2 . To insert an operator into the expression. double-click an operator on the Expression Builder toolbar. To navigate within an Expression Builder 1 2 In the Selection pane. Figure 17.

Use the Expression Builder toolbar to insert operators into the expression.1. you may only enter AGO and TODATE functions in the Expression Builder in the Administration Tool. The grain of the aggregate source is called aggregation grain.3. In the query example. The grain at which the aggregation is requested. The grain of the request. ■ Storage grain. or from quarterly sales. The Administration Tool displays a message for any syntax errors in the expression. not on standard SQL date manipulation functions. the Administration Tool adds the expression to the dialog box from which you accessed the Expression Builder. When the expression is syntactically correct. the Time Series grain is Year. To use these functions on a particular dimension. Time Series grain. This identifies the dimension as having a monotonically increasing value in time (corresponds to chronological order). The time series functions calculate Period Ago and Period to Date functions based on user supplied calendar tables. About Time Series Conversion Functions Time series functions operate on time-oriented dimensions. NOTE: Time series query is valid only if the time series grain is at the query grain or higher. In the query example. using the following query example: Select quarter. the query grain is Quarter. Currently. Oracle Business Intelligence Server Administration Guide Version 10. NOTE: It is required that you define a chronological key at a level that can be used to answer your time series query. 2 3 4 5 Add the building blocks to the Editing pane. and then click OK. you have to designate the dimension as a Time Dimension and set one or more keys at one or more levels as Chronological keys. You cannot use them in coded SQL.Oracle BI Administration Tool Utilities and Expression Builder ■ Expression Builder To build an expression 1 Navigate to the individual building blocks you want in the expression. The following list describes the important grains in navigating a time query. NOTE: The chronological key has to be defined at this level. Edit the building blocks to reflect the expression you want.2 19 7 . The Syntax bar at the bottom of the Expression Builder dialog box shows the syntax for the expression. AGO and TODATE are the types of time series conversion functions. Currently. It is recommended that you define additional chronological keys at other relevant levels for performance reasons. The Ago and ToDate functions allow you use Expression Builder to call a logical function to perform time series calculations instead of aliasing physical tables and modeling logically. Repeat the preceding steps until the expression is complete. The query in the example can be computed from daily sales or from monthly sales. YearAgoSales: ■ ■ Query grain.

Example Time Series Functions in the Expression Builder Ago A time series aggregation function for relational data sources only.sales.Oracle BI Administration Tool Utilities and Expression Builder ■ Expression Builder Figure 18 on page 198 shows the time series functions in the Expression Builder dialog box. Ago can produce sales for every month of the current quarter and the corresponding quarter-ago sales. <model_id>. Multiple Ago functions can be nested if all the Ago functions have the same level argument.2 . Syntax: AGO(<measure_expression>. Figure 18. <measure_expression> is an expression that contains at least one measure. <integer_literal>) In that example. For example. The following is an example of this syntax: AGO(model. and <integer_literal> is an integer literal. <level_id> is a level identifier.month.3. Calculates the aggregated value from the current time back to a specified time period. model. ToDate aggregates a measure attribute from the beginning of a specified time period to the currently displayed time. <model_id> is a model identifier.<dimension_id>. NOTE: You can nest exactly one ToDate and multiple Ago functions if they each have the same level argument. this function can calculate Year to Date sales. For example. <dimension_id> is a dimension identifier.time.<level_id>. 3) ToDate A time series aggregation function for relational data sources only.revenue + 5. 198 Oracle Business Intelligence Server Administration Guide Version 10.1.

Syntax: TODATE(<measure_expression>. NULL values will be returned and a warning entry will be written to the NQQuery. Oracle Business Intelligence Server Administration Guide Version 10.log file when the logging level equals three or above. ?-] ) For more information. refer to “IndexCol” on page 400. A ToDate function may not be nested within another ToDate function. Selecting IndexCol automatically generates the following function template: IndexCol( <<integer literal>>. <<expr2>>.Oracle BI Administration Tool Utilities and Expression Builder ■ Expression Builder If unsupported metrics are requested. <model_id>.2 19 9 .3.<dimension_id>.1.<level_id>) About the IndexCol Conversion Function The IndexCol function allows you to build a derived logical column. NOTE: You can nest exactly one ToDate and multiple Ago functions if they each have the same level argument. <<expr1>> [.

2 .Oracle BI Administration Tool Utilities and Expression Builder ■ Expression Builder 200 Oracle Business Intelligence Server Administration Guide Version 10.3.1.

You describe the content in terms of logical columns on the Content tab of the Logical Table Source dialog box. Fragment 1: logicalColumn IN <valueList1> Fragment n: logicalColumn IN <valueListN> Single Column. of the set that it does contain. Each aggregate table column contains data at a given set of levels. You configure this metadata in the Logical Table Source dialog box. you need to specify the portion. a monthly sales table might contain a precomputed sum of the revenue for each product in each store during each month.1. Specify Fragmentation Content When a logical table source does not contain the entire set of data at a given level.2 20 1 . This section includes a description of how you can use aggregate navigation and provides setup instructions. refer to “Creating and Administering Logical Table Sources (Mappings)” on page 117.9 Setting Up Fragmentation Content in an Oracle BI Repository for Aggregate Navigation This section contains the following topics: ■ ■ About Aggregate Navigation on page 201 Specify Fragmentation Content on page 201 About Aggregate Navigation Aggregate tables store precomputed results from measures that have been aggregated over a set of dimensional attributes. For example. Range-Based Predicates Fragment 1: Oracle Business Intelligence Server Administration Guide Version 10.3. Value-Based Predicates The IN predicates can be replaced with either an equality predicate or multiple equality predicates separated by the OR connective. in the Fragmentation Content edit box. The following examples illustrate techniques and rules for specifying the fragmentation content of sources. or fragment. Single Column. For detailed steps showing how to create a logical source.

NOTE: Notice the use of >= and < predicates to make sure the fragment content descriptions do not overlap. The same variables..Setting Up Fragmentation Content in an Oracle BI Repository for Aggregate Navigation ■ Specify Fragmentation Content logicalColumn >= valueof(START_VALUE) AND logicalColumn < valueof(MID_VALUE1) Fragment 2: logicalColumn >= valueof(MID_VALUE1) AND logicalColumn < valueof(MID_VALUE2) Fragment n: logicalColumn >= valueof(MID_VALUEN-1) AND logicalColumn < valueof(END_VALUE) Pick your start point. and create statements of the following form: Fragment 1: logicalColumn >= valueof(START_VALUE) AND logicalColumn < valueof(MID_VALUE1) Fragment 2: logicalColumn >= valueof(MID_VALUE2) AND logicalColumn < valueof(MID_VALUE3) Multicolumn Content Descriptions An arbitrary number of predicates on different columns can be included in each content filter.2 .. Each column predicate can be value-based or range-based. You could set another variable.. valueof(MID_VALUE1).3. AND <logicalColumnM predicate> Fragment n: <logicalColumn1 predicate> AND <logicalColumn2 predicate > . refer to Chapter 13. midpoints. 202 Oracle Business Intelligence Server Administration Guide Version 10. For each fragment. The valueof referenced here is the value of a repository variable. If there is no predicate constraint on a logical column.1. “Using Variables in the Oracle BI Repository. Fragment 1: <logicalColumn1 predicate> AND <logicalColumn2 predicate > . all fragments will have predicates on the same M columns. the upper value needs to be expressed as <.”) If you use repository values in your expression. For exceptions using the OR predicate. you cannot use the BETWEEN predicate to describe fragment range content. AND <logicalColumnM predicate> Ideally.. for example. refer to “Parallel Content Descriptions” on page 203. do not have to appear in the content of both fragments. Likewise. and endpoint carefully. You will get an error if you use <=. (For more information about variables. the Oracle BI Server assumes that the fragment contains data for all values in that logical column. note that the following construct will not work for Fragment 2: logicalColumn >= valueof(MID_VALUE1)+1 AND logicalColumn < valueof(MID_VALUE2) Use another repository variable instead of valueof(MID_VALUE1)+1.

"Year" = VALUEOF("Snapshot Year") AND EnterpriseModel."Day" in the preceding example."Year" = VALUEOF("Snapshot Year") AND EnterpriseModel. You would not include these labels in the actual fragmentation content statement.Period. 12:00 a. Note the use of the OR connective to support parallel content description tracks."Year" = VALUEOF("Snapshot Year") AND EnterpriseModel. the Track n labels in the examples are shown to make it easier to relate the examples to the discussion that follows. as shown in the next example. Fragment 1 (Historical): EnterpriseModel."Year" > VALUEOF("Snapshot Year") OR EnterpriseModel.Period."Year" = VALUEOF("Snapshot Year") AND EnterpriseModel.Period.2 20 3 . The relevant OR connectives and predicates are shown in bold text.Period.Setting Up Fragmentation Content in an Oracle BI Repository for Aggregate Navigation ■ Specify Fragmentation Content Parallel Content Descriptions Unfortunately.Period.MonthCode < VALUEOF("Snapshot Year Month") OR EnterpriseModel."Monthname" IN ('Mar'.Period.Period. then omit the predicate on EnterpriseModel.Period. This example assumes that the snapshot month was April 1.Period. such as year > year month > date.Period. 'Jul'.MonthCode < VALUEOF("Snapshot Year Month") OR EnterpriseModel. Examples and Discussion In this section.m. 'Oct'."Monthname" IN ('Dec'."Year" < VALUEOF("Snapshot Year") OR EnterpriseModel.MonthCode >= VALUEOF("Snapshot Year Month") OR EnterpriseModel. 'Jun'.Period. Constraining sufficiently far back on year should be enough to drive the selection of just the historical fragment. the preceding techniques are still not sufficient to handle dates because of the multiple hierarchical relationships across logical columns.Period."Day" >= VALUEOF("Snapshot Date") OR EnterpriseModel."Day" < VALUEOF("Snapshot Date") OR EnterpriseModel. Fragment 1 (Historical): Track 1 Track 2 Track 3 EnterpriseModel. 'Aug'. such as year and month. 'Apr') If the logical model does not go down to the date level of detail.Period. month > year month > date."Year" < VALUEOF("Snapshot Year") OR Oracle Business Intelligence Server Administration Guide Version 10. For example. The parallel OR technique supports this."Day" < VALUEOF("Snapshot Date") OR EnterpriseModel. 'Feb'. consider fragments delineated by different points in time. 'Nov'.3.Period. in the year 1999.1.Period.Period."Month in Year" >= VALUEOF("Snapshot Month") OR EnterpriseModel. 'May'. 'Sep'."Month in Year" < VALUEOF("Snapshot Month") OR EnterpriseModel. 'Jan') Fragment 2 (Current): EnterpriseModel.Period.Period.

Period. It uses the < and >= predicates as there is a nonoverlapping delineation on month (because the snapshot date is April 1). a logical query on Year IN (1997. and will therefore hit both fragments. Common columns may be used. a query on Year = 2000 needs to hit only the current fragment. suppose the snapshot date fell on a specific day within a month. Fragment 1 (Historical): EnterpriseModel. therefore multicolumn content descriptions on just year and month would overlap on the specific snapshot month."Year" = VALUEOF("Snapshot Year") AND EnterpriseModel.Setting Up Fragmentation Content in an Oracle BI Repository for Aggregate Navigation ■ Specify Fragmentation Content Track 4 EnterpriseModel. 199912) is similar to Day. consider the first track on EnterpriseModel.MonthCode >= VALUEOF("Snapshot Year Month") OR EnterpriseModel.Period."Day" < VALUEOF("Snapshot Date") OR EnterpriseModel. the >= predicate in the current fragment on Day indicates that the current fragment does not contain data before the Snapshot Date. but the overall column set needs to be unique."Year" = VALUEOF("Snapshot Year") AND EnterpriseModel. the < predicate tells the Oracle BI Server that any queries that constrain on Day before the Snapshot Date fall within the historical fragment. 'Jan') For example.Period.Period."Month in Year" <= VALUEOF("Snapshot Month") OR EnterpriseModel. The fifth track describes fragment content in terms of Year and Monthname. Notice the use of the multicolumn content description technique. as there is no ambiguity or overlap with respect to these two columns.Period."Year" = VALUEOF("Snapshot Year") AND EnterpriseModel.1.Period."Year" > VALUEOF("Snapshot Year") OR 204 Oracle Business Intelligence Server Administration Guide Version 10.Period. a query that hits the year 1999 cannot be answered by the content described in this track."Monthname" IN ('Apr'. unless additional information can be found in subsequent tracks. Notice the use of < and >= predicates."Month in Year" < VALUEOF("Snapshot Month") OR Track 5 EnterpriseModel. The Oracle BI Server uses the column set to select the most appropriate track. described previously. It uses the value-based IN predicate technique.Period.2 . For example. <= and >= predicates are used."Monthname" IN ('Mar'.Period.Period."Year" < VALUEOF("Snapshot Year") OR EnterpriseModel.Period."Day". In the historical fragment.Period."Year" = VALUEOF("Snapshot Year") AND EnterpriseModel."Day" >= VALUEOF("Snapshot Date") OR EnterpriseModel.Period. Likewise. 1998) should only hit the historical fragment. The key rule to remember is that each additional parallel track needs to reference a different column set.Period. To specify this ambiguity. 'Jan') Fragment 2 (Current): EnterpriseModel. As an embellishment. Conversely. 'Mar'. 'Feb'.Period. 'Feb'.MonthCode <= VALUEOF("Snapshot Year Month") OR EnterpriseModel. The fourth track describes the fragment set with respect to Year and Month in Year (month integer). The third track on Year (< in the historical fragment and > in the current fragment) tells the Oracle BI Server that optimal (single) fragment selections can be made on queries that just constrain on year. The second track on MonthCode (for example. However.3.

'Canceled') AND Marketing.Calendar."Year" <= VALUEOF("Snapshot Year") OR Marketing. 'Jul'. The rule is that at least one of the tracks has to be nonoverlapping. records may still be volatile. 'Canceled') AND Marketing. Oracle Business Intelligence Server Administration Guide Version 10. There are two parallel tracks in the following content descriptions. 'Oct'.Calendar. The other tracks can have overlap."Year" >= VALUEOF("Snapshot Year") OR Marketing. For example. 'Nov'."Year Month" <= VALUEOF("Snapshot Year Month") Fragment 2 (Current): Marketing. Assume. 'Aug'."Month in Year" >= VALUEOF("Snapshot Month") OR EnterpriseModel.Calendar."Year" = VALUEOF("Snapshot Year") AND EnterpriseModel.Calendar.1."Order Status" = 'Open' The overlapping Year and Month descriptions in the two fragments do not cause a problem."Calendar Date" <= VALUEOF("Snapshot Date") OR Marketing. that open orders may be directly updated by the application until the order is shipped or canceled."Order Status" IN ('Shipped'. even though they are historical records entered into the database before the snapshot date."Order Status" IN ('Shipped'."Order Status".Calendar. as overlap is permissible when there are parallel tracks. in the following example."Order Status".Period.Period. After the order has shipped.Setting Up Fragmentation Content in an Oracle BI Repository for Aggregate Navigation ■ Specify Fragmentation Content EnterpriseModel. Note the parentheses nesting the parallel calendar descriptions within the Shipped-or-Canceled order status multicolumn content description."Year" = VALUEOF("Snapshot Year") AND EnterpriseModel.Period."Monthname" IN ('Dec'. 'Jun'."Calendar Date" > VALUEOF("Snapshot Date") OR Marketing. the only change that can be made to the order is to type a separate compensating return order transaction. Fragment 1 (Historical): Marketing.Period.2 20 5 . 'May'. parallel track techniques described in the preceding section.Calendar.3."Year Month" >= VALUEOF("Snapshot Year Month") OR Marketing. The first track uses the multicolumn. The second parallel track is present only in the Current fragment and specifies that all Open records are in the Current fragment only. however. time-based fragmentation between historical and current fragments is typically insufficient. 'Apr') Unbalanced Parallel Content Descriptions In an order entry application."Order Status". 'Sep'.

For example. as described in Figure 19 on page 206. the data should be returned from the aggregate table. If a query asks for sales figures for Coke and Pepsi. The detail level of data is at the store level. is stored at the city level for the sales of Coke and Pepsi. 206 Oracle Business Intelligence Server Administration Guide Version 10.Setting Up Fragmentation Content in an Oracle BI Repository for Aggregate Navigation ■ Specify Fragmentation Content Aggregate Table Fragments Information at a given level of aggregation is sometimes stored in multiple physical tables. If a query asks for sales figures for all soft drinks. Figure 19.1. Aggregating Information The goal of this type of configuration is to maximize the use of the aggregate table. Aggregate information. suppose you have a database that tracks the sales of soft drinks in all stores. you need to define the entire domain for each level of aggregate data. but there is no aggregate information for the sales of 7-Up or any other of the sodas. When individual sources at a given level contain information for a portion or fragment of the domain.3. To configure a repository to use aggregate fragments for queries whose domain spans multiple fragments. The Oracle BI Server handles this type of partial aggregate navigation. the aggregate table should be used for Coke and Pepsi and the detail data for the other brands. the Oracle BI Server needs to know the content of the sources in order to pick the appropriate source for the query. even if you have to configure an aggregate fragment as being based on a less summarized physical source.2 .

CityLevel. The SQL needs to define a virtual table that completes the domain at the level of the other aggregate tables.Setting Up Fragmentation Content in an Oracle BI Repository for Aggregate Navigation ■ Specify Fragmentation Content Specify the Aggregate Table Content You configure the aggregate table navigation in the logical table source mappings. create a new logical table source for the Sales column that covers the remainder of the domain at the city and product level.3. Define a Physical Layer Table with a Select Statement to Complete the Domain The data for the rest of the domain (the other types of sodas) is all stored at the store level. the SQL statement has to return all of the data at the city level. Because the data at the store level is at a lower (that is. Map the Dollars logical column to the USDollars physical column in this virtual table. Its Aggregate content specification (in the Content tab of the Logical Table Source window) is similar to the following: Group by logical level: GeographyDim.Products. This source contains the virtual table created in the previous section. more detailed) level than at the city level. The Aggregate content specification (in the Content tab of the Logical Table Source dialog) for this source is: Group by logical level: Oracle Business Intelligence Server Administration Guide Version 10. the aggregate table contains data for Coke and Pepsi sales at the city level. Additionally.2 20 7 . except for the Coke and Pepsi data. In this case. and it contains data for Coke and Pepsi by city.1. To define the entire domain at the aggregate level (city and product. because this source is a fragment of the data at this level. there is one existing aggregate table. Specify the SQL Virtual Table Content Next. and type the SQL statement in the pane to the right. in this example). This can be done in a query involving the store and product level table. you need to check the option This source should be combined with other sources at this level. 'Pepsi') This content specification tells the Oracle BI Server that the source table has data at the city and product level for two of the products. For more information. To define the table. Therefore. you need to have a source that contains the rest of the domain at this level.Product IN ('Coke'. it is possible to calculate the city and product level detail from the store and product detail by adding up the product sales data of all of the stores in a city. to indicate that the source combines with other sources at the same level. One way to do this is to define a table in the Physical layer with a Select statement that returns the store level calculations. ProductDim.ProductLevel Its Fragmentation content specification (also in the Content tab of the Logical Table Source dialog) is similar to the following: SoftDrinks. Choose Select from the Object Type drop-down list. create a table in the Physical layer by selecting the physical schema folder that the Select statement will be querying and execute the New Table command. In the soft drink example. refer to “Specify Fragmentation Content” on page 201. in the Content tab of the Logical Table Source dialog box.

comprise the whole domain of values at that level.Setting Up Fragmentation Content in an Oracle BI Repository for Aggregate Navigation ■ Specify Fragmentation Content GeographyDim.1. because it combines with the aggregate table containing the Coke and Pepsi data at the city and product level to complete the domain. even if the query requests other information that is not stored in the aggregate tables. when combined together. and 7-Up do not leave out 7-Up. Physical Joins for Virtual Table Construct the correct physical joins for the virtual table. Setting up the entire domain for each level helps to make sure that queries asking for Coke.ProductLevel This tells the Oracle BI Server this source has data at the city and product level. you need to check the option in the Content tab of the Logical Table Source dialog indicating that the source is combined with other sources at the same level.2 .Product = '7-Up' Additionally.3. Pepsi.Products. A domain may have many sources. ProductDim. the two sources comprise the whole domain for soda sales.CityLevel. 208 Oracle Business Intelligence Server Administration Guide Version 10. The sources have to all follow the rule that each level needs to contain sources that. Example Physical Joins In this example. The Fragmentation content specification might be: SoftDrinks. It also helps to make sure that queries requesting information that has been precomputed and stored in aggregate tables can retrieve that information from the aggregate tables. Notice that CityProductSales2 joins to the Cities and Products tables in Figure 20 on page 208. Figure 20.

This chapter contains the following topics: ■ ■ ■ ■ ■ ■ ■ Starting the Oracle BI Server on page 209 Shutting Down the Oracle BI Server on page 212 Getting Users to Connect to the Server on page 214 Administering the Query Log on page 214 Administering Usage Tracking on page 219 Server Session Management on page 225 Server Configuration and Tuning on page 227 Starting the Oracle BI Server The Oracle BI Server needs to be running before any queries can be processed.10 AdministeringEnvironment the Oracle BI Server Query The Oracle BI Server is a server-based query environment and has many of the tools associated with managing server-based systems.1. including starting and stopping the server.3. The following topics describe three ways to start the Oracle BI Server. and other tasks related to managing a multiuser environment. how to change the User ID for the Oracle BI Server.2 20 9 . checking and analyzing the log files. Oracle Business Intelligence Server Administration Guide Version 10. This section describes how to use these tools to perform various administrative actions. and what to do if the Oracle BI Server fails to start: ■ ■ ■ ■ ■ Starting the Server from Windows Services on page 209 Configuring the Server for Automatic Startup in Windows on page 210 Running the Server Startup Script in UNIX on page 210 Changing the User ID in Which the Oracle BI Server Runs on page 211 If the Server Fails to Start on page 211 Starting the Server from Windows Services This procedure requires your user ID to be a member of the Windows Administrators group on the local machine on which the Oracle BI Server is installed.

The following information is logged to the NQServer. and then click OK.INI file. Configuring the Server for Automatic Startup in Windows The following procedure explains how to configure the Oracle BI Server to start automatically when Windows NT or Windows 2000 starts. If you receive an informational message stating the server has not yet started.1.3. When startup is complete. To configure the Oracle BI Server for automatic startup 1 On the machine in which the server is installed. You might need to open the Administrative Tools submenu. 2 3 In the Services dialog box. In the Oracle BI Server Properties dialog box. choose Start > Settings > Control Panel > Services. It might take a few minutes for the server to start while it loads the repository in the Repositories section of the NQSConfig.2 . from the Startup Type drop-down list. choose Start > Settings > Control Panel > Services.INI file. You might need to open the Administrative Tools submenu. the startup message goes away and the status of the service changes to Started. Running the Server Startup Script in UNIX Start the Oracle BI Server by running one of the following scripts: ■ If you are using sh or bash: 210 Oracle Business Intelligence Server Administration Guide Version 10.Administering the Oracle BI Server Query Environment ■ Starting the Oracle BI Server To start the Oracle BI Server 1 On the machine in which the server is installed. double-click the Oracle BI Server service. 2 Select the Oracle BI Server service and click Start. The Oracle BI Server service will now start automatically when Windows starts. refresh the status periodically until the status changes to Started. located in the Log subdirectory of the Oracle BI installation folder: ■ ■ ■ Startup time Any business models that are loaded Any errors that occurred If startup does not complete.log file. check to make sure that there are no errors in the NQSConfig. A message appears indicating that the service is starting. such as the incorrect spelling of the repository filename. select Automatic.

exe & ■ For the standard shell: nohup nqscomgateway. and then click the button to the right of the text box. and then click OK. the Oracle BI Server runs as a Windows service. it will attempt to use the new account to start the service.3. Type the password for the user in the Services dialog box. Double-click the Oracle BI Server service and click Startup.csh start ■ If you have set up your environment with sa. In the Add User dialog box. and then click OK. The next time you start the service. In the Oracle BI Server Properties dialog box.sh start ■ If you are using csh: run-sa.1. If you want to change the user ID in which the Oracle BI Server runs. Additionally. in the Log On As area. If the Server Fails to Start If the startup operation fails. The server is now configured to run under the new user ID.Administering the Oracle BI Server Query Environment ■ Starting the Oracle BI Server run-sa. look in the following log files for messages indicating why: Oracle Business Intelligence Server Administration Guide Version 10.sh or sa. select Start > Settings > Control Panel. confirm the password.csh: nqscomgateway.2 21 1 . If the server needs to access databases on remote machines. select the user account in which you want the Oracle BI Server to run.exe >&/dev/null & Changing the User ID in Which the Oracle BI Server Runs In Windows. click Add. select This Account. In the Control Panel.exe >/dev/null 2>&1 & ■ For the C shell: nohup nqscomgateway. it needs to run under a user ID that has the appropriate network privileges. To change the user ID 1 2 3 4 5 6 On the machine in which the Oracle BI Server is installed. double-click the Services icon. you can do so from the Control Panel Services utility. the user ID has to be a member of the Windows NT Administrators group on the local machine. It runs under the local system account by default.

run /usr/sbin/syslogd and look for any system and Oracle BI Server-related messages. In UNIX.INI file. This file is located in the Log folder in the Oracle BI Server software installation folder (\OracleBI). To shut down the server from the Services applet 1 2 3 On the machine in which the Oracle BI Server is installed. ■ ■ ■ ■ Shutting Down the Server in Windows Services on page 212 Shutting Down the Server from a Command Prompt in Windows on page 213 Running the Server Shutdown Script in UNIX on page 213 Shutting Down the Oracle BI Server Using the Administration Tool on page 214 When you shut down the server. When shutdown is complete. located in the Log folder in the software installation folder (\OracleBI\Log). that you can access by selecting Start > Programs > Administrative Tools > Event Viewer. 212 Oracle Business Intelligence Server Administration Guide Version 10.log file would contain messages about the syntax error. and UNIX. and any outstanding queries to underlying databases are cancelled. Select the Oracle BI Server service and click Stop. A message appears indicating that the service is shutting down.1.log file.3. in the NQServer. You can use a text editor to view this file. any active client connections receive an error message and are immediately terminated. Windows 2000. if there were a syntax error in the NQSConfig. ■ The log files contain messages indicating why the server startup failed. in the Windows Event log. In Windows NT.Administering the Oracle BI Server Query Environment ■ Shutting Down the Oracle BI Server ■ ■ In Windows NT and Windows 2000. correct the problem and start the server again. the status in the Services Control Panel becomes blank and a log message is written to the NQServer. Open the Services applet by double-clicking the Services icon in the Control Panel. Shutting Down the Oracle BI Server You can stop the Oracle BI Server in any of the following ways. Shutting Down the Server in Windows Services The following procedure explains how to shut down the Oracle BI Server from the Windows Control Panel Services applet.2 . select Start > Settings > Control Panel.log file. After examining the log messages. both the operating system’s log and the NQServer. For example.

NOTE: The nqsshutdown command is not valid for clustered DSNs. a message indicating this is displayed in the Command window. user ID password The user to connect to the Oracle BI Server to perform the shut down operation. Running the Server Shutdown Script in UNIX Stop the Oracle BI Server by running one of the following scripts: ■ If you are using sh or bash: run-sa. To shut down the Oracle BI Server from a Windows command prompt ■ Type the following command in the machine in which the Oracle BI Server is running: nqsshutdown {-d <data_source_name> -u <user ID> -p <password>} where: data_source_name The name of a nonclustered ODBC data source used to connect to the server to perform the shut down operation. The data source needs to connect to the server as an Oracle BI user who is a member of the Oracle BI Administrators group.1.exe -uAdministrator Oracle Business Intelligence Server Administration Guide Version 10.3.Administering the Oracle BI Server Query Environment ■ Shutting Down the Oracle BI Server Shutting Down the Server from a Command Prompt in Windows Use this procedure in Windows to shut down the Oracle BI Server from a Command prompt. Only users defined as Oracle BI Administrators can shut down the server. When shutdown is complete.csh: nqsshutdown.sh stop ■ If you are using csh: run-sa. When passed a standard (nonclustered) DSN. The password for the user ID connecting to the Oracle BI Server to perform the shut down operation.csh stop ■ If you have set up your environment with sa. it will shut down the targeted Oracle BI Server even if the server is participating in a cluster.sh or sa.2 21 3 .

Getting Users to Connect to the Server Users need to set up a data source to connect to a business model within an Oracle BI repository. Oracle BI Server query logging is tracked at a user level. For more information. It will be a resource intensive process if you track the entire user community. Most users should have a log level of 0 (zero).log file. For information about setting up DSN connections.3. This file is in the Log subdirectory in the Oracle BI installation folder. NOTE: To shut down the server.1. NOTE: For production systems. you can use the Usage Tracking as the production level logging facility. You need to open the repository in online mode using a nonclustered DSN. the DSN has to log in as a user that has Administrator authority. refer to “Configuring Oracle BI ODBC Data Source Names (DSNs)” on page 259. and troubleshooting by Oracle Technical Support. Select File > Shut Down Server. When a dialog box appears asking you to confirm the shutdown. refer to “Using the Cluster Manager” on page 307. debugging. Open a repository that is loaded on the server in online mode. The query log file is named the NQQuery. 214 Oracle Business Intelligence Server Administration Guide Version 10. Administering the Query Log The Oracle BI Server provides a facility for logging query activity at the individual user level. click Yes. In production mode. To shut down the server using the Administration Tool 1 2 3 4 Start the Administration Tool by selecting Start > Programs > Oracle BI > Oracle BI Administration Tool. it is recommended that query logging be enabled only for a very targeted user community. In production systems. query logging is typically disabled.Administering the Oracle BI Server Query Environment ■ Getting Users to Connect to the Server Shutting Down the Oracle BI Server Using the Administration Tool The following procedure explains how to shut down the server using the Administration Tool. You can also run the Administration Tool from a remote machine in online mode or offline mode. This shuts the server down and ends the Administration Tool online session. Logging should be used for quality assurance testing. see “Administering Usage Tracking” on page 219. use the Cluster Manager to take individual Oracle BI Server instances offline. When connected using a clustered DSN.2 . For more information.

refer to Oracle Business Intelligence Infrastructure Installation and Configuration Guide. Because query logging can produce very large log files. you cannot configure a logging level for a group. In normal operations.INI file determines the size of the NQQuery. If logging is enabled for such users. logging is generally disabled (the logging level is set to 0). Controlling the Size of the Log File The parameter USER_LOG_FILE_SIZE in the User Log section of the NQSConfig. and a new log file is created automatically. NOTE: The LOGGING column references stored values for the log level. NOTE: A session variable overrides a user’s logging level. to monitor activity on your system. The Initialization string text box is in the Initialization Block dialog box. (This helps to make sure that the disk space allocated for the log file does not exceed the size specified in the configuration file. if the Oracle BI Administrator has a logging level defined as 4 and a session variable logging level is defined as default 0 (zero) in the repository. When the log file grows to one-half the size specified by the USER_LOG_FILE_SIZE parameter.1.3.log file. Oracle Business Intelligence Server Administration Guide Version 10. choosing a logging level. and enabling query logging for a user. You need to enable logging on the system for each user whose queries you want logged. If you change the value of the USER_LOG_FILE_SIZE parameter. you need to restart the Oracle BI Server for the change to take effect. For example. These two levels are designed for use by Oracle BI Administrators. it is recommended that they be given names such as sales_admin_with_logging. to help solve performance problems. in the User tab. You should also disable query logging for the following: ■ The SQL statement in the initialization string. the logging system is turned off by default. so that you can readily identify them. or sales_test_with_logging. Configuring the Logging System This section describes the logging system and includes information about setting the size of the query log.Administering the Oracle BI Server Query Environment ■ Administering the Query Log It is recommended that you only test users when the user name clearly indicates it is a test user and have verified that query logging enabled. For the syntax of the USER_LOG_FILE_SIZE parameter. The Logging level field is in the User dialog box. ■ The logging level should be set to 0 (zero) for each production user. You can set the file size as high as you like. the Oracle BI Administrator’s logging level will be 0. choose a logging level of 1 or 2. Even production Oracle BI Administrator logins should not have query logging enabled because it could strain the available resources. the file is renamed to NQQuery.) Only one copy of the old file is kept. It is sometimes useful to enable logging to test that your repository is configured properly. Setting a Logging Level You can enable logging level for individual users. sales_dev_with_logging.log. or to assist Technical Support.old. Set the logging level based on the amount of logging you want to do. in the General tab. If you decide to enable logging.2 21 5 . limited only by the amount of space available on the device.

Additionally.Administering the Oracle BI Server Query Environment ■ Administering the Query Log You might want to diagnose performance or data issues by setting a temporary log level for a query. sum(revenue) from time. Logs the query status (success. The logging levels are described in Table 23 on page 216. session ID.2 . adds a log entry for the logical query plan. Logging Level Level 0 Level 1 Logging Levels Information That Is Logged No logging. Additionally. logs the query execution plan. business model name. select year. Level 3 Logs everything logged in Level 2. Logs the user ID. You can enable query logging for a specific query by preceding your Select statement with the following: Set Variable LOGLEVEL=n. See the following example: Set Variable LOGLEVEL=5. Level 4 Logs everything logged in Level 3. facts For this query.3. query execution. query cache processing. Do not select this level without the assistance of Technical Support. termination.1. Level 2 Logs everything logged in Level 1. Additionally. presentation catalog (called Subject Area in Answers) name. number of rows returned from each query against a physical database and from queries issued against the cache. or timeout). and request ID for each query. the logging level of five is used regardless of the value of the underlying LOGLEVEL variable. product. Do not select this level without the assistance of Technical Support. and back-end database processing. logs the repository name. when existing cache entries are purged to make room for the current query. when a query that was supposed to seed the cache was not inserted into the cache. Logs the SQL statement issued from the client application. NOTE: Logging levels greater than 2 should be used only with the assistance of Technical Support. queries issued against the cache. and when the attempt to update the exact match hit detector fails. Table 23. products. SQL for the queries issued against physical databases. and the number of rows returned to the client application. failure. for each query. 216 Oracle Business Intelligence Server Administration Guide Version 10. Logs elapsed times for query compilation.

If not specified. 3 Set the logging level by clicking the Up or Down arrows next to the Logging Level field. results are appended to the file. Level 6 and 7 Reserved for future use. The Security Manager dialog box appears. If the file exists. all users for whom query logging is enabled are shown. This limits the scope to entries for a particular user. To run the nQlogViewer utility. Additionally. select Manage > Security.1.2 21 7 . The name of an existing log file. Do not select this level without the assistance of Technical Support. logs intermediate row counts at various points in the execution plan. If not specified. The syntax is as follows: nqlogviewer [-u<user_ID>] [-f<log_input_filename>] [-o<output_result_filename>] [-s<session_ID>] [-r<request_ID>] where: user_ID The name of a user in the Oracle BI repository. output is sent to the monitor screen. a new file is created. Each entry in the query log is tagged with the user ID of the user who issued the query. open a Command window and type nQlogViewer with any combination of its arguments. Double-click the user’s user ID. To set a user’s logging level 1 2 In the Administration Tool. If the file does not exist.3. The User dialog box appears. and the request ID of the individual query. log_input_filename output_result_filename Oracle Business Intelligence Server Administration Guide Version 10. This parameter is required. Using the Log Viewer Use the Oracle BI log viewer utility nQLogViewer (or a text editor) to view the query log. The name of a file in which to store the output of the log viewer. Logging Level Level 5 Logging Levels Information That Is Logged Logs everything logged in Level 4. the session ID of the session in which the query was initiated.Administering the Oracle BI Server Query Environment ■ Administering the Query Log Table 23. To disable a user’s logging level ■ Set the logging level to 0.

all request IDs are shown. This can be used to rerun the query from the same application.3. General Query Information This section lists the repository. Each query will have an entry in the log. some of which are described in the next section. SQL Request This section lists the SQL issued from the client application. and if a request is closed or if the session is long enough. NOTE: The request id will be unique among the active requests but not necessarily unique during the session. For more information. This limits the scope of the log entries to the specified request ID. The query log can also help you check the accuracy of applications that use the Oracle BI Server.1. If not specified. The request ID of an individual query. The log is divided into several sections. you can analyze the log. a request id will be reused. Log entries for levels 1 and 2 are generally self-explanatory. session IDs and request IDs through the Session Manager.2 . If not specified. the business model. all session IDs are shown. The Oracle BI Server assigns each query a unique ID when the query is initiated. NOTE: Oracle BI Presentation Services Administrators can view the query log using the Manage Sessions option in Presentation Services Administration. refer to “Using the Session Manager” on page 225. Multiple database queries can be sent to one or more data sources. request_ID You can also locate user IDs.Administering the Oracle BI Server Query Environment ■ Administering the Query Log session_ID The session ID of the user session. This limits the scope of the log entries to the specified session ID. 218 Oracle Business Intelligence Server Administration Guide Version 10. The log entries can provide insights to help DBAs in charge of the underlying databases tune them for optimum query performance. and the presentation catalog from which the query was run. where data_source_name is the name of the data source to which the Oracle BI Server is connecting. Database Query This section of the log begins with an entry that reads Sending query to the database named <data_source_name>. You can use this information to provide statistics on query usage that could be used to set priorities for future application development and system management. The Oracle BI Server assigns each session a unique ID when the session is initiated. Interpreting the Log Records After you have logged some query information and started the log viewer. Request ids are generated in a circular manner. or from a different application.

The following events occur: ■ Column names. aggregation strategies.log file and usage tracking will be disabled. you can then use the logged SQL to run queries directly against the database for performance tuning. If metadata contains column names that are not in the table.2 21 9 . all the queries during a particular time period might have failed due to a database downtime. results verification. You can search through the log for failed queries to determine why they failed. It is recommended that you use direct insertion to write statistics to a database table. Oracle Business Intelligence Server Administration Guide Version 10. The lengths of varchars will not be validated. or other testing purposes. Varchar length. It allows you to examine the tables that are being queried to verify that aggregate navigation is working as you expect. It records the SQL sent to the underlying databases. If you use direct insertion. If you understand the structure of the underlying database. or billing users or departments based on the resources they consume. The Oracle BI Server tracks usage at the detailed query level. ■ This section contains the following topics: ■ ■ Setting Up Direct Insertion to Collect Information for Usage Tracking on page 219 Setting Up a Log File to Collect Information for Usage Tracking on page 221 Setting Up Direct Insertion to Collect Information for Usage Tracking This is the recommended method for setting up usage tracking. Administering Usage Tracking The Oracle BI Server supports the accumulation of usage tracking statistics that can be used in a variety of ways such as database optimization. such as useful aggregate tables or indexes to build.1.3. an error will be written to the NQServer. statistics for every query are inserted into a database table or are written to a usage tracking log file. If the length in metadata and the set length in the table do not match. Oracle BI Server validates the column names in the metadata against the list of valid columns in the usage tracking table. When you enable usage tracking. the columns that are in the metadata will be written to the usage tracking table. If there are columns in tables that are not in the metadata. an error will be written to the Oracle BI Server log and usage tracking will be disabled. For example.Administering the Oracle BI Server Query Environment ■ Administering Usage Tracking The database query section has several uses. the Oracle BI Server directly inserts the usage tracking data into a relational database table. When the Oracle BI Server starts up. Query Status The query success entry in the log indicates if the query completed successfully or if it failed. it might also provide some insights into potential performance improvements.

220 Oracle Business Intelligence Server Administration Guide Version 10.2 . The fully qualified physical table name consists of up to four components (database name. To set up and administer direct insertion. For an example. dbo represents the schema component. In this example. In this example. The following is an example of a physical table name for the Usage Tracking table in the Oracle BI repository: PHYSICAL_TABLE_NAME = "Oracle BI Usage". refer to the following connection pool name in the Oracle BI repository: CONNECTION_POOL = "Oracle BI Usage". Catalog represents the catalog component."Catalog". The physical table name must be fully qualified. the DIRECT_INSERT parameter determines whether the query statistics are inserted directly into a database table or are written to a file for subsequent loading."S_NQ_ACCT" . Each component is surrounded by double quotes (") and separated by a period (.). Each part is surrounded by double quotes (") and separated by a period (. Oracle BI Usage represents the database component. For more information. schema name.). database name and connection pool name. Database Table Configuration Inserting query statistic information into a table requires the configuration of the name of the table and the connection pool used to access the table. and table name). catalog name. The fully qualified connection pool name should match a connection pool name in the physical layer of the loaded repository. refer to Oracle Business Intelligence Infrastructure Installation and Configuration Guide. Oracle BI Usage represents the database component and Connection Pool represents the connection pool name proper. and S_NQ_ACCT represents the table name.Administering the Oracle BI Server Query Environment ■ Administering Usage Tracking To set up direct insertion for usage tracking. use the guidelines in this section.3. use the following topics: ■ ■ ■ ■ ■ ■ ■ Enabling Direct Insertion on page 220 Database Table Configuration on page 220 Connection Pool Configuration on page 220 Buffer Size Configuration Parameter on page 221 Buffer Time Limit Configuration Parameter on page 221 Number of Insert Threads Configuration Parameter on page 221 Max Inserts Per Transactions Configuration Parameter on page 221 Enabling Direct Insertion In the Usage Tracking section of the NQSConfig."dbo". The DIRECT_INSERT and ENABLE parameters must be set to YES to enable direct insertion.INI file. Connection Pool Configuration The fully-specified connection pool name has two parts.1. This fully qualified physical table name must match a table name in the physical layer of the loaded repository. NOTE: It is strongly recommended that you enable direct insertion."Connection Pool" .

However a larger number also increases the likelihood of transactions failing due to deadlocks. Buffer Time Limit Configuration Parameter The BUFFER_TIME_LIMIT_SECONDS configuration parameter indicates the maximum amount of time an insert statement will remain in the buffer before the Usage Tracking subsystem attempts to issue it. It also means that ordinary query requests do not have to wait on Usage Tracking inserts. This section contains the following topics: ■ ■ Selecting an Output Location on page 222 File Naming Conventions on page 222 Oracle Business Intelligence Server Administration Guide Version 10. Setting Up a Log File to Collect Information for Usage Tracking This is an alternate method for setting up usage tracking. Such a buffer allows the Oracle BI Server to submit multiple insert statements as part of a single transaction. NOTE: It is recommended that the connectivity type supports international data. For more information. The larger this number. Max Inserts Per Transactions Configuration Parameter The MAX_INSERTS_PER_TRANSACTION configuration parameter indicates the maximum number of insert statements the Usage Tracking subsystem attempts to issue as part of a single transaction. the connection pool must be configured with a user ID that has write access to the back-end database. the number of insert threads should typically equal the Maximum Connections setting in the connection pool.3. It is recommended that you use direct insertion to collect information for usage tracking. improving Usage Tracking insert throughput. Number of Insert Threads Configuration Parameter The NUM_INSERT_THREADS configuration parameter indicates the number of threads that will remove insert statements from the buffer and issue them to the Usage Tracking database.2 22 1 . This time limit ensures that the Oracle BI Server will issue the insert statements in a timely manner even during periods of extended quiescence. improving average query response time. Buffer Size Configuration Parameter The BUFFER_SIZE configuration parameter indicates how much memory the Oracle BI Server should allocate for buffering the insert statements. Note that a small value for BUFFER_TIME_LIMIT_SECONDS may limit the number of inserts per transaction. Assuming separate connection pools for readers and inserters.1. You may want to adjust this value based on available memory and memory utilization on the server machine. refer to “Setting Up Direct Insertion to Collect Information for Usage Tracking” on page 219.Administering the Oracle BI Server Query Environment ■ Administering Usage Tracking For Usage Tracking inserts to succeed. the greater potential throughput for Usage Tracking inserts.

NOTE: Insufficient storage space may cause you to lose usage tracking data.1.yyyymmdd. mm is the month. in semicolon-delimited ( .071500.2 . in Windows. the files are written in the Log folder in the software installation folder (\OracleBI). mm is the minute.hhmmss. assume an average of 300 bytes of data output for each query and 10 queries per second over an 8 hour day. dd is the day. where yyyy is the year. the filename would be NQAcct.25 GB of storage per day. every query is logged to a usage tracking log file. File Naming Conventions The file naming scheme for the usage tracking log files is NQAcct. After the specified rollover interval. is created.log and. to the Windows Event log. Even if additional storage space is made available. Current files are periodically written to disk. and the parameter FILE_ROLLOVER_INTERVAL_MINUTES controls the frequency with which the current usage tracking log file is closed and a new file created. with the current date and timestamp. this file is flushed to disk and closed and a new log file.log. the collection of usage tracking statistics will not resume until the server is restarted. Output File Format The usage tracking log files are text files.3. it immediately discontinues the collection of usage tracking statistics and issues an error message to the NQServer. The parameter CHECKPOINT_INTERVAL_MINUTES controls the frequency with which usage tracking data is flushed to disk. It is the responsibility of the user to make sure that sufficient space is available. and new files are created. For example. If usage tracking is enabled. When usage tracking is enabled. hh is the hour. 2003. 222 Oracle Business Intelligence Server Administration Guide Version 10.) A line feed delimits the end of each row of data. and to remove or archive old usage tracking files. For example. (A semicolon is used as the column delimiter because the logical SQL text contains commas. if the server creates the usage tracking log file at 07:15:00 AM on February 12. the result is approximately .log. and ss is the second of the timestamp when the file was created. This may require a large amount of available storage.Administering the Oracle BI Server Query Environment ■ Administering Usage Tracking ■ ■ Output File Format on page 222 Performance Considerations on page 224 Selecting an Output Location The parameter STORAGE_DIRECTORY in the Usage Tracking section of the NQSConfig. If the Oracle BI Server encounters an error accessing a usage tracking output file. If this example is extended to a 24 x 7 operation.INI file determines the location of usage tracking log files.20030212. ) format. This results in approximately 83 MB of usage tracking data written to storage per day. The Oracle BI Server has no limit on the size or quantity of usage tracking log files that can exist in the specified location. but no storage folder is specified.

Column Number 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 Usage Tracking Output File Format Column Name User name Repository name Subject area name Node ID Start timestamp Start date Start hourMin End timestamp End date End hourMin Query Text Success indicator Row count Total time (secs) Compilation time (secs) Number of database queries Cumulative db time (secs) Cumulative db rows Cache indicator Query source Presentation Catalog path Interactive Dashboard name Data Type Varchar Varchar Varchar Varchar Char (Timestamp) Char (yyyy-mm-dd) Char (hh:mm) Char (Timestamp) Char (yyyy-mm-dd) Char (hh:mm) Varchar Integer (refer to following Note) Integer (refer to following Note) Integer (refer to following Note) Integer (refer to following Note) Integer (refer to following Note) Integer (refer to following Note) Integer (refer to following Note) Char Varchar Varchar Varchar Max Data Size 128 128 128 15 19 10 5 19 10 5 1024 4 4 4 4 4 4 4 1 30 250 150 Nullable No No No No No No No No No No No No Yes Yes Yes Yes Yes Yes No No No Yes Oracle Business Intelligence Server Administration Guide Version 10. For more information about the contents of each column.3.Administering the Oracle BI Server Query Environment ■ Administering Usage Tracking The schema is described in Table 24 on page 223.1. Table 24.2 22 3 . refer to “Description of the Usage Tracking Data” on page 406.

a Success indicator value of 0 signifies a successful query. Start timestamp and Query text will usually be sufficient.Administering the Oracle BI Server Query Environment ■ Administering Usage Tracking NOTE: All data in the output file is in character format. then 1000000 appears in the output file in column 13 (Row count). even though the data represents a 4-byte internal integer value. While there is no guaranteed unique key for the usage tracking data. is only written to disk at user-specified intervals.3.1. if the row count is one million rows. Start date and End date. reducing the interval adds overhead and. All nonzero values indicate failure. a combination of User name. Start hourMin and End hourMin. Therefore. they behave more like Varchar(10) columns than integers. This data.2 . The related columns. Usage tracking log files that are closed are available for analysis. The default setting is to checkpoint every 5 minutes. Each value is 19 bytes of character data representing a SQL-92 timestamp. This constitutes seven bytes of data. Setting a lower rollover interval will make usage tracking log files available for analysis sooner. For information about sample scripts to help you extract data from usage tracking log files and load it to appropriately formatted relational database tables. The frequency at which rollovers occur is called a rollover interval. ■ In column 12. the checkpoint only occurs implicitly when the old usage tracking log file is closed. contain just the date component from the respective timestamps (in the yyyy-mm-dd format). Performance Considerations When usage tracking is enabled. 224 Oracle Business Intelligence Server Administration Guide Version 10. known as checkpoints. the Oracle BI Server collects usage tracking data for every query. contain just the hour and minute components from the respective timestamps (in a char hh:mm format). A rollover consists of closing the current usage tracking log file and opening a newly created one for writing subsequent data. only the rollover occurs explicitly. Setting the value higher increases the amount of usage tracking data that could be lost in the unlikely event of an abnormal shutdown of the Oracle BI Server. could potentially impact server performance. If the checkpoint interval equals or exceeds the rollover interval. the related columns. For example. The default rollover interval is 240 minutes (every 4 hours). Finally. The following failure indicators are currently defined: ■ ■ ■ 1 indicates timeout 2 indicates row limit violation 3 indicates unknown error The subsequent columns are valid only if the Success indicator signifies a successful query (value is 0): ■ The Start timestamp and End timestamp columns indicate the wall clock time when the logical query started and finished.INI file (refer to Oracle Business Intelligence Infrastructure Installation and Configuration Guide). The data in columns 12 through 18 are output as text representations of integer numbers. The format is yyyy-mm-dd-hh:mm:ss. The Oracle BI Server periodically initiates usage tracking log file rollovers. if set low enough. but at the cost of additional overhead. however. refer to “Oracle BI Server Usage Tracking Data Descriptions and Using the Log File Method” on page 405. While this value can be modified in theNQSConfig. Node ID.

choose Normal. The bottom window contains two tabs. The Session Manager shows all users logged into the session.7 Oracle BI Server return information about variables. You can click the column headers to sort the data.3. from the Update Speed drop-down list. the Oracle BI Administrator can disconnect any users and kill any query requests with the Session Manager. click Refresh. Using the Session Manager The Session Manager contains an upper and a lower pane: ■ The top window. all current query requests for each user. If the Administration Tool connects to an older-version server online. or Low. Additionally. Oracle Business Intelligence Server Administration Guide Version 10. shows users currently logged into the Oracle BI Server. ■ ■ ■ The Request tab shows active query requests for the user selected in the Session window. How often the Session Manager data refreshes depends on the amount of activity on the system. and variables and their values for a selected session. The Variables tab shows variables and their values for a selected session.2 22 5 .Administering the Oracle BI Server Query Environment ■ Server Session Management Server Session Management The Session Manager is used in online mode to monitor activity. To control the update speed.1. the Session window. only the Requests tab will be visible in the Session Manager dialog box. To refresh the display at any time. Select Pause to keep the display from being refreshed. High. NOTE: Only 7.

3. Column Name Last Active Time Request ID Session ID Start Time To view the variables for a session 1 2 In the Administration Tool. click Refresh. The time of the individual query request. 3 4 To refresh the view. Select the user in the Session Manager top window. The timestamp that shows when the session initially connected to the Oracle BI Server. For more information about variables. Table 25.2 .Administering the Oracle BI Server Query Environment ■ Server Session Management Table 25 on page 226 and Table 26 on page 226 describe the columns in the Session Manager windows. 226 Oracle Business Intelligence Server Administration Guide Version 10. The unique internal identifier that the Oracle BI Server assigns each session when the session is initiated.1. To disconnect a user from a session 1 2 In the Administration Tool. The name of the user connected. The logical name of the repository to which the session is connected. Column Name Client Type Last Active Time Logon Time Repository Session ID User Table 26. Some Fields in the Request Tab Description The timestamp of the last activity on the query. The timestamp of the last activity on the session. To close Session Manager. refer to “Using Variables in the Oracle BI Repository” on page 283. open a repository in online mode and choose Manage > Sessions. Fields in the Session Window Description The type of client connected to the server. The unique internal identifier that the Oracle BI Server assigns each session when the session is initiated. Select a session and click the Variables tab. open a repository in online mode and choose Manage > Sessions. click close. The unique internal identifier that the Oracle BI Server assigns each query when the query is initiated.

click close.3. The query is immediately terminated. any active query requests from that user are displayed in the bottom window. see Oracle Business Intelligence Infrastructure Installation and Configuration Guide NQSConfig. but it is particularly important in systems that allow queries over the Web. Oracle Business Intelligence Server Administration Guide Version 10.Administering the Oracle BI Server Query Environment ■ Server Configuration and Tuning 3 Click Disconnect.INI file parameters.INI file contains configuration and tuning parameters for the Oracle BI Server. set virtual table page sizes.2 22 7 . and any outstanding queries to underlying databases are canceled. After the user is highlighted. 3 4 Select the request you want to kill. refer to Oracle Business Intelligence Infrastructure Installation and Configuration Guide. The user session receives a message indicating that the session was terminated by the Oracle BI Administrator. Server Configuration and Tuning Performance is an extremely important consideration in every decision support system. This section describes some important considerations for improving query performance with the Oracle BI Server. Select the user session that initiated the query in the top window of the Session Manager. Click Kill Request to terminate the highlighted request. Any currently running queries are immediately terminated. 5 To close Session Manager. To kill an active query 1 2 In the Administration Tool. and any outstanding queries to underlying databases are canceled. Repeat this process to kill any other requests. This is an overview topic. open a repository in online mode and choose Manage > Sessions. For details. click close. The user receives a message indicating that the query was terminated by the Oracle BI Administrator.INI File Parameters The NQSConfig. 4 To close Session Manager. For more information about the NQSConfig.1. set sort memory buffer sizes. There are parameters to configure disk space for temporary storage. and a number of other configuration settings that allow you to take full advantage of your hardware’s capabilities. set cache memory buffers.

228 Oracle Business Intelligence Server Administration Guide Version 10. For the queries to return in a timely manner. the underlying databases need to be configured. The Oracle BI Server uses aggregate tables automatically. Different database products will have different tuning considerations.” Tune and Index Underlying Databases The Oracle BI Server sends queries to databases.Administering the Oracle BI Server Query Environment ■ Server Configuration and Tuning Aggregate Tables You should use aggregate tables to improve query performance.2 . For more information about query caching concepts and setup. You might need to work with the DBAs of the underlying databases to help identify any problem areas where database tuning is in order. Caching can dramatically improve the apparent performance of the system for users. Query Caching Enabling query caching causes the Oracle BI Server to store query results for reuse by subsequent queries. if they have been properly specified in the repository. then provide them to the DBA for analysis. and indexed correctly. If there are queries that return slowly from the underlying databases. refer to “Setting Up Fragmentation Content in an Oracle BI Repository for Aggregate Navigation” on page 201. Aggregate tables contain precalculated summarizations of data. For more information about configuring query logging on your system. For more information and examples of setting up aggregate navigation in a repository. “Query Caching in the Oracle BI Server. tuned. you can capture the SQL of the queries in the query log. It is much faster to retrieve an answer from an aggregate table than to recompute the answer from thousands of rows of detail. refer to “Administering the Query Log” on page 214. refer to Chapter 11.3.1.

Using cache. Cache Manager provides the maximum flexibility in choosing which cache entries to purge and when to purge them. This reduction in communication costs can dramatically decrease query response time. The query cache allows the Oracle BI Server to satisfy many subsequent query requests without having to access back-end databases (such as Oracle or DB2). The Oracle BI Server can save the results of a query in cache files and then reuse those results later when a similar query is requested. disk-based cache of query result sets (query cache). This chapter contains the following topics: ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ About the Oracle BI Server Query Cache on page 229 Query Cache Architecture on page 232 Configuring Query Caching on page 232 Monitoring and Managing the Cache on page 234 Purging and Maintaining Cache Using ODBC Procedures on page 235 Strategies for Using the Cache on page 238 Creating Aggregates for Oracle BI Server Queries on page 241 Cache Event Processing with an Event Polling Table on page 248 Making Changes to a Repository on page 254 Using the Cache Manager on page 255 About the Refresh Interval for XML Data Sources on page 257 About the Oracle BI Server Query Cache Oracle BI Administrators can configure the Oracle BI Server to maintain a local. Oracle Business Intelligence Server Administration Guide Version 10. in the Manage menu. select Cache to open the Cache Manager. Therefore. refer to “Using the Cache Manager” on page 255. the query cache entries can become stale. but it requires direct human involvement. Oracle BI Administrators need to periodically remove entries from the query cache using one of the following methods: ■ Manually. This section explains query caching and how it is implemented in the Oracle BI Server.3. the cost of database processing only needs to be paid once for a query. refer to Oracle Business Intelligence Presentation Services Administration Guide. In the Administration Tool.2 22 9 . As updates occur on the back-end databases. For more information.1. NOTE: For information about how to use Delivers to seed the Oracle BI Server Cache. not every time the query is run.11 Query Caching in the Oracle BI Server Decision support queries sometimes require large amounts of database processing.

To summarize. For additional information about managing cache. You can write your own scripts to call these functions at times that fit your needs. especially if the query results are retrieved from multiple databases.3. In the Administration Tool. refer to “Purging and Maintaining Cache Using ODBC Procedures” on page 235. Network resources are conserved because the intermediate results do not have to come over the network to the Oracle BI Server. a process (often a query) computes the results and then stores them in a table in the database. In addition to improving performance. this processing is avoided. Aggregate tables are examples of precomputed answers. Programatically. If another query can use those results. To create this aggregate table. The Oracle BI Server provides ODBC-extension functions for purging cache entries programmatically. NOTE: For information about how to use Delivers to seed the Oracle BI Server Cache. ■ The parameters that control query caching are located in the NQSConfig. it could save money in the budget as well. For more information. Less network traffic. Aggregate tables contain precalculated results for a particular aggregation level. the Oracle BI Server stores the precomputed results of queries in a local cache.Query Caching in the Oracle BI Server ■ About the Oracle BI Server Query Cache ■ Automatically. 230 Oracle Business Intelligence Server Administration Guide Version 10. This can result in dramatic improvements in the average query response time. Advantages of Caching The fastest way to process a query is to skip the bulk of the processing and use a precomputed answer.2 . Depending on the query. and use Oracle BI event tables to purge cache automatically. Reduction in Oracle BI Server processing overhead. freeing server resources for other tasks.1. Reduction in database processing and charge back. If the database uses a charge back system. when the granularity of detail for the database is at the day level. With query caching. there might be considerable join and sort processing in the server. being able to answer a query from a local cache conserves network resources and processing time on the database server. set caching attributes for a specific physical table. Not running the query on the database frees the database server to do other work. refer to “Monitoring and Managing the Cache” on page 234. Another benefit of using the cache to answer a query is savings in processing time on the Oracle BI Server. For example. refer to Oracle Business Intelligence Presentation Services Administration Guide. all database processing for that query is eliminated. These functions give you the choice and the timing flexibility of Cache Manager with the automation of event tables. query caching has the following advantages: ■ ■ ■ ■ Dramatic improvement of query performance. an aggregate table might store sales results for each product by month.INI file described in Oracle Business Intelligence Infrastructure Installation and Configuration Guide. you can disable cache for the system. If the query is already calculated.

You can also create a cache event polling table and modify applications to update the polling table when changes to the databases occur. the Connection Pool needs to be set up for shared login with session variables VALUEOF(NQ_SESSION. For more information about security. “Security in Oracle BI. a disk should be used exclusively for caching. For example. refer to Chapter 15. cache will be shared. You can write your own scripts to call these functions at the appropriate times. suppose your application analyzes corporate data from a large conglomerate.PASSWORD). knowing how often data in that table is updated. the size of the query result sets. the tradeoffs for deciding whether to purge the cache might favor leaving the entries in the cache.VALUEOF(NQ_SESSION. How much space depends on the query volume. queries can potentially return results that are out of date. and it should be a high performance. For performance purposes.3. Disk Space The query cache requires dedicated disk space. and how much disk space you choose to allocate to the cache. You need to evaluate whether this is acceptable.2 23 1 . In this case. You need to decide what level of stale data is acceptable and then set up (and follow) a set of rules to reflect those levels. Oracle Business Intelligence Server Administration Guide Version 10.USER) in the login properties. you need to keep track of when changes occur and purge the cache manually when necessary. You need to set the cache persistence time for each physical table appropriately.1. and you are performing yearly summaries of the different divisions in the company. making the system event-driven. New data is not going to materially affect your queries because the new data will only affect next year’s summaries. but also certain costs: ■ ■ ■ ■ Disk space for the cache Administrative costs of managing the cache Potential for cached results being stale Minor CPU and disk I/O on server machine With proper cache management. When the frequency of the update varies. the benefits will far outweigh the costs. It might be acceptable to allow the cache to contain some stale data.” Costs of Caching Query caching has many obvious benefits. high reliability type of disk system. Administrative Tasks There are a few administrative tasks associated with caching.Query Caching in the Oracle BI Server ■ About the Oracle BI Server Query Cache Initializing Cache Entries for User Ids To initialize cache entries for user Ids. The Oracle BI Server also provides ODBC-extension functions for purging cache entries programmatically. If the shared login is disabled and a user specific database login is used. Keeping the Cache Up To Date If the cache entries are not purged when the data in the underlying databases changes.

Configuring Query Caching The query cache is disabled by default.INI file: ■ ■ Directories to store the cache files. Whatever your situation. Another scenario is that you rebuild your data mart from scratch at periodic intervals (for example. CPU Usage and Disk I/O Although in most cases it is very minor. To enable caching. you can purge the entire cache as part of the process of rebuilding the data mart.Query Caching in the Oracle BI Server ■ Query Cache Architecture Suppose. This section includes information on the tasks necessary to configure the Oracle BI Server for query caching. In most cases. the only effect on the running query is the resources consumed in the process of writing the cached results. but the disk I/O might be noticeable. cache metadata.INI file. however. If the metadata shows a cache hit. and cache detection in query compilation. you need to evaluate what is acceptable as far as having noncurrent information returned to the users. In this case. making sure that you never have stale data in the cache. that your databases are updated three times a day and you are performing queries on the current day’s activities. the bulk of the query processing is eliminated. particularly if queries return large data sets. query caching does require a small amount of CPU time and adds to the disk I/O. you will need to purge the cache much more often. The process of adding the new results to the cache is independent of the results being returned to the user. once per week). Configuring the Cache Storage The following items need to be set up for cache storage in the NQSConfig. The parameters to control query caching are located in the NQSConfig.1. The process of accessing the cache metadata is very fast. you need to configure the cache storage and decide on a strategy for flushing outdated entries. the CPU usage is insignificant. 232 Oracle Business Intelligence Server Administration Guide Version 10. Query Cache Architecture The query cache consists of cache storage space. A file to store the cache metadata. In this example.2 . described in Oracle Business Intelligence Infrastructure Installation and Configuration Guide.3. and the results are immediately returned to the user. or perhaps consider not using it at all.

The MAX_CACHE_ENTRIES parameter value specifies the maximum number of cache entries allowed in the query cache. If the number of rows a query returns is greater than the value specified in the MAX_ROWS_PER_CACHE_ENTRY parameter.INI file specifies one or more directories for query cache storage. refer to “Cache Hits” on page 238. you can enable query caching. The cache storage directories should reside on high performance storage devices. Enabling Query Caching After configuring the cache storage and deciding on one or more cache management strategies. Restart the Oracle BI Server.Query Caching in the Oracle BI Server ■ Configuring Query Caching Cache Data Storage Directories The DATA_STORAGE_PATHS parameter in the CACHE section of the NQSConfig. Limiting the total number of cache entries provides another parameter with which to manage your cache storage. When the cache storage directories begin to fill up. Maximum Cache Entry Values You can control the maximum number of rows for any cache entry and the maximum number of cache entries with the MAX_ROWS_PER_CACHE_ENTRY and MAX_CACHE_ENTRIES NQSConfig. For the syntax of these parameters. the entries that are least recently used (LRU) are discarded to make space for new entries.3. Aggregates Typically. These directories are used to store the cached query results and are accessed when a cache hit occurs. The POPULATE_AGGREGATE_ROLLUP_HITS parameter overrides this default when the cache hit occurs by rolling up an aggregate from a previously executed query.INI file parameters. refer to Oracle Business Intelligence Infrastructure Installation and Configuration Guide. For more information. as discussed in “Monitoring and Managing the Cache” on page 234. if a query gets a cache hit from a previously executed query.2 23 3 . the less often queries will have to access the underlying databases to get the results. Limiting the number of rows is a useful way to avoid using up the cache space with runaway queries that return large numbers of rows. refer to Oracle Business Intelligence Infrastructure Installation and Configuration Guide. For more information about this configuration parameter. ideally devoted solely to cache storage. The more space you can allocate to the cache. respectively.INI file to YES. the query is not cached. Disabling Query Caching This section explains how to disable query caching.1. To enable query caching 1 2 Set the ENABLE parameter in the CACHE section of the NQSConfig. then the new query is not added to the cache. Oracle Business Intelligence Server Administration Guide Version 10.

Choosing a Cache Management Strategy The choice of a cache management strategy depends on the volatility of the data in the underlying databases and the predictability of the changes that cause this volatility. For example. identify. Restart the Oracle BI Server. If you enable caching for a table. Caching and Cache Persistence Timing for Specified Physical Tables You can set a cachable attribute for each physical table. you can safely enable the cache. It also depends on the number and types of queries that comprise your cache.Query Caching in the Oracle BI Server ■ Monitoring and Managing the Cache To disable query caching 1 2 Set the ENABLE parameter in the CACHE section of the NQSConfig. as well as a process to monitor. perhaps you have a table that stores stock ticker data. You can also use the Cache persistence time field to specify how long the entries for this table should be kept in the query cache. and remove any undesirable cache entries. This section provides an overview of the various approaches to cache management. any query involving the table is added to the cache. double-click the physical table. purge the entire cache or the cache associated with an entire business model before enabling the cache again.INI file and restarting the Oracle BI Server. Temporarily disabling caching is a useful strategy in situations where you might suspect having stale cache entries but want to verify if they are actually stale before purging those entries or the entire cache. allowing you to specify if queries for a that table will be added to the cache to answer future queries.3. that is updated every minute. You need a process to invalidate cache entries when the data in the underlying tables that compose the cache entry have changed. To set the caching attributes for a specific physical table 1 In the Physical layer. as well as the usage those queries receive. All tables are cachable by default.2 . You could use the Cache Persistence Time settings to purge the entries for that table every 59 seconds. Disabling caching allows you to enable it at a later time without losing any entries already stored in the cache. If necessary.1. 234 Oracle Business Intelligence Server Administration Guide Version 10. Disable Caching for the System You can disable caching for the whole system by setting the ENABLE parameter to NO in the NQSConfig. or after you have safely purged problem entries. This is useful for data sources that are updated frequently. Disabling caching stops all new cache entries and stops any new queries from using the existing cache. If you find that the data stored in the cache is still relevant. you need to develop a cache management strategy.INI file to NO. but some tables may not be good candidates to include in the cache unless you use the Cache Persistence Time settings. Monitoring and Managing the Cache To manage the changes in the underlying databases and to monitor cache entries.

refer to “Setting Up Event Polling Tables on the Physical Databases” on page 249. after a nightly ETL is performed. In some cases. For more information about event polling tables. If you select Infinite or until you select a different value. Event polling tables can be your sole method of cache management or can be used in conjunction with other cache management schemes. Event tables offer less flexibility about choice of cache entries and the timing of purges. only cache related to that table can be purged.000: select lastname. you would have a query cache entry that retrieves the names of all employees earning more than $100. clear the Make table cacheable check box. Purging and Maintaining Cache Using ODBC Procedures The Oracle BI Server provides ODBC-extension functions for the Oracle BI Administrator to use for purging cache entries. For example. you might need to purge the cache entries associated with a specific database. make one of the following selections: ■ ■ To enable caching. firstname from employee where salary > 100000. all Oracle BI Server cache can be purged.1. Purges a cache entry that exactly matches a specified query. select a value. Some of these functions are particularly useful for embedding in an Extract. The Oracle BI Server polls this table at set intervals and invalidates any cache entries corresponding to the updated tables. For example. Click OK.2 23 5 . An application (such as one that loads data into a data mart) could be configured to add rows to an event polling table each time a database table is updated. Therefore scripts that call these ODBC-extension functions must run under an Oracle BI Administrator logon ID. select the Make table cachable check box. and Load (ETL) task. Transform. perform the following steps: a In the Cache persistence time drop-down list. b 4 Complete the Cache persistence time field.3.Query Caching in the Oracle BI Server ■ Purging and Maintaining Cache Using ODBC Procedures 2 In the Physical Table properties dialog box. in the General tab. 3 To set an expiration time (maximum lifetime). The following ODBC functions affect cache entries associated with the repository specified by the ODBC connection: ■ SAPurgeCacheByQuery. NOTE: Only Oracle BI Administrators have the right to purge cache. using the following query. If only the fact table was modified. To prevent a table from ever being cached. the Cache Persistence time field will not be available. The following call purges the cache entry associated with this query: Oracle Business Intelligence Server Administration Guide Version 10. Configure Oracle BI Server Event Polling Tables Oracle BI Server event polling tables store information about updates in the underlying databases.

CatName. Purges all cache entries associated with a specified physical table name (fully qualified) for the repository to which the client has connected. The first column is a result code and the second column is a short message describing result of the purge operation. NOTE: Wild cards are not supported by the Oracle BI Server for this function. The following shows the syntax of this call: Call SAPurgeCacheByDatabase( ‘DBName’ ). you will receive an error message. Purges all cache entries associated with a specific physical database name. catalog. you might have a table with the fully qualified name of DBName. DBName and TabName cannot be null. Additionally. This function takes one parameter that represents the physical database name and the parameter cannot be null. ■ SAPurgeCacheByTable.SchName.2 . ■ SAPurgeAllCache. An ODBC procedure that takes a logical SQL statement from the Oracle BI Presentation Services and returns a request key value. To purge the cache entries associated with this table in the physical layer of the Oracle BI repository. 236 Oracle Business Intelligence Server Administration Guide Version 10. About Sharing Presentation Server Cache When users access the Intelligence Dashboard to run queries. execute the following call in a script: Call SAPurgeCacheByTable( ‘DBName’. If either one is null. ‘SchName’. For example. ■ SAPurgeCacheByDatabase. ‘TabName’ ).1. The following is an example of this call: Call SAPurgeAllCache(). The following list contains examples of result records: Result Code 1 Result Message SAPurgeCacheByDatabase returns successfully. Purges all cache entries. The following shows the syntax of this procedure: SAGetSharedRequestKey(‘sql-string-literal) About Result Records The result record contains two columns. A record is returned as a result of calling any of the ODBC procedures to purge the cache.TabName. schema and table name proper) of a fully qualified physical table name. ■ SAGetSharedRequestKey. Oracle BI Presentation Services uses the request key and the logical SQL string to determine if subsequent queries can use cached results. This function takes up to four parameters representing the four components (database.Query Caching in the Oracle BI Server ■ Purging and Maintaining Cache Using ODBC Procedures Call SAPurgeCacheByQuery(‘select lastname.3. Oracle BI Presentation Services caches the results of the queries. If the cache can be shared. ‘CatName’. subsequent queries are not stored. firstname from employee where salary > 100000’ ).

The probing query will be logged when the log level is equal or greater than 2. such as if the subsystem is enabled and events such as start and shutdown events. It is the responsibility of the Oracle BI Administrator to maintain the cache.Query Caching in the Oracle BI Server ■ Purging and Maintaining Cache Using ODBC Procedures Result Code E_Execution_CacheNotEnabled E_Execution_NonExistingDatabase Result Message Operation not performed because caching is not enabled. a limit on the size of each member set has been established in the MDX_MEMBER_CACHE section of the NQSConfig. For configuration information. refer to the topic about the MDX Member Name Cache Section of the NQSConfig. Therefore. member caption name is different from member unique name. ■ ■ NOTE: In the Oracle BI Administration Tool. the Oracle BI Administrator should be aware of the following issues: ■ The size of multidimensional cache entries can grow very large. The database specified does not exist. This must be performed in online mode and by a user with Oracle BI Administrator privileges. to minimize performance impact. Purging Cache for SAP/BW Data Sources Only Oracle BI Administrators have privileges to run ODBC purge procedures. The status of the subsystem. The following purge procedures are specific to SAP/BW data sources: ■ SAPurgeALLMCNCache. in SAP/BW data sources. The cache will be populated the first time the query runs. Therefore. The format of persisted cache might not be consistent after an upgrade. the record for the cached unique name is returned.1. Storing and Purging Cache for SAP/BW Data Sources In Microsoft Analysis Services. the Oracle BI Administrator can purge cache for an individual cube table by right-clicking the cube table. the subsystem sends a probing query to SAP/ BW. the subsystem checks the cache to determine whether cache exists for this query. Therefore. If cache exists. Therefore. member caption name is the same as member unique name. If there is no cache that matches the query.INI file. and then selecting Purge Member Cache. This subsystem is turned off by default. are also written to the server log. the Oracle BI Server maintains a cache subsystem for SAP/BW member unique names. However.2 23 7 . performance is impacted. the Oracle BI Administrator should purge all cache before a software upgrade. Purges all SAP/BW cache entries. When a query is received for member unique name.INI file in Oracle Business Intelligence Infrastructure Installation and Configuration Guide. The Oracle BI Administrator should arrange to populate the cache during off-peak hours. Use caution when increasing the log level for users. The following shows the syntax of this procedure: Oracle Business Intelligence Server Administration Guide Version 10. CAUTION: With each increased logging level.3.

A cache hit occurs only if all of the conditions described in this section are met. SRs where user = valueof(nq_SESSION. If you want to seed the cache for all users. ‘CubeName’) The following messages will be returned. 238 Oracle Business Intelligence Server Administration Guide Version 10. NOTE: The Oracle BI Server can use query cache to answer queries at the same or higher level of aggregation. E_Execution_NonExistingPhysicalCube The physical cube specified does not exist. The database specified does not exist.3.1. NOTE: If the database and physical cube are both wrong. the following queries will all be cache hits: Select User. SAPurgeMCNCacheByCube returns successfully. SRs where user = valueof(nq_SESSION.USER) (and the user was USER1) Select User. A cache hit means that the server was able to use cache to answer the query and did not go to the database at all. each query is evaluated to determine whether it qualifies for a cache hit. you might seed the cache with the following query: Select User.USER) (and the user was USER2) Select User. It may be valuable to seed the cache during off hours by running queries and caching their results. SRs where user = valueof(nq_SESSION. SRs. The database name and cube name are the external names of the repository objects. Return Code 1 1 E_Execution_NonExistingDatabase(*) Return Message SAPurgeALLMCNCache returns successfully. A good seeding strategy requires that you know when cache hits occur. this result code will be returned. Strategies for Using the Cache One of the main advantages of query caching is to improve apparent query performance. Purges all cache entries associated with the specified physical cube.Query Caching in the Oracle BI Server ■ Strategies for Using the Cache SAPurgeALLIMCNCache () ■ SAPurgeMCNCacheByCube. The following shows the syntax of this procedure: SAPurgeMCNCacheByCube( ‘DBName’. SRs After seeding the cache using Select User.USER) (and the user was USER3) Cache Hits When caching is enabled.2 .

geography where region in ('EAST'. month. For example. or a subset of the cached results. 'WEST') qualifies as a hit on the following cached query: select employeename. unitsales from sales where year = 2000 because averageprice can be computed from dollars and unitsales (averageprice = dollars/ unitsales). All of the columns in the SELECT list of a new query have to exist in the cached query in order to qualify for a cache hit. averageprice from sales where year = 2000 will hit cache on the query: select product.Query Caching in the Oracle BI Server ■ Strategies for Using the Cache ■ WHERE clause semantically the same or a logical subset. the following query: select employeename. ■ Oracle Business Intelligence Server Administration Guide Version 10.3. If a query with no WHERE clause is cached. Queries requesting fewer elements of an IN list cached query qualify for a cache hit. the query: select product.1. but all the columns have to be in the cached result.2 23 9 . 'EAST'. It contains a logical subset of a literal comparison. the WHERE clause constraints need to be either equivalent to the cached results. queries that satisfy all other cache hit rules qualify as cache hits regardless of their WHERE clause. The Oracle BI Server can calculate expressions on cached results to answer the new query. 'SOUTH'. geography where region in ('NORTH'. region from employee. Columns in the SELECT list can be composed of expressions on the columns of the cached queries. ■ A subset of columns in the SELECT list. region from employee. or they must be able to be calculated from the columns in the query. dollars. A WHERE clause that is a logical subset of a cached query qualifies for a cache hit if the subset meets one of the following criterion: ■ A subset of IN list values. For example. month. the following predicate: where revenue < 1000 qualifies as a cache hit on a comparable query with the predicate: where revenue < 5000 ■ There is no WHERE clause. For example. For the query to qualify as a cache hit. 'WEST') ■ ■ It contains fewer (but identical) OR constraints than the cached result.

A cached column with an expression can only answer a new query with the same expression. For example. Compatible aggregation levels. The following are some recommendations for the types of queries to use when creating a suite of queries with which to seed the cache. REVENUE. ■ SELECT lists with no expressions. one strategy is to run a suite of queries just for the purpose of populating the cache. if a query with the column qtysold is cached. a cached column with no expressions can answer a request for that column with any expression. For example. Queries that are commonly run.. ORDER BY clause made up of columns in the select list. can answer a new query such as: 240 Oracle Business Intelligence Server Administration Guide Version 10. The second query would result in a cache hit on the first query. a request for RANK(qtysold) results in a cache miss. a request for the same column without the DISTINCT processing will be a cache miss. city.Query Caching in the Oracle BI Server ■ Strategies for Using the Cache ■ ■ Equivalent join conditions. particularly ones that are expensive to process. Additionally.3.2 .1. are excellent cache seeding queries. The resultant joined logical table of a new query request has to be the same as (or a subset of) the cached results to qualify for a cache hit. ■ Running a Suite of Queries to Populate the Cache To maximize potential cache hits. a cached request such as: SELECT QUANTITY. qtysold from suppliercity requests the quantity sold at the city level.. For example. region level. SELECT DISTINCT. ■ ■ Limited additional aggregation. If a cached query eliminates duplicate records with DISTINCT processing (for example.. a query requesting qtysold at the country level can get a cache hit from a query requesting qtysold at the country. ■ Common prebuilt queries. Queries that request an aggregated level of information can use cached results at a lower level of aggregation. Queries whose results are embedded in Intelligence Dashboards would be good examples of common queries. region. requests for the cached columns have to also include the DISTINCT processing.). while the following query: select city. Eliminating expressions on SELECT list columns expands the possibility for cache hits. Queries that order by columns not contained in the select list result in cache misses. DISTINCT attribute the same. qtysold from suppliercity requests the quantity sold at the supplier and region and city level.. the following query: select supplier.

it will examine business models to determine if they reference those repository variables. where PRODUCTS maps directly to a single database table) require very little database processing. using aggregate tables becomes more complex as the number of aggregate tables increases. and then the server decides which tables provide the fastest answers. Using aggregate tables is a typical technique used to improve query response times in decision support systems. It will take some time for the metadata changes to propagate to the slaves. It requires writing complicated DDL and DML to create tables in the databases involved. the best queries to seed cache with are queries that heavily consume database processing resources and that are likely to be reissued. The NQSConfig.1. the Oracle BI Server purges all cache for those business models. Be careful not to seed the cache with simple queries that return many rows. This is a time consuming. but not the reverse. Their expense is network and disk overhead—factors that caching will not alleviate. Oracle Business Intelligence Server Administration Guide Version 10. The cluster refresh time is a user-controlled option and results may be incorrect if a query hits a slave server before it is refreshed. ■ No WHERE clause.. If you write SQL queries or use a tool that only understands what physical tables exist and not their meaning. In general. and a potentially error-prone process. SELECT * FROM PRODUCTS.. The Aggregate Persistence module allows the Oracle BI Administrator to automate the creation of aggregate tables and their mappings into the metadata. these tables need to be mapped into the repository metadata to be available for queries. The aggregate navigation capability of the Oracle BI Server allows queries to use the information stored in aggregate tables automatically.2 24 1 . The traditional process of creating aggregates for Oracle BI Server queries is manual. Creating Aggregates for Oracle BI Server Queries Aggregate tables store precomputed results that are aggregated measures (typically summed) over a set of dimensional attributes. Additionally.Query Caching in the Oracle BI Server ■ Creating Aggregates for Oracle BI Server Queries SELECT QUANTITY/REVENUE. NOTE: When the Oracle BI Server refreshes repository variables. Aggregate creation will run against the master server in a cluster. If they do. The Oracle BI Server allows you to concentrate on asking the right business question. These queries (for example. If there is no WHERE clause in a cached result.INI file contains the following optional parameter in the GENERAL section: AGGREGATE_PREFIX = "user specified short prefix for dimension aggregates" . It is the Oracle BI Administrator’s responsibility to set an appropriate cluster refresh interval. it can be used to answer queries satisfying the cache hit rules for the select list with any WHERE clause that includes columns in the projection list.3.

for example. About Writing the Create Aggregates Specification To create the script file. ■ Analyze the query runtimes and identify the slowest running queries as candidates for aggregation. perform the following tasks: ■ Enable usage tracking in the Oracle BI Server. NOTE: It is recommended that you use the Aggregate Persistence Wizard. NOTE: It is strongly recommended that you use direct insertion into a database. If not specified. database optimization. This section contains the following topics: ■ ■ ■ ■ ■ ■ Identifying Query Candidates for Aggregation on page 242 About Writing the Create Aggregates Specification on page 242 Generating the SQL Script File on page 247 About Setting the Logging Level on page 247 Executing the SQL Script File to Create and Delete Aggregates on page 247 Post Creation Activities on page 247 Identifying Query Candidates for Aggregation When creating aggregates you need to identify which queries would benefit substantially from aggregated data. and billing users or departments based on the resources they consume.Query Caching in the Oracle BI Server ■ Creating Aggregates for Oracle BI Server Queries This parameter has a maximum of 8 characters and is specified if you want to add a prefix to automatically generated dimension (level) aggregates. refer to “Administering Usage Tracking” on page 219. statistics for every query are written to a usage tracking log file or inserted into a database table. refer to “Aggregate Persistence Wizard” on page 189. aggregation strategies. The Oracle BI Server tracks usage at the detailed query level. NOTE: Only the Oracle BI Administrators group is allowed to manage aggregates. The run time for creating aggregates is dependent on the type of aggregates selected by the user. You will achieve the best results by aggregating to the highest level possible. When you enable usage tracking. The Oracle BI Administrator needs to carefully select the aggregates to be created.3. Creating aggregates from large fact tables will be slower than from smaller tables. Usage tracking statistics can be used in a variety of ways. the default prefix SA_ will be used.2 . For instructions. To identify slow running queries. you can use the Aggregate Persistence Wizard in the Administration Tool or write the file manually.1. 242 Oracle Business Intelligence Server Administration Guide Version 10. For instructions.

If the above constraints are not met. the aggregate specification will be discarded. then that dimension must not be present in the list of levels for that aggregate specification. At least one valid measure must be specified. Any other level defined for this measure. Measure is a derived measure.1. Valid Measures A valid measure must have a valid aggregation rule. if any of the following conditions are true: ■ ■ Attribute is mapped to session or repository variables. Oracle Business Intelligence Server Administration Guide Version 10. Must have a valid output container (database/catalog/schema). the entire aggregate specification will be discarded. Connection pool and container must belong to the same database. Valid Levels A valid level must have a valid primary key. Attributes of a level or its primary key will be ignored. you can use the Aggregate Persistence Wizard to create the SQL file. At least one valid level must be specified.Query Caching in the Oracle BI Server ■ Creating Aggregates for Oracle BI Server Queries If you do not want Oracle BI Server to modify your databases during aggregate creation. The remaining measures will be used to create the aggregate. must be present in the list of levels for that aggregate specification. Valid Aggregate Specification A valid aggregate specification has the following properties: ■ ■ ■ ■ ■ ■ Name length is between 1 and 18 characters (inclusive). Measures that are ignored do not necessarily affect the aggregate specification. Constraints Imposed During the Create Process This section describes the constraints that are imposed during the create process.3. ■ A measure will be ignored by the create process if any of the following conditions are true: ■ ■ Measure is mapped to a session or repository variable. Must have a valid connection pool. After creating the SQL. ■ The following constraints apply to level-based measures: ■ ■ If the level is grand total alias. Attributes are not from the same logical table. you can use your database administration processes to create your aggregate tables. ■ ■ If a level is invalid.2 24 3 .

…) using connection pool <connection_pool_name_2> in <schema_name_2>] . ■ Begin the script file with a Delete statement. 244 Oracle Business Intelligence Server Administration Guide Version 10.<aggr_name_2> for logical_fact_table_3 [(logical_fact_column_5. level_2. ■ Creating multiple aggregates. and the entire aggregate creation script is terminated with a semi-colon.1.Query Caching in the Oracle BI Server ■ Creating Aggregates for Oracle BI Server Queries ■ ■ ■ Only one level per dimension can be specified. There are two modes of operation: Create and Delete. All logical components of the specification must be from the same subject area. To specify more than one aggregate in a single Create Aggregates statement.3. It is essential to delete system generated aggregates before creating any new ones. it is allowed to have multiple facts with the same name but different scope in the same database.…)] at levels (level_1. The following statement is the syntax for deleting aggregates: Delete aggregates.…)] at levels (level_3. An aggregate specification will be ignored if the name already exists in the output container because level aggregates are scoped by the entire database. ■ The next statement should be a Create statement. logical_fact_column_2. use the following guidelines: ■ Each of the multiple aggregate specifications are separated by a comma.2 . Guidelines for Writing the Create Aggregates Specification All metadata names (except for logical fact columns) are fully qualified. if different catalogs or schemas are specified for the same fact aggregate name. This makes sure that data is consistent and it removes invalid or incomplete aggregates before you run the Create operation. …) using connection pool <connection_pool_name_1> in <schema_name_1> [ . Measures can only be from the same fact table. It is strongly recommended to place all aggregate specifications under a single Create Aggregates statement. The following is the syntax for creating aggregates: Create|Prepare aggregates <aggr_name_1> for logical_fact_table_1 [(logical_fact_column_1. logical_fact_column_2. However. level_2.

if no option is specified) Surrogate Keys Syntax for Create/Prepare Aggregates The following syntax for create/prepare aggregates contains the change for [Using_Surrogate_Key]. Always create a surrogate key for a level aggregate (relatively low cost operation). Surrogate Key Input for Create/Prepare Aggregates The Oracle BI Administrator can create the aggregate star using the following join options: ■ ■ Primary Keys (default. the join to the fact table will be expensive. CAUTION: Any aggregate scripts that are run after the first one should not have a Delete Aggregates statement or all previously created aggregates will be removed. the fact and dimension tables are joined using the primary key from the level aggregate. A surrogate key is an artificially generated key. ■ Creating aggregates with surrogate keys. and another may use primary keys from the dimension aggregate. usually a number.1. simplifies this join and removes unnecessary columns (level primary key) from the fact table. The Oracle BI Administrator should make sure that only one delete is issued per ETL run (unless a reset is called for). a surrogate key makes sure that each aggregate table has a unique identifier.2 24 5 .3. Adding surrogate keys to the dimension (level) aggregate tables can simplify joins to the fact tables and might improve query performance. A surrogate key. The surrogate key option can be specified for each level. One fact may use surrogate keys. There may be cases in which a level is shared among multiple fact tables. Additionally. Then decide later if the fact aggregate should join to it using a surrogate or primary key. If unspecified. For detailed instructions.Query Caching in the Oracle BI Server ■ Creating Aggregates for Oracle BI Server Queries ■ In this file. If the primary key of the level is large and complex (composite of many columns). An alternative to specifying the join type for each dimension is to specify if surrogate keys should be used for the entire star. only one Delete Aggregates statement should be specified at the beginning. This would result in simpler syntax but would also restrict the available user options and slow the aggregate creation process. in the level aggregate table. Create|Prepare aggregates <aggr_name_1> [file <output_file_name>] Oracle Business Intelligence Server Administration Guide Version 10. The following are some options for resolving this issue: ■ ■ Set a metadata property for levels that indicates whether to use surrogate keys or primary keys. resulting in a smaller-sized fact table. refer to “About Adding Surrogate Keys to Dimension Aggregate Tables” on page 245 About Adding Surrogate Keys to Dimension Aggregate Tables The join option default between fact and level aggregate tables uses primary keys from the level aggregate.

246 Oracle Business Intelligence Server Administration Guide Version 10. The column will have the same name as that in the level aggregate (check for collisions). The type of this column is UINT. the following occurs: ■ In the physical metadata. the following occurs: ❏ ❏ ❏ ❏ ❏ The fact aggregate table will no longer contain columns from the level's primary keys. Instead. ■ For a fact aggregate. It is populated using new capabilities to be available through Populate. the following occurs: ❏ ❏ The level aggregate table will have a new column called <level_name>_SKEY (check for collisions). a new column that corresponds to the level aggregate's surrogate key will be added to the table.2 . ■ In the database. The fact table and the level table will be joined using this surrogate key only.<aggr_name_2> for logical_fact_table_3 [(logical_fact_column_5. the following occurs: ❏ ❏ The fact aggregate table will also have the corresponding surrogate key.1. …) using connection pool <connection_pool_name_2> in <schema_name_2>] . This is the surrogate key column for the dimension aggregate. logical_fact_column_2. logical_fact_column_2. When you use the UseSurrogateKeys join option. the following describes the results: ■ For a level aggregate.…)] at levels (level_3.…)] at levels (level_1 [Using_Surrogate_Key]. level_2. level_2.3. It can be populated using RCOUNT (). Surrogate Key Output From Create/Prepare Aggregates The changes to the current process are restricted to the physical metadata layer in the repository and the database. the following occurs: ❏ ❏ The level aggregate table will also have a corresponding column called <level_name>_SKEY. …) using connection pool <connection_pool_name_1> in <schema_name_1> [ .Query Caching in the Oracle BI Server ■ Creating Aggregates for Oracle BI Server Queries for logical_fact_table_1 [(logical_fact_column_1. ■ In the database. the following occurs: ■ In the physical metadata. The type of this column will be identical to the level's surrogate key.

For more information. Error logs will be logged to NQQuery. Post Creation Activities This section discusses the following topics: ■ ■ About Database Index Creation on page 248 About Error Handling on page 248 Oracle Business Intelligence Server Administration Guide Version 10. If you choose to write the SQL script manually. use the syntax as described in “Guidelines for Writing the Create Aggregates Specification” on page 244. NOTE: It is strongly recommended that you use Job Manager to run nQCmd. You can run nQCmd.exe from the Command Line prompt or the Job Manager utility in the Administration Tool. If you choose to run nQCmd. After executing the SQL script.exe. The logging events will include the aggregate execution plan and the order in which the aggregates are created and deleted. a version can be found in the following Oracle BI installation folder: [installdrivepath]:\OracleBI\server\Bin. NOTE: It is strongly recommended that you use the Aggregate Persistence Wizard because it automatically enforces many of the constraints outlined in the previous section. refer to Oracle Business Intelligence Scheduler Guide. aggregates are created and persisted in the Oracle BI Server metadata as well as in the backend databases.exe. Higher logging levels provide more details about the query and execution plans.3. you can write the aggregate logical SQL or generate a SQL script file using the Aggregate Persistence Wizard.1. About Setting the Logging Level Trace logs will be logged to NQQuery. you need to execute the SQL script. Executing the SQL Script File to Create and Delete Aggregates After generating the SQL script file and setting the logging levels.log regardless of the logging level.Query Caching in the Oracle BI Server ■ Creating Aggregates for Oracle BI Server Queries Generating the SQL Script File Now that you understand more about how to specify aggregates.2 24 7 .log if the logging level is at least 2.log if the logging level is at least 1 and to NQServer.

Each row that is added to an event table describes a single update event.. Aggregates that are already created and checked in. If required."SQL_Paint" DROP INDEX demo_index1. or in a database with other tables—it requires a fixed schema."SQL_Paint" CREATE INDEX demo_index1 ON table1(col1). the database Administrator has to manually create these indexes on the database tables.1. No disk space on the database. This plan. It is normally exposed only in the Physical layer of the Administration Tool. can be used as a reference to locate automatically generated tables in the database.2 . 248 Oracle Business Intelligence Server Administration Guide Version 10. where it is identified in the Physical Table dialog box as being an Oracle BI Server event table. database table indexes are not generated automatically. and purges stale cache entries that reference those physical tables. you need to remove them at the time of the error or at the next ETL run in one of the following ways: ■ ■ Manually remove the aggregates from the metadata and the database. You can manually embed dropping and building indexes in the logical SQL script using the EXECUTE PHYSICAL capability. Regardless of where it resides—in its own database. Cache Event Processing with an Event Polling Table The use of an Oracle BI Server event polling table (event table) is a way to notify the Oracle BI Server that one or more physical tables have been updated. remain checked in.3. it is useful to set the logging level to 2 or higher to view the Aggregate Creation Plan in NQQuery. the event table. extracts the physical table information from the rows. along with the aggregate specifications.log.. CREATE AGGREGATES. EXECUTE PHYSICAL CONNECTION POOL "SQL_Paint". such as an update occurring to the Product table in the 11308Production database. described in Table 27 on page 250. The Oracle BI Server cache system reads rows from. About Error Handling The following is a list of some reasons errors can occur: ■ ■ ■ Network failure. If there is an error in the creation of any aggregate. Bad aggregate request. or polls. Automatically remove all the aggregates using the Delete Aggregates specification. the entire aggregate request is aborted and subsequent aggregates are not created. If there are errors.Query Caching in the Oracle BI Server ■ Cache Event Processing with an Event Polling Table About Database Index Creation Currently. The following is an example of the statements that you might add to the beginning of your script: EXECUTE PHYSICAL CONNECTION POOL "SQL_Paint". Since the dimension tables are automatically generated.... The event table is a physical table that resides on a database accessible to the Oracle BI Server..

1. As long as the scripts that update the event table are accurately recording changes to the tables. stale cache entries are purged automatically at the specified polling intervals. After this process is in place and the event table is configured in the Oracle BI repository. cache invalidation occurs automatically. A typical method of updating the event table is to include SQL INSERT statements in the extraction and load scripts or programs that populate the databases. The event table should be updated every time a table in the database changes.2 24 9 . there is always the potential for stale data in the cache. some columns can contain null values depending on where the event table resides. You can also set up the event table in its own database. Also. The event table needs to have the structure shown in Table 27 on page 250. Oracle Business Intelligence Server Administration Guide Version 10.Query Caching in the Oracle BI Server ■ Cache Event Processing with an Event Polling Table The use of event tables is one of the most accurate ways of invalidating stale cache entries. because there is a polling interval in which the cache is not completely up to date. It does. Polling Table Structure You can set up a physical event polling table on each physical database to monitor changes in the database. require the event table to be populated each time a database table is updated (refer to “Populating the Oracle BI Server Event Polling Table” on page 253). Setting Up Event Polling Tables on the Physical Databases This section describes how to set up the Oracle BI Server event polling tables on physical databases. and it is probably the most reliable method. The INSERT statements add one row to the event table each time a physical table is modified.3. however.

Event Polling Table Column Names Data Type CHAR or VARCHAR Description The name of the catalog where the physical table that was updated resides.1. set it to the null value. Otherwise. Table 27.2 . if the physical database name is 11308Production. The name has to match the name defined for the table in the Physical layer of the Administration Tool. set it to the null value. you can use any names you want. Populate the DatabaseName column only if the event table does not reside in the same database as the physical tables that were updated. Otherwise. set it to the null value. the polled rows in the event table has to contain SQL_Production as the database name.3. Event Table Column Name CatalogName DatabaseName CHAR or VARCHAR The name of the database where the physical table that was updated resides. Populate the SchemaName column only if the event table does not reside in the same database as the physical tables being updated. Other SchemaName CHAR or VARCHAR CHAR or VARCHAR Reserved for future enhancements. 250 Oracle Business Intelligence Server Administration Guide Version 10. and the database name that represents it in the Administration Tool is SQL_Production. This column must be set to a null value. Populate the CatalogName column only if the event table does not reside in the same database as the physical tables that were updated. For example. the order of the columns has to be the same as shown in Table 27 on page 250. This is the name of the database as it is defined in the Physical layer of the Administration Tool. Sample CREATE TABLE statements to create an event polling table are shown in “Sample Event Polling Table CREATE TABLE Statements” on page 251. Otherwise.Query Caching in the Oracle BI Server ■ Cache Event Processing with an Event Polling Table The column names for the event table are suggested. Values cannot be null. However. The name of the schema where the physical table that was updated resides. TableName CHAR or VARCHAR The name of the physical table that was updated.

2 25 1 . To allow Oracle BI Server to have write access to the event polling table but not to any other tables in a database. To make sure a unique and increasing value. This needs to be a key (unique) value that increases for each row added to the event table. specify the current timestamp as a default value for the column.Query Caching in the Oracle BI Server ■ Cache Event Processing with an Event Polling Table Table 27.1. specify DEFAULT CURRENT_TIMESTAMP for Oracle 8i. These CREATE TABLE statements create the structure required for an Oracle BI Server event polling table. there is changed data in the underlying databases. Values cannot be null. The following is the CREATE TABLE statement for SQL Server 7. When you set up multiple Oracle BI Servers. The server then invalidates any cache entries corresponding to the changed physical tables and periodically deletes obsolete rows from the event table. Event Table Column Name UpdateTime UpdateType INTEGER Specify a value of 1 in the update script to indicate a standard update. It resides in the same database as the physical tables that are being updated. Populate the privileged database with the event table. When there are rows in the event table. The next time it checks the event table. the table created is named UET. Applications add rows to the event table when database tables are modified (for example. The Oracle BI Server needs to have read and write permission on the event polling table. you need to create an event polling table for each one. but not to any tables that are used to answer user queries. perform the following tasks: ■ ■ ■ Create a separate physical database in the Physical layer of the Administration Tool with a privileged connection pool. The server reads the event table at specified intervals to look for changed data. Event Polling Table Column Names Data Type DATETIME Description The time when the update to the event table occurs. The Oracle BI Server will have write access to the event polling table. In these statements. For example.0: Oracle Business Intelligence Server Administration Guide Version 10. the process repeats. during a load operation).3. NOTE: A single event polling table cannot be shared by multiple Oracle BI Servers. Sample Event Polling Table CREATE TABLE Statements The following are sample CREATE TABLE statements for SQL Server 7. Assign a user to the connection pool that has delete privileges.0 and Oracle 8i.) Values cannot be null. (Other values are reserved for future use. NOTE: The column lengths need to be large enough to represent the object names in your repository.

. if you want to specify any explicit storage clauses. To make the polling table active 1 2 Import the table to the Physical layer. you need to add the appropriate clauses to the statements. Include it in the group of Oracle BI Server event polling tables using the Tools > Utilities > Oracle Event Tables menu item. perform the following steps from an open repository. SchemaName varchar(40) null. UpdateTime date DEFAULT SYSDATE not null. The Import dialog box appears.Query Caching in the Oracle BI Server ■ Cache Event Processing with an Event Polling Table // SQL Server 7. 3 Check the Tables option to import the table metadata. SchemaName varchar(40) null. Select the data source containing the event table to import. TableName varchar(40) not null. To import the polling table into the Physical layer. CatalogName varchar(40) null. Other varchar(80) DEFAULT NULL ). and then click OK. To import the table into the Physical layer 1 2 Select File > Import. DBName char(40) null. 252 Oracle Business Intelligence Server Administration Guide Version 10. You might need to modify these CREATE TABLE statements slightly for different versions of SQL Server and Oracle. TableName varchar(40) not null.2 . Additionally. Other varchar(80) null DEFAULT NULL ) The following is the CREATE TABLE statement for Oracle 8i: // Oracle 8i syntax create table UET ( UpdateType Integer not null.0 Syntax create table UET ( UpdateType Integer not null.1. CatalogName varchar(40) null. UpdateTime datetime not null DEFAULT CURRENT_TIMESTAMP. and set a polling interval.. Making the Event Polling Table Active After the table is created on the physical database.3. you can make it active in the Oracle BI Server. DBName char(40) null. or for other databases.

If the process of populating the event table is not done correctly. The repository will both read the table and delete rows from it. If you want a very short polling interval. Oracle Business Intelligence Server Administration Guide Version 10. The default value is 60 minutes. NOTE: You should not set the polling frequency to less than 10 minutes. as there is no reason to cache results from an event polling table. NOTE: Be sure the data source specified for the event table has read and write access to the event table. the table properties change. This can be done from the load script. repeat this procedure for each event table. the Oracle BI Server cache purging will be affected. Troubleshooting Problems with an Event Polling Table If you experience problems with cache polling.3. Populating the Oracle BI Server Event Polling Table The Oracle BI Server does not populate the event polling table. the server assumes the information in the polling table to be correct and up to date. Select the option Oracle BI Event Tables from the list of options. using database triggers (in databases that support triggers). consider marking some or all of the tables noncachable. the load process is modified to insert a row into the polling table each time a table is modified. you can search the Oracle BI Server activity logs for any entries regarding the server’s interaction with the event table.Query Caching in the Oracle BI Server ■ Cache Event Processing with an Event Polling Table 4 Navigate to the event polling table. Registration as an event table removes the option to make the table cachable. When a table has been registered as an Oracle BI Server event table. To mark the table object as an Event Polling Table 1 2 3 4 5 Click on the Tools > Utilities menu item. select the table and either click the Import button or drag and drop it into the Physical layer. After one or more polling tables are present in the Physical layer. Specify the polling frequency in minutes. This imports the event table to the Physical layer. typically. Click Execute. so it needs write permission. from an application.1.2 25 3 . you need to include them in the group of event polling tables. If you have multiple event polling tables. The event table is populated by inserting rows into it each time a table is updated. Select the table to register as an Event Table and click the >> button. and click OK. or manually. This process is normally set up by the database Administrator. Event tables do not need to be exposed in the Business Model and Mapping layer.

cache entries that reference that object or variable may no longer be valid. and when you are switching between repositories. any changes you make that will affect cache entries automatically result in a purge of all cache entries that reference the changed objects. 254 Oracle Business Intelligence Server Administration Guide Version 10. Switching Between Repositories If you intend to remove a repository from the configuration of the Oracle BI Server. Any changes made to a business model in the Business Model and Mapping layer will purge all cache entries for that business model.log file using the Oracle BI Administrator user ID unless the logging level for the Oracle BI Administrator is set to 0. There are three scenarios to be aware of—when the changes occur in online mode. Because the repository is not loaded by the server during offline mode edits. The default location for the NQQuery. there might be invalid entries when the repository is next loaded.3. refer to “Query Caching in the Oracle BI Server” on page 229. Log entries are self-explanatory and can be viewed using a text editor. Failure to do so will result in a corrupted cache. When the Oracle BI Server polls the event table. The server therefore does not automatically purge the cache after offline changes. For example. Offline Mode When you modify an Oracle BI repository in offline mode.log file is the Log folder in the Oracle BI Server software installation folder (\OracleBI). refer to “Purging Cache” on page 256. These changes might result in the need to purge the cache. the changes can have implications for entries that are stored in the cache. when they occur in offline mode.log file logs activity automatically about the Oracle BI Server. ■ Making Changes to a Repository When you modify Oracle BI repositories. make sure to purge the cache of all cache entries that reference the repository. The default location for this file is the Log folder in the Oracle BI Server software installation folder (\OracleBI\Log). it will log the queries in the NQQuery. For information. Unless you are sure that there are no entries in the cache that are affected by your offline changes. For example. If you do not purge the cache. You should set the logging level to 2 for the Oracle BI Administrator user ID to provide the most useful level of information. all cache entries that reference that table are purged upon check in. you might make changes that affect queries stored in the cache and render those cached results obsolete. Online Mode When you modify an Oracle BI repository in online mode.1. the server has no way of determining if the changes made affect any cached entries. you should purge the cache for any business model you have modified.2 . if you change the definition of a physical object or a dynamic repository variable.Query Caching in the Oracle BI Server ■ Making Changes to a Repository ■ The NQServer. if you delete a physical table from a repository. For more information about userlevel logging. The purge occurs when you check in the changes.

in seconds. Full size is the maximum size used. The last time the cache entry’s result set satisfied a query. NOTE: The value stored in the cache object descriptor on disk is in units of milliseconds. The size of each row (in bytes) in this cache entry’s result set. Table 28. The number of times this cache entry’s result set has satisfied a query (since Oracle BI Server startup). To open the Cache Manager ■ In the Administration Tool toolbar. considering variable length columns. as well as information about individual entries in the query cache associated with the open repository. Information may include the options in Table 28 on page 255.. The value is converted to seconds for display purposes. or purging them.. compression algorithm. The time. the last used time may temporarily have a stale value—a value that is older than the true value. with the total number of entries shown in the view-only field at the top. The actual size of the result set will be smaller than Full size. (After an unexpected shutdown of the Oracle BI Server. and other factors. or Tools > Options > Cache Manager tab from the Administration Tool). from the Cache Manager. Select the Cache tab on the left explorer pane to view the cache entries for the current repository.Query Caching in the Oracle BI Server ■ Using the Cache Manager Using the Cache Manager The Cache Manager provides Oracle BI Administrators the capability of viewing information about the entire query cache. The number of rows generated by the query. and users. It also provides the ability to select specific cache entries and perform various operations on those entries. Option Cache Options Description The name of the business model associated with the cache entry. business models. The ID of the user who submitted the query that resulted in the cache entry. such as viewing and saving the cached SQL call. needed to create the result set for this cache entry. Business model Column count Created Creation elapsed time Full size Last used Query Server Row count Row size SQL Use count User Oracle Business Intelligence Server Administration Guide Version 10.me. The time the cache entry’s result set was created.) The Oracle BI Server that serviced the query. The associated cache entries are reflected in the right pane. The SQL statement associated with this cache entry. in seconds.2 25 5 .1.3. needed to create the result set for this cache entry. select Manage > Cache. The number of columns in each row of this cache entry’s result set. The cache entry information and its display sequence is controlled by your Options settings (select Edit > Options.

Amount of space still available for cache storage use Amount of space used on disks containing cache related files Maximum allowable number of entries in cache Maximum allowable number of rows per cache entry result set Number of entries currently in cache Number of queries not satisfied from cache since startup of Oracle BI Server Number of queries satisfied from cache since startup of Oracle BI Server The total amount of space. Displaying Global Cache Information Select Action > Show Info. The current number of entries in your global cache.INI file.. The maximum number of rows allowed for each cache entry’s result set. You can purge cache entries in the following ways: 256 Oracle Business Intelligence Server Administration Guide Version 10. in megabytes. Cache hits.Query Caching in the Oracle BI Server ■ Using the Cache Manager Expand the repository tree to display all the business models with cache entries. Table 29 on page 256 describes the information that appears in the Global Cache Information window. Cache misses. since the last time the Oracle BI Server was started. If the DSN is clustered. The maximum number of entries that may be in your cache.INI file. as well as the current global cache information. The right pane displays only the cache entries associated with the selected item in the hierarchical tree.2 . from the MAX_CACHE_ENTRIES parameter in the NQSConfig.1. Column Global Cache Information Description The amount of space. press F5. With the Cache Manager as the active window. in megabytes. Table 29. used on the disk containing cache-related files (not just space used for the cacherelated files). still available for cache storage. These entries may relate to multiple repositories.3. or select Action > Refresh to refresh the display. information about all repositories in the cluster will be displayed. since the last time the Oracle BI Server was started. and expand the business models to display all users with cache entries. from the MAX_ROWS_PER_CACHE_ENTRY parameter in the NQSConfig. to display global cache information. Purging Cache Purging cache is the process of deleting entries from the query cache.. This retrieves the current cache entries for the repository you have open.

2 25 7 . you can purge: ■ ■ ■ ■ All cache entries for all tables associated with one or more selected databases. you can purge: ■ ■ ■ One or more selected cache entries associated with the open repository. schema or tables to purge from the explorer tree in the left pane. Select Manage > Cache to open the Cache Manager dialog box. In Cache mode. Navigate the explorer tree to display the associated cache entries in the right pane. In Physical mode.Query Caching in the Oracle BI Server ■ About the Refresh Interval for XML Data Sources ■ ■ ■ ■ Manually. Select Cache or Physical mode by selecting the appropriate tab in the left pane. One or more selected cache entries associated with a specified user within a business model. by setting the Cache Persistence Time field in the Physical Table dialog box for a particular table. and then select Edit > Purge to remove them. Automatically. All cache entries for all tables associated with one or more selected catalogs. refer to “Using XML as a Data Source for the Oracle BI Server” on page 335. select the database. select the entries to purge from those displayed in the right pane. catalog. using the Administration Tool Cache Manager facility (in online mode). For more information. All cache entries for all tables associated with one or more selected schemas. as the cache storage space fills up. All cache entries associated with one or more selected tables. In Physical mode. Select the cache entries to purge. Oracle Business Intelligence Server Administration Guide Version 10.3. ■ ■ In Cache mode. About the Refresh Interval for XML Data Sources This section provides information about the refresh interval for XML data sources. One or more selected cache entries associated with a specified business model. by setting up an Oracle BI Server event polling table. Automatically. To purge the cache manually with the Cache Manager facility 1 2 3 4 5 Use the Administration Tool to open a repository in online mode. Select Action > Refresh or press F5 to refresh your cache display. Purging deletes the selected cache entries and associated metadata. Automatically.1.

the gateway will refresh when it detects that the interval has expired. For URLs that reside on a local or network drive. The refresh interval setting specifies the time interval after which the Oracle BI Server XML Gateway connection will be refreshed.3. ■ ■ For URLs that begin with http:// or https://. the gateway will refresh when the interval has expired and the system detects that the URLs have been modified. Setting a refresh interval for XML data sources is analogous to setting cache persistence for database tables.2 .Query Caching in the Oracle BI Server ■ About the Refresh Interval for XML Data Sources Typically. XML data sources are updated frequently and in real time. 258 Oracle Business Intelligence Server Administration Guide Version 10. The default interval setting is Infinite.1. This refresh interval is specified on the XML tab of the Connection Pool dialog box. meaning that the XML data source is not automatically refreshed. rather than using results in cache. The refresh interval is a time interval after which the XML data sources are to be queried again directly.

This procedure applies to Windows-based operating systems. select the machine on which the Oracle BI Server is running. The first DSN Configuration screen appears. 4 5 6 Type a name for the data source in the Name field. If you are running Windows 2000 or XP. type the name in the Server field. click the System DSN tab. Select the Oracle BI Server driver from the Create New Data Source dialog. If this data source will not participate in a cluster.3. the Data Sources (ODBC) icon is available under Administrative Tools. and then click Add. Only the Oracle BI Presentation Services client can connect directly to Oracle BI Server in a non-English environment. This needs to be the NetBIOS name (computer name) of the machine. Oracle Business Intelligence Server Administration Guide Version 10. and then double-click the ODBC Data Sources icon.1. This section contains the following topics: ■ ■ ■ ■ ■ ■ ■ Configuring Oracle BI ODBC Data Source Names (DSNs) on page 259 ODBC Conformance Level on page 261 Third-Party Tools and Relational Data Source Adapters on page 262 Importing Metadata on page 263 Exchanging Metadata with Databases on page 263 Using Materialized Views in the Oracle Database with Oracle BI on page 273 Using IBM DB2 Cube Views with Oracle BI on page 277 Configuring Oracle BI ODBC Data Source Names (DSNs) In a non-English environment. 2 3 In the ODBC Data Source Administrator dialog box. (Optional) Type a description in the Description field. If the server name does not appear in the drop-down list. in the Server field at the bottom of the screen.12 Connectivity and Third-Party Tools in Oracle BI Server The Oracle BI Server provides the functionality for you to connect to it through many client tools and applications. To create a new data source 1 Open the Windows ODBC Control Panel applet by selecting Start > Settings > Control Panel. and then click Finish.2 25 9 . you cannot use a direct ODBC connection to Oracle BI Server.

type a valid user ID and password for the repository to which you want the data source to connect. leave this field set to its default value and define a Windows system environment variable named NQUIRE_DCOM to force the usage of DCOM.Connectivity and Third-Party Tools in Oracle BI Server ■ Configuring Oracle BI ODBC Data Source Names (DSNs) 7 If this data source is to participate in a cluster. You will then log into the Oracle BI Server with the logon ID of your Windows account. For sites already running the Oracle BI Server that want to continue to use DCOM until support is discontinued.INI file. you will not have to type your logon information each time you connect.2 . correct any error identified in the message and test the connection again.) 11 If you want to connect to a repository other than the default repository. leave this field blank. 260 Oracle Business Intelligence Server Administration Guide Version 10. and the Server field to become inactive. The computer name must be unique from that of the primary Cluster Controller. If you change the port number in the configuration file. If you want to save your logon ID in the repository.INI file) to which you want to connect in the field below the check box. If the test is not successful.INI file). This port number should match the port number specified in the parameter RPC_SERVICE_OR_PORT in the Server section in the NQSConfig. click the Advanced tab. or to the first repository listed if none of the entries is marked as the default. click Test Connect. (To define a system environment variable. select the option Change the default repository to. Support for DCOM will be discontinued in a future release.3. If this option is not selected. If you are using Windows operating system authentication. c d 8 In the next DSN Configuration screen.INI file. the data source will connect to the repository marked as the default repository in the NQSConfig. If a secondary Cluster Controller has been specified (from the parameter SECONDARY_CONTROLLER in the NQClusterConfig. b Type the name of the machine that is specified as the primary Cluster Controller (from the parameter PRIMARY_CONTROLLER in the NQClusterConfig.1. A message indicates if the connection was tested successfully. select System from the Control Panel.INI file). do the following: a Select the option Is this a Clustered DSN? This causes the fields Primary Controller and Secondary Controller to become active. The default port is 9703. NOTE: The default client/server communication method for the Oracle BI Server has changed from Distributed component object model (DCOM) to TCP/IP. 9 10 In the Port field. and then click the Environment Variables button to open the Environment Variables dialog box. This needs to be the NetBIOS name (computer name) of the machine. type the name of the machine in the Secondary Controller field. remember to reconfigure any affected ODBC data sources to use the new port number. Set the variable value to 1. and then type the logical name of the repository (as it appears in the NQSConfig. check the option Save login ID. To test the connection to the Cluster Controller. specify the TCP/IP port the Oracle BI Server is using for client/server communications. If you check this option.

as described in “Creating or Changing Connection Pools” on page 67. The database-specific user IDs and passwords allow privileged users to connect to the underlying databases at the level of authority granted to those users in the databases. You can also specify user IDs and passwords for the underlying databases to which the Oracle BI Server connects. those are used to connect to the databases if user-specific database logon information is configured in the connection pools. For the DSN used by Oracle BI Presentation Services. The new password is stored in encrypted form in the repository. 14 To change the default catalog. 13 Click Next to advance to the next window. you must have entered your logon information and selected the option Connect to Oracle BI in the previous screen. select the option Change the default catalog to. To change the password.3. you can change the password for the Oracle BI user the DSN logs in as (if the server is running in a writable mode). If you specify database user IDs and passwords. ODBC Conformance Level The Oracle BI Server supports the following ODBC calls from client applications: ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ SQLAllocConnect SQLAllocEnv SQLAllocStmt SQLBindCol SQLCancel SQLColumns SQLConnect SQLDescribeCol SQLDisconnect SQLDriverConnect SQLError SQLExecDirect SQLExecute Oracle Business Intelligence Server Administration Guide Version 10.Connectivity and Third-Party Tools in Oracle BI Server ■ ODBC Conformance Level 12 Select the option Connect to Oracle BI Server to obtain default settings for additional configuration. and then type the name of the catalog in the field below the check box. The default catalog is the catalog folder that appears at the top of the Presentation layer in the Administration Tool. If you do not select this option. The setup will attempt to connect to the server to obtain information about the business models in the repository. 15 At this point. it is better to leave this check box clear with the drop-down box showing no entry.2 26 1 . you can still configure the DSN by manually entering the information in the next configuration screen.1.

Oracle BI ODBC supports asynchronous and synchronous processing and cancellation. and key set driven cursors. dynamic. Third-Party Tools and Relational Data Source Adapters The Oracle BI Server allows connectivity between a wide variety of client tools and a wide variety of data sources. For information. refer to System Requirements and Supported Platforms.3. 262 Oracle Business Intelligence Server Administration Guide Version 10.1. forward only.Connectivity and Third-Party Tools in Oracle BI Server ■ Third-Party Tools and Relational Data Source Adapters ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ SQLExtendedFetch SQLFetch SQLFreeConnect SQLFreeEnv SQLFreeStmt SQLGetConnectOption SQLGetCursorName SQLGetData SQLGetFunctions SQLGetInfo SQLGetStmtOption SQLGetTypeInfo SQLColAttributes SQLNumResultCols SQLPrepare SQLRowCount SQLSetConnectOption SQLSetStmtOption SQL Tables Oracle BI ODBC supports full scrollable cursors with static.2 .

then you can use these databases to enhance the data warehouse performance and functionality of queries that run on the Oracle BI Server.1.Connectivity and Third-Party Tools in Oracle BI Server ■ Importing Metadata Importing Metadata You can import metadata from a data source to an Oracle BI repository. The metadata is used to establish physical table information in the Physical layer of the Administration Tool. IBM DB2 Cube Views to create materialized query tables (MQTs). Both of these tools preaggregate the relational data and improve query performance. Exchanging Metadata with Databases If your organization has installed either an Oracle Database or an IBM DB2 Database. Finding Information on Metadata Exchange The sections in the following list provide information on exchanging metadata: ■ ■ Using Materialized Views in the Oracle Database with Oracle BI on page 273 Using IBM DB2 Cube Views with Oracle BI on page 277 The “Generating the Import File” section provides information that applies to both types of databases.2 26 3 . This makes it much easier to include columns involving complex aggregation and calculation rules in queries and reports. In the IBM DB2 Database. if your organization is currently using query and reporting tools. Oracle Business Intelligence Server Administration Guide Version 10. you allow the database to accelerate the performance of data warehouse queries by using the following tools: ■ ■ In the Oracle Database. The Presentation layer allows you to configure the presentation of a business model to be consistent with the rules and conventions of your tools to take advantage of the Oracle BI Server’s analytical engine and data abstraction. By exchanging Oracle BI metadata from the Oracle BI Server with the Oracle Database or with the IBM DB2 Database. Metadata imports to an Oracle BI repository have to occur through an ODBC or native database connections to the underlying data sources. Metadata can also be imported from software such as Microsoft Excel through an ODBC connection. For the metadata import procedure. using the Oracle BI Server as a data source will make these tools more valuable and will simplify the work entailed when using them. Oracle Database Summary Advisor to create materialized views and index recommendations on optimizing performance. Also. Connecting with a query tool is a matter of configuring a data source using the Oracle BI ODBC driver and then using the Oracle BI DSN to connect to a repository from the query tool. refer to “Process of Creating the Physical Layer from Relational Data Sources” on page 56.3. Using Query and Reporting Tools You can connect to the Oracle BI Server with a wide variety of ODBC-compliant query and reporting tools.

Table 30.3.2 .exe.1. read “Finding Information on Metadata Exchange” on page 263. User name that will allow access to the repository. Use the full path if the file is not in the current directory. The command-line executable is named SAMetaExport. Before reading this section. If the repository password is empty. Quotation marks are required for the file name and path only if the file path is in long format or has spaces. Parameter -r -u -p -f -t ORACLE or DB2 264 Oracle Business Intelligence Server Administration Guide Version 10. Indication for either the Oracle or IBM DB2 Database. For more information about the input file. This section contains the following topics that are common to the two generators: ■ ■ ■ ■ ■ Running the Generator on page 264 About the Metadata Input File on page 265 About the Output Files on page 265 Troubleshooting Errors from the Generator on page 266 Metadata Conversion Rules and Error Messages on page 267 Running the Generator The Oracle Database Metadata Generator and the DB2 Cube Views Generator are invoked from the command line or embedded in a batch file. Password for the user name. and has the following syntax: SAMetaExport -r "PathAndRepositoryFileName" -u <UserName> -p <Password> -f "InputFileNameAndPath" [-t “ORACLE” or “DB2”] Table 30 contains descriptions of the parameters in the command-line executable file. refer to About the Metadata Input File on page 265. You specify input files so that you do not have to type all the required information at the command line.exe Definition Repository file name and full path User name Password Input file name and full path Additional Information Quotation marks are required for the file name and path only if the file path is in long format or has spaces. You can omit this parameter because the database type is automatically detected based on information in the repository. Use the full path if the file is not in the current directory. and so that you can type international characters. then do not use the password parameter.Connectivity and Third-Party Tools in Oracle BI Server ■ Exchanging Metadata with Databases Generating the Import File Both the Oracle Database Metadata Generator and the DB2 Cube Views Generator create the files that are needed to import metadata from Oracle BI into the Oracle Database Summary Advisor or an IBM DB2 Database. Parameters for SAMetaExport.

refer to “About the Output Files” on page 265. then an error message is displayed.Connectivity and Third-Party Tools in Oracle BI Server ■ Exchanging Metadata with Databases About the Metadata Input File The input file is a text file that contains the parameters that are described in Table 31. then an error message is displayed. an error message is displayed. If the folder does not exist when you run the Oracle Database Metadata Generator. it will be created. The file name includes the name of the business model in the Cube Model.3. then it eliminates metadata from all databases other than the one specified here. When the physical database is not found in the repository. When the business model derives from more than one database. For more information about the output files. as described in the following list: ■ Oracle Database Metadata Generator: Generates a SQL file that is encoded in UTF8 and stored in the specified output folder.1.sql. The user name of the user whose visibility needs to be duplicated for the metadata export. The name of the database in the physical layer of the Oracle BI repository that contains the metadata that you want to export. If the user is not found in the repository.2 26 5 . The full path and file name of the folder to which the SQL file will be written. DB2 Cube Views Generator: Generates the following files in the specified output folder: ■ Oracle Business Intelligence Server Administration Guide Version 10. If the business model is not found in the repository. This cannot be empty. such as my_business_model. Input File Name BUSINESS_MODEL PHYSICAL_DATABASE RUN_AS_USER OUTPUT_FOLDER The following text shows a sample metadata input file: BUSINESS_MODEL= "Paint" PHYSICAL_DATABASE RUN_AS_USER = ="SQL_Paint" "Administrator" OUTPUT_FOLDER = "C:\OracleBI" About the Output Files Each Generator creates different types of output files. Table 31. Cube Metadata Input File Parameters Description The name of the business model in the logical layer of the Oracle BI repository that contains the metadata that you want to export.

The business model name is correct.2 . <database_name>. <model_name>.xml ■ A SQL file that contains the alias generation DLL. One XML file is created for each specified business model. The log file specified in the NQSConfig.sql. The following is the syntax of the alias-SQL file name: [BusinessModelNameWithNoSpaces]-alias. The alias file contains SQL commands that will create the aliases in the DB2 database.INI file might contain the wrong path. The repository name might be incorrect.Connectivity and Third-Party Tools in Oracle BI Server ■ Exchanging Metadata with Databases ■ XML files (encoded in UTF8). Additionally. is invalid. SalesResults-alias. ■ Repository. The specified username or password is incorrect. The following is the syntax of the XML file name: [BusinessModelNameWithNoSpaces].sql Troubleshooting Errors from the Generator Error messages indicate that the Generator was unable to complete some or all of its tasks. objects in the repository will be mapped to similar objects in the IBM Cube Views metadata. The user name is incorrect. ■ Path: "<path_name>" is invalid. ■ Business Model. the user might not have write permissions to that folder. The path or file name is incorrect. The name of the SQL file will match the business model name (without spaces). After starting the Generator. For a list of objects that will not be converted. or the user might not have permission to read it. or the disk could be out-of-space. For example. It contains all objects that were converted to cubes. <user_name>. The physical database name is incorrect. <repository_name>. For example. is invalid or corrupt.3. you might observe the following error messages: ■ Unable to write to Log file: <log_file_name>. 266 Oracle Business Intelligence Server Administration Guide Version 10. The name of the XML file will match the business model name (without spaces). A SQL file is created for each specified business model only if aliases exist in the physical layer databases that are referenced in the specified business model.xml. it might not exist in the given path. ■ Authentication information provided is invalid. ■ Physical Database. followed by the SQL extension. SalesResults. is invalid. followed by the XML extension. is invalid. refer to “Metadata Conversion Rules and Error Messages” on page 267. ■ Run_as_user.1.

it also maps the metadata objects in the Oracle BI repository to similar objects in the metadata of the Oracle Database or the IBM DB2 Database. This section explains the rules used to identify Oracle BI metadata that cannot be translated (converted) into either SQL or XML format.INI file. Dimensional metadata in the SQL or XML file will be generated at the logical fact table source level.Connectivity and Third-Party Tools in Oracle BI Server ■ Exchanging Metadata with Databases Metadata Conversion Rules and Error Messages When the Generator creates the output files.1. Tables that are opaque views are not considered. the Generator writes the error messages and the metadata that violated the rule to a log file.2 26 7 . Invalid Oracle BI repository metadata elements will not be converted to cubes in the SQL or XML file. When a rule is violated. refer to Oracle Business Intelligence Infrastructure Installation and Configuration Guide. These rules are necessary because the Oracle Database and IBM Cube Views do not support some of the metadata constructs that are allowed by Oracle BI. Conversion Rules for Oracle Database The following list provides the rules for converting Oracle BI metadata into objects in the Oracle Database: ■ ■ ■ Attributes that contain expressions in the logical table cannot be exported.3. You specify the name of this log file in the LOG_FILE_NAME parameter in the NQSConfig. If a logical fact table source has an invalid logical dimension table source. then all the logical dimension table sources that are linked to it will also be invalidated. Oracle Business Intelligence Server Administration Guide Version 10.INI file. If the logical fact table source is invalid. Tables joined using complex joins are not considered. then the logical dimension table source will be invalidated. For information about parameters in the Cube Views section of the NQSConfig.

which prevents the Attr2 and Attr3 attributes in tables T2 and T3 from being exported. Therefore. Consider the example that is shown in the following figure of a repository that contains a dimension called Source A and a dimension called Source B. usually the join that is encountered first. the joins to T2 and T3 are lost. The Oracle Database prohibits the use of columns as keys in multiple levels.3. This prohibition requires the Oracle Database Metadata Generator to eliminate one of the two joins.Connectivity and Third-Party Tools in Oracle BI Server ■ Exchanging Metadata with Databases ■ Columns used as part of a key in one level cannot be used as part of another level key. The T24Key is used in both the join to the T2 table (T24Key and T2Key) and in the join to table T4 (T24Key and T4Key).2 . 268 Oracle Business Intelligence Server Administration Guide Version 10. The Source A dimension shares the T1 table with Source B.1. because the T1-T4 join was encountered first.

If the dimension physical tables are connected through a complex join. The error messages help you determine why a particular Oracle BI metadata object was not exported to the XML file. %qn has an outer join %qn between physical tables %qn and %qn. the logical dimension table source containing that table is invalidated. Oracle Business Intelligence Server Administration Guide Version 10. then that logical fact table source is invalidated and all logical dimension table sources linked to this source will also be invalidated. If the logical fact table source has an outer join linkage. that join is not supported and the dimension table source is invalidated. A complex join is defined as any join between two tables that do not have a foreign key relationship.Connectivity and Third-Party Tools in Oracle BI Server ■ Exchanging Metadata with Databases Conversion Rules for IBM DB2 Database Table 32 lists the rules used to validate Oracle BI repository metadata elements.1. Table 32. When the physical fact table is generated by a SQL select statement. Rule Validation Rules for Metadata Elements Message [Fact Logical Table Source]Complex Physical Joins not supported %qn has a complex Join %qn between Physical Tables %qn and %qn Explanation If the physical fact tables are connected through complex joins.2 26 9 . %qn has a complex Join %qn between Physical Tables %qn and %qn. then that join is not supported. and an explanation of what caused the rule violation.3. OuterJoinFactR ule [Fact Logical Table Source] Physical Outer Joins not supported. All logical dimension table sources connected to this logical fact table source are also invalidated. OpaqueViewDi mRule [Dimension Logical table Source] Physical SQL Select Statements not supported. %qn uses the SQL Select Statement %qn. error messages that are written to the log file if the rule is violated. This construct allows subquery processing. If a dimension physical table and a fact physical table are connected through a complex join. the logical fact table source that contains the table is invalidated. ComplexJoinFa ctsRule ComplexJoinDi msRule [Dimension Logical Table Source]Complex Physical Joins not supported %qn has a complex Join %qn between Physical Tables %qn and %qn ComplexJoinFa ctDimRule [Fact Logical Table Source -> Dimension Logical Table Source] Complex Physical Joins not supported. OpaqueViewFac tRule [Fact Logical table Source] Physical SQL Select Statements not supported. %qn uses the SQL Select Statement %qn. the join is not supported. When a physical dimension table is generated by a SQL select statement.

MIN. Explanation If the logical dimension table source has an outer join linkage. dimtable). MAX. If the dimension table source uses a WHERE clause to filter the data that is loaded. then this table source is invalidated. the dimension table source is invalidated. InvalidColumnL evelRule [Level] Some columns that are part of the Primary Level Key are invalid. HiddenManyMa nyRule [Fact Logical Table Source -> Dimension Logical Table Source] Join between (physical or logical?) fact and dimension is not on the most detailed table. If a physical fact table is linked to two dimension tables from the same dimension source (if the fact table is not exclusively linked to the most detailed table in the table source). TwoJoinFactDi mRule [Fact Logical Table Source -> Dimension Logical Table Source] Multiple Joins between sources not supported. %qn has a where condition %s. AVG. CountDistMeas ureRule [Column] COUNT-DISTINCT Aggregation Rule not supported. %qn uses an aggregation rule of %s which is not supported. %qn.3. this table source is invalidated. %qn has %qn as part of its primary key. 270 Oracle Business Intelligence Server Administration Guide Version 10. This is related to the TwoJoinFactDimRule. that logical dimension table source is invalidated.Connectivity and Third-Party Tools in Oracle BI Server ■ Exchanging Metadata with Databases Table 32. The supported aggregations are SUM. the dimension table source is invalidated. OuterJoinDimR ule WhereClauseFa ctRule [Fact Logical Table Source] WHERE clauses are not supported. facttable. If the fact table is joined to a dimension table that is not the most detailed table in the table source. when %qn has already been marked invalid. COUNT-DISTINCT aggregation is not supported. %qn has a where condition %s. %qn between %qn and %qn is not on the most detailed table %qn {Join name.2 . COUNT. %qn has an outer join %qn between physical tables %qn and %qn. WhereClauseDi mRule [Dimension Logical Table Source] WHERE clauses are not supported. and COUNT. %qn and %qn have at least the following joins : %qn. Rule Validation Rules for Metadata Elements Message [Dimension Logical Table Source] Physical Outer Joins not supported. STDDEV. If the fact table source uses a WHERE clause to filter the data that is loaded.1. %qn uses an aggregation rule of %s which is not supported. COUNT-DISTINCT. COUNT-DISTINCT aggregation is not supported. ComplexMeasu reRule [Column] Complex Aggregation Rules not supported.

Found at least the following join paths: (%qn->%qn..2 27 1 . NoInActiveFact Rule NoInActiveDim Rule NoAttributeInF actRule [Fact Logical Table Source] Fact Logical Table Source is not marked Active. [Dimension Logical Table Source] Dimension Logical Table Source is not marked Active.).. A fact that has more than one table that is the most detailed table. No measures in the dimension source. No join paths found between %qn and %qn (both physical table names). %qn has at least the following most detailed tables : %qn. ManyMDTinFact Rule [Fact Logical Table Source] Fact Logical Table Source must have a unique most detailed table. VariableBasedC olumnRule OneFactToMany DimRule [Fact Logical Table Source -> Dimension Logical Table Source] There must be a unique join path between the most detailed tables in the (logical or physical?) fact and the dimension.. Rule Validation Rules for Metadata Elements Message [Logical Table Source -> Column] Column uses a Variable in the Expression Column %qn uses a variable in its mapping. NoMeasureFact Rule [Fact Logical Table Source] Fact Logical Table Source does not have any Measures.%qn. A fact source is not active..Connectivity and Third-Party Tools in Oracle BI Server ■ Exchanging Metadata with Databases Table 32.) Same as in TwoJoinFactDimRule or HiddenManyManyRule. Oracle Business Intelligence Server Administration Guide Version 10. A fact table does not have any measures because all the measures have been invalidated.1. %qn in a dimension source %qn has an aggregation rule. No attributes in the fact source. [Fact Logical Table Source -> Column] Attribute found in Fact. The logical column uses repository and session variables in the expression. %qn does not have any deployable measures... Explanation COUNT-DISTINCT aggregation is not supported. A dimension source is not active. NoMeasureInDi mRule [Dimension Logical Table Source -> Column] Measure found in Dimension. (%qn->%qn. %qn in a fact source %qn does not have an aggregation rule.3.

A fact physical table can contain only one primary key.Connectivity and Third-Party Tools in Oracle BI Server ■ Exchanging Metadata with Databases Table 32. IBM Cube Views does not accept any unique keys to be used for foreign joins and always requires the primary key. It is joined to another fact physical table using a different unique key and that join is invalid. %qn is not accessible to the run_as_user %qn due to visibility rules. The attribute contains an expression not supported by IBM Cube Views. A column does not have visibility for this user. %qn has expression %s which is not supported.2 . 272 Oracle Business Intelligence Server Administration Guide Version 10. IBM Cube Views does not accept any unique keys to be used for foreign joins and always requires the primary key.1. VisibleColumns AttrRule VisibleColumns MeasRule [Column] -> The run_as_user does not have visibility to this Logical Column. CURRENT_DATE). It is joined to a dimension physical table using a different unique key and is invalid. MultiplePrimary KeysDimRule [Dimension Logical Table Source] A Join uses an alternate key in the Dimension Logical Table Source. This includes metadata expressions that use DateTime functions (for example. NotDB2Express ionAttrRule [Dimension Logical Table Source -> Column] The Column contains an Expression not supported. Explanation A column does not have visibility for this user. IBM Cube Views does not accept any unique keys to be used for foreign joins and always requires the primary key. A fact physical table can contain only one primary key. %qn between %qn and %qn in %qn uses the alternate key %qn. Rule Validation Rules for Metadata Elements Message [Column] -> The run_as_user does not have visibility to this Logical Column.3. MultiplePrimary KeysFactRule [Dimension Logical Table Source] A Join uses an alternate key in the Dimension Logical Table Source. %qn is not accessible to the run_as_user %qn due to visibility rules. %qn between %qn and %qn in %qn uses the alternate key %qn. A dimension physical table can contain only one primary key. %qn between %qn and %qn for sources %qn and %qn uses the alternate key %qn. MultiplePrimary KeysFactDimRu le [Fact Logical Table Source -> Dim Logical Table Source] A Join uses an alternate key between the Logical Table sources. It is joined to another dimension physical table using a different unique key and that join is invalid.

Using Materialized Views in the Oracle Database with Oracle BI This section explains how to export metadata from Oracle BI into the Oracle Database Summary Advisor and create materialized views using the Oracle Database Metadata Generator. NotDB2Express ionMeasRule NoAttributeDim Rule [Dimension Logical Table Source] Dimension Logical Table Source does not have any attributes visible to the run_as_user. This section contains the following topics: ■ ■ About Using Oracle Database Summary Advisor with Materialized Views on page 273 Process of Deploying Metadata for Oracle on page 274 About Using Oracle Database Summary Advisor with Materialized Views This feature enhances the data warehouse performance and functionality of a database. Oracle Database Metadata Generator works as a metadata bridge to convert the Oracle BI proprietary metadata into a SQL file that contains PL/SQL commands to generate dimensions in the Oracle Database Summary Advisor.Connectivity and Third-Party Tools in Oracle BI Server ■ Using Materialized Views in the Oracle Database with Oracle BI Table 32.. you use a tool such as Oracle Business Intelligence Server Administration Guide Version 10. the Oracle Database routes queries to tables that hold materialized views when possible. %qn can not be queried by user %qn since none of its attributes are visible.3. Before reading this section. %qn has expression %s which is not supported. it accelerates data warehouse queries by using more efficient Oracle materialized views. When processing queries. Because these tables of materialized views are smaller than the underlying base tables and the data has been preaggregated. Additionally. After converting metadata into a SQL file. A dimension does not have any attributes. Once the metadata is stored in the Oracle Database Summary Advisor. These materialized views preaggregate the relational data and improve query performance.1. the queries that are rerouted to them might run faster. CURRENT_DATE).2 27 3 . This includes metadata expressions that use DateTime functions (for example. Explanation A measure contains an expression not supported by IBM Cube Views. read “Exchanging Metadata with Databases” on page 263. It allows the Oracle Database Summary Advisor to store metadata about the logical relationships of the data that resides in the database. the database administrator can optimize the database objects and improve query performance. Rule Validation Rules for Metadata Elements Message [Fact Logical Table Source -> Column] The Column contains an Expression not supported.

You can use this feature with Oracle Database 9i and higher. you create materialized views. Before executing the SQL file for importing into the Oracle Database Summary Advisor. Databases. After importing the metadata. After you execute the SQL file. Dimensions. which are used by to optimize incoming application queries. ensure that you are familiar with Oracle Database import tools. You might see error messages if the dimensions already exist or if the database schema differs from that in the RPD file. Refer to Oracle Database documentation for information. Warehouse. refer to Oracle Database documentation. you might need to perform the following actions: ■ No incremental metadata changes are allowed. Schema changes require that you manually delete cube model metadata in the Oracle Database and convert the Oracle BI metadata again. refer to System Requirements and Supported Platforms. regenerate the SQL file from the Oracle BI repository. When the script executes successfully. you can see the dimensions that were created by using the database web console or the Oracle Enterprise Manager Console.3. Before deploying metadata. ■ 274 Oracle Business Intelligence Server Administration Guide Version 10. For more information. databasename. To deploy cube metadata.Connectivity and Third-Party Tools in Oracle BI Server ■ Using Materialized Views in the Oracle Database with Oracle BI SQL*Plus to import the translated metadata into the Oracle Database Summary Advisor and store it in metadata catalog tables. The Oracle BI Administrator must manually delete the cube model using Oracle Enterprise Manager Console. You cannot delete metadata using the Oracle Database Metadata Generator. In the Oracle Enterprise Manager Console. you need to delete the cube model in the Oracle Database. complete the steps in “Generating the Import File” on page 264. and import it into the Oracle Database Summary Advisor.1. Use a tool such as SQL*Plus to execute the SQL file that Oracle Database Metadata Generator generated. For example. System. expand the following nodes: Network. For information about platform compatibility.2 . if you need to make a change to a dimension in a cube in the Oracle BI metadata repository. perform the following tasks in the order shown: 1 2 3 4 Executing the SQL File for Oracle on page 274 Defining Constraints for the Existence of Joins on page 275 Creating the Query Workload on page 275 Creating Materialized Views on page 277 Executing the SQL File for Oracle This step is part of the “Process of Deploying Metadata for Oracle” on page 274. Process of Deploying Metadata for Oracle NOTE: Become familiar with the Oracle Database and its tools before attempting to deploy metadata in the Oracle Database. Summary Management.

A query workload is a sample set of physical queries that you want to optimize. To analyze the information in the Trace file 1 Use the following guidelines when reviewing the Trace file: ■ When you have traced many statements at once.Connectivity and Third-Party Tools in Oracle BI Server ■ Using Materialized Views in the Oracle Database with Oracle BI Defining Constraints for the Existence of Joins This step is part of the “Process of Deploying Metadata for Oracle” on page 274. create a FOREIGN key constraint and specify the referenced schema and referenced table. Oracle Enterprise Manager: Use this tool to track slow-running queries. refer to Oracle Database documentation. Once you enable the Trace feature. Long running Oracle BI queries can then be executed as a script and used in conjunction with the Trace feature in the Oracle Database to capture the Oracle Database SQL code for these queries. Focus on those statements that take the longest times to execute. as follows: ■ ■ For dimension tables. An attempt to create a foreign key on a dimension table can fail if the foreign key column data does not match the unique key column data on the dimension table. you select the table on which you must create a constraint then select the Constraint tab. you use a script to create a Trace file to capture the SQL code for queries in a query workload table. In Oracle Enterprise Manager Console. Oracle Database Trace: Use this tool to identify the slowest physical query. For more information. To generate the Trace file You can generate the Trace file of the slowest-running queries using a tool that is appropriate to your database version. ■ ■ TIP: The capabilities that are described in the following sections are available in the Oracle Database. In the Constraint Definition area. For more information. Before you create the workload. you generate a Trace file with information on the slowest-running queries. as described in the following list: ■ Usage Tracking: Use this capability in Oracle BI to log queries and how long they take to run.1.2 27 5 . create a UNIQUE key constraint. such as in batch processes. You create a different type of constraint for each kind of table. For fact tables. You can enable the Trace feature either within Oracle Enterprise Manager Database Control or by entering SQL commands with the DBMS_MONITOR package. include the foreign key columns in the fact table and the corresponding unique keys in the dimension table. you create constraints in SQL*Plus or Oracle Enterprise Manager Console. quickly discard any statements that have acceptable query execution times. You must ensure that the Oracle Database knows about the joins between the dimension tables and the fact tables. Creating the Query Workload This step is part of the “Process of Deploying Metadata for Oracle” on page 274. To do so.3. Oracle Business Intelligence Server Administration Guide Version 10. refer to Oracle Database documentation. rather than as part of Oracle BI.

APPLICATION FREQUENCY LASTUSE 276 Oracle Business Intelligence Server Administration Guide Version 10. Check the Disk column for the number of blocks that were read from disk. The Current column indicates visits not related to read consistency. insert them into the USER_WORKLOAD table. ■ Use INSERT statements to populate the QUERY column with the SQL statements for the slowest physical queries and the OWNER column with the appropriate owner names. Application name for the query. check for issues with the buffer cache. the value will likely be significantly lower than the sum of the Query and Current columns. To load queries into the workload ■ After you use the Trace utility to learn the names of the slowest physical queries.2 .1. User who last executed the query. Last date on which the query was executed. including all query and subquery processing. Inefficient statements are often associated with a large number of block visits. Table 33 on page 276 describes the columns of the USER_WORKLOAD table. Table 33. If it is not. Note that locking problems and inefficient PL/SQL loops can lead to high CPU time values even when the number of block visits is low. Number of times that the query was executed.3. Watch for multiple parse calls for a single statement. Column QUERY OWNER Columns in USER_WORKLOAD Table Data Type Any LONG or VARCHAR type (all character types) VARCHAR2 (30) VARCHAR2 (30) NUMBER DATE Required YES YES NO NO NO Description SQL statement for the query. because this indicates a library cache issue. check the execution plan to learn why each problem statement occurred. including segment headers and blocks that will be updated. Because disk reads are slower than memory reads.Connectivity and Third-Party Tools in Oracle BI Server ■ Using Materialized Views in the Oracle Database with Oracle BI ■ Check the Query column for block visits for read consistency. ■ ■ ■ 2 After identifying the problem statements in the file.

However. if the query is executed frequently. Before reading this section. Add a forward slash (/) to the end of the CREATE MATERIALIZED VIEW statement after the SQL statement. Column PRIORITY Columns in USER_WORKLOAD Table Data Type NUMBER NUMBER NUMBER NUMBER NUMBER Required NO NO NO NO NO Description User-supplied ranking of the query. This section contains the following topics: ■ ■ About Using IBM DB2 Cube Views with Oracle BI on page 278 Process of Deploying Cube Metadata on page 278 Oracle Business Intelligence Server Administration Guide Version 10. Cache hash value of the query. The Summary Advisor generates recommendations on improving the performance of the fact tables that you specify. use the appropriate tool for the Oracle Database version to create materialized views.Connectivity and Third-Party Tools in Oracle BI Server ■ Using IBM DB2 Cube Views with Oracle BI Table 33. the SQL*Plus worksheet will not recognize it as a valid statement.3. Cache address of the query. Ensure that the CREATE MATERIALIZED VIEW statement does not specify the same query that you provided as a workload table. review the following tips: ■ ■ The creation of a materialized view can fail if the SQL code includes a CAST statement. If the statement does specify the same query. In Oracle Database 10g. read “Exchanging Metadata with Databases” on page 263. Using IBM DB2 Cube Views with Oracle BI This section explains how to export metadata from Oracle BI into the IBM DB2 Database using the DB2 Cube Views Generator. then the materialized views will likely not reflect the true performance gain. Otherwise.2 27 7 .1. then the creation of the materialized view might still be worthwhile. use the Summary Advisor on the Oracle Enterprise Manager Console and specify the query workload table that you created. Execution time of the query in seconds. ■ TIP: SQLAccess Advisor can also help determine appropriate indexing schemes. Before indicating that the Summary Advisor should create the materialized views. RESPONSETIME RESULTSIZE SQL_ADDR SQL_HASH Creating Materialized Views This step is part of the “Process of Deploying Metadata for Oracle” on page 274. Total number of bytes that the query selected. The Summary Advisor displays the SQL code with which it will create the appropriate materialized views. After you create the query workload table.

you use the IBM Optimization Advisor to generate scripts to create materialized query tables (MQT) and their indexes. For more information about IBM Cube Views. NOTE: It is strongly recommended that you become familiar with IBM Cube Views and its tools before attempting to import the XML file. For information about platform compatibility. After importing the metadata. delete. Before deploying metadata.2 . NOTE: DB2 provides an API (implemented as a stored procedure) that passes XML documents as arguments to create. When processing queries. You must execute the aliasSQL file before you import the XML file into your DB2 database. refer to your IBM documentation.3. complete the steps in “Generating the Import File” on page 264. This feature enhances the data warehouse performance and functionality of a database. Because these tables are smaller than the underlying base tables and the data has been preaggregated. the queries that are rerouted to them might run faster. After converting metadata into an XML file. It allows the DB2 database to store metadata about the logical relationships of the data residing in the database. These MQTs preaggregate the relational data and improve query performance. The XML file generated by the DB2 Cube Views Generator contains the cube metadata in XML format. refer to the IBM DB2 documentation. you use IBM Cube Views to import the translated metadata into the DB2 database and store it in IBM Cube Views metadata catalog tables.1. it accelerates data warehouse queries by using more efficient DB2 materialized query tables (MQTs). 278 Oracle Business Intelligence Server Administration Guide Version 10. DB2 Cube Views Generator works as a metadata bridge to convert the Oracle BI proprietary metadata into an IBM Cube Views XML file. you need to create materialized query tables. refer to IBM documentation. Additionally. Process of Deploying Cube Metadata The alias-SQL file generated by the DB2 Cube Views Generator should be executed before importing the XML file. the DB2 Query Rewrite functionality routes queries to the MQTs when possible. The deployed MQTs are used by the DB2 Query Reroute Engine to optimize incoming application queries. modify. To deploy cube metadata. After importing the XML file into your DB2 database. For more information. refer to System Requirements and Supported Platforms. or read the metadata objects. For more information.Connectivity and Third-Party Tools in Oracle BI Server ■ Using IBM DB2 Cube Views with Oracle BI About Using IBM DB2 Cube Views with Oracle BI The term IBM DB2 Cube Views is a registered trademark of IBM. perform the following tasks in the order shown: 1 2 3 Executing the Alias-SQL File for IBM Cube Views on page 278 Importing the XML File on page 279 Guidelines for Creating Materialized Query Tables (MQTs) on page 280 Executing the Alias-SQL File for IBM Cube Views This step is part of the “Process of Deploying Cube Metadata” on page 278.

IBM command-line client utility (db2mdapiclient. Guidelines for Importing the XML File Using the IBM OLAP Center Using the IBM OLAP Center. You can import this file using the following IBM tools: ■ ■ ■ IBM OLAP Center (recommended). you can import the XML file into the database. To import the XML file. refer to IBM documentation. it creates aliases (synonyms) for tables in the database.2 27 9 . For more information about using the command-line client utility.3.Connectivity and Third-Party Tools in Oracle BI Server ■ Using IBM DB2 Cube Views with Oracle BI The alias-SQL file that is generated by the DB2 Cube Views Generator needs to be executed by a SQL client on the database where the data warehouse is located. refer to IBM documentation. refer to IBM documentation. you can import cube metadata into the DB2 database. You need to use the IBM Referential Integrity Utility for IBM Cube Views to generate foreign key informational constraints. You might encounter other issues such as foreign key join columns being nullable.exe). you might need to perform the following actions: ■ Because the Oracle Business Analytics Warehouse does not store foreign keys as metadata. In the Import Wizard. choose the XML file that you want to import. After you execute the alias-SQL. file. You can obtain this utility on the IBM Web site. modify. For more information. Guidelines for Changing Cube Metadata After Importing the XML File After you import the XML file. a diagram of the cube model is shown. The IBM OLAP Center provides wizards to help you import the file. refer to IBM documentation. they will not exist in the converted metadata in the DB2 database. choose to replace existing objects. refer to IBM documentation. If metadata exists that refers to database constructs that are not in the database. NOTE: It is strongly recommended that you become familiar with IBM Cube Views and its tools before attempting to import the XML file. For more information. IBM DB2 Stored Procedure.1. For more information. When you are returned to the IBM OLAP Center. then an error message is displayed. Importing the XML File This step is part of the “Process of Deploying Cube Metadata” on page 278. connect to the DB2 database. use the following guidelines: ■ ■ ■ ■ ■ Using the IBM OLAP Center tool. IBM ships this utility with DB2. and retrieve metadata objects. When executed. You can use the following ways to solve this problem: ■ Oracle Business Intelligence Server Administration Guide Version 10. For more information. refer to “Guidelines for Importing the XML File Using the IBM OLAP Center” on page 279 and IBM documentation. For more information. When the wizard asks for an import option. IBM Cube Views provides a SQL-based and XML-based application programming interface (API) that you can use to run single stored procedure to create.

1. ■ ■ For more information.3. In a fact-to-fact join. If data in these columns are null or you prefer not to convert the column data type even if the column data is not null. You cannot delete metadata using the DB2 Cube Views Generator. use the following guidelines: ■ In the IBM OLAP Center. refer to IBM documentation. Guidelines for Creating Materialized Query Tables (MQTs) This step is part of the “Process of Deploying Cube Metadata” on page 278. and import it into the DB2 database. the Oracle BI Administrator runs the IBM Optimization Advisor to generate SQL scripts and then execute those scripts to create the MQTs.Connectivity and Third-Party Tools in Oracle BI Server ■ Using IBM DB2 Cube Views with Oracle BI ■ ■ If data in these columns are not null. To create MQTs.2 . The IBM Optimization Advisor wizard analyzes your metadata and recommends how to build summary tables that store and index aggregated data for SQL queries. Running the IBM Optimization Advisor can help you keep the MQTs current. 280 Oracle Business Intelligence Server Administration Guide Version 10. The Oracle BI Administrator needs to provide certain parameters to the IBM Optimization Advisor to get optimal results from the implementation. In a dimension-to-dimension join. Schema changes require that you manually delete cube model metadata in the DB2 database and convert the Oracle BI metadata again. you must refresh your database after each ETL. it is recommended that you modify the cube model using the following guidelines: ❏ In a fact-to-dimension join. For more information. After you import the cube metadata into the database. you need to manually eliminate the fact object that represents the primary-key side of the join from the converted cube model and create a degenerated dimension object consisting of the foreign key of this join. The IBM Statistics tool and IBM Optimization Advisor must be run periodically. The Oracle BI Administrator needs to manually delete the cube model using the IBM OLAP Center. regenerate the XML file from the Oracle BI repository. you need to delete the cube model in the DB2 database. ❏ ❏ ■ No incremental metadata changes will be allowed by the Cube Generator. For example. you need to manually eliminate the dimension object that represents the primary-key side of the join from the converted cube model and create a degenerated dimension object consisting of the foreign key of this join. Additionally. choose the cube model that you want to optimize and open the IBM Optimization Advisor wizard. if you need to make a change to a dimension in a cube in the Oracle BI metadata repository. you need to manually eliminate this dimension object from the converted cube model and create a degenerated dimension object consisting of the foreign key of this join. it is recommended that you convert these columns to not-null columns. refer to your IBM documentation.

3.1.2 28 1 . When asked for: Summary Tables Limitations SQL Scripts Choose: Choose Deferred (or Immediate) and provide a tablespace for the tables Choose an appropriate value for the optimization parameters. using the following table as a guide.Connectivity and Third-Party Tools in Oracle BI Server ■ Using IBM DB2 Cube Views with Oracle BI ■ Follow the instructions in the wizard. Choose the filename and locations ■ When the IBM Optimization Advisor closes. the Oracle BI Administrator must execute the SQL scripts to create the MQTs. Creation of the scripts needed to run to create the Summary tables. You should turn on the Data-sampling option. Oracle Business Intelligence Server Administration Guide Version 10.

2 .1.Connectivity and Third-Party Tools in Oracle BI Server ■ Using IBM DB2 Cube Views with Oracle BI 282 Oracle Business Intelligence Server Administration Guide Version 10.3.

Initialization blocks are used to initialize dynamic repository variables. The Administration Tool includes a Variable Manager for defining variables. There are two types of session variables: system and nonsystem. The left pane displays a tree that shows variables and initialization blocks. and the right pane displays details of the item you select in the left pane.3. ■ ■ A repository variable has a single value at any point in time. The icon for an initialization block is a cube labeled i. system session variables. This section includes the following topics: ■ Static Repository Variables on page 284 Oracle Business Intelligence Server Administration Guide Version 10. and nonsystem session variables. Session variables are created and assigned a value when each user logs on.2 28 3 . System and nonsystem variables are represented by a question mark icon. The Variable Manager dialog box has two panes. This section contains the following topics: ■ ■ ■ Using the Variable Manager on page 283 About Using Initialization Blocks With Variables on page 290 Process of Creating Initialization Blocks on page 293 Using the Variable Manager The Variable Manager allows you to define variables.1. There are two classes of variables: repository variables and session variables. Repository variables are represented by a question mark icon. The Oracle BI Server will substitute the value of the repository variable for the variable itself in the metadata. This section contains the following topics: ■ ■ Understanding and Creating Repository Variables on page 283 Understanding and Creating Session Variables on page 286 Understanding and Creating Repository Variables A repository variable has a single value at any point in time.13 Using Variables in the Oracle BI Repository You can use variables in a repository to streamline administrative tasks and modify metadata content dynamically to adjust to a changing data environment. There are two types of repository variables: static and dynamic. Repository variables can be used instead of literals or constants in expression builders in the Administration Tool.

. Using Variables in Expression Builders After created. Variables should be used as arguments of the function VALUEOF( ).. select it and double-click. This value persists. For example. the following CASE statement is identical to the one explained in the preceding example except that variables have been substituted for the constants. ELSE. Example Suppose you want to create an expression to group times of day into different day segments. perhaps mapped to a timestamp physical column using the date-andtime Hour(<<timeExpr>>) function. This will happen automatically when you double-click on the variables to paste them into the expression... If Prime Time were one of those segments and corresponded to the hours between 5:00 PM and 10:00 PM.END NOTE: You cannot use variables to represent columns or other repository objects..1. 284 Oracle Business Intelligence Server Administration Guide Version 10...END where Hour is a logical column. you could use the Variable tab of the Variable dialog box to set up a static repository variable named prime_begin and initialize it to a value of 17. Rather than entering the numbers 17 and 23 into this expression as constants. The expression builder will paste it into the expression at the active cursor insertion point.2 . In an expression builder. To use a repository variable in an expression. click on the Repository Variables folder in the left pane to display all repository variables (both static and dynamic) in the middle pane by name. variables are available for use in expression builders. you could create a CASE statement like the following: CASE WHEN "Hour" >= 17 AND "Hour" < 23 THEN 'Prime Time' WHEN. CASE WHEN "Hour" >= VALUEOF("prime_begin")AND "Hour" < VALUEOF("prime_end") THEN 'Prime Time' WHEN . and does not change until an Oracle BI Administrator decides to change it.3.Using Variables in the Oracle BI Repository ■ Using the Variable Manager ■ ■ Dynamic Repository Variables on page 285 Creating Repository Variables on page 285 Static Repository Variables The value of a static repository value is initialized in the Variable dialog box. ELSE. and create another variable named prime_end and initialize it to a value of 23..

You will also set up a schedule that the Oracle BI Server will follow to execute the query and periodically refresh the value of the variable. Oracle Business Intelligence Server Administration Guide Version 10. When defining a dynamic repository variable. to filter a column on the value of the dynamic repository variable CurrentMonth. NOTE: When the value of a dynamic repository variable changes.2 28 5 .1.Using Variables in the Oracle BI Repository ■ Using the Variable Manager Dynamic Repository Variables You initialize dynamic repository variables in the same way as static variables.3. To accurately reflect the new content of the recent source. you will create an initialization block or use a pre-existing one that contains a SQL query. You need to describe the content of these sources on the Content tab of the Logical Table Source dialog box. that are defined on the Content tab of the Logical Table Source dialog box. Dynamic repository values can be set up to do it automatically. When defining a dynamic repository variable. all cache entries associated with a business model that reference the value of that variable will be purged automatically. A common use of these variables is to set filters for use in Oracle BI Presentation Services. Another suggested use for dynamic repository values is in WHERE clause filters of logical table sources. For example. For example. You schedule these queries to be executed by the Oracle BI Server. Example Dynamic repository variables are very useful for defining the content of logical table sources. To create a repository variable 1 From the Administration Tool menu bar. The values of dynamic repository variables are set by queries defined in Variable Initialization blocks. see Understanding and Creating Repository Variables on page 283. choose Manage > Variables. you create an initialization block or use a preexisting block that contains a query. suppose you have two sources for information about orders. you would describe the content of the source containing recent data with an expression such as: Orders. One source contains recent orders and the other source contains historical data. Creating Repository Variables Use the this task to create a repository variable. You also set up a schedule that the Oracle BI Server will follow to execute the query and periodically refresh the value of the variable. For more information. but the values are refreshed by data returned from queries. you would have to modify the fragmentation content description manually. set the filter to the Variable CurrentMonth."Order Date" >= TIMESTAMP '2001-06-02 00:00:00' This content statement will become invalid as new data is added to the recent source and older data is moved to the historical source. Each query can refresh several variables—one variable for each column in the query. Without using dynamic repository variables.OrderDates.

When a user begins a session. ■ For static repository variables. the Oracle BI Server creates new instances of session variables and initializes them.3.Using Variables in the Oracle BI Repository ■ Using the Variable Manager 2 3 In the Variable Manager dialog box. 7 Click OK. For more information about creating the value. the value you specify in the Default initializer window persists. To create a new initialization block. type a Variable name. If a user is authenticated successfully. “Security in Oracle BI. however. refer to “Process of Creating Initialization Blocks” on page 293. Understanding and Creating Session Variables Session variables are similar to dynamic repository variables in that they obtain their values from initialization blocks. choose Action > New > Repository > Variable. click the ellipsis button to the right of the Default initializer work space. from the menu bar. 6 (Dynamic or static variables) To add a Default initializer value. refer to Chapter 15. 4 In the Variables dialog box. If you initialize a variable using a character string. there are as many instances of a session variable as there are active sessions on the Oracle BI Server.” This section includes the following topics: ■ ■ ■ Using System Session Variables on page 287 Using Nonsystem Session Variables on page 289 Creating Repository Variables on page 285 286 Oracle Business Intelligence Server Administration Guide Version 10. In the Variable dialog box. session variables can be used to set filters and permissions for that session. The name of the dialog box changes to reflect the type of variable that you select. It will not change unless you change it. Session variables are primarily used when authenticating users against external sources such as database tables or LDAP servers. For more information. Unlike dynamic repository variables. click New. For a discussion of the use of session variables in setting up security.2 . The names of system session variables are reserved and cannot be used for other types of variables. select the type of variable: Static or Dynamic. the initialization of session variables is not scheduled. refer to “SQL Logical Operators” on page 363. 5 (Dynamic repository variables) Use the Initialization Block drop-down list to select an existing initialization block that will be used to refresh the value on a continuing basis. Unlike a repository variable. enclose the string in single quotes ( ‘ ). perform one of the following steps: ■ To use the Expression Builder. Type the value into the Default initializer text box. Each instance of a session variable could be initialized to a different value.1. Names for all variables should be unique.

2 28 7 . Table 34 on page 287 describes the available system session variables. Variable System Session Variables Description Used for Oracle BI Presentation Services. DISPLAYNAME EMAIL Oracle Business Intelligence Server Administration Guide Version 10. For example. to filter a column on the value of the variable LOGLEVEL set the filter to the Variable NQ_SESSION. this variable is populated with the user's full name. For information about using the GROUP system session variable in conjunction with the SA System subject area to provide group membership and external email addresses to Oracle BI Delivers. For internal Oracle BI repository users (nondatabase users).LOGLEVEL. If the delivery option of Answers is enabled.3. NOTE: When you use these variables for Oracle BI Presentation Services. refer to “Creating Repository Variables” on page 285. an email device using this address will be created for the user upon first log in. refer to “Setting Up the Repository to Work with Delivers” on page 180.1. Contains the user’s default email address for use with Answers. Using System Session Variables System session variables are session variables that the Oracle BI Server and Oracle BI Presentation Services use for specific purposes. that cannot be used for other kinds of variables (such as static or dynamic repository variables and nonsystem session variables).Using Variables in the Oracle BI Repository ■ Using the Variable Manager For more information. preface their names with NQ_SESSION. System session variables have reserved names. Table 34. It contains the name that will be displayed to the user in the greeting in the Oracle BI Presentation Services user interface. Users can override this address by changing their account settings in Oracle BI Presentation Services. It is also saved as the author field for catalog objects.

Any users with the same nonblank request key will share the same Presentation Server cache entries. LAST_SYNCH_ TIME and THIS_SYNCH_T IME LOGLEVEL These two variables are set and tracked by Oracle BI Presentation Services to manage the synchronization of Oracle BI Disconnected Analytics. the user will receive an Invalid Account message when attempting to log on to Oracle BI Presentation Services. Sharing Presentation Server cache entries is a way to minimize unnecessary communication with the Oracle BI Server. If the Administrators Users object has a Logging level defined as 4 and the session variable LOGLEVEL defined in the repository has a value of 0 (zero). This system session variable overrides a variable defined in the Users object.2 . Used for Oracle BI Presentation Services. If a user and a Presentation Services group share the same name. It identifies the default dashboard the user sees when logging in (the user can override this preference after logged on). Do not delimit text (for example. These are used by both the Oracle BI Server and Oracle BI Presentation Services. and Doc. The value of LOGLEVEL (a number between 0 and 5) determines the Logging level that the Oracle BI Server will use for user queries. if a user belonged to groups called Sales US.Sales UK.1. do not surround the text with single or double quotes). the value of 0 applies.Using Variables in the Oracle BI Repository ■ Using the Variable Manager Table 34. refer to Oracle Business Intelligence Disconnected Analytics Administration and Configuration Guide.3. This tells Oracle BI Presentation Services that these users have identical content filters and security in the Oracle BI Server. the text entered into a Varchar data type column in a database table would be: Sales US. Variable GROUP System Session Variables Description Contains the groups to which the user belongs. Use a Varchar column in a database table to contain the group memberships. For more information.Doc Note: The Oracle BI Presentation Services Administrator needs to make sure that the names of Presentation Services groups are different from any user IDs that will be used to log on to Oracle BI Presentation Services. separate the group names with semicolons. REQUESTKEY 288 Oracle Business Intelligence Server Administration Guide Version 10. PORTALPATH Used for Oracle BI Presentation Services. For example.QA and Dev. Sales UK. When a user belongs to multiple groups. QA and Dev.

The use of Presentation Services groups provides a mechanism for more granular content control. graphics such as GIF files). to filter a column on the value of the variable SalesRegion set the filter to the Variable NQ_SESSION. from the menu bar.3. Creating Session Variables Use the this task to create a session variable. NOTE: When you use these variables for Oracle BI Presentation Services. In the Session Variable dialog box. the SKIN variable would be set to companyx. choose Action > New > Session > Variable. You could then set a security filter for all members of a group that would allow them to view only data pertinent to their region. The SKIN variable points to an Oracle BI Presentation Services folder that contains the nonalterable elements (for example. preface their names with NQ_SESSION. USER WEBGROUPS Using Nonsystem Session Variables The procedure for defining nonsystem session variables is the same as for system session variables. The user can alter some elements of the user interface by picking a style when logged on to Oracle BI Presentation Services.2 28 9 . if a folder were called sk_companyx. Oracle Business Intelligence Server Administration Guide Version 10. For example. For example. The names of system session variables are reserved and cannot be used for other types of variables.SalesRegion. A common use for nonsystem session variables is setting user filters. To create a session variable 1 2 3 From the Administration Tool menu bar. you could define a nonsystem variable called SalesRegion that would be initialized to the name of the user’s sales region. Such directories begin with sk_. Variable SKIN System Session Variables Description Determines certain elements of the look and feel of the Oracle BI Presentation Services user interface.1. if any.Using Variables in the Oracle BI Repository ■ Using the Variable Manager Table 34. choose Manage > Variables. Specifies additional groups specific to Oracle BI Presentation Services. type a variable name. In the Variable Manager dialog box. For example. Names for all variables should be unique. Holds the value the user enters as his or her logon name.

refer to “Process of Creating Initialization Blocks” on page 293. system session variables. For more information about creating the value. To create a new initialization block. An initialization block contains the SQL that will be executed to initialize or refresh the variables associated with that block. click New. and nonsystem session variables. refer to “SQL Logical Operators” on page 363. If the physical database source is a VPD. perform one of the following steps: ■ To use the Expression Builder. For more information. this allows non-Oracle BI Administrators to set this variable for sampling. Security Sensitive Check box that identifies the variable as sensitive to security for virtual physical databases (VPD).1. Type the value into the Default initializer text box. 6 To add a Default initializer value.2 . For example. When filtering cache table matches. 290 Oracle Business Intelligence Server Administration Guide Version 10. Cache hits would only occur on cache entries that included and matched all security-sensitive variables.3. About Using Initialization Blocks With Variables Initialization blocks are used to initialize dynamic repository variables. The SQL must reference physical tables that can be accessed using the connection pool specified in the Connection Pool field in the Initialization Block dialog box. For example. you can select the following check boxes: Enable any user to set the Check box that allows you to set the session variables after the value initialization block has populated the value (at user login) by calling the ODBC store procedure NQSSetSessionValue(). the Oracle BI Server matches a list of security-sensitive variables to each prospective cache hit. 5 Use the Initialization Block drop-down list to select an initialization block that will be used to refresh the value on a continuing basis. ■ 7 Click OK.Using Variables in the Oracle BI Repository ■ About Using Initialization Blocks With Variables 4 For session variables. the Oracle BI Server looks at the parent database of each column or table that is referenced in the logical request projection list. the NQ_SYSTEM initialization block is used to refresh system session variables. click the ellipsis button to the right of the Default initializer work space.

For more information about user-level logging. the server automatically executes the SQL in repository variable initialization blocks. The default location for the NQQuery. Initializing Dynamic Repository Variables The values of dynamic repository variables are set by queries defined in the Initialization string field of the Initialization Block dialog box. While the initialization block is checked out. The default location for the NQQuery. use the Undo Check Out option. The Oracle BI Server logs all SQL queries issued to retrieve session variable information if Logging level is set to 2 or higher in the Security Manager User object or the LOGLEVEL system session variable is set to 2 or higher in the Variable Manager. reinitializing the repository variables.1. The values remain unchanged for the session's duration. For more information about user-level logging. when you open the Initialization Block dialog box for editing in online mode. refer to “Administering the Query Log” on page 214. the Oracle BI Server may continue to refresh the value of dynamic variables refreshed by this initialization block. session variables are not updated at scheduled time intervals. you can select a database type for that query. Unlike dynamic repository variables. The variables receive their values from the initialization string that you type in the Initialization Block dialog box. Otherwise. If a SQL initialization string for that database type has been defined when the initialization block is instantiated. the Oracle BI Server creates new instances of those variables whenever a user begins a new session. When you check the initialization block in. Initializing Session Variables As with dynamic repository variables. Oracle Business Intelligence Server Administration Guide Version 10. The names and values of the session variables reside in an external database that you access through a connection pool. The Oracle BI Server logs all SQL queries issued to retrieve repository variable information in the NQQuery. Instead. the value of the dynamic variables is reset to the values shown in the Default initializer.3.log file when the Oracle BI Administrator logging level is set to 2 or higher. You also set up a schedule that the Oracle BI Server will follow to execute the query and periodically refresh the value of the variable. the initialization block object is automatically checked out.log file is the Log folder in the Oracle BI Server software installation folder (\OracleBI). CAUTION: By default. You should set the logging level to 2 for the Oracle BI Administrator user ID to provide the most useful level of information. refer to “Administering the Query Log” on page 214. a default initialization SQL string will be used. Row-Wise Initialization The row-wise initialization option allows you to create session variables dynamically and set their values when a session begins. session variables obtain their values from initialization blocks.Using Variables in the Oracle BI Repository ■ About Using Initialization Blocks With Variables If you want the query for an initialization block to have database-specific SQL. If you do not want this to occur. If you stop and restart the Oracle BI Server.2 29 1 .log file is the Log folder in the Oracle BI Server software installation folder (\OracleBI). depending on the refresh intervals that are set. this string will be used.

JOHN:JANE. containing values that represent session variable values. USERID from RW_SESSION_VARS where NAME=’STATUS’ and VALUE=’FULL-TIME’ This SQL statement populates the variable LIST_OF_USERS with a list. containing the value AAA. The table contains three columns: USERID. You can then use this variable in a filter. containing the value 4. VALUE from RW_SESSION_VARS where USERID=’VALUEOF(NQ_SESSION.USERID has already been initialized using another initialization block.Using Variables in the Oracle BI Repository ■ About Using Initialization Blocks With Variables For example. her session will contain three session variables from row-wise initialization: LEVEL. The following session variables are created: ■ When John connects to the Oracle BI Server. you want to create session variables using values contained in a table named RW_SESSION_VARS. you type the following SQL statement: select NAME. containing values that represent session variable names. for example. as shown in the following WHERE clause: 292 Oracle Business Intelligence Server Administration Guide Version 10. his session will contain two session variables from row-wise initialization: LEVEL. and GRADE. containing the value FULL_TIME. of the values JOHN and JANE. STATUS. When Jane connects to the Oracle BI Server. The content of the table is as follows: USERID JOHN JOHN JANE JANE JANE NAME LEVEL STATUS LEVEL STATUS GRADE VALUE 4 FULL-TIME 8 FULL-TIME AAA You create an initialization block and select the Row-wise initialization check box (refer to “Process of Creating Initialization Blocks” on page 293). For the initialization string. ■ Initializing a Variable with a List of Values You can also use the row-wise initialization option to initialize a variable with a list of values. Example: Using the table values in the previous example. and STATUS. and VALUE. You can then use the SQL IN operator to test for values in a specified list. NAME. containing the value 8.2 .3. containing the value FULL-TIME. separated by colons.USERID)’ NQ_SESSION.1. you would type the following SQL statement for the initialization string: select ‘LIST_OF_USERS’. containing values that represent users’ unique identifiers.

For more information. that is.LIST_OF_USERS) The variable LIST_OF_USERS contains a list of values. Process of Creating Initialization Blocks It is recommended to create a dedicated connection pool for initialization blocks. An authenticator is a DLL (or shared object on UNIX) written by a customer or developer that conforms to the Oracle BI Authenticator API Specification and can be used by Oracle BI Server to perform authentication and other tasks at run-time. For more information about this specification. The Oracle BI Administrator asks a developer to implement a dynamically loadable authentication module according to the Oracle BI Authenticator API specification. We will provide a header file for all of the types that will be used in the dynamically loadable authenticator. The dynamically loadable authenticator framework (authentication module) is an Oracle BI Server module with a cache layer that uses the authenticator to perform authentication and related tasks at run-time. and cache expiration time. This logical WHERE clause expands into a physical IN clause. refer to “About Using Initialization Blocks With Variables” on page 290. Associating Variables With Initialization Blocks on page 298 Oracle Business Intelligence Server Administration Guide Version 10.2 29 3 . such as configuration file path. Users in the repository are always authenticated against the repository. After the Oracle BI Administrator creates an authentication object (authenticator plug-in) and specifies a set of parameters for the authentication module.3. The authentication for the user Administrator is always performed against the repository.USER_NAME = valueof(NQ_SESSION. if the authentication is successful.USER_NAME in (‘JOHN’. refer to “Creating or Changing Connection Pools” on page 67. Two sample authenticator plug-ins are installed when you install Oracle BI. One is only available for the Windows platform. When a user logs in. one or more values. as shown in the following statement: where TABLE. The Oracle BI Administrator then associates the authentication object with an initialization block. To create an initialization block. Only one authenticator is allowed for each repository. perform the following steps: 1 2 3 Assigning a Name and Schedule to Initialization Blocks on page 294 Selecting and Testing the Data Source and Connection Pool on page 294. The Oracle BI Administrator associates the USER variable (required) and other variables with the initialization blocks.Using Variables in the Oracle BI Repository ■ Process of Creating Initialization Blocks where TABLE. The other one uses a text file for user information storage and is available to all platforms. number of cache entries.1. refer to “Oracle BI Server Authentication APIs” on page 409. ‘JANE’) About Authenticating Users Using Initialization Blocks You can create a customized authentication module using initialization blocks. For more information about initialization blocks. Oracle BI Server populates a list of variables. as specified in the initialization block.

Using Variables in the Oracle BI Repository ■ Process of Creating Initialization Blocks 4 Establishing Execution Precedence on page 299 Assigning a Name and Schedule to Initialization Blocks This task is a step in “Process of Creating Initialization Blocks” on page 293. At run time. 294 Oracle Business Intelligence Server Administration Guide Version 10. (The NQ_SYSTEM initialization block name is reserved. In the Variable Init Block dialog box. For repository variables. the right-click menu for an existing initialization block contains a Disable or Enable toggle value.3. the SQL used to refresh the variable must reference physical tables that can be accessed through the connection pool specified in the Connection Pool field. ■ Required for authentication. this string will be used. You can overtype this string.1. The tables do not have to be included in the physical layer of the metadata. from the Action menu. (Session init blocks) Select the following check boxes when appropriate: ■ Disabled. if an initialization string for the database type has been defined. select a start date and time and the refresh interval. In the Variable Manager dialog box. and time for the start date and a refresh interval. choose New > Repository (or Session) > Initialization Block. If you select Database as the Data Source Type. If you select Database as the data source type. When selected. you can specify the day. To assign a name and schedule to initialization blocks 1 2 3 4 5 From the Administration Tool menu bar. The next step is to select the data source and connection pool. type a name for the block. Used when creating an initialization block for authenticating users. NOTE: In the Variables Manager. you can select LDAP or Custom Authenticator. the values returned by the database for the columns in your SQL statement will be assigned to variables that you associate with the initialization block. Selecting and Testing the Data Source and Connection Pool This task is a step in “Process of Creating Initialization Blocks” on page 293. date. Otherwise.) (Repository init blocks) In the Schedule area. select Manage > Variables.2 . This allows you to change this property without having to open the initialization block dialog box. For session variable initialization blocks. the default initialization SQL for the database type will be used. disables the initialization block.

The query will return data only if the user ID and password match values found in the specified table. Example of an SQL Statement When Site Does Not Use Delivers select username. Example of an SQL Statement When Site Uses Delivers select username. and you can use this variable in a database connection pool to allow passthrough login using the user’s user ID and password. You do not need to set up the PASSWORD variable. schemaname from users where username=':USER' and pwd=':PASSWORD' This SQL statement contains two constraints in the WHERE clause: ':USER' (note the colon and the single quotes) is the ID the user enters when the user logged in. the database will return an error message.Using Variables in the Oracle BI Repository ■ Process of Creating Initialization Blocks When you create SQL and submit it directly to the database (for example when using database specific SQL in initialization blocks). and you can use this variable in a database connection pool to allow passthrough login using the user’s user ID and password. This following example topics contain examples of initialization strings that might be used with Delivers. For more information. You should test the SQL statement outside of the Oracle BI Server substituting valid values for the USER and PASSWORD variables and removing the NQS_PASSWORD_CLAUSE clause. The query will return data only if the user ID and password match values found in the specified table. When using external table authentication with Delivers. Oracle Business Intelligence Server Administration Guide Version 10. You do not need to set up the PASSWORD variable. dbname.2 29 5 . You can also use this variable in a SQL if you so desire. If the SQL contains an error. groupname. note the colon and the single quotes) is the password the user enters. This is another system variable whose presence is always assumed when the USER system session variable is used. NOTE: You should test this SQL using the Test button in the Variable Init block Data Source dialog box. This is another system variable whose presence is always assumed when the USER system session variable is used. substituting valid values for the USER and PASSWORD variables.3.1. note the colon and the single quotes) is the password the user enters. ':PASSWORD' (again. You can also use this variable in a SQL statement if you so desire. schemaname from users where username=':USER' NQS_PASSWORD_CLAUSE(and pwd=':PASSWORD')NQS_PASSWORD_CLAUSE This SQL contains two constraints in the WHERE clause: ':USER' (note the colon and the single quotes) equals the ID the user types when logging in. You should test the SQL statement outside of the Oracle BI Server. the SQL bypasses Oracle BI Server. groupname. ':PASSWORD' (again. refer to “About Oracle BI Delivers and Database Authentication” on page 328. dbname. the portion of the SQL statement that makes up the :PASSWORD constraint needs to be embedded between NQS_PASSWORD_CLAUSE clauses. The order of the columns in the SQL statement and the order of the variables associated with the init block determine which columns are assigned to each variable.

In the Initialization string text box.Using Variables in the Oracle BI Repository ■ Process of Creating Initialization Blocks To select a data source and connection pool for initialization blocks 1 2 3 4 From the Administration Tool menu bar. type the SQL initialization string needed to populate the variables. For more information. The LDAP server name and the associated domain identifier appear in the Name and Domain identifier columns. select Manage > Variables. see “About Authenticating Users Using Initialization Blocks” on page 293. Click OK to return to the Initialization Block dialog box. Repository and session variables. c d 6 a b 7 In the Initialization string text box. (Optional) Select the Use Database Specific SQL check box and in the Database pane. Session variables.2 . double-click the variable. Data Source Type Database XML LDAP Custom Authenticator Description Repository and session variables. b In the Browse dialog box. 296 Oracle Business Intelligence Server Administration Guide Version 10. type the SQL initialization string needed to populate the variables. (Optional) Click Test. perform the following steps: Select the connection pool associated with the database where the target information is located by clicking Browse.1. In the Variable Initialization Block Data Source dialog box. If you selected XML in the Data Source Connection area. perform the following steps: a b Click Browse to select an existing LDAP Server or click New to open the General tab of the LDAP Server dialog box and create an LDAP Server. expand and select the database and its associated string. In the Variable Manager dialog box. In the Variable Initialization Block dialog box. perform the following steps: a Select the connection pool associated with the database where the target information is located by clicking Browse. NOTE: Select a connection pool before typing an initialization string. click Edit Data Source. you will receive a message prompting you to select the connection pool. CAUTION: If you do not select a connection pool before typing the initialization string.3. Session variables. Tests the data source connectivity for the SQL statement. 5 If you selected Database in the Data Source Connection drop-down list. from the Data Source Type drop-down list. select one of the following types. select the connection pool and click OK. If you selected LDAP in the Data Source Connection area.

Initialization Block tests will not work with connection pools set to use :USER and :PASSWORD as the user name and password. In the Variable Manager dialog box. When selected. double-click the last variable that you want to be initialized. In offline mode. Testing the Initialization Block You should test the SQL using the Test button or an SQL tool such as the Oracle BI Client utility. In the Set value for the variables dialog box. The next step is to associate variables with the initialization block. When selected. In the View Data from Table dialog box. allowing you to type a number in the text box and select days. Number of cache entries 9 Click OK.3. In the Variable Initialization Block dialog box. cache never expires and has to be purged manually. and then click OK.2 29 7 . select Manage > Variables. be sure to use the same DSN or one set up identically to the DSN in the specified connection pool. click Test. or seconds as the time increment. Maximum number of cache entries. To test the initialization block (optional) 1 2 3 4 5 From the Administration Tool menu bar. hours. verify the information is correct. minutes. If you use an SQL tool.Using Variables in the Oracle BI Repository ■ Process of Creating Initialization Blocks 8 If you selected Custom Authenticator in the Data Source Connection area. Oracle Business Intelligence Server Administration Guide Version 10. type the number of rows and the starting row for your Query. The Results dialog box lists the variables and their values. complete the fields using the following list as a guide. Field Authenticator plug-in Configuration parameters Cache never expires Cache persistence time Description Type or browse for the DLL authenticator file. the Set values for variables dialog box appears so that you can populate :USER and :PASSWORD.1. a text box and drop-down list become available. In Online editing mode. and then click Query. The cache will automatically expire after this time passes. Can be used to specify a configuration file.

For more information. the value shown in the Default initializer field of the Initialization Block dialog box is the current value of that variable as known to the Oracle BI Server. If you stop and restart the Oracle BI Server. In the Variable Manager dialog box. In the Variable Initialization Block Variable Target dialog box. re-initializing the repository variables. Associates variables with the initialization block. 298 Oracle Business Intelligence Server Administration Guide Version 10. Therefore. you clear this check box. However. the server automatically executes the SQL in the repository variable initialization blocks. The order of the columns in the SQL statement and order of the variables associated with the initialization block determine the column value that is assigned to each variable. the cached results may not contain the most current session variable values. For more information. assuming the database permits the user ID associated with the connection pool to perform these actions. If there are fewer variables than columns.Using Variables in the Oracle BI Repository ■ Process of Creating Initialization Blocks Associating Variables With Initialization Blocks This task is a step in “Process of Creating Initialization Blocks” on page 293. Selecting the cash variables option directs the Oracle BI Server to store the results of the query in a main memory cache. The SQL SELECT statement in the Default initializer list can contain multiple columns. the additional variables are not refreshed (they retain their original values. see “About Using Initialization Blocks With Variables” on page 290. Session Variables For session variable initialization blocks. you can select one of the following: ■ Variables. select Manage > Variables.1. extra column values are ignored. click Edit Data Target. the value returned in the first column will be assigned to the first variable in the list. If every new session needs the most current set of session variables and their corresponding values.2 . The Oracle BI Server uses the cached results for subsequent sessions. you can select Row-wise initialization. If there are more variables than columns.3. Repository Variables When you open a repository in online mode. refer to “Row-Wise Initialization” on page 291. The Cache variables check box is automatically selected when you select the Row-wise initialization check box. To associate variables with the initialization block 1 2 3 4 From the Administration Tool menu bar. when you associate variables with an initialization block. Any legal SQL can be executed using an initialization block. whatever they may be). In the Variable Initialization Block dialog box. including SQL that writes to the database or alters database structures. double-click the variable. This can reduce session startup time. NOTE: The number of associated variables can be different from the number of columns being retrieved.

For more information. Used with session init blocks only. The next step is to establish execution precedence.Using Variables in the Oracle BI Repository ■ Process of Creating Initialization Blocks ■ Row-wise initialization. suppose a repository has two initialization blocks. Establishing Execution Precedence This task is a step in “Process of Creating Initialization Blocks” on page 293. to associate an existing variable with an initialization block. b Click Link. ❏ In the Browse dialog box. When a repository has more than one initialization block. In the Variable Manager dialog box. and then click the remove button. perform one of the following steps: a Click new. click Edit Execution Precedence. click Add. you can set the order (establish the precedence) in which the blocks will be initialized. Click OK. In the Variable Initialization Block Execution Precedence dialog box. This causes block A to execute according to block B’s schedule. select the variable.3. For example. NOTE: Add is only available if unselected initialization blocks are available. the variable USER is required. First. To establish execution precedence 1 2 3 4 From the Administration Tool menu bar. NOTE: For the Custom Authentication data source type (Session variables). create a new variable. see “Row-Wise Initialization” on page 291. in addition to its own. select Manage > Variables. CAUTION: Make sure you add the blocks in the order that you want them to be initialized. 6 7 8 To reorder variables. You open initialization block B. and then click OK. and then specify that block A will execute before block B. select the blocks that should be initialized before the block that you have open. A and B. 5 If you select the Variables option. and then click OK. If you select Row-wise initialization. select a variable.1. For information about creating variables. and then click Up or Down. Oracle Business Intelligence Server Administration Guide Version 10. you open the block that you want to be executed last and then add the initialization blocks that you want to be executed before the block you have open.2 29 9 . the Use caching check box becomes available. double-click the last variable that you want to be initialized. select the variable to be refreshed by this initialization block. see “Using the Variable Manager” on page 283. To remove a variable from association with this block. 5 In the Browse dialog box. and in the Variable dialog box. In the Variable Initialization Block dialog box.

Using Variables in the Oracle BI Repository ■ Process of Creating Initialization Blocks 6 7 8 9 To remove a block. and then click Remove. 300 Oracle Business Intelligence Server Administration Guide Version 10. in the Variable Initialization Block Execution Precedence dialog box.2 . in the Variable Initialization Block dialog box. select the block you want to remove. Click OK. If you wish the initialization block to be required. Click OK.3. select the Required for authentication check box.1.

Servers in the cluster share requests from multiple Oracle BI clients. The directory typically resides on a shared file system visible to all servers in the cluster. The clustered Oracle BI Servers examine this directory upon startup for any repository changes. It holds the master copies of repositories edited in online mode. You must set up the following access to this publishing directory: ■ The master server must have read and write access. There can only be one active Scheduler (only one Scheduler running jobs). Oracle Business Intelligence Server Administration Guide Version 10. Cluster Manager.1. It also supports detection of server and Oracle Business Intelligence Scheduler failures and failover for ODBC clients of failed servers for clients of these managed services. One or more Schedulers. Components of the Cluster Server In a clustering environment. For more information.2 30 1 . This section contains the following topics: ■ ■ ■ ■ ■ ■ About the Cluster Server on page 301 Components of the Cluster Server on page 301 Implementing the Cluster Server on page 303 Chronology of a Cluster Operation on page 305 Using the Cluster Manager on page 307 Performance Considerations on page 313 About the Cluster Server The Cluster Server allows up to 16 Oracle BI Servers in a network domain to act as a single server.3. including Answers and Delivers. The Cluster Controller is the primary component of the Cluster Server. One or more servers.14 Clustering Oracle BI Servers This section describes the Cluster Server and provides instructions for setting up and configuring the clustering of multiple servers. For more information. Repository Publishing Directory. see “About Cluster Controllers” on page 302. It monitors the status of resources in a cluster and performs session assignment as resources change. the following components are available: ■ ■ ■ ■ ■ Two Cluster Controllers. For more information. This directory is shared by all Oracle BI Servers participating in a cluster. see “About Servers Used in Clustering” on page 302. see “About Schedulers Used in Clustering” on page 302. A utility in the Administration Tool.

1. one Scheduler. The secondary Cluster Controller can reside on the same machine as an Oracle BI Server in the cluster or on another machine that is on the same subnet as the cluster. the parameter PRIMARY_CONTROLLER specifies the machine that hosts the primary Cluster Controller. The primary controller also determines the active Scheduler in the cluster and notifies Scheduler instances when the active instance changes.INI file.INI file. The primary Cluster Controller can reside on the same machine as an Oracle BI Server in the cluster or on another machine that is on the same subnet as the cluster. the Administration Tool will connect to an available slave server. About Servers Used in Clustering The following are descriptions of the types of servers used in clustering: ■ Master server. The secondary Cluster Controller assumes the role of the primary Cluster Controller if the primary is unavailable. the parameter SECONDARY_CONTROLLER specifies the machine that will host the secondary Cluster Controller. In the NQClusterConfig. Use the syntax machinename not machinename. A machine can host one Oracle BI Server. In the NQClusterConfig. ■ About Schedulers Used in Clustering The following are the types of Schedulers used in clustering with their descriptions: 302 Oracle Business Intelligence Server Administration Guide Version 10. About Cluster Controllers The following are the types of Cluster Controllers with their descriptions: ■ Primary Cluster Controller.Clustering Oracle BI Servers ■ Components of the Cluster Server ■ All slave servers must have read access. In the NQSConfig. Slave server.INI file.2 .INI file. ■ Secondary Cluster Controller. In the NQClusterConfig. The role of the primary Cluster Controller is to monitor the operation of the servers and Schedulers in the cluster and to assign sessions within the cluster. one Cluster Controller. if the primary Cluster Controller is unavailable and the secondary Cluster Controller has not been configured. but in read-only mode. However. It is used in load balancing of ODBC sessions to the Oracle BI Server cluster. or one of each. If the master server is ever down.3. you must not use fully-qualified machine names because all servers are required to run on the same LAN. the parameter MASTER_SERVER specifies the Oracle BI Server that functions as the master server.domain. the cluster will not operate. the REPOSITORY_PUBLISHING_DIRECTORY parameter specifies the location of the repository publishing directory. A master server is a clustered Oracle BI Server to which the Administration Tool connects for online repository changes.ini file. It must be different from the machine that hosts the primary Cluster Controller. Specifying a secondary Cluster Controller is optional. A slave server is a clustered Oracle BI Server that does not allow online repository changes. NOTE: In the NQClusterConfig.

Clustering Oracle BI Servers ■ Implementing the Cluster Server ■ Active Scheduler. An inactive Scheduler is a clustered Oracle BI Scheduler instance which is not actively processing Scheduler jobs but is ready to take over in the event of an active Scheduler failure. Oracle Business Intelligence Server Administration Guide Version 10.3. the only option from the right-click menu is Activate. including the Cluster Controller component. Copy the NQClusterConfig. Start the machines in the cluster. Configure Oracle BI Presentation Services to point to the Scheduler Cluster Controllers. you can select Quiesce. The Cluster Controller determines the active instance at run time and notifies the Scheduler cluster of this instance. or restart services from the Cluster Manager. An inactive scheduler is idle at all other times. Set parameters in the NQSConfig. refer to Oracle Business Intelligence Enterprise Edition Deployment Guide.INI file. Use the mechanism provided with your operating system for stopping and restarting an Oracle BI service. ■ About the Cluster Manager The Cluster Manager is a utility that is available in the Administration Tool when a repository is open in online mode. You cannot start. see Oracle Business Intelligence Enterprise Edition Deployment Guide. Configure the Schedulers to be participants in the cluster. you can select Enable. For Oracle BI Server instances. For Oracle BI Scheduler instances. Installing the Cluster Server Component To install this component.1. For information about installing and configuring the Cluster Server.INI file. If it is queisced. It allows the Oracle BI Administrator to monitor and manage the operations and activities of the cluster. If an Oracle BI Server instance is running. Implementing the Cluster Server These are the high-level steps to implement the Cluster Server: 1 2 3 4 5 6 7 8 Install Oracle BI components. Set parameters in the NQClusterConfig. Inactive Scheduler. Set up the Oracle BI ODBC data source for clustering.2 30 3 . the only options from the right-click menu are Quiesce (stop taking new sessions) or Enable (take new sessions). stop.INI file to the Cluster Controllers and Oracle BI Server in the cluster. An active Scheduler is a clustered Oracle BI Scheduler instance which actively processes Scheduler jobs.

For detailed instructions on configuring the NQClusterConfig.3. Setting Parameters in the NQClusterConfig. The NQSConfig.INI file is located in the Config directory in the Oracle BI installation folder. Scheduler. Scheduler.1.INI File The NQClusterConfig. Configuring the Oracle BI ODBC Data Source Name All clients. you need to set parameters for any Oracle BI Server that will participate in a cluster. described in “Connectivity and Third-Party Tools in Oracle BI Server” on page 259. Cluster Controllers also read this file.INI File In the Server section of the NQSConfig. including Oracle BI Presentation Services clients. refer to Oracle Business Intelligence Infrastructure Installation and Configuration Guide. and Cluster Controller from the Command window on Windows ■ Open a Command window and type the following: net start “Oracle BI SERVER” net start “Oracle BI CLUSTER” 304 Oracle Business Intelligence Server Administration Guide Version 10. refer to Oracle Business Intelligence Enterprise Edition Deployment Guide.2 . You can then use the Cluster Manager to start additional clustered servers. refer to Oracle Business Intelligence Enterprise Edition Deployment Guide. you must start one Oracle BI Server and one Cluster Controller manually.INI file. Starting Cluster Controllers and Oracle BI Servers When you are using the Administration Tool and have a repository open in online mode. and Cluster Controller.INI file. opening a repository in online mode does not automatically start a clustered Oracle BI Server or a Cluster Controller.INI file is located in the Config directory in the Oracle BI software installation folder. therefore. For more information about this file and its parameters.Clustering Oracle BI Servers ■ Implementing the Cluster Server Setting Parameters in the NQSConfig. For more information about this file and its parameters.INI file contains the cluster configuration parameters. You set up a DSN by using the Oracle BI DSN Configuration wizard. you need to manually start each Oracle BI Server.INI file (when CLUSTER_PARTICIPANT is set to YES in the NQSConfig. you can use the Cluster Manager to monitor and manage the operations of the cluster Oracle BI Server. The NQClusterConfig.INI File A configured NQClusterConfig.INI file). To start the Oracle BI Server. NOTE: On all platforms. However. Copying the NQClusterConfig.INI file needs to reside in the Config directory of every Oracle BI Server and Cluster Controller that is to participate in the cluster. The Oracle BI Server and Scheduler read this file after it reads the NQSConfig. need to have a clustered data source name (DSN) configured in order to communicate with a cluster.

Each Oracle BI Server reads its NQClusterConfig.sh start . ■ ■ ■ ■ ■ 2 If a Oracle BI Server detects a syntax error while reading the file. All syntax errors have to be corrected for startup to continue. it waits for a connection from the primary and secondary cluster controllers. and NQCluster.INI file. If a Cluster Controller detects an error while reading the file. NQScheduler.INI file and Scheduler file when CLUSTER_PARTICIPANT is set to YES in the NQSConfig. correct the errors and restart the servers. If the log files indicate errors./run-sasch. Oracle Business Intelligence Server Administration Guide Version 10. it logs the error to its NQCluster. use a text editor to examine the log files NQServer.log. and Cluster Controller from the command line on UNIX 1 2 Navigate to a command window (xterm).2 30 5 . 1 As each Oracle BI Server starts. messages will be written to both logs. 3 When an instance of Oracle BI Server or Scheduler starts up. If a server detects a syntax error while reading the file.log file. If a machine is hosting both an Oracle BI Server and a Cluster Controller.log. In the Command window./run-ccs. Scheduler. To start the Oracle BI Server.log. and verify that all processes started without errors and joined the operational cluster configuration successfully. it logs the error to its NQServer.3.INI file.log. it reads its NQSConfig.Clustering Oracle BI Servers ■ Chronology of a Cluster Operation net start “Oracle BI SCHEDULER” NOTE: You can also use a third-party tool designed for remote service manipulation.sh start . it logs the error to its NQServer.log in the Log directories.log file in its Log directory. it logs to NQScheduler. type the following commands (the commands will be slightly different if using csh): cd INSTALLDIR/setup .1. If a Scheduler detects an error while reading the file. All syntax errors have to be corrected for startup to continue. Cluster Controllers also read this file. After you start the services and Cluster Controller.sh start Chronology of a Cluster Operation This section provides an overview of the Oracle BI Cluster Server startup process./run-sa.

However. However.3. Clustered servers do not share a common connection pool. If the repository publishing directory is not available. If an Oracle BI Server determines it can satisfy all or a portion of a query from its cache file. any online repository updates are not reflected in the server’s Repository directory.log file of the Cluster Controller. 9 306 Oracle Business Intelligence Server Administration Guide Version 10. If the server defined as the MASTER_SERVER for an online repository is not available. an error message is logged in the NQServer. no clustered ODBC connection can be made to Oracle BI Server if there is no running Cluster Controller service. ■ 6 The primary and secondary Cluster Controllers begin to exchange heartbeat messages with each participant in the cluster. it examines the repository publishing directory for any updated repositories. the server joins the cluster. The Scheduler service will start but will remain in an inactive state until a Cluster Controller service instance comes online and notifies the Scheduler of a state change. Any participants with connection problems are not allowed to join the cluster. When set to NO. you cannot edit the repository in online mode. ■ ■ 7 As each Oracle BI Server in the cluster starts. and a warning message is logged in the NQServer.) The Oracle BI Server verifies whether the repository publishing directory is available. the server communicates with the back-end database using the connection defined in the Connection Pool dialog box for the database. Clustered servers do not share common ad-hoc query cache. A server will not detect the presence of any new repositories. the action each server takes depends on the setting for the REQUIRE_PUBLISHING_DIRECTORY parameter in its NQSConfig. online changes are detected at subsequent startups of each server. NOTE: The Oracle BI Server administrator is responsible for making sure that the time-of-day clocks are synchronized across all Oracle BI Servers and Cluster Controllers. Clustered servers do not share a common cache. After that. if each server instance is configured to do so. if the publishing directory is not available at startup or if an error is encountered while the server is reading any of the files in the directory. (This step is omitted when no secondary Cluster Controller is defined. This is done by comparing the date and timestamps.2 . An ODBC session maintains affinity to one Oracle BI Server session for the lifetime of that session. 8 When the Cluster Controller assigns a session to a particular Oracle BI Server.1. Messages are also logged in the NQCluster. ■ When set to YES.log file. They can share cache for seeded queries. ■ ■ If a server detects a newer version of an existing repository.Clustering Oracle BI Servers ■ Chronology of a Cluster Operation ■ Oracle BI Server can run without the presence of a Cluster Controller service instance. it copies the repository to its own Repository directory.log file and the server shuts down. ■ The connection status is logged in the log files of the appropriate clustered instance (Scheduler or Oracle BI Server). A new repository must be manually propagated to all clustered servers when it is created. it will do so. ■ 4 5 The primary and secondary Cluster Controllers begin to exchange heartbeat messages.INI file.

Clustering Oracle BI Servers ■ Using the Cluster Manager Using the Cluster Manager The Cluster Manager allows you to monitor. The Cluster Manager window refreshes every minute by default. open a repository in online mode. This retrieves the most current information for the cluster. To set the refresh interval for the display 1 2 3 4 In the Administration Tool. and controllers that make up a cluster. Select Manage > Clusters. To activate an inactive Scheduler instance 1 2 3 4 In the Administration Tool. analyze. The Cluster Manager Graphical User Interface (GUI) has two panes: the Explorer pane on the left side and the Information pane on the right side. You must manually start one Cluster Controller (generally. To change this value. the primary) and one Oracle BI Server. Select Manage > Clusters. select Refresh > Every and choose another value from the list. and session information about the servers and controllers that make up a cluster. and manage the operations of a cluster. make sure the Cluster Manager is the active window and press F5. Status Information The Status view is automatically displayed when you first open the Cluster Manager window. cache.1. Viewing and Managing Cluster Information The section describes how to view status. It provides status. You can also access the Status view by selecting View > Status in the Cluster Manager window. In the Cluster Manager dialog box. If the Scheduler instance selected is inactive. or select Refresh > Now. This allows the administrator to dictate the active Scheduler instance at run time. cache. The Information pane shows detailed information about an item selected in the Explorer pane. right-click a Scheduler instance. To refresh the display at any time. You can change the interval. select Activate. and session information about a cluster and the meaning of the information provided. It is available only when the Administration Tool is connected to a clustered DSN. you cannot access the Cluster Manager to start them. NOTE: If all Cluster Controllers or Oracle BI Servers in the cluster are currently stopped or offline. open a repository in online mode. schedulers. Oracle Business Intelligence Server Administration Guide Version 10.2 30 7 . The Explorer pane displays hierarchical information about the servers.3.

If the server or controller is offline. Active. Column Status Columns Description The time the Cluster Controller or Oracle BI Server communicated with the Controlling Cluster Controller.Clustering Oracle BI Servers ■ Using the Cluster Manager The categories of information displayed in the Information pane may vary depending on the server to which Administration Tool is connected. A Cluster Controller that is currently assigned the responsibility for control of the cluster.3. The clustered server that the Administration Tool connects to for editing repositories in online mode. This role is not displayed if the primary Cluster Controller is currently the controlling Cluster Controller. The Scheduler is active.1. Table 35 on page 308 describes categories that may appear. this field may be blank. Table 35. The secondary Cluster Controller. Clustered server. The timestamp showing when the Cluster Controller or Oracle BI Server was last started. This field will be blank if the Cluster Controller or clustered server is offline. The primary Cluster Controller. Secondary. Start Time 308 Oracle Business Intelligence Server Administration Guide Version 10. Last Reported Time Name Role ■ ■ ■ Sessions This field is available when either Servers or an individual server is selected in the Explorer pane. Primary. Master. This role is not displayed for the clustered server defined as the master server. The role of the object in the cluster: ■ ■ ■ Controlling. The name of the machine hosting the Oracle BI Server or Cluster Controller. An Oracle BI Server that is a member of the cluster. It shows the number of sessions currently logged on to a clustered server. This role is not displayed if the secondary Cluster Controller is currently the controlling Cluster Controller.2 .

this means the controller cannot accept session requests or assign sessions to available servers within the cluster. The Cluster Controller or Oracle BI Server is online. Scheduler. this field is available. except that if the Oracle BI Server comes back online. Cache Information The Cache view is available in the Cluster Manager window if caching is enabled. This means that any activity in progress on outstanding sessions will be allowed to complete before the server transitions to Offline status. for example. Offline. This instance will execute jobs. For Cluster Controllers. this means that the server is not communicating with the controlling Cluster Controller and cannot accept sessions assigned by the controlling Cluster Controller. The object is an Oracle BI Server. This is identical to the offline status. The Scheduler instance is online. If you want to stop the Cluster Controller or clustered server after quiescing it. it will be allowed to participate in the cluster. Quiesce. For clustered servers. This status is applicable to clustered servers only. The object is a Cluster Controller. For clustered servers. Forced Offline.2 30 9 . if a multiple jobs are running. Column Status Status Columns Description The status of the object in the cluster: ■ Online. If the server subsequently becomes available.1. this means the controller can accept session requests and assign them to available servers within the cluster. Online: Inactive Pending. This status applies to clustered servers only. The Cluster Controller or Oracle BI Server is offline. Online: Active. The Scheduler was active and is trying to go into an inactive state. Oracle Business Intelligence Server Administration Guide Version 10. it will not be assigned requests.3. this means that the server may be assigned sessions by the Cluster Controller. The object is a Scheduler Server. running. you need to issue the Stop command. For Cluster Controllers. Server. The Scheduler is online but not running. The Oracle BI Server has been stopped. and the one to which Scheduler clients will connect.Clustering Oracle BI Servers ■ Using the Cluster Manager Table 35. This instance is ready to take over for the active instance if the active instance becomes unavailable. The server will remain in this state until the Start command is issued against this server from the Administration Tool Cluster Manager or both Cluster Controllers are shut down and restarted. There are two types: ■ ■ ■ Controller. This might take a few minutes. ■ ■ ■ ■ ■ ■ Type When Clusters is selected in the Explorer pane. Online: Inactive.

described in Table 37 on page 311. ■ ■ Session window—Appears on the top. Request window—Appears on the bottom.1. and then select View > Cache. Text of the SQL that generated the cache entry. Business Model Column count Created Creation elapsed time Full size Last used Row count Row size SQL Use count User To view cache information ■ Click an individual server in the Explorer pane. Number of columns in each row of this cache entry’s result set. Session Information The Session view is available for Oracle BI Servers. 310 Oracle Business Intelligence Server Administration Guide Version 10. Table 36 on page 310 describes categories that may appear. Time.3. Shows active query requests for the user selected in the Session window. the Last used time may temporarily have a stale value. in milliseconds. and other factors. Table 36. compression algorithm.) Number of rows generated by the query. Last time the cache entry’s result set satisfied a query.2 . that is. The actual size of the result set will be smaller than Full size. Number of times this cache entry’s result set has satisfied a query (since Oracle BI Server startup). Size of each row (in bytes) in this cache entry’s result set.Clustering Oracle BI Servers ■ Using the Cluster Manager The categories of information and their display sequence are controlled by your Options settings. The information is arranged in two windows. needed to create the result set for this cache entry. in seconds. Time the cache entry’s result set was created. ID of the user who submitted the query that resulted in the cache entry. Column Cache View Columns Description Name of the business model associated with the cache entry. considering variable length columns. needed to create the result set for this cache entry. Full size is the maximum size used. Shows users currently logged on to the Oracle BI Server. (After an unexpected shutdown of an Oracle BI Server. older than the true value.me.

Column Catalog Session Window Columns (Top Window) Description Name of the Presentation layer catalog to which the session is connected. Table 38.1. Last Active Time Request ID Session ID Oracle Business Intelligence Server Administration Guide Version 10.3. Name of the user connected. Table 37. Unique internal identifier that the Oracle BI Server assigns each query when the query is initiated. Unique internal identifier that the Oracle BI Server assigns each session when the session is initiated. Client Type Last Active Time Logon Time Repository Session ID User Table 38 on page 311 describes the information that appears in the Request window. The client type of Administration is reserved for the user logged in with the Oracle BI Administrator user ID.2 31 1 . Timestamp of the last activity on the session or the query. Timestamp when the session logged on to Oracle BI Server.Clustering Oracle BI Servers ■ Using the Cluster Manager Table 37 on page 311 describes the information that appears in the Session window. Type of client session. Logical name of the repository to which the session is connected. Column Request Window Columns (Bottom Window) Description Timestamp of the last activity on the session or the query. Unique internal identifier that Oracle BI Server assigns each session when the session is initiated.

Executed. and then select View > Sessions. Succeeded. The request has been canceled. When the operation finishes. Canceled. The request is currently running. select a server. To disconnect a session ■ In the Session view. These are the possible values. Due to the speed at which some processes complete. The request is being prepared for processing. Prepared. It shows all users logged into the server and all current query requests for each user. Column Request Window Columns (Bottom Window) Description Time of the initial query request. Session information for the server is displayed in the Information pane. An error was encountered during the processing or running of the request. The request ran to completion successfully. The request is being retrieved.3. Executing. The request has been retrieved. Select Action. the status of the clustered server will be refreshed automatically. Failed. Fetched. 312 Oracle Business Intelligence Server Administration Guide Version 10. right-click the session in the Session window (top window) and click Disconnect. In the Information pane.1. Preparing. and then select one of the available options. select it and click the Kill Request button. not all values for any given request or session may appear. click the plus sign (+) to the left of the Server icon to display the servers in the cluster. To view session information ■ Select a server in the Explorer pane. Start Time Status ■ ■ ■ ■ To manage clustered servers 1 2 3 In the Explorer pane. The request has finished running. ■ ■ ■ ■ ■ ■ Idle. The request has been prepared for processing and is ready for execution.2 . The user will receive an informational message indicating that the Oracle BI Administrator cancelled the request.Clustering Oracle BI Servers ■ Using the Cluster Manager Table 38. Fetching. To kill a request. There is presently no activity on the request or session.

Because each Oracle BI Server maintains its own local query results cache. queries that are explicitly seeded through a cache seeding iBot are shared across nodes in the cluster.2 31 3 . A session is assigned to the server with the fewest sessions.3.Clustering Oracle BI Servers ■ Performance Considerations To kill a query request ■ In the Session view. ■ Sessions are assigned to an Oracle BI Server when the session is established. where N is the number of active servers in the cluster and M is the maximum sessions allowed in the connection pool of a single repository. If you are using cluster aware caching. Because each Oracle BI Server maintains its own local query results cache. it may be appropriate to reduce the maximum number of sessions configured in session pools. Performance Considerations This section describes characteristics of the Cluster Server that may influence the performance of clustered Oracle BI Servers. right-click the request in the Request window (bottom window) and click Kill Request. As a result. Therefore. see Oracle Business Intelligence Enterprise Edition Deployment Guide. back-end databases may experience as many as N*M connections. For more information. You should consider these points when implementing the Cluster Server. ■ ■ ■ Oracle Business Intelligence Server Administration Guide Version 10. back-end databases may receive the same query from multiple Oracle BI Servers even though the result is cached. Server Information Selecting Server info from the View menu provides information about the cluster server such as server version number. the load on Oracle BI Servers can vary and Oracle BI Servers brought online into an operational cluster may not receive work for some time.1. Because each Oracle BI Server has an independent copy of each repository and hence its own back-end connection pools. Oracle BI Servers that are brought online into an operational cluster may respond to queries more slowly while their local cache is being populated.

3.2 .Clustering Oracle BI Servers ■ Performance Considerations 314 Oracle Business Intelligence Server Administration Guide Version 10.1.

The Oracle BI Server and Oracle BI Presentation Services client support industry-standard security for login and password encryption.15 Security in Oracle BI The Oracle BI Server provides secure access control at any level. users need to be authenticated by the Oracle BI Server for a session to take place. This section includes the following topics: ■ ■ ■ Working with Users on page 315 Working with Groups on page 317 Importing Users and Groups from LDAP on page 321 Working with Users User accounts can be defined explicitly in an Oracle BI repository or in an external source (such as a database table or an LDAP server). After reading this section. the Oracle BI Server uses the Hyper Text Transport Protocol Secure (HTTPS) standard to send the information to a secure port on the Oracle BI Presentation Services. When an end user enters a login and password in the Web browser. synchronize LDAP users and groups.3. This provides a high level of security (168 bit). using Triple DES (Data Encryption Standard). At the database level. This section contains the following topics: ■ ■ ■ Oracle BI Security Manager on page 315 Authentication Options on page 324 Managing Query Execution Privileges on page 330 Oracle BI Security Manager The Oracle BI Security Manager displays all security information for a repository. You can use the Security Manager to set up users and groups. However user accounts are defined. and set up a managed query environment in which you have a great deal of control over when users can access data. NOTE: You should read this section to understand the basics about security and setting up authentication. set filters on information. set access privileges for objects such as tables and columns. preventing unauthorized users from accessing data or Oracle BI metadata. the information is passed through ODBC to the Oracle BI Server.2 31 5 . From the Oracle BI Presentation Services. Finally. a proprietary key-based encryption provides security to prevent unauthorized users from accessing the Oracle BI metadata repository. Oracle BI Administrators can implement database security and authentication. Oracle Business Intelligence Server Administration Guide Version 10. refer to details about configuring security for Oracle BI applications in Oracle Business Intelligence Applications Installation and Administration Guide.1.

For more information about query logging. The maximum interval is 365 days. Type a name and password for the user. select the option Password Never Expires.Security in Oracle BI ■ Oracle BI Security Manager Users defined explicitly in a repository can access business models in that repository. refer to “Setting a Logging Level” on page 215.2 . If you click Permissions. 316 Oracle Business Intelligence Server Administration Guide Version 10. This creates a new user with default rights granted to it. If you want to log queries for this user in the query log. If you want the user’s password to expire. the password expires and must be changed. or a combination of the two.1. When the specified number of days passes after the password is created or changed. through groups. To add a new user to a repository 1 2 3 4 5 Open a repository in the Administration Tool. you can change permissions for multiple columns. check as many groups as you want the user to be a part of in the Group Membership portion of the dialog box.INI file. but they cannot span repositories. refer to “About the Oracle BI Administrator Account” on page 317. 6 Click OK. use the Days drop-down list to select the number of days to elapse before the user’s password will expire. ■ ■ If the user’s password should never expire. To grant membership in a group. Select Action > New > User to open the User dialog box. Specify the password expiration option. The Oracle BI Administrator user account is created automatically when a repository is created and cannot be deleted.3. In the NQSConfig. open the User dialog by double-clicking on the user icon you want to modify. This section includes the following topics: ■ ■ Adding a New User to a Repository on page 316 About the Oracle BI Administrator Account on page 317 Adding a New User to a Repository Use this procedure to add a new user to a repository. 9 You can grant rights to the user individually. change the query logging level to 1 or 2. Display the security manager by selecting Manage > Security. For more information about the Oracle BI Administrator user account. the default rights are specified by the entry DEFAULT_PRIVILEGES. 7 8 To modify the user’s permissions.

The Oracle BI Administrator account belongs to the Administrators group by default and cannot be deleted from it. This is a permanent account. Like Windows NT and Windows 2000. that is. the repository shipped with Oracle BI. 11 Set up any query permissions for the user. NOTE: If a user specifies database-specific logon IDs in the DSN used to connect to the Oracle BI Server. The administrative privileges granted to this account function only within the Oracle BI Server environment. Oracle BI Server groups can allow access to objects. Any query issued from the Oracle BI Administrator account has complete access to the data. the Oracle BI Administrator account is created automatically and has no password assigned to it. and database groups or roles. NOTE: The Oracle BI Administrator account is not the same as the Windows NT and Windows 2000 Administrator account. You should assign a password for the Oracle BI Administrator account as soon as you create the repository. the logon IDs in the DSN are used if the Oracle BI Administrator has configured a connection pool with no default database-specific logon ID and password. creating business models.Security in Oracle BI ■ Oracle BI Security Manager 10 To specify specific database logon IDs for one or more databases. such as importing physical schemas. no restrictions apply to any objects. Additionally. and creating users and groups.2 31 7 . The Oracle BI Server groups are similar to groups in Windows NT and Windows 2000. It cannot be deleted or modified other than to change the password and logging level. refer to “Managing Query Execution Privileges” on page 330.3. For information.1. has the default password SADMIN. When you create a new repository. About the Oracle BI Administrator Account The Oracle BI Administrator account (user ID of Administrator) is a default user account in every Oracle BI repository. It is designed to perform all administrative tasks in a repository. The Oracle BI Administrator account created during the installation of the Oracle BI repository.INI file using the MINIMUM_PASSWORD_LENGTH setting. NOTE: You can set the minimum length for passwords in the NQSConfig. The person logged on using the Oracle BI Administrator user ID or any member of the Oracle BI Administrators group has permissions to change anything in the repository. Oracle BI Server groups can explicitly deny particular security attributes to its members. For information about configuring the connection pools to support database-specific logon IDs. type the appropriate user IDs and passwords for the user in the Logons tab of the User dialog box. Working with Groups The Oracle BI Server allows you to create groups and then grant membership in them to users or other groups. refer to “Creating or Changing Connection Pools” on page 67. You can think of a group as a set of security attributes. and to groups or roles in database management systems (DBMS). Oracle Business Intelligence Server Administration Guide Version 10.

refer to “Using System Session Variables” on page 287.2 . users who are members of Group1 and Group3 can access the system only on weekends.3. refer to “Adding a New Group” on page 320. Defined Groups You can create an unlimited number of groups in an Oracle BI repository. For more information about session variables. another group that denies access on Saturdays and Sundays (Group2). Use caution in granting membership in the Oracle BI Administrators group to users or other groups. Any subsequent modifications to that group will affect all users who belong to it. you can create one group that denies access to the repository on Mondays and Wednesdays (Group1). Group Inheritance Users can have explicitly granted privileges. This section includes the following topics: ■ ■ ■ ■ ■ Predefined Administrators Group on page 318 Defined Groups on page 318 Group Inheritance on page 318 Adding a New Group on page 320 Viewing Member Hierarchies on page 320 Predefined Administrators Group The Oracle BI Server has one predefined group. Thursdays. the Oracle BI Administrators group. Any user who is a member of the Oracle BI Administrators group has all of the privileges of the Oracle BI Administrator user. Any explicit permissions acting on a user take precedence over any privileges on the same objects granted to that user through groups. that in turn can have privileges granted through membership in other groups.Security in Oracle BI ■ Oracle BI Security Manager Groups can simplify administration of large numbers of users. Privileges granted explicitly to a user have precedence over privileges granted through groups. Users who are members of Group2 can access the system only during weekdays. Membership in the Oracle BI Administrators group supersedes all privileges granted to a user. Each group can contain explicitly granted privileges or privileges granted implicitly using membership in another group. and so on. 318 Oracle Business Intelligence Server Administration Guide Version 10. and privileges granted explicitly to the group take precedence over any privileges granted through other groups. and so on. and Fridays (Group3). If there are multiple groups acting on a user or group at the same level with conflicting security attributes. the user or group is granted the least restrictive security attribute. They can also have privileges granted through membership in groups. You can grant or deny sets of privileges to a group and then assign membership in that group to individual users. Members of this group have the authority to access and modify any object in a repository. either through groups or explicitly through the user privileges. and another that denies access on Tuesdays. Externally defined users can be granted group membership by use of the GROUP session variable.1. The predefined Oracle BI Administrator user ID is automatically a member of the Oracle BI Administrators group. For more information about setting up a group. For example.

Figure 22. The resultant privilege for User1 is to read TableA. User Privileges and Group Privileges Example 2 Consider the situation shown in Figure 22 on page 319.1. that explicitly denies access to TableA. Figure 21. User1 has the privilege to read TableA.Security in Oracle BI ■ Oracle BI Security Manager Example 1 Suppose you have a user (User1) who is explicitly granted permission to read a given table (TableA).3. Because privileges granted directly to the user take precedence over those granted through groups.2 31 9 . Privileges Example These are the resulting privileges: Oracle Business Intelligence Server Administration Guide Version 10. Suppose also that User1 is a member of Group1. as shown in Figure 21 on page 319.

6 7 Viewing Member Hierarchies Use the following procedures to view member hierarchies. click Add and select any users or groups you want to grant membership. and Group5. and then right-click on white space in the left pane and select New Security Group from the right-click menu.Security in Oracle BI ■ Oracle BI Security Manager ■ ■ User1 is a direct member of Group1 and Group2.2 . The total privileges granted to User1 are READ access for TableA. The result is that Group2 provides READ privilege on TableA. you can change permissions for multiple columns. the less restrictive level is inherited by User1. To add a new group to a repository 1 2 3 Open a repository in the Administration Tool. Group4. Group2 allows access to TableA). To grant membership to a group. NOTE: You can also select the Group icon in the left pane. To modify the group’s permissions. by explicit configuration for the group. 320 Oracle Business Intelligence Server Administration Guide Version 10. 4 5 Type a name for the group and click OK. NOTE: Unlike the User dialog box.1. The Group dialog box appears. READ for TableB. You can grant rights to the group by adding other groups. Because Group1 and Group2 have the same level of precedence and because the privileges in each cancel the other out (Group1 denies access to TableA. ■ ■ ■ Adding a New Group The following procedure explains how to add a new group to a repository. and READ for TableC. TableB. If you click on Permissions. The resultant privileges from Group1 are DENY for TableA. refer to “Managing Query Execution Privileges” on page 330. Set up any query permissions for the group.3. This creates a new group with no rights granted to it. and TableC. Click OK after you have selected the groups and users. and is an indirect member of Group3. Select Action > New > Group from menu. User1 has READ access to TableA. (The repository can be opened in either online or offline mode. that is. the Group dialog box does not allow you to select a logging level. The logging level is a user attribute and cannot be specified for a group. For information. its denial of access to TableA is overridden by the READ privilege granted through Group2. or a combination of the two. open the Group dialog by double-clicking on the group icon you want to modify. Because Group5 is at a lower level of precedence than Group2.) Display the security window by selecting Manage > Security.

To view the groups that a group is a member of. Users are authenticated. This allows the Oracle BI Administrator to reliably override users that exist in an external security system. to view what groups Group1 is a member of. check All Computers or. include the AD server as a Logon workstation.3. select Group1 and click the Parent button. To view member hierarchies in the Query Repository dialog box 1 2 3 4 Select Tools > Query Repository from the main menu of the Administration Tool. all normal Oracle BI Server user and group functions are available. To view all users. For example.2 32 1 . You can resynchronize your imported list at any time. NOTE: For information about the basics of security and setting up authentication. and their group privileges determined. and then expand the tree in the right pane. you can import your existing LDAP users and groups to a repository. You can also authenticate against LDAP as an external source. To view all groups. After imported. For instances of Oracle BI that use ADSI as the authentication method. Importing Users and Groups from LDAP If your organization uses Lightweight Directory Access Protocol (LDAP). The following option must not be checked: User must change password at next logon Oracle Business Intelligence Server Administration Guide Version 10. when they log on. NOTE: If you create a variable for the same user in both the repository and in a LDAP server. select Security Groups from the Type drop-down list and click Query. select the group and click Parent. refer to “Setting Up LDAP Authentication” on page 324. refer to “Oracle BI Security Manager” on page 315. if you list some computers.1.Security in Oracle BI ■ Oracle BI Security Manager To view member hierarchies in the Security Manager ■ Click the hierarchy icon in the left pane of the Security Manager. select Users from the Type drop-down and click Query. For more information about using LDAP authentication. the following options should be used when setting up the AD instance: ■ ■ In Log On To. users are not imported into the repository. the local repository user definition takes precedence and LDAP authentication will not occur. This section includes the following topics: ■ ■ ■ Setting Up an LDAP Server on page 321 Importing Users from LDAP on page 323 Synchronizing Users and Groups with LDAP on page 323 Setting Up an LDAP Server This section explains how to set up LDAP authentication for the repository. When you do this.

From the Security Manager menu. and type the required information. When the Administration Tool attempts to connect to an LDAP server for import purposes or the Oracle BI Server attempts to connect to an LDAP server for user authentication. complete the necessary fields. choose Action > New > LDAP Server. From the application menu. in the General tab. not all LDAP servers allow anonymous binding. The base distinguished name (DN) identifies the starting point of the authentication search. To set up LDAP authentication for the repository 1 2 3 4 Open a repository in the Administration Tool in offline or online mode. 322 Oracle Business Intelligence Server Administration Guide Version 10. The name of your LDAP server. The default is LDAP 3. NOTE: The Oracle BI Server uses clear text passwords in LDAP authentication.3. The default LDAP port is 389. The following list of fields (or buttons) and descriptions contain additional information to help you set up the LDAP server: ■ ■ ■ ■ Host name. For example. LDAP version. Use this button to verify your parameters by testing the connection to the LDAP server. If you click Yes. Bind DN and Bind Password. but required for LDAP V2. These fields are optional for LDAP V3. if you want to search all of the entries under the o=Oracle. Disabling the authentication cache can slow performance when hundreds of sessions are being authenticated.1. choose Manage > Security. If these two entries are blank. Make sure your LDAP Servers are set up to allow this. because LDAP V2 does not support anonymous binding. o=Oracle. the connection will time out after the specified interval. These fields are required if you select the ADSI check box. 5 Click the Advanced tab.com is the base DN.Security in Oracle BI ■ Oracle BI Security Manager In the Administration Tool.2 .com subtree of the directory. Base DN. If you leave these fields blank. Port number. the CN user used for the BIND DN of the LDAP Server section must have both ldap_bind and ldap_search authority. In the LDAP Server dialog box. The optional DN and its associated user password that are required to bind to the LDAP server. ■ Connection timeout. ■ ■ Test Connection. anonymous binding is assumed. anonymous binding is assumed. The following list of fields and descriptions contain additional information to help you set up the LDAP server: NOTE: The Oracle BI Server maintains an authentication cache in memory that improves performance when using LDAP to authenticate large numbers of users. LDAP 2 or LDAP 3 (versions). a warning message appears asking if you want to leave the password empty anyway. For security reasons.

this is the RDN (relative distinguished name). Select the LDAP server from which you want to import users or groups. If two different users have the same user ID and each is on a different LDAP server. 4 Select the users you want to import and click Import. (Active Directory Service Interfaces) A type of LDAP server. you can choose to synchronize the repository with the LDAP server.. or you can import all users and groups. After selecting the appropriate LDAP server. it will be authenticated against all available LDAP servers in turn. only one user can be authenticated. use sAMAccountName. This uniquely identifies a user. In many cases. SSL. ■ ■ ■ ADSI. and select Import. NOTE: For information about configuring cache settings and SSL. the identifier is a single word that uniquely identifies the domain for which the LDAP object is responsible. User Name Attribute Type. you can choose to synchronize the repository with the LDAP server.) You can choose to import selected users or groups. From the application menu. The users log in to the Oracle BI Server using the following format: domain_id/user_id If a user enters a user id without the domain identifier. If you select the ADSI check box. Bind DN and Bind password are required. If there are multiple users with the same ID..1. choose Manage > Security. For most LDAP servers. you would use the user ID. You can import groups by selecting Groups from the drop down list instead of Users. Typically.Security in Oracle BI ■ Oracle BI Security Manager ■ Domain identifier.3. select LDAP Servers in the left pane to display existing LDAP servers in the right pane. Typically. you can designate domain identifiers to differentiate between them. In the Security Manager. This is especially useful when you use multiple LDAP objects. or you can import all users or groups. For ADSI. select LDAP > Synchronize (or choose Synchronize from the right-click menu). To import LDAP users and groups to a repository 1 2 3 Open a repository in the Administration Tool in offline or online mode.2 32 3 . If you have previously performed an import. you accept the default value. If you have previously done an import. refer to Oracle Business Intelligence Enterprise Edition Deployment Guide. Synchronizing Users and Groups with LDAP You can refresh the repository users and groups with the current users and groups on your LDAP server. (You can also select the server and then select LDAP > Import. Oracle Business Intelligence Server Administration Guide Version 10. from the right-click menu. (Single Socket Layer) Check this box to enable this. Importing Users from LDAP You can import selected users or groups.

you can set up the Oracle BI Server to take the user ID and password typed by a user and pass them to an LDAP server for authentication. such as the user display name (used by Oracle BI Presentation Services) and the name of any groups to which the user belongs.2 . In addition to basic user authentication. the LDAP server can also provide the Oracle BI Server with other information. NOTE: With external LDAP authentication (discussed in the next section). The Oracle BI Server supports the following authentication types: ■ ■ ■ ■ ■ Setting Up LDAP Authentication on page 324 Setting Up External Table Authentication on page 326 Setting Up Database Authentication on page 327 About Oracle BI Delivers and Database Authentication on page 328 Maintaining Oracle BI Server User Authentication on page 329 Setting Up LDAP Authentication Instead of storing user IDs and passwords in an Oracle BI repository. If you have recycled a login name for another user. You need to perform the following steps to set up LDAP authentication: 324 Oracle Business Intelligence Server Administration Guide Version 10.Security in Oracle BI ■ Authentication Options Synchronization updates your list of repository users and groups to mirror your current LDAP users and groups. drop that name from your repository prior to synchronization. refer to “Using the Variable Manager” on page 283. that you define using the Variable Manager of the Administration Tool. The special user Administrator and the special group Administrators always remain in your repository and are never removed.3. import and synchronization are not really necessary. For more information about the Variable Manager. refer to “Understanding and Creating Session Variables” on page 286. This assures that the process will import the new LDAP user definition. This information is contained in LDAP variables that get passed to Oracle BI session variables during the process of user authentication. Authentication Options Authentication is the process by which a system uses a user ID and password ti verify that a user has the necessary permissions and authorizations to log in and access data. The LDAP server can also provide the names of specific database catalogs or schemas to use for each user when querying data. Properties of users already included in the repository are not changed by synchronization. For more information about session variables. LDAP authentication uses Oracle BI session variables. Users and groups that do not exist on your LDAP server are removed from the repository. The server uses clear text passwords in LDAP authentication.1. The Oracle BI Server authenticates each connection request it receives. Make sure your LDAP servers are set up to allow this. The primary use for import is to make it easy to copy LDAP users as Oracle BI users for testing.

you define a system variable called USER and associate it with an LDAP initialization block that is associated with an LDAP server. other session variables for the user could also be populated from information returned by the LDAP server. Create an LDAP initialization block and associate it with an LDAP server.2 32 5 . refer to “Setting Up External Table Authentication” on page 326. the local repository user definition takes precedence and LDAP authentication will not occur. For instructions. For users not defined in the repository. the user ID and password will be passed to the LDAP server for authentication. Associate the USER system variable with the LDAP initialization block. see “Setting Up an LDAP Server” on page 321. see “About Authenticating Users Using Initialization Blocks” on page 293. Session variables get their values when a user begins a session by logging on. Right-click on the right pane and select New USER.3. To define the USER session system variable for LDAP authentication 1 2 3 4 Select Manage > Variables from the Administration Tool menu. 5 Click OK to create the USER variable. For more information. For more information about the USER system variable. Associating USER with an LDAP initialization block determines that the user will be authenticated by LDAP. NOTE: If you create a variable for the same user in both the repository and in a LDAP server. To provide other forms of authentication. the presence of a defined session system variable USER determines that external authentication is performed.USER dialog box. 4 5 If applicable. The selected initialization block provides the USER session system variable with its value. The information in this section assumes that an LDAP initialization block has already been defined. Oracle Business Intelligence Server Administration Guide Version 10. When a user logs into the Oracle BI Server. called system session variables. The variable USER is a system variable that is used with LDAP authentication. Select the System leaf of the tree in the left pane. Defining a USER Session Variable for LDAP Authentication To set up LDAP authentication. refer to “Using System Session Variables” on page 287 and “Defining a USER Session Variable for LDAP Authentication” on page 325. Setting up an LDAP initialization block is explained in “Process of Creating Initialization Blocks” on page 293.Security in Oracle BI ■ Authentication Options 1 2 3 Create an LDAP Server using the Administration Tool menu path: Manage > Security. In the Session Variable . For more information. delete users from the Oracle BI repository file.1. have special uses. Certain session variables. After the user is authenticated successfully. Define a system variable named USER and map the USER variable to an LDAP attribute (uid or sAMAccountName). associate the USER variable with an initialization block associated with an external database or XML source. select the appropriate LDAP initialization block from the Initialization Block drop-down list.

NOTE: If a user belongs to multiple groups. The variable USER is a system variable that is used with external table authentication. then database authentication is performed. External table authentication can be used in conjunction with database authentication. External table authentication uses Oracle BI session variables that you define using the Variable Manager of the Administration Tool. and “Order of Authentication” on page 330 for additional details. refer to “Setting Up LDAP Authentication” on page 324. Associating USER with an external database table initialization block determines that the user will be authenticated using the information in this table. Select Manage > Variables to open the Variable Manager. called system variables. other session variables for the user could also be populated from the results of this SQL query.3. To set up external table authentication. the group names should be included in the same column separated by semicolons. The presence of a defined system variable USER determines that external authentication is done. Refer to “Setting a Logging Level” on page 215 for more information. Session variables get their values when a user begins a session by logging on. associate the USER system variable with an initialization block associated with a LDAP server or XML source. The external database table contains user IDs and passwords. Certain session variables. refer to “Understanding and Creating Session Variables” on page 286. Refer to “Setting Up Database Authentication” on page 327. For more information. have special uses. the database sql_nqsecurity contains a table named securitylogons and has a connection pool named External Table Security. then database authentication is not performed. If external table authentication fails. In this illustration. including group membership and display names used for Oracle BI Presentation Services users. you can maintain lists of users and their passwords in an external database table and use this table for authentication purposes.Security in Oracle BI ■ Authentication Options Setting the Logging Level Use the system variable LOGLEVEL to set the logging level for users who are authenticated by an LDAP server. If external table authentication succeeds. After the user is authenticated successfully. and could contain other information. 2 326 Oracle Business Intelligence Server Administration Guide Version 10. Whenever a user logs in. For more information about the Variable Manager. The table could also contain the names of specific database catalogs or schemas to use for each user when querying data. For more information about session variables.2 . To provide other forms of authentication. the user ID and password will be authenticated using SQL that queries this database table for authentication. refer to “Using the Variable Manager” on page 283. you define a system variable called USER and associate it with an initialization block that is associated with an external database table. Setting Up External Table Authentication Instead of storing user IDs and passwords in an Oracle BI repository. To set up external table authentication 1 Import information about the external table into the Physical layer.1.

Security in Oracle BI ■ Authentication Options 3 4 5 6 7 8 Select Initialization Blocks on the left tree pane. If external table authentication succeeds. then database authentication is performed. 9 If this query returns data. The query will return data only if the user ID and password match values found in the specified table. Click Browse to search for the name of the connection pool this block will use. and LOGLEVEL) by clicking New in the dialog's Variables tab. The order of the variables and the order of the columns will determine which columns are assigned to which variables. If a variable is not in the desired order. If external table authentication fails. substituting valid values for :USER and :PASSWORD to verify that a row of data returns. If a user has read permission on a specified database. the user will be trusted by the Oracle BI Server. The values returned by the database in the columns in your SQL will be assigned to variables. Setting Up Database Authentication The Oracle BI Server can authenticate users through database logons. and then click on New Initialization Block from the right-click menu. click on the variable you want to reorder and use the Up and Down buttons to move it. In the Initialization Block dialog box. Oracle Business Intelligence Server Administration Guide Version 10. SalesRep.1. :PASSWORD (note the colon again) equals the password the user typed. Consider the SQL in the following example: select username. Refer to “Setting Up External Table Authentication” on page 326 and “Order of Authentication” on page 330 for additional details. four session variables will be populated. DISPLAYNAME. Unlike operating system authentication. grp_name. GROUP. Database authentication can be used in conjunction with external table authentication.2 32 7 . refer to “About Oracle BI Delivers and Database Authentication” on page 328. Because this query returns four columns. this authentication can be applied to Oracle BI Presentation Services users. then database authentication is not performed. You should test the SQL statement outside of the Oracle BI Server. For information. the user is authenticated and session variables will be populated. type the SQL statement that will be issued at authentication time. Create these variables (USER. Select Database from the Data Source Connection drop-down list. Right-click on white space in the right pane.3. 2 from securitylogons where username = ':USER' and pwd = ':PASSWORD' This SQL contains two constraints in the WHERE clause: ■ ■ :USER (note the colon) equals the ID the user entered when logging on. type the name for the initialization block. In the Initialization String area. 10 Click OK to save the initialization block.

Security in Oracle BI ■ Authentication Options Database authentication requires the user ID to be stored in the Oracle BI repository. About Oracle BI Delivers and Database Authentication In Oracle BI Applications. If the logon is denied.INI file (as specified in Step 3). and that connection pool can only be selected in an initialization block for the USER system session variable. 6 When a user logs on to the Oracle BI Server. all database authentication must be performed in only one connection pool. Oracle BI Scheduler Server runs Delivers jobs for users without accessing or storing their passwords. 4 5 Create a DSN for the database. However. this initialization block is skipped. The Oracle BI repository is preconfigured for database authentication. the Scheduler uses one user ID and password with Oracle BI Administrator privileges that can act on behalf of other users. The Scheduler initiates an iBot by logging on to Oracle BI Presentation Services with that Oracle BI Administrator ID and password. Set up the connection pool without a shared logon. All other initialization blocks must use connection pools that do not use database authentication. For more information. users are always created in the operational application database. see Oracle Business Intelligence Infrastructure Installation and Configuration Guide. Assign the permissions (including group memberships. the Oracle BI Server issues a message to the user indicating an invalid user ID or password. never in the Oracle BI repository. To set up database authentication 1 2 3 Create users in the repository named identically to the users in a database.1. Import the database into the Physical layer. The database name in the Physical layer has to match the database name in the NQSConfig. When impersonation is used. If this connection succeeds.3. Using a process called impersonation.INI file. SQL statements can use :USER AND :PASSWORD. For Delivers to work. CAUTION: Using an authentication initialization block is the only initialization block in which it is acceptable to use a connection pool in which :USER and :PASSWORD are passed to a physical database. the user is considered to be authenticated successfully. This is typically called the Authentication Initialization Block. Specify the authentication database in the Security section of the NQSConfig. the server attempts to use the logon name and password to connect to the authentication database using the first connection pool associated with it. if any) you want the users to have. because Oracle BI Scheduler Server does not store user passwords. Passwords are not stored in the repository. You do not need to import the physical table objects. the WHERE clause must be constructed as shown in the following example: 328 Oracle Business Intelligence Server Administration Guide Version 10. For other initialization blocks.2 .

3. User IDs are valid only for the repository in which they are set up.Security in Oracle BI ■ Authentication Options select username.INI file. For information about configuring user authentication. In the Security Manager dialog box. In the Confirm Password text box. Changing Oracle BI Server User Passwords You can change user passwords in the Administration Tool. Passwords are stored in encrypted form and are casesensitive. Maintaining Oracle BI Server User Authentication You can maintain lists of users and their passwords in the Oracle BI repository using the Administration Tool.1. The Oracle BI Server user IDs are stored in nonencrypted form in an Oracle BI repository and are caseinsensitive. To change a user password 1 2 3 4 5 6 Select Manage > Security. dbname. Oracle Business Intelligence Server Administration Guide Version 10. refer to the Oracle BI Delivers examples in “Selecting and Testing the Data Source and Connection Pool” on page 294. type the new password.2 32 9 . refer to Oracle Business Intelligence Enterprise Edition Deployment Guide. In the User tab. or database authentication has been specified in the NQSConfig. right-click the user whose password you want to change. everything in the parentheses is extracted from the SQL statement at runtime. passwords are not stored in the Oracle BI repository. and then click OK. Select Properties from the shortcut menu. groupname. select Users in the left pane. schemaname from users where username=':USER' NQS_PASSWORD_CLAUSE(and pwd=':PASSWORD')NQS_PASSWORD_CLAUSE NOTE: When impersonation is used. Refer to “Order of Authentication” on page 330 for additional information. In the right pane. They do not span multiple repositories. NOTE: If you are using LDAP or external table authentication. type the password again. The Oracle BI Server user IDs can be used to access any business model in a repository provided that the users have the necessary access privileges. For more information. The Oracle BI Server will attempt to authenticate users against this list when they log on unless another authentication method has already succeeded.

Additionally.2 .INI file. ■ Time periods. the user will be denied access to the child objects. unless OS authentication is explicitly turned off in the NQSConfig. If you do not select a time period. or time periods ■ Objects. you are implicitly denying access to all of the physical tables and physical columns in that catalog. ■ ■ Controlling runaway queries by limiting queries to a specific number of rows or maximum run time Limit queries by setting up filters for an object All restrictions and controls can be applied at the user level. no controls. the user is granted the least restrictive access for the defined time periods. You can put a high level of query controls on users. explicitly and through one or more groups). or somewhere in between. but belongs to a group that is disallowed access during all hours of every day. OS authentication is not used for Oracle BI Presentation Services users. then OS authentication is triggered. refer to Oracle Business Intelligence Enterprise Edition Deployment Guide. the privileges are used based on the order of precedence. For example. If you explicitly deny access to an object that has child objects. If the server finds the session variable USER. depending on the configuration of the initialization block with which the USER variable is associated.3. at the group level. database authentication) occurs only after these other possibilities have been considered.Security in Oracle BI ■ Managing Query Execution Privileges Order of Authentication If the user does not type a logon name. If a user or group is granted or disallowed privileges on an object from multiple sources (for example. You can grant or disallow the ability to execute direct database requests for a user or group. Managing Query Execution Privileges The Oracle BI Server allows you to exercise varying degrees of control over the repository information that a user can access. If you allow or disallow access explicitly in one or more groups. This means that the user will have access on Mondays only. if you explicitly deny access to a particular physical database object. The Oracle BI Server populates session variables using the initialization blocks in the desired order that are specified by the dependency rules defined in the initialization blocks. Oracle BI Server internal authentication (or. as described in “Group Inheritance” on page 318. The following list contains some types of activities you may want to limit: ■ Restricting query access to specific objects. it performs authentication against an LDAP server or an external database table. including rows and columns. For more information. or a combination of the two.1. optionally. suppose a user is explicitly allowed access all day on Mondays. Controlling query privileges allows you to manage the query environment. access rights remain unchanged. 330 Oracle Business Intelligence Server Administration Guide Version 10. For example.

choose Manage > Security. in the Execute Direct Database Requests drop-down list. In the User/Group Permissions dialog box. In the User/Group Permissions dialog box. click Permissions.2 33 1 . In the User or Group dialog box. refer to “Setting Permissions for Repository Objects” on page 33. In the right pane. in the tree pane. In the Populate Privilege drop-down list. Oracle Business Intelligence Server Administration Guide Version 10. select Users or Groups. 7 Click OK twice to return to the Security Manager dialog box. select Allow or Disallow. in the Name list. and then click Select. any existing privileges (for example. click the General tab and perform the following steps: a b c In the General tab. NOTE: For the selected user or group. perform the following steps: a b Click the Query Limits tab and select the database. In the Security Manager dialog box. choose Manage > Security. In the Security Manager dialog box. For more information about assigning permissions. NOTE: For the selected user or group.3.1. click the Query Limits tab and expand the dialog box to view all columns. right-click the name that you want to change and select Properties. the user is disallowed read privileges on the object. In the Browse dialog box.Security in Oracle BI ■ Managing Query Execution Privileges To limit queries by objects for a user or group 1 2 3 4 5 From the Administration Tool menu bar. click Add. assign the permissions by selecting or clearing the Read check box for each object. this overrides the database property Allow direct database requests for all. in the tree pane. click the Permissions tab. 6 To explicitly allow or disallow populate privilege or the ability to execute direct database requests for specific database objects. (Default is a check) If the check box contains a check. select Allow or Disallow. to explicitly allow or disallow access to one or more objects in the repository. In the User/Group Permissions dialog box. the user has read privileges on the object. right-click the name that you want to change and select Properties. If it is blank. select Users or Groups. this overrides the database property Allow populate queries for all. In the User or Group dialog box. c To explicitly allow or disallow the ability to execute direct database requests for specific database objects. If the check box contains an X. select the objects you want to change. To limit queries by number of rows received by a user or group 1 2 3 4 5 From the Administration Tool menu bar. through a group) on the object apply. In the right pane.

In the Browse dialog box. In the right pane. perform the following steps: a b 7 8 In the Max Time column.3. in the tree pane. right-click the name that you want to change and select Properties. From the Status Max Time drop-down list. select Users or Groups. click the ellipsis button. To limit queries by setting up a filter on an object for a user or group 1 2 3 4 5 6 From the Administration Tool menu bar. In the User or Group dialog box. click the Filters tab. click the start time and drag to the end time. In the User/Group Permissions dialog box. click Allow. To limit queries by maximum run time or to time periods for a user or group 1 2 3 4 5 6 From the Administration Tool menu bar. Click OK twice to return to the Security Manager dialog box.2 . In the right pane. To explicitly disallow access. To specify the maximum time a query can run on a database. select the number of minutes. type the maximum number of rows. To restrict access to a database during particular time periods. in the tree pane. in the Restrict column. in the Names list. In the Restrictions dialog box.Security in Oracle BI ■ Managing Query Execution Privileges 6 To specify or change the maximum number of rows each query can retrieve from a database. perform the following steps: a b c 9 To select a time period. locate and double-click the object on which you want to filter. select Users or Groups. click Permissions. In the User or Group dialog box. perform the following steps: a b 7 In the Max Rows column. In the Status Max Rows field. In the Filters tab. in the Query Limits tab.1. perform the following steps: a b Click Add. In the User/Group Permissions dialog box. choose Manage > Security. in the Query Limits tab. to add an object to filter. click the Permissions tab. click the Query Limits tab and expand the dialog box to view all columns. click Disallow. In the Security Manager dialog box. To explicitly allow access. In the Security Manager dialog box. select a status using Table 39 on page 333 as a guide. choose Manage > Security. select a status using Table 39 on page 333 as a guide. right-click the name that you want to change and select Properties. Click OK twice to return to the Security Manager dialog box. 332 Oracle Business Intelligence Server Administration Guide Version 10.

choose Manage > Security. Table 39. Filter. the Populate Stored procedure writes the Cache/Saved Result Set value to the database. all Marketing users are associated with a group and this group is granted the privilege. In the User/Group Permissions Filters dialog box. through a group) are used. the query is terminated. In the Expression Builder dialog box. The filter is not in use. 10 Click OK twice to return to the Security Manager dialog box.2 33 3 . perform the following steps: Scroll to the right to view the Business Model Filter column. NOTE: Any Marketing user who writes a cache entry or saves a result set needs to be assigned the POPULATE privilege for the target database. select a status using Table 39 on page 333 as a guide. If there is no row limit to inherit. All Marketing segmentation users and groups need to be assigned this privilege.Security in Oracle BI ■ Managing Query Execution Privileges c 7 a b 8 9 Select the object and click Select. through a group) are used. This limits the number of rows or time to the value specified. In the Security Manager dialog box. right-click the name that you want to change and select Properties. refer to the topic about setting up cache for target levels in the documentation for Oracle’s Siebel Marketing application. In the right pane. but any other filters applied to the object (for example. and then click OK. If the number of rows exceeds the Max Rows value. If no other filters are enabled. create a logical filter. Status Max Rows or Status Max Time. To assign Populate privilege to a user or group 1 2 3 From the Administration Tool menu bar.3. disables any limits set in the Max Rows or Max Time fields. The filter is not used and no other filters applied to the object at higher levels of precedence (for example. select Users or Groups.1. Typically. Limits will be inherited from the parent group. in the tree pane. The filter is applied to any query that accesses the object. Filter. Click the Business Model Filter ellipsis button for the selected object. In the User/Group Permissions Filters dialog box. from the Status drop-down list. no limit is enforced. When selected. no filtering will occur. ■ Ignore ■ ■ Assigning Populate Privilege to a User or Group When a criteria block is cached. Status Disable Query Privileges Status Fields Description ■ ■ Enable ■ Status Max Rows or Status Max Time. Filter. For more information about marketing cache. Oracle Business Intelligence Server Administration Guide Version 10. Status Max Rows or Status Max Time.

click Permissions. From the Populate Privilege drop-down list. 334 Oracle Business Intelligence Server Administration Guide Version 10.1. NOTE: For all Marketing data warehouses. select the Query Limits tab.3. In the User/Group Permissions dialog box.Security in Oracle BI ■ Managing Query Execution Privileges 4 5 6 7 8 In the User or Group dialog box. set Populate Privilege to Allow. Click OK twice to return to the Security Manager dialog box. In the Query Limits list. select Allow or Disallow. expand the dialog box to view all columns.2 .

3.htm You can also specify a directory path for local or network XML files.16 Using XML BI a Data Source for as the Oracle Server This section describes the use of the Extensible Markup Language (XML) as a data source. This section includes the following topics: ■ ■ ■ ■ Locating the XML URL on page 335 Using the Oracle BI Server XML Gateway on page 336 Using XML ODBC on page 349 XML Examples on page 350 Locating the XML URL The Oracle BI Server supports the use of XML data as a data source for the Physical layer in the repository. all files with the XML suffix are imported. including access through the Oracle BI Server XML Gateway and its extension.217. For example. The Oracle BI Server supports various XML access modes.htm d:/htmldir/exam*.2 33 5 . d:/xmldir/ d:/xmldir/exam*.xml d:/htmldir/exam*.asp An XML file or HTML file that contains XML data islands on a local or network drive.176/[DE0A48DE-1C3E-11D4-97C9-00105AA70303]. tap://www. Depending on the method used to access XML data sources. XML is the universal format for structured documents and data on the Web. and access through an XML ODBC driver. The HTML file may reside on the Internet (including intranet or extranet) or on a local or network drive. Refer to “Accessing HTML Tables” on page 344 for more information.XML Dynamic XML generated from a server site. It can also be used as a database to store structured data.17. If you specify a directory path without a filename specification (like d:/xmldir). the Data Mining Adapter. For example.1. ■ A static XML file or HTML file that contains XML data islands on the Internet (including intranet or extranet). defined by a pair of <table> and </table> tags.com/example.aspserver. tap://216. a data source may be represented by a URL pointing to one of the following sources. For example.html ■ An HTML file that contains tables. or you can use the asterisk ( * ) as a wildcard with the filenames. For example.xml d:/htmldir/island. d:/xmldir/example. ■ ■ Oracle Business Intelligence Server Administration Guide Version 10.

All leaf nodes are imported as columns belonging to the table. providing support for HTTP data sources that accept user IDs and passwords embedded in the URL. //xml is an XPath expression instructing the XML processor to extract all elements under the root element xml. To change the account under which the server runs. follow the steps described in “Changing the User ID in Which the Oracle BI Server Runs” on page 211. all XML data is imported as text data.) For more information about variables.Using XML as a Data Source for the Oracle BI Server ■ Using the Oracle BI Server XML Gateway URLs may include repository or session variables. You can also map the text data type to other data types in the Business Model and Mapping layer of the Administration Tool. using the CAST operator. In Windows NT and Windows 2000. the filename less the suffix) as the table name and the second level element in the XML document as the row delimiter. Using the Oracle BI Server XML Gateway Using the Oracle BI Server XML Gateway. Element and attribute inheritance contained within the Microsoft XML schema. NOTE: If the Oracle BI Server needs to access any nonlocal files (network files or files on the Internet.” The Oracle BI Server also supports the use of XSL transformation files (XSLT) or XPath expressions for transforming the XML files or XML data islands in an HTML page. the Oracle BI Server XML Gateway does not support: ■ Resolution of external references contained in an XML document (other than a reference to an external XML schema. The XML schema is contained within the XML document or is referenced within the root element of the XML document.pl?userid=valueof(session_variable1)&password= valueof(session_variable2). At this time. you need to run the Oracle BI Server using a valid user ID and password with sufficient network privileges to access these remote files. for example). for example: http://somewebserver/ cgi. as demonstrated in the example file in the section “Oracle BI Server XML Gateway Example” on page 338).3.2 . the metadata import process flattens the XML document to a tabular form using the stem of the XML filename (that is. Where there is no schema available. The gateway will convert the incoming data to the desired type as specified in the Physical layer. The hierarchical access path to leaf nodes is also imported. this user ID also needs to have Windows Administrator privileges on the local machine. The Oracle BI Server XML Gateway uses the metadata information contained in an XML schema. An XSLT file can also contain an XPath expressions. In building the repository. XPath is a simplified version of XSLT that may be expressed in a oneline statement. XSLT is a generalized form of the Cascaded Style Sheet (CSS) for HTML documents as applied to XML documents or text fragments. Support is currently available for the version of XML schema defined by Microsoft and implemented in its Internet Explorer 5 family of browsers. For example.1. refer to Chapter 13. you may alter the data types of the columns in the Physical layer. overriding the data types for the corresponding columns defined in the schema. ■ 336 Oracle Business Intelligence Server Administration Guide Version 10. “Using Variables in the Oracle BI Repository. (This functionality also allows the Oracle BI Administrator to create an XML data source with a location that is dynamically determined by some runtime parameters.

5 Type an optional user ID and password in the appropriate fields for connections to HTTP sites that employ the HTTP Basic Authentication security mode. the Oracle BI Server XML Gateway allows users to specify a refresh interval for these data sources.1. the length of time to wait for a URL to load before timing out. 2 Select XML from the Connection Type drop-down list. with the Connection Type set to XML. refer to “About the Refresh Interval for XML Data Sources” on page 257. For more information. 3 In the URL field. Refer to “Setting Up Connection Pools” on page 65 for additional details. Because XML data sources are typically updated frequently and in real time. select File > Import.Using XML as a Data Source for the Oracle BI Server ■ Using the Oracle BI Server XML Gateway ■ Element types of a mixed content model (such as XML elements that contain a mixture of elements and CDATA. 6 7 Click OK to open the Import dialog box. Select the tables and columns and check the type of metadata you want to import. such as <p> hello <b> Joe</b>. If you click the Browse button. For more information about variables. 8 9 Click Import to begin the import process. type a name and optional description for the connection on the General tab. specify the XML data source URL. The Type In Uniform Resource Locator dialog box appears. In the Connection Pool dialog box. type either an Extensible Stylesheet Language Transformations (XSLT) file or XPath expression. It allows you to access data sources by calling an executable file or DLL for each record retrieved.” 4 Optionally. from which you can select a single file. The default time-out interval for queries (URL loading time-out) is 15 minutes. URLs can include repository or session variables. “Using Variables in the Oracle BI Repository. The default setting imports all objects and all metadata. The Oracle BI Server XML Gateway supports all data sources described in the section “Locating the XML URL” on page 335.3. refer to “Using the Data Mining Adapter” on page 345. To import XML data using the Oracle BI Server XML Gateway 1 From the Administration Tool toolbar. In addition to HTTP Basic Authentication security mode. 10 Click the XML tab to set additional connection properties. refer to Chapter 13. Use the Browse button to browse for XSLT source files. how are you doing?</p>). The Select ODBC Data Source dialog box appears. the Oracle BI Server XML Gateway also supports Secure HTTP protocol and Integrated Windows Authentication (for Windows 2000). including the URL refresh interval and Oracle Business Intelligence Server Administration Guide Version 10.2 33 7 . NOTE: The Oracle BI Server XML Gateway includes a Data Mining Adapter. formerly called NTLM or Windows NT Challenge/Response authentication. For more information. the Select XML File dialog box appears.

2 .xml) references an XML schema contained in an external file. The schema file is shown following the data document. Oracle BI Server XML Gateway Example The following sample XML data document (mytest. these entries are used to overwrite corresponding XSLT or XPath entries in the Connection Pool for the respective physical tables.Using XML as a Data Source for the Oracle BI Server ■ Using the Oracle BI Server XML Gateway 11 Click OK to complete the import. <?xml version="1.3. The generated XML schema information available for import to the repository is shown at the end.xml"> <row> <p1>0</p1> <p2 width="5"> <p3>hi</p3> <p4> <p6>xx0</p6> <p7>yy0</p7> </p4> <p5>zz0</p5> </p2> </row> <row> <p1>1</p1> <p2 width="6"> <p3>how are you</p3> <p4> <p6>xx1</p6> <p7>yy1</p7> </p4> <p5>zz1</p5> </p2> </row> <row> <p1>a</p1> <p2 width="7"> <p3>hi</p3> <p4> <p6>xx2</p6> <p7>yy2</p7> </p4> <p5>zz2</p5> </p2> </row> 338 Oracle Business Intelligence Server Administration Guide Version 10. If specified. 12 For additional control over the XML data sources. you can specify an XSLT file or an XPath expression for individual tables in the data sources from the Physical Table dialog box.1.0"?> <test xmlns="x-schema:mytest_sch.

to preserve the context in which each column occurs in the document and to distinguish between columns derived from XML elements with identical names but appearing in different contexts.2 33 9 .3.Using XML as a Data Source for the Oracle BI Server ■ Using the Oracle BI Server XML Gateway <row> <p1>b</p1> <p2 width="8"> <p3>how are they</p3> <p4> <p6>xx3</p6> <p7>yy3</p7> </p4> <p5>zz2</p5> </p2> </row> </test> The corresponding schema file follows: <Schema xmlns="urn:schemas-microsoft-com:xml-data" xmlns:dt="urn:schemas-microsoft-com:datatypes"> <ElementType name="test" content="eltOnly" order="many"> <element type="row"/> </ElementType> <ElementType name="row" content="eltOnly" order="many"> <element type="p1"/> <element type="p2"/> </ElementType> <ElementType name="p2" content="eltOnly" order="many"> <AttributeType name="width" dt:type="int" /> <attribute type="width" /> <element type="p3"/> <element type="p4"/> <element type="p5"/> </ElementType> <ElementType name="p4" content="eltOnly" order="many"> <element type="p6"/> <element type="p7"/> </ElementType> <ElementType name="p1" content="textOnly" dt:type="string"/> <ElementType name="p3" content="textOnly" dt:type="string"/> <ElementType name="p5" content="textOnly" dt:type="string"/> <ElementType name="p6" content="textOnly" dt:type="string"/> <ElementType name="p7" content="textOnly" dt:type="string"/> </Schema> The name of the table generated from the preceding XML data document (mytest. as follows: //test/row/p1 //test/row/p2/p3 //test/row/p2/p4/p6 Oracle Business Intelligence Server Administration Guide Version 10.xml) would be mytest and the column names would be p1. p5. p7. based on the XPath proposal of the World Wide Web Consortium. In addition. p6. p3. a list of fully qualified column names is generated. and width.1.

2A</ADD2> <CITY>Seattle</CITY> <STATE>WA</STATE> <ZIP>98122</ZIP> </ADDRESS> <PRODUCTS> <CATEGORY> <CATEGORY_ID>CAT1</CATEGORY_ID> <CATEGORY_NAME>NAME1</CATEGORY_NAME> <ITEMS> <ITEM> <ITEM_ID>1</ITEM_ID> <NAME></NAME> <PRICE>0.50</PRICE> <QTY>3000</QTY> </ITEM> <ITEM> <ITEM_ID>12</ITEM_ID> <NAME>SOME SPRITE</NAME> <PRICE>3.30</PRICE> <QTY></QTY> </ITEM> </ITEMS> </CATEGORY> <CATEGORY> <CATEGORY_ID>CAT2</CATEGORY_ID> <CATEGORY_NAME>NAME2</CATEGORY_NAME> <ITEMS> <ITEM> <ITEM_ID>11</ITEM_ID> <NAME>ACOKE</NAME> <PRICE>1.1.50</PRICE> <QTY>2000</QTY> </ITEM> <ITEM> <ITEM_ID>2</ITEM_ID> <NAME>SPRITE</NAME> <PRICE>0. in which case all elements would be treated as being of the Varchar character type.3. ===Invoice.xml=== <INVOICE> <CUSTOMER> <CUST_ID>1</CUST_ID> <FIRST_NAME>Nancy</FIRST_NAME> <LAST_NAME>Fuller</LAST_NAME> <ADDRESS> <ADD1>507 .Using XML as a Data Source for the Oracle BI Server ■ Using the Oracle BI Server XML Gateway //test/row/p2/p4/p7 //test/row/p2/p5 //test/row/p2@width The following example is a more complex example that demonstrates the use of nested table structures in an XML document.20th Ave.30</PRICE> 340 Oracle Business Intelligence Server Administration Guide Version 10.</ADD1> <ADD2>Apt. Note that you may optionally omit references to an external schema file.2 . E..

30</PRICE> <QTY>1978</QTY> </ITEM> </ITEMS> </CATEGORY> <CATEGORY> <CATEGORY_ID>CAT24</CATEGORY_ID> <CATEGORY_NAME>NAMEA2</CATEGORY_NAME> <ITEMS> <ITEM> <ITEM_ID>19</ITEM_ID> <NAME>SOME COKE</NAME> <PRICE>1.50</PRICE> <QTY>2</QTY> </ITEM> <ITEM> <ITEM_ID>22</ITEM_ID> <NAME>PSPRITE</NAME> <PRICE>9.2 34 1 .3. 300</ADD2> <CITY>San Mateo</CITY> <STATE>CA</STATE> <ZIP>94403</ZIP> </ADDRESS> <PRODUCTS> <CATEGORY> <CATEGORY_ID>CAT22</CATEGORY_ID> <CATEGORY_NAME>NAMEA1</CATEGORY_NAME> <ITEMS> <ITEM> <ITEM_ID>122</ITEM_ID> <NAME>DDDCOKE</NAME> <PRICE>11.1.</ADD1> <ADD2>Ste.30</PRICE> <QTY>12000</QTY> </ITEM> </ITEMS> </CATEGORY> Oracle Business Intelligence Server Administration Guide Version 10.58</PRICE> <QTY>3</QTY> </ITEM> <ITEM> <ITEM_ID>15</ITEM_ID> <NAME>DIET SPRITE</NAME> <PRICE>9.Using XML as a Data Source for the Oracle BI Server ■ Using the Oracle BI Server XML Gateway <QTY>2000</QTY> </ITEM> </ITEMS> </CATEGORY> </PRODUCTS> </CUSTOMER> <CUSTOMER> <CUST_ID>2</CUST_ID> <FIRST_NAME>Andrew</FIRST_NAME> <LAST_NAME>Carnegie</LAST_NAME> <ADDRESS> <ADD1>2955 Campus Dr.

</ADD1> <ADD2> </ADD2> <CITY>Kirkland</CITY> <STATE>WA</STATE> <ZIP>98033</ZIP> </ADDRESS> <PRODUCTS> <CATEGORY> <CATEGORY_ID>CAT31</CATEGORY_ID> <CATEGORY_NAME>NAMEA3</CATEGORY_NAME> <ITEMS> <ITEM> <ITEM_ID>13</ITEM_ID> <NAME>COKE33</NAME> <PRICE>30.3.1.2 .Using XML as a Data Source for the Oracle BI Server ■ Using the Oracle BI Server XML Gateway </PRODUCTS> </CUSTOMER> <CUSTOMER> <CUST_ID>3</CUST_ID> <FIRST_NAME>Margaret</FIRST_NAME> <LAST_NAME>Leverling</LAST_NAME> <ADDRESS> <ADD1>722 Moss Bay Blvd.0</PRICE> <QTY>3</QTY> </ITEM> <ITEM> <ITEM_ID>18</ITEM_ID> <NAME>MY SPRITE</NAME> <PRICE>8.30</PRICE> <QTY>123</QTY> </ITEM> </ITEMS> </CATEGORY> </PRODUCTS> </CUSTOMER> </INVOICE> 342 Oracle Business Intelligence Server Administration Guide Version 10.50</PRICE> <QTY>20033</QTY> </ITEM> <ITEM> <ITEM_ID>23</ITEM_ID> <NAME>SPRITE33</NAME> <PRICE>0.38</PRICE> <QTY>20099</QTY> </ITEM> </ITEMS> </CATEGORY> <CATEGORY> <CATEGORY_ID>CAT288</CATEGORY_ID> <CATEGORY_NAME>NAME H</CATEGORY_NAME> <ITEMS> <ITEM> <ITEM_ID>19</ITEM_ID> <NAME>COLA</NAME> <PRICE>1.

50 2000 Nancy Fuller 1. Column ADD1 ADD2 CITY STATE ZIP CUST_ID FIRST_NAME LAST_NAME CATEGORY_ID CATEGORY_NAME ITEM_ID NAME PRICE QTY Fully Qualified Name //INVOICE/CUSTOMER/ADDRESS/ADD1 //INVOICE/CUSTOMER/ADDRESS/ADD2 //INVOICE/CUSTOMER/ADDRESS/CITY //INVOICE/CUSTOMER/ADDRESS/STATE //INVOICE/CUSTOMER/ADDRESS/ZIP //INVOICE/CUSTOMER/CUST_ID //INVOICE/CUSTOMER/FIRST_NAME //INVOICE/CUSTOMER/LAST_NAME //INVOICE/CUSTOMER/PRODUCTS/CATEGORY/CATEGORY_ID //INVOICE/CUSTOMER/PRODUCTS/CATEGORY/CATEGORY_NAME //INVOICE/CUSTOMER/PRODUCTS/CATEGORY/ITEMS/ITEM/ITEM_ID //INVOICE/CUSTOMER/PRODUCTS/CATEGORY/ITEMS/ITEM/NAME //INVOICE/CUSTOMER/PRODUCTS/CATEGORY/ITEMS/ITEM/PRICE //INVOICE/CUSTOMER/PRODUCTS/CATEGORY/ITEMS/ITEM/QTY Only tags with values are extracted as columns. price.0 3 COLA Margar Leverling 30.50 20033 COKE33 Margar Leverling 8.1.Using XML as a Data Source for the Oracle BI Server ■ Using the Oracle BI Server XML Gateway The generated XML schema shown next consists of one table (INVOICE) with the following column names and their corresponding fully qualified names. An XML query generates fully qualified tag names. name from invoice -----------------------------------------------------------FIRST_NAME LAST_NAME PRICE QTY NAME -----------------------------------------------------------Andrew Carnegie 1.38 20099 SPRITE33 Margar Leverling 1.3.30 2000 SOME SPRITE -----------------------------------------------------------Row count: 12 Oracle Business Intelligence Server Administration Guide Version 10.30 12000 DIET SPRITE Andrew Carnegie 9.30 123 MY SPRITE Nancy Fuller 0. These are the results of a sample query against the INVOICE table.50 2 DDDCOKE Andrew Carnegie 9.30 SPRITE Nancy Fuller 0. select first_name.58 3 SOME COKE Andrew Carnegie 11. last_name.50 3000 ACOKE Nancy Fuller 3.2 34 3 . qty. to help make sure that appropriate columns are retrieved.30 1978 PSPRITE Margar Leverling 0.

defined by <th> and </ th> tag pairs. The following is a sample HTML file with one table. defined by the <table> and </table> tag pair. The HTML file may be identified as a URL pointing to a file on the internet (including intranet or extranet) or as a file on a local or network drive.760</td> <td>100. <html> <body> <table border=1 cellpadding=2 cellspacing=0> <tr> <th colspan=1>Transaction</th> <th colspan=2>Measurements</th> </tr> <tr> <th>Quality</th> <th>Count</th> <th>Percent</th> </tr> <tr> <td>Failed</td> <td>66.3.0%</td> 344 Oracle Business Intelligence Server Administration Guide Version 10. The Oracle BI Server XML Gateway is currently the most effective in extracting tables that include specific column headers.0 specification.2 .6%</td> </tr> <tr> <td>OK</td> <td>1.Using XML as a Data Source for the Oracle BI Server ■ Using the Oracle BI Server XML Gateway Accessing HTML Tables The Oracle BI Server XML Gateway also supports the use of tables in HTML files as a data source.672</td> <td>4.6%</td> </tr> <tr> <td colspan=1>Grand Total</td> <td>1.1.1%</td> </tr> <tr> <td>Poor</td> <td>126.7%</td> </tr> <tr> <td>Warning</td> <td>355.056</td> <td>66.728</td> <td>21.304</td> <td>7. they are often used by Web designers as a general formatting device to achieve specific visual effects rather than as a data structure. are native constructs of the HTML 4.643.095. Even though tables. the Oracle BI Server XML Gateway employs some simple heuristics to make a best effort to determine the portions of an HTML file that appear to be genuine data tables. For tables that do not contain specific column headers.

For tables without any heading tag pairs. The table with the Data Mining Adapter receives parameterized queries from a driving table through some logical joins. The query results are returned to the XML gateway through an API parameter. c1. separated by an underscore.htm. Assuming that our sample file is named 18.3. and generates values for those columns (the output columns) not in the WHERE clauses. a shared object. The Data Mining Adapter allows you to specify a DLL. the Oracle BI Server XML Gateway assumes the field values (as delimited by the <td> and </td> tag pairs) in the first row to be the column names. with the following column names and their corresponding fully qualified names.1.2 34 5 . Instead. The columns are named by the order in which they appear (c0. and so on). It allows you to selectively access external data sources by calling an executable file or DLL API for each record retrieved.Using XML as a Data Source for the Oracle BI Server ■ Using the Oracle BI Server XML Gateway </tr> </table> </body> </html> The table name is derived from the HTML filename. The Data Mining Adapter can only be used for a table in a logical join with another table acting as the driving table. refer to “XML Examples” on page 350. For information about how to set up the logical joins. the adapter uses the column values in the WHERE clauses of the parameterized queries as its input column parameters. The table with the Data Mining Adapter is not a table that physically exists in a back-end database. The Data Mining Adapter operates in the following ways: ■ Calls a DLL file. and the column names are formed by concatenating the headings (defined by the <th> and </th> tag pairs) for the corresponding columns. the column names are formed by concatenating the corresponding field contents of those header rows. the table name would be 18_0 (because it is the first table in that HTML file). Using the Data Mining Adapter The Data Mining Adapter is an extension of the Oracle BI Server XML Gateway. Column Transaction_Quality Measurements_Count Measurements_Percent Fully Qualified Name \\18_0\Transaction_Quality \\18_0\Measurements_Count \\18_0\Measurements_Percent If the table column headings appear in more than one row. For additional examples of XML. the adapter loads the DLL and calls the API that retrieves records one row at a time. At run time. or a shared library that implements the Data Mining Adapter API. refer to “Specifying a Driving Table” on page 140. Oracle Business Intelligence Server Administration Guide Version 10.

The column values must be placed in the buffer in the order in which the columns appear in the pOutputColumnMetaInfoArray. Table 40.2 .1. You specify one executable file or DLL for each table. the API places the values of the output columns in the outputColumnValueBuffer. An array of meta column information for the output column. and the callee sets the data type of the column (currently only VarCharData is supported) and the size of the column value.3. The Data Mining Adapter allows you to specify an executable file. Using a DLL File to call the Data Mining Adapter API The API currently consists of only one function. Element API Elements Description The number of input columns. Refer to IterativeGatewayDll. plus the meta information of both the input and the output columns. At run time. A buffer of bytes containing the value of the output columns.h (installed with Oracle BI).h (installed with Oracle BI). OracleBIColumnMetaInfo is declared in the public header file IterativeGatewayDll.h for the definition of the datatype and structures used in this API. The number of output columns. An optional argument that you can specify in the Search Utility field in the XML tab of the Physical Table dialog box. You also specify the delimiters that demarcate the column values in the output file. On return. An array of meta information for the input columns.Using XML as a Data Source for the Oracle BI Server ■ Using the Oracle BI Server XML Gateway ■ Calls an executable file. the adapter executes the file and retrieves records from it one row at a time. The column values are placed in the buffer in the order in which the columns appear in the pInputColumnMetaInfoArray. A buffer of bytes containing the value of the input columns. You can find this file at the following path: [installation root]\Sample\TestExternalGatewayDll\IterativeGatewayDll. The actual size of each column value is specified in the columnWidth field of the OracleBIColumnMetaInfo. inputColumnCount inputColumnValueBuffer modelId OutputColumnCount outputColumnValueBuffer pInputColumnMetaInfoArray pOutputColumnMetaInfoArray 346 Oracle Business Intelligence Server Administration Guide Version 10. OracleBIColumnMetaInfo is declared in the public header file IterativeGatewayDll. The caller of the API provides the column name.h Table 40 on page 346 provides a description of the API elements. All buffers are allocated by the caller. It takes in the values of the input columns in the parameterized queries. The actual size of each column value is specified in the columnWidth field of the OracleBIColumnMetaInfo.

mak (a HPUX make file for building the sample) IterativeGatewayDll. the executable is expected to output to the stdout. The values of the input columns Car_Loan. This is demonstrated in the following example: Oracle Business Intelligence Server Administration Guide Version 10.cpp (a test drive that load up the DLL on the UNIX platforms) xlC50. you can pass in the column values to the executable file by bracketing the column names with the $() marker.mak (a Solaris make file for building the sample) TestExternalGatewayDll. For example. and Probability.3.2 34 7 . suppose there is a table containing the columns Car_Loan.h (a Windows-specific header file) sunpro. The command line would look like the following: executable_name $(Car_Loan) $(Credit) $(Demand) Each time the executable file is called. The column values are output in a single-line demarcated by the delimiter that you specify. $(NQ_OUT_TEMP_FILE) to which the executable outputs the result line. Demand.1. the placeholder $(NQ_OUT_TEMP_FILE) is substituted by a temporary filename generated at runtime.txt (a text file that describes the Data Mining Adapter API) StdAfx.h (a header file to be included in your DLL) ReadMe. and Demand come from other tables through join relationships. you can direct the Data Mining Adapter to read the output from a temporary output file passed to the executable as an argument by specifying a placeholder.cpp (the sample implementation of the DLL) TestExternalGatewayDll. The values of the output columns Score and Probability are to be returned by the executable file. Credit. The following files are included in the example: ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ hpacc. Alternatively. it returns one row of column values.Using XML as a Data Source for the Oracle BI Server ■ Using the Oracle BI Server XML Gateway Sample Implementation A sample implementation of the Data Mining Adapter API is provided for all supported platforms in the Sample subdirectory of the Oracle BI installation folder (\OracleBI).mak (an AIX make file for building the sample) Using ValueOf() Expressions You can use ValueOf() expressions in the command line arguments to pass any additional parameters to the executable file or DLL API. Credit. The following example shows how to pass a user ID and password to an executable file: executable_name valueof(USERID) valueof(PASSWORD) Specifying Column Values (Executable File) When you specify an executable file. When the Data Mining Adapter invokes the executable.dsp (a Microsoft Visual C++ project file for building the sample) TestLibraryUnix. Score.cpp (a Windows-specific file) StdAfx. By default.

The data length of each column in the delimited query output must not exceed the size specified for that column in the physical table. Right-click the database you created in Step 1. and then click OK.1. c 3 4 5 Type a data source name. The empty fields indicate to the Oracle BI Server that the Data Mining Adapter functionality will be invoked. complete one of the following tasks: ■ ■ Select Executable. refer to “Creating a Database Object Manually in the Physical Layer” on page 61. In the General tab. the value of the Score column will be followed by the value of the Probability column.3. and then click OK. create a database. Configuring the Data Mining Adapter Use this procedure to configure the Data Mining Adapter. the values returned from the executable file will be used to override the input columns.Using XML as a Data Source for the Oracle BI Server ■ Using the Oracle BI Server XML Gateway executable_name $(Car_Loan) $(Credit) $(Demand) $(NQ_OUT_TEMP_FILE) The values of the columns that are not inputs to the executable file will be output first. The call interface defaults to XML. and specify the delimiter for the output values. NOTE: Do not type information into any field in the XML tab of the Connection Pool dialog box. and then select New Object > Table. To configure the Data Mining Adapter 1 In the Administration Tool. If the executable file outputs more column values than the number of noninput columns.2 . In the Physical Table dialog box. and then select New Object > Connection Pool. the Data Mining Adapter will attempt to read the column values according to the unsorted column order of the physical table. type a name for the connection pool. For information about creating a database. in the unsorted order in which they appear in the physical table. To include spaces in the path. click the XML tab. select XML Server as the database type. enclose the path in quotation marks. a b Right-click the database you created in Step 1. If these are in conflict with the values of the corresponding input columns. Select DLL and type the path to the DLL in the Search Utility field. For example: 348 Oracle Business Intelligence Server Administration Guide Version 10. type the path to the executable file in the Search Utility field. In the preceding example. 2 Configure the connection pool. In the XML tab.

use the CAST operator to perform data type conversions in the Business Model and Mapping layer of the Administration Tool.dll” VALUEOF(Model1) VALUEOF(Model2) Using XML ODBC Using the XML ODBC database type.Using XML as a Data Source for the Oracle BI Server ■ Using XML ODBC “C:\Program Files\OracleBI\Bin\SADataMining. you can access XML data sources through an ODBC interface. you need to license and install an XML ODBC driver. <xml xmlns:s='uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882' xmlns:dt='uuid:C2F41010-65B3-11d1-A29F-00AA00C14882' xmlns:rs='urn:schemas-microsoft-com:rowset' xmlns:z='#RowsetSchema'> <s:Schema id='RowsetSchema'> <s:ElementType name='row' content='eltOnly' rs:CommandTimeout='30' rs:updatable='true'> <s:AttributeType name='ShipperID' rs:number='1' rs:writeunknown='true' rs:basecatalog='Northwind' rs:basetable='Shippers' rs:basecolumn='ShipperID'> <s:datatype dt:type='i2' dt:maxLength='2' rs:precision='5' rs:fixedlength='true' rs:maybenull='false'/> </s:AttributeType> <s:AttributeType name='CompanyName' rs:number='2' rs:writeunknown='true' rs:basecatalog='Northwind' rs:basetable='Shippers' Oracle Business Intelligence Server Administration Guide Version 10. CAUTION: Make sure you select the Synonyms option in the Import dialog box. XML ODBC Example This is an example of an XML ODBC data source in the Microsoft ADO persisted file format. create ODBC DSNs that point to the XML data sources you want to access. Note that both the data and the schema could be contained inside the same document. making sure you select the XML ODBC database type. From the File menu. You can use the modelid string to pass static or dynamic parameters to the DLL through the API. the default data type of string is used. To import XML data using ODBC 1 2 3 4 To access XML data sources through ODBC. Data Type settings in the Physical layer will not override those defined in the XML data sources. The data types of the XML elements representing physical columns in physical tables are derived from the data types of the XML elements as defined in the XML schema.3. Next.2 34 9 .1. When accessing XML data without XML schema. For example: “C:\Program Files\OracleBI\Bin\SADataMining. choose Import > from Database.dll” All characters appearing after the DLL path are passed to the API as a modelid string. Follow the instructions in the dialog boxes to import the ODBC DSNs into the repository. In the absence of a proper XML schema.

htm demonstrates a simple situation where multiple XML data islands.xml ===83. The XML document island2. Internet Explorer version 5 and higher supports HTML documents containing embedded XML fragments called XML islands. and therefore multiple tables.xml demonstrate that multiple XML files can share the same schema (8_sch.xml and 8_sch.Using XML as a Data Source for the Oracle BI Server ■ XML Examples rs:basecolumn='CompanyName'> <s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='40' rs:maybenull='false'/> </s:AttributeType> <s:AttributeType name='Phone' rs:number='3' rs:nullable='true' rs:writeunknown='true' rs:basecatalog='Northwind' rs:basetable='Shippers' rs:basecolumn='Phone'> <s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='24' rs:fixedlength='true'/> </s:AttributeType> <s:extends type='rs:rowbase'/> </s:ElementType> </s:Schema> <rs:data> <z:row ShipperID='1' CompanyName='Speedy Express' Phone='(503) 555-9831 <z:row ShipperID='2' CompanyName='United Package' Phone='(503) 555-3199 <z:row ShipperID='3' CompanyName='Federal Shipping' Phone='(503) 555-9931 </rs:data> </xml> '/> '/> '/> XML Examples The following XML documents provide examples of several different situations and explain how the Oracle BI Server XML access method handles those situations. Because the element <p3> in the preceding examples appears in two different scopes. p3_3.1.xml demonstrate the use of the same element declarations in different scope. One table is generated for each instance of an XML island. 83. each element is given a distinct column name by appending an index number to the second occurrence of the element during the Import process. could be generated from one document. For example.3.xml). the two XML tables generated would be island2_0 and island2_1. For island2. they become p3_2.xml=== 350 Oracle Business Intelligence Server Administration Guide Version 10. In this case. the second occurrence becomes p3_1.xml and 84. ■ The XML documents 83. If <p3> occurs in additional contexts.htm. <p3> could appear within <p2> as well as within <p4>.2 . ■ ■ XML documents 83. Tables are distinguished by appending an appropriate index to the document name.

xml ===8_sch.xml">| <row> <p1>0</p1> <p2 width="5" height="2"> <p3>hi</p3> <p4> <p3>hi</p3> <p6>xx0</p6> <p7>yy0</p7> </p4> <p5>zz0</p5> </p2> </row> <row> <p1>1</p1> <p2 width="6" height="3"> <p3>how are you</p3> <p4> <p3>hi</p3> <p6>xx1</p6> <p7>yy1</p7> </p4> <p5>zz1</p5> </p2> </row> </test> 8_sch.Using XML as a Data Source for the Oracle BI Server ■ XML Examples <?xml version="1.2 35 1 .xml=== <Schema xmlns="urn:schemas-microsoft-com:xml-data" xmlns:dt="urn:schemas-microsoftcom:datatypes"> <AttributeType name="height" dt:type="int" /> <ElementType name="test" content="eltOnly" order="many"> <AttributeType name="height" dt:type="int" /> <element type="row"/> </ElementType> <ElementType name="row" content="eltOnly" order="many"> <element type="p1"/> <element type="p2"/> </ElementType> <ElementType name="p2" content="eltOnly" order="many"> <AttributeType name="width" dt:type="int" /> <AttributeType name="height" dt:type="int" /> <attribute type="width" /> <attribute type="height" /> <element type="p3"/> <element type="p4"/> Oracle Business Intelligence Server Administration Guide Version 10.0"?> <test xmlns="x-schema:8_sch.1.3.

xml ===84.3.Using XML as a Data Source for the Oracle BI Server ■ XML Examples <element type="p5"/> </ElementType> <ElementType name="p4" content="eltOnly" order="many"> <element type="p3"/> <element type="p6"/> <element type="p7"/> </ElementType> <ElementType name="test0" content="eltOnly" order="many"> <element type="row"/> </ElementType> <ElementType name="p1" content="textOnly" dt:type="string"/> <ElementType name="p3" content="textOnly" dt:type="string"/> <ElementType name="p5" content="textOnly" dt:type="string"/> <ElementType name="p6" content="textOnly" dt:type="string"/> <ElementType name="p7" content="textOnly" dt:type="string"/> </Schema> 84.xml"> <row> <p1>0</p1> <p2 width="5" height="2"> <p3>hi</p3> <p4> <p3>hi</p3> <p6>xx0</p6> <p7>yy0</p7> </p4> <p5>zz0</p5> </p2> </row> <row> <p1>1</p1> <p2 width="6" height="3"> <p3>how are you</p3> <p4> <p3>hi</p3> <p6>xx1</p6> <p7>yy1</p7> </p4> <p5>zz1</p5> </p2> </row> </test0> 352 Oracle Business Intelligence Server Administration Guide Version 10.0"?> <test0 xmlns="x-schema:8_sch.xml=== <?xml version="1.1.2 .

3. 5</p> <XML ID="12345"> test> <row> <field1>00</field1> <field2>01</field2> </row> <row> <field1>10</field1> <field2>11</field2> </row> <row> <field1>20</field1> <field2>21</field2> </row> </test> </XML> <p>End of first example.</p> </BODY> </HTML> Oracle Business Intelligence Server Administration Guide Version 10.Using XML as a Data Source for the Oracle BI Server ■ XML Examples Island2.2 35 3 .</p> <XML ID="12346"> <test> <row> <field11>00</field11> <field12>01</field12> </row> <row> <field11>10</field11> <field12>11</field12> </row> <row> <field11>20</field11> <field12>21</field12> </row> </test> </XML> <p>End of second example.htm=== <HTML> <HEAD> <TITLE>HTML Document with Data Island</TITLE> </HEAD> <BODY> <p>This is an example of an XML data island in I.E.1.htm ===island2.

3.1.2 .Using XML as a Data Source for the Oracle BI Server ■ XML Examples 354 Oracle Business Intelligence Server Administration Guide Version 10.

3. Additionally. refer to a third-party reference book on SQL or to a reference manual on SQL from your database vendors. It is a table in the sense that the results are in the form of rows and columns. The following is the basic syntax for the SELECT statement. and returns the answer to the end user. The following topics are included: ■ ■ ■ ■ SELECT Query Specification Syntax on page 355 SELECT Usage Notes on page 356 SELECT List Syntax on page 357 Rules for Queries with Aggregate Functions on page 358 NOTE: The syntax descriptions throughout this guide are not comprehensive. The SELECT statement. SQL Syntax and Semantics This section explains the syntax and semantics for the SELECT statement.2 35 5 . The Oracle BI Server accepts logical requests to query objects in a repository. A SELECT statement returns a table to the client that matches the query. or query specification as it is sometimes referred to. For a more comprehensive description of SQL syntax. The server then translates the logical requests into physical queries against one or more data sources. and users (or query tools) make those logical requests with ordinary SQL SELECT statements. the Administration Tool allows you to define logical tables with complex expressions. SELECT [DISTINCT] select_list FROM from_clause [WHERE search_condition] Oracle Business Intelligence Server Administration Guide Version 10. is the way to query a decision support system through the Oracle BI Server.1. They cover only basic syntax and features unique to the Oracle BI Server. SELECT Query Specification Syntax The SELECT statement is the basis for querying any structured query language (SQL) database. This section explains the syntax and semantics for the SELECT statement and for the expressions you can use in the Administration Tool to define logical tables. The individual clauses are defined in the subsections that follow. combines the results to match the logical request.17 Oracle BI Server SQL Reference The Oracle BI Server accepts SQL SELECT statements from client tools.

column}] where: select_list from_clause The list of columns specified in the query. Specifies any combination of conditions to form a conditional test. Optionally includes certain join information for the query. <>Some >All. <All. <>Any >Some. HAVING. >=Any.2 . UNION ALL. and EXCEPT operations in logical requests. NOT IN >Any. >=Some. Refer to “SELECT List Syntax” on page 357. Any join conditions supplied in the query are ignored. or CASE statements): ■ ■ ■ ■ ■ IN. <=All. <=Any. =Any. or a catalog folder name. <Some.Oracle BI Server SQL Reference ■ SQL Syntax and Semantics [GROUP BY column {. =Some. This functionality increases the range of business questions that can be answered. and provides some ability to query across multiple business models. Refer to “WHERE Clause Syntax” on page 357. the join conditions are all predefined in the repository. a GROUP BY clause is automatically assumed by the server. <Any. If aggregated data is requested in the SELECT statement. column} [HAVING search_condition]] [ORDER BY column {. search_condition column SELECT Usage Notes The Oracle BI Server treats the SELECT statement as a logical request. INTERSECT.3. Refer to “FROM Clause Syntax” on page 357. eases the formulation of queries. >=All. NOT EXISTS 356 Oracle Business Intelligence Server Administration Guide Version 10. <=Some. A column (or alias) belonging to a table defined in the data source. <>All EXISTS. The Oracle BI Server accepts the following SQL syntaxes for comments: ■ ■ ■ /* */ C-style comments // Double slash for single-line comments # Number sign for single-line comments The Oracle BI Server supports certain subqueries and UNION. within WHERE. The Oracle BI Server supports the following subquery predicates in any conditional expression (for example. The list of tables in the query. =All.1.

There is no need to specify any join conditions in the WHERE clause because the joins are all configured within the Oracle BI repository. If column names contain spaces. Any join conditions specified in the WHERE clause are ignored. The DISTINCT keyword does not need to be included as the Oracle BI Server will always do a distinct query. <>Any >All. <=Any. Table names can be included (as Table. >=All. >=Any. The Oracle BI Server determines the proper tables and the proper join specifications based on the columns the query asks for and the configuration of the Oracle BI repository.Oracle BI Server SQL Reference ■ SQL Syntax and Semantics SELECT List Syntax The SELECT list syntax lists the columns in the query.1.Column). You can specify the name of a catalog folder instead of a list of tables to simplify FROM clause creation. Columns that are being aggregated do not need to include the aggregation function (such as SUM). =All. All columns need to be from a single business model. NOT IN >Any.3. <>All EXISTS. HAVING or CASE statements): ■ ■ ■ ■ IN. Syntax: SELECT [DISTINCT] select_list where: select_list The list of columns specified in the query. <All. <Any. as aggregation rules are known to the server and aggregation will be performed automatically. enclose column names in double quotes. =Any. The Oracle BI Server also supports the following subquery predicates in any conditional expression (WHERE. but are optional unless column names are not unique within a business model. NOT EXISTS Oracle Business Intelligence Server Administration Guide Version 10. FROM Clause Syntax The Oracle BI Server accepts any valid SQL FROM clause syntax. <=All. WHERE Clause Syntax The Oracle BI Server accepts any valid SQL WHERE clause syntax.2 35 7 .

the level of aggregation is based on the columns specified in the GROUP BY clause.3. what results you should expect from the query.Oracle BI Server SQL Reference ■ SQL Syntax and Semantics GROUP BY Clause Syntax With auto aggregation on the Oracle BI Server. consider the following query. If there is a GROUP BY clause specified. including referencing columns by their order in the select list (such as ORDER BY 3. MAX. MAX. you can specify a GROUP BY clause with different columns and the Oracle BI Server will compute the results based on the level specified in the GROUP BY clause. For additional details. If you explicitly use aggregation functions in the select list. products. or COUNT) on a baseline column through a SQL request. and some examples of using the GROUP BY clause in queries against the Oracle BI Server. the GROUP BY specification defaults to all of the nonaggregation columns in the SELECT list. there is no need to submit a GROUP BY clause. if a GROUP BY clause is specified. the level of aggregation is grouped by all of the nonaggregate columns in the SELECT list. When no GROUP BY clause is specified. This section outlines the rules that the Oracle BI Server follows with respect to whether or not a query contains a GROUP BY clause and. sum(revenue) from time. Rules for Queries with Aggregate Functions The Oracle BI Server simplifies the SQL needed to craft aggregate queries. MIN. 5). Baseline columns map to nonaggregated data at the level of granularity of the logical table to which they belong. 1. AVG. COUNT(*). MIN. and COUNT). Computing Aggregates of Baseline Columns A baseline column is a column that has no aggregation rule defined in the Aggregation tab of the Logical Column dialog in the repository. product.2 . ORDER BY Clause Syntax The Oracle BI Server accepts any valid SQL ORDER BY clause syntax. AVG. facts YEAR 1998 1998 1999 PRODUCT Coke Pepsi Coke SUM(REVENUE) 500 600 600 358 Oracle Business Intelligence Server Administration Guide Version 10. For example. the Oracle BI Server calculates the aggregation at the level based on the following rules: ■ ■ If there is no GROUP BY clause specified. If you perform aggregation (SUM. refer to “Rules for Queries with Aggregate Functions” on page 358.1. The rules outlined in this section apply to all aggregates used in SQL statements (SUM. where the column revenue is defined in the repository as a baseline column (no aggregation rules specified in the Logical Column > Aggregation tab): select year.

then the sum calculated is the sum of all products for the year.1. facts group by year YEAR 1998 1998 1999 1999 2000 2000 PRODUCT Coke Pepsi Coke Pepsi Coke Pepsi SUM(REVENUE) 1100 1100 1150 1150 1400 1400 COUNT(REVENUE) 6000 6000 6500 6500 8000 8000 Oracle Business Intelligence Server Administration Guide Version 10. product. In this case. If you add a column to the query requesting the COUNT of revenue. that is.3. facts group by year.2 35 9 . it returns one row for each product and year combination. it is a year. as shown in the following example: select year. In this case. product. products. product If you change the GROUP BY clause to only group by year. product. products. sum(revenue) from time. facts group by year YEAR 1998 1998 1999 1999 2000 2000 PRODUCT Coke Pepsi Coke Pepsi Coke Pepsi SUM(REVENUE) 1100 1100 1150 1150 1400 1400 In this query result set. sum(revenue) from time. It is logically the same query as the following: select year. and that sum represents the total sales for that year. it is the sales of Coke plus the sales of Pepsi. the sum of revenue is the same for each row corresponding to a given year. count(revenue) from time.Oracle BI Server SQL Reference ■ SQL Syntax and Semantics 1999 2000 2000 Pepsi Coke Pepsi 550 800 600 This query returns results grouped by year and product. as follows: select year. the Oracle BI Server calculates the number of records used to calculate the results for each group. sum(revenue). products. The sum calculated for each row is the sum of all the sales for that product in that year.

you are actually asking for an aggregate of an aggregate. If there is a GROUP BY clause specified. If you perform explicit aggregation (SUM. that is. SumOfRevenue. it returns one row for each product and year combination. facts group by year.Oracle BI Server SQL Reference ■ SQL Syntax and Semantics Computing Aggregates of Measure Columns A measure column is a column that has a default aggregation rule defined in the Aggregation tab of the Logical Column dialog in the repository. product If you change the GROUP BY clause to only group by year. sum(SumOfRevenue) from time. as follows: select year. the Oracle BI Server calculates the aggregation based on the following rules: ■ A request for a measure column without an aggregate function defined in a SQL statement is always grouped at the level of the nonaggregate columns in the SELECT list. If there is no GROUP BY clause specified. MIN. the nested aggregate is a grand total of each group determined by all of the nonaggregate columns in the SELECT list. products.3. SumOfRevenue. sum(SumOfRevenue) from time. where the column SumOfRevenue is defined in the repository as a measure column with a default aggregation rule of SUM (SUM aggregation rule specified in the Aggregation tab of the Logical Column dialog): select year. AVG. product. the nested aggregation calculates the total for each group as specified in the GROUP BY clause. products. and the sum calculated in the SUM(SumOfRevenue) column is total sales of all products for the given year. Measure columns always calculate the aggregation with which they are defined. product. SumOfRevenue. regardless of whether the query specifies a GROUP BY clause. sum(SumOfRevenue) from time. product. MAX. It is logically the same query as the following: select year. ■ ■ For example.1. For these nested aggregates. The sum calculated for each row in the SumOfRevenue column is the sum of all the sales for that product in that year because the measure column is always at the level defined by the nonaggregation columns in the query. then the sum calculated in the SumOfRevenue column is the sum of each product for the year. consider the following query. facts YEAR 1998 1998 1999 1999 2000 2000 PRODUCT Coke Pepsi Coke Pepsi Coke Pepsi SUMofREVENUE 500 600 600 550 800 600 SUM(SUMofREVENUE) 3650 3650 3650 3650 3650 3650 This query returns results grouped by year and product.2 . products. facts group by year YEAR 1998 1998 PRODUCT Coke Pepsi SUMofREVENUE 500 600 SUM(SUMofREVENUE) 1100 1100 360 Oracle Business Intelligence Server Administration Guide Version 10. or COUNT) on a measure column through a SQL request.

there is no GROUP BY clause specified. NTILE. product. products. sum(revenue). SumOfRevenue is defined as a measure column with the default aggregation rule of SUM: select year. that is. The query is logically the same query as the following: select year. products. and varieties of standard deviation) are specified in the SELECT list of a SQL query.1. and that sum represents the total sales for that year. facts group by year. the display function resets its values for each group as specified in the GROUP BY clause. In this case. products. it is the sales of Coke plus the sales of Pepsi. SumOfRevenue. the grouping level for the display function is the same as for the query. as follows: select year. Queries that use display functions conform to the following rules: ■ ■ If no GROUP BY clause is specified.3. then the rank is reset for each year. rank(SumOfRevenue) from time. The display functions the Oracle BI Server supports (RANK. facts YEAR 1998 1998 1999 1999 2000 2000 PRODUCT Coke Pepsi Coke Pepsi Coke Pepsi SUMOFREVENUE 500 600 600 550 800 600 RANK(SUMOFREVENUE) 6 2 2 5 1 2 In this query result set. Display Function Reset Behavior A display function is a function that operates on the result set of a query. BOTTOMn. product. For example. MEDIAN. in the following query. the sum calculated for each row in the SumOfRevenue column is the sum of all the sales for that product in that year because the measure column is always at the level defined by the nonaggregation columns in the query. product. rank(SumOfRevenue)) from time. SumOfRevenue.Oracle BI Server SQL Reference ■ SQL Syntax and Semantics 1999 1999 2000 2000 Coke Pepsi Coke Pepsi 600 550 800 600 1150 1150 1400 1400 In this result set. the display function operates across the entire result set. rank(sum(revenue)) from time. TOPn. MAVG.2 36 1 . product If you change the GROUP BY clause to only group by year. facts group by year Oracle Business Intelligence Server Administration Guide Version 10. so the rank is calculated across the entire result set. The SUM(SumOfRevenue) is the same for each row corresponding to a given year. PERCENTILE. If there is a GROUP BY clause specified.

you do not need a GROUP BY clause.2 . traditional aggregates. For example. the query: select year. Conditional aggregates are expressed in the form of a function as shown in the following statement: FILTER(<measure_expression> USING <boolean_expression>) Where: 362 Oracle Business Intelligence Server Administration Guide Version 10. FILTER is an operator that restricts the set of rows used to compute its aggregate argument to rows that satisfy the USING condition.1. Syntax Conditional aggregates are only notational concepts and they do not represent executable operators. Alternative Syntax When using an aggregate function. product. or in logical columns that use existing logical columns as the source. revenue. The query: select year. the rank is reset each time the year changes. product. It may be used in logical queries referring to the metadata. The same syntax can be used with display functions. you can calculate a specified level of aggregation using BY within the aggregate function. The FILTER operator is a logical SQL construct.3. Conditional aggregates extend SQL by restricting their input using a predicate. revenue. COUNT. the value of the rank is always either 1 or 2. Using FILTER to Compute a Conditional Aggregate In SQL query language. rank(revenue). and because there are two rows for each year. determined by the GROUP BY clause. sum(revenue by year) as year_revenue from softdrinks will return the column year_revenue that displays revenue aggregated by year. All the aggregates specified in the SELECT clause of a query are evaluated over the same subset of tuples. rank(revenue by year) from softdrinks order by 1. If you do this. and MAX are evaluated on a group of tuples (an ordered list of objects. 5 will calculate overall rank of revenue for each product for each year (each row in the entire result set) and also the rank of each product’s revenue within each year. MIN. each of a specified type). such as SUM.Oracle BI Server SQL Reference ■ SQL Syntax and Semantics YEAR 1998 1998 1999 1999 2000 2000 PRODUCT Coke Pepsi Coke Pepsi Coke Pepsi SUM(REVENUE) 500 600 600 550 800 600 RANK(SUM(REVENUE)) 2 1 1 2 1 2 In this result set.

SUM(CASE WHEN product = 'pepsi' THEN sales) FROM physBeverages WHERE product = 'coke' OR product = 'pepsi' GROUP BY year Error handling In the example FILTER(X USING Y). ■ <boolean_expression> is a boolean expression (evaluates to TRUE or FALSE) that does not contain any measures.3. FILTER(sales USING product = 'pepsi') FROM logBeverages After navigation. For example. SQL Logical Operators The following SQL logical operators are used to specify comparisons between expressions. FILTER is used in outer query block. The Y expression contains measures. The following is a list of examples: ■ ■ The expression Sales + 1 is allowed if Sales is a measure. Example of the FILTER Function The following is a simple example of the FILTER function: SELECT year. This expression may not contain any nested queries. The expression productid is not allowed if productid is a scalar attribute. Explicit aggregates are used in the X (measure) expression. Oracle Business Intelligence Server Administration Guide Version 10. FILTER(sales USING product = 'coke').2 36 3 . C).Oracle BI Server SQL Reference ■ SQL Syntax and Semantics ■ <measure_expression> is an expression that contains at least one measure. FILTER(COUNT(product). SUM(CASE WHEN product = 'coke' THEN sales). error messages will be returned in the following situations: ■ ■ ■ ■ The Y expression is not a boolean expression. this query is executed as follows: SELECT year.1.

AND has precedence over OR. only the expression following the first match is assigned.. as in less than and greater than (as opposed to less than or equal to and greater than or equal to). Like: Specifies a comparison to a literal value. CASE (Switch) This form of the Case statement is also referred to as the CASE (Lookup) form.} ELSE expression. In: Specifies a comparison of a column value with a set of values. it assigns the value in the corresponding THEN expression. If no ELSE expression is specified. THEN and ELSE statements.Oracle BI Server SQL Reference ■ SQL Syntax and Semantics Between: Used to determine boundaries for a condition. BETWEEN can be preceded with NOT to negate the condition. the system will automatically add an ELSE NULL. THEN Specifies the value to assign if the corresponding WHEN expression is satisfied.. Conditional Expressions The Expressions folder contains building blocks for creating conditional expressions that use CASE.3. WHEN. it assigns the default value specified in the ELSE expression.. THEN expression. Has to be followed by an expression and one or more WHEN and THEN statements. and the bounds do not include the boundary limits. Is Null: Specifies a comparison of a column value with the null value. CASE Starts the CASE statement. an optional ELSE statement.1. 364 Oracle Business Intelligence Server Administration Guide Version 10. and the END keyword.2 . If expression1 matches an expression in more than one WHEN clause.. Each boundary is an expression. NOTE: In a CASE statement. If none of the WHEN expressions match. END The value of expression1 is examined. Syntax: CASE expression1 WHEN expression2 THEN expression3 {WHEN expression. WHEN Specifies the condition to be satisfied. If expression1 matches any WHEN expression. and then the WHEN expressions are examined... Often used with wildcard characters to indicate any character string match of zero or more characters (%) or a any single character match (_).

an optional ELSE statement. END Ends the Case statement.. CASE Starts the CASE statement. it assigns the default value specified in the ELSE expression. THEN expression. the WHEN statements in the If form allow comparison operators.} ELSE expression END This evaluates each WHEN condition and if satisfied. NOTE: In a CASE statement. If no ELSE expression is specified.1. If omitted. WHEN Specifies the condition to be satisfied. Has to be followed by one or more WHEN and THEN statements. CASE (If) This form of the CASE statement has the following syntax: CASE WHEN search_condition1 THEN expression1 {WHEN search_condition2 THEN expression2} {WHEN search_condition. a WHEN condition of WHEN < 0 THEN 'Under Par' is legal. If none of the WHEN conditions are satisfied.Oracle BI Server SQL Reference ■ SQL Syntax and Semantics ELSE Specifies the value to assign if none of the WHEN conditions are satisfied. Oracle Business Intelligence Server Administration Guide Version 10. and the END keyword. assigns the value in the corresponding THEN expression.3. Unlike the Switch form of the CASE statement. THEN Specifies the value to assign if the corresponding WHEN expression is satisfied. ELSE Specifies the value to assign if none of the WHEN conditions are satisfied.2 36 5 .. If omitted. ELSE NULL is assumed. the system will automatically add an ELSE NULL.. ELSE NULL is assumed. AND has precedence over OR..

math. SQL Reference SQL functions perform various calculations on column values. This section explains the syntax for the functions supported by the Oracle BI Server. and system functions. Avg Calculates the average (mean) value of an expression in a result set. conversion.3. calendar date/time. 366 Oracle Business Intelligence Server Administration Guide Version 10. The following topics are included: ■ ■ ■ ■ ■ ■ ■ ■ Aggregate Functions on page 366 Running Aggregate Functions on page 374 String Functions on page 378 Math Functions on page 384 Calendar Date/Time Functions on page 390 Conversion Functions on page 398 System Functions on page 402 Expressing Literals on page 402 Aggregate Functions Aggregate functions perform work on multiple values to create summary results. To specify nested aggregation. The aggregate functions cannot be used to form nested aggregation in expressions on logical columns that have a default aggregation rule defined in the Aggregation tab of the Logical Column dialog box. string. There are aggregate. you need to define a column with a default aggregation rule and then request the aggregation of the column in a SQL statement. Has to take a numeric expression as its argument. It also explains how to express literals.2 .Oracle BI Server SQL Reference ■ SQL Reference END Ends the Case statement. Syntax: AVG (n_expression) where: n_expression Any expression that evaluates to a numerical value.1.

n) where: n_expression n Any expression that evaluates to a numerical value.Oracle BI Server SQL Reference ■ SQL Reference AvgDistinct Calculates the average (mean) of all distinct values of an expression. Syntax: COUNT (expression) where: expression Any expression. 1 being the lowest rank. Has to take a numeric expression as its argument. CountDistinct Adds distinct processing to the COUNT function. in which case the number of rows with nonnull values for that column is returned. Syntax: COUNT (DISTINCT expression) Oracle Business Intelligence Server Administration Guide Version 10. The BOTTOMN function operates on the values returned in the result set. Any positive integer.2 36 7 .1. 1 corresponding to the lowest numerical value. Syntax: BOTTOMN (n_expression. The expression is typically a column name. Represents the bottom number of rankings displayed in the result set. NOTE: A query can contain only one BOTTOMN expression. Syntax: AVG (DISTINCT n_expression) where: n_expression Any expression that evaluates to a numerical value. BottomN Ranks the lowest n values of the expression argument from 1 to n.3. Count Calculates the number of rows having a nonnull value for the expression.

2 .3. It specifies the logical columns that define the level of the aggregate data existing in a physical aggregate table. For example. specify the following syntax in the content filter (General tab of Logical Source dialog): GROUPBYCOLUMN(STORE. 368 Oracle Business Intelligence Server Administration Guide Version 10. MONTH) The GROUPBYCOLUMN function is only for use in configuring a repository.000. You should not use the FIRST function as the first dimension-specific aggregate rule. The FIRST function operates at the most detailed level specified in your explicitly defined dimension. For example. the FIRST function returns the first day in each level. You cannot use it in SQL statements. GroupByColumn For use in setting up aggregate navigation. It might cause queries to bring back large numbers of rows for processing in the Oracle BI Server causing poor performance. The FIRST function is limited to defining dimension-specific aggregation rules in a repository.1. the following query would return the following results: SELECT COUNT(*) FROM Facts COUNT(*) 200000000 First Selects the first returned value of the expression argument. if a table named Facts contained 200. Count (*) (CountStar) Counts the number of rows. Syntax: COUNT(*) For example.000 rows. month. you cannot use it to form SQL statements. if you have a time dimension defined with hierarchy levels day. if an aggregate table contains data grouped by store and by month. and year.Oracle BI Server SQL Reference ■ SQL Reference where: expression Any expression. Syntax: FIRST (expression) where: expression Any expression.

For example. The MAX function resets its values for each group in the query. Last Selects the last returned value of the expression. and year.2 36 9 .MONTH) The GROUPBYLEVEL function is only for use in configuring a repository. It specifies the dimension levels that define the level of the aggregate data existing in a physical aggregate table.3. you cannot use it to form SQL statements. the LAST function returns the last day in each level. and if you have defined dimensions (Geography and Customers) containing these levels. CUSTOMERS. Syntax: MAX (expression) where: expression Any expression. according to the rules outlined in “Display Function Reset Behavior” on page 361. You should not use the LAST function as the first dimension-specific aggregate rule. Syntax: LAST (expression) where: expression Any expression. if an aggregate table contains data at the store and month levels. For example. You cannot use it in SQL statements. specify the following syntax in the content filter (General tab of Logical Source dialog): GROUPBYLEVEL (GEOGRAPHY. The LAST function is limited to defining dimensionspecific aggregation rules in a repository.1. Max Calculates the maximum value (highest numeric value) of the rows satisfying the numeric expression argument. It might cause queries to bring back large numbers of rows for processing in the Oracle BI Server causing poor performance. if you have a time dimension defined with hierarchy levels day.Oracle BI Server SQL Reference ■ SQL Reference GroupByLevel For use in setting up aggregate navigation. Oracle Business Intelligence Server Administration Guide Version 10. The LAST function operates at the most detailed level specified in your explicitly defined dimension. month.STORE.

3. the resulting sorted data set is broken into a number of tiles where there are roughly an equal number of values in each tile. When there are an even number of rows. Syntax: MIN (expression) where: expression Any expression. The MIN function resets its values for each group in the query. The MEDIAN function resets its values for each group in the query. n) where: n_expression n Any expression that evaluates to a numerical value.1. according to the rules outlined in “Display Function Reset Behavior” on page 361. Syntax: MEDIAN (n_expression) where: n_expression Any expression that evaluates to a numerical value. Min Calculates the minimum value (lowest numeric value) of the rows satisfying the numeric expression argument. 370 Oracle Business Intelligence Server Administration Guide Version 10. the median is the mean of the two middle rows.Oracle BI Server SQL Reference ■ SQL Reference Median Calculates the median (middle) value of the rows satisfying the numeric expression argument. NTile The NTILE function determines the rank of a value in terms of a user-specified range. according to the rules outlined in “Display Function Reset Behavior” on page 361. If the n_expression argument is not null. A positive. In other words. nonnull integer that represents the number of tiles. Syntax: NTILE (n_expression. This function always returns a double. It returns integers to represent any range of ranks. the function returns an integer that represents a rank within the requested range.2 .

this function can calculate Year to Date sales. The PERCENTILE function calculates the percentile based on the values in the result set of the query. For example. Syntax: PERCENTILE (n_expression) where: n_expression Any expression that evaluates to a numerical value. For example. <measure>) PeriodToDate A time series aggregation function for relational data sources only. NULL values will be returned and a warning entry will be written to the NQQuery. inclusive. The PERCENTILE function resets its values for each group in the query according to the rules outlined in “Display Function Reset Behavior” on page 361. This value is different from the results of the Oracle BI Server percentile function. The percent rank ranges are from 0 (1st percentile) to 1 (100th percentile). PeriodToDate aggregates a measure attribute from the beginning of a specified time period to the currently displayed time. If unsupported metrics are requested.Oracle BI Server SQL Reference ■ SQL Reference NTile with n=100 returns what is commonly called the percentile (with numbers ranging from 1 to 100. with 100 representing the high end of the sort). NULL values will be returned and a warning entry will be written to the NQQuery. You can nest exactly one PeriodToDate and multiple PeriodAgo functions if they each have the same level argument. You can nest exactly one PeriodToDate and multiple PeriodAgo functions if they each have the same level argument. PeriodAgo A time series aggregation function for relational data sources only.2 37 1 . Multiple PeriodAgo functions can be nested if all the PeriodAgo functions have the same level argument. that conforms to what is called percent rank in SQL 92 and returns values from 0 to 1. If unsupported metrics are requested. Percentile Calculates a percent rank for each value satisfying the numeric expression argument.log file when the logging level equals three or above.1.3. PeriodAgo can produce sales for every month of the current quarter and the corresponding quarter-ago sales. Syntax: PeriodAgo(<time-level>. Oracle Business Intelligence Server Administration Guide Version 10. <offset>.log file when the logging level equals three or above. A PeriodToDate function may not be nested within another PeriodToDate function. Calculates the aggregated value from the current time back to a specified time period.

2 .). 1. The RANK function resets its values for each group in the query according to the rules outlined in “Display Function Reset Behavior” on page 361. Ranking is restarted from zero at the beginning of every partition. <partitioning key>. If certain values are equal. The RANK function calculates the rank based on the values in the result set of the query. Dictates that ranking is increased only across rows with differing values in this key. 4. 372 Oracle Business Intelligence Server Administration Guide Version 10. Syntax: Rank(<ordering key>. 1. The following is a list of examples: ■ ■ ■ Rank(<chronological key>.. StdDev The STDDEV function returns the standard deviation for a set of values. null..).1.. 5. null. The highest number is assigned a rank of 1.3. 4. <month key columns>) returns month_in_year. and each successive rank is assigned the next consecutive integer (2. <month key columns>) returns abs_month. <year key columns>. <at_distinct key>) Where: <ordering key> <partitioning key> <at_distinct key> Key that is used to order the input for the purpose of assigning rank. Key that is used to partition data. 3.. 7. they are assigned the same rank (for example. <measure>) Rank Calculates the rank for each value satisfying the numeric expression argument. <year key columns>) returns abs_year. Rank(<chronological key>.Oracle BI Server SQL Reference ■ SQL Reference Syntax: PeriodToDate(<time-level>. 5. Syntax: RANK (n_expression) where: n_expression Any expression that evaluates to a numerical value. The rows with the same value for this key have the same rank. The return type is always a double.. Rank(<chronological key>. Calculating Absolute Calendar Fields To calculate absolute calendar fields such as abs_month. you use the prebuilt Rank operator. 1.

If DISTINCT is specified. all data is considered. Oracle Business Intelligence Server Administration Guide Version 10. the standard deviation is calculated for all data in the set. If ALL is specified. Syntax: SUM (n_expression) where: n_expression Any expression that evaluates to a numerical value. all duplicates are ignored in the calculation. Syntax: SUM(DISTINCT n_expression) where: n_expression Any expression that evaluates to a numerical value.3.1. SumDistinct Calculates the sum obtained by adding all of the distinct values satisfying the numeric expression argument. The STDDEV function resets its values for each group in the query according to the rules outlined in “Display Function Reset Behavior” on page 361. The SUM function resets its values for each group in the query according to the rules outlined in “Display Function Reset Behavior” on page 361.2 37 3 .Oracle BI Server SQL Reference ■ SQL Reference Syntax: STDDEV([ALL | DISTINCT] n_expression) where: n_expression ■ ■ ■ Any expression that evaluates to a numerical value. Sum Calculates the sum obtained by adding up all values satisfying the numeric expression argument. If nothing is specified (the default). There are two other functions that are related to STDDEV: STDDEV_POP([ALL | DISTINCT] n_expression) STDDEV_SAMP([ALL | DISTINCT] n_expression) STDDEV and STDDEV_SAMP are synonyms.

The TOPN function resets its values for each group in the query according to the rules outlined in “Display Function Reset Behavior” on page 361. according to the rules outlined in “Display Function Reset Behavior” on page 361. and so on until you reach the nth row. Mavg Calculates a moving average (mean) for the last n rows of data in the result set. they output the aggregate based on records encountered so far. 1 being the highest rank. The MAVG function resets its values for each group in the query. Syntax: TOPN (n_expression.Oracle BI Server SQL Reference ■ SQL Reference TopN Ranks the highest n values of the expression argument from 1 to n. Any positive integer.3. Syntax: MAVG (n_expression. Any positive integer. The average for the second row is calculated by taking the average of the first two rows of data. The TOPN function operates on the values returned in the result set. inclusive of the current row.2 . 374 Oracle Business Intelligence Server Administration Guide Version 10. n) where: n_expression n Any expression that evaluates to a numerical value. where the average is calculated based on the last n rows of data.1. Represents the top number of rankings displayed in the result set. Represents the average of the last n rows of data. This section describes the running aggregate functions supported by the Oracle BI Server. n) where: n_expression n Any expression that evaluates to a numerical value. 1 corresponding to the highest numerical value. but instead of outputting the single aggregate for the entire set of records. A query can contain only one TOPN expression. The average for the first row is equal to the numeric expression for the first row. The average for the third row is calculated by taking the average of the first three rows of data. Running Aggregate Functions Running aggregate functions are similar to functional aggregates in that they take a set of records as input.

00 500. The sum for the first row is equal to the numeric expression for the first row.2 37 5 .1. When the nth row is reached.00 600.00 1000. and so on. and so on.00 300.00 500.00 1300.Oracle BI Server SQL Reference ■ SQL Reference MSUM This function calculates a moving sum for the last n rows of data.00 3_MO_SUM 100. n) Where: n_expression n Example: The following example shows a query that uses the MSUM function and the query results. MSUM(revenue.00 400. The sum for the second row is calculated by taking the sum of the first two rows of data. revenue. The sum for the third row is calculated by taking the sum of the first three rows of data. the sum is calculated based on the last n rows of data. Syntax: MSUM (n_expression.3.00 300.00 800.00 300.00 100. 3) as 3_MO_SUM from sales_subject_area MONTH JAN FEB MAR APRIL MAY JUNE JULY AUG SEPT OCT NOV DEC REVENUE 100.00 100. The sum for the third row is calculated by taking the sum of the first three rows of data.00 500.00 100. Any positive integer. inclusive of the current row.00 200. Oracle Business Intelligence Server Administration Guide Version 10.00 1200. This function resets its values for each group in the query according to the rules described in “Display Function Reset Behavior” on page 361.00 400.00 1400. Represents the sum of the last n rows of data.00 200. RSUM This function calculates a running sum based on records encountered so far. The sum for the second row is calculated by taking the sum of the first two rows of data.00 Any expression that evaluates to a numerical value. The sum for the first row is equal to the numeric expression for the first row. This function resets its values for each group in the query according to the rules described in “Display Function Reset Behavior” on page 361. select month.00 400.00 500.00 1500.

00 3000. select month.00 2200.00 400.00 300.00 500. profit. MONTH PROFIT RCOUNT (profit An expression of any data type.00 3200. RSUM(revenue) as RUNNING_SUM from sales_subject_area MONTH JAN FEB MAR APRIL MAY JUNE JULY AUG SEPT OCT NOV DEC REVENUE 100.1.00 200.00 300.00 500.00 100.00 300. RCOUNT This function takes a set of records as input and counts the number of records encountered so far.00 400.00 2700. select month. 376 Oracle Business Intelligence Server Administration Guide Version 10. RCOUNT(profit) from sales_subject_area where profit > 200.2 .00 100.00 1700.00 800.00 100.00 RUNNING_SUM 100. Syntax: RCOUNT (Expr) Where: Expr Example: The following example shows a query that uses the RCOUNT function and the query results.00 Any expression that evaluates to a numerical value.3.00 1200. revenue.Oracle BI Server SQL Reference ■ SQL Reference Syntax: RSUM (n_expression) Where: n_expression Example: The following example shows a query that uses the RSUM function and the query results.00 3300. This function resets its values for each group in the query according to the rules described in “Display Function Reset Behavior” on page 361.00 200.00 500.00 500.

00 500. This function resets its values for each group in the query according to the rules described in “Display Function Reset Behavior” on page 361.Oracle BI Server SQL Reference ■ SQL Reference MAY JUNE JULY AUG SEPT OCT 300.00 2 3 4 5 6 7 RMAX This function takes a set of records as input and shows the maximum value based on records encountered so far. select month.00 200.00 200.00 200.00 200.00 500.00 400. Oracle Business Intelligence Server Administration Guide Version 10.00 500.00 100.00 An expression of any data type.00 300. RMAX(profit) from sales_subject_area MONTH JAN FEB MAR APRIL MAY JUNE JULY AUG SEPT OCT NOV DEC PROFIT 100.1.00 100.00 500. profit.00 200.00 500.00 500.3.00 500.00 500.00 400. The specified data type must be one that can be ordered. Syntax: RMAX (expression) Where: expression Example: The following example shows a query that uses the RMAX function and the query results.00 500.00 500.00 400.00 RMAX (profit) 100.2 37 7 .00 300.00 300.00 500.00 500.00 100.00 300. The data type must be one that has an associated sort order.

00 100.00 300.00 100.00 500.00 100.00 100.3. The specified data type must be one that can be ordered.00 500.00 400.00 100.00 100.00 300.1.00 500.00 100.00 200. and they operate on character strings. ASCII Converts a single character string to its corresponding ASCII code.00 100.00 200. between 0 and 255. RMIN(profit) from sales_subject_area MONTH JAN FEB MAR APRIL MAY JUNE JULY AUG SEPT OCT NOV DEC PROFIT 400.00 200.00 100.00 100.00 100. String Functions String functions perform various character manipulations. profit.00 RMIN (profit) 400.00 100. The data type must be one that has an associated sort order. Syntax: RMIN (expression) Where: expression Example: The following example shows a query that uses the RMIN function and the query results. This function resets its values for each group in the query according to the rules described in “Display Function Reset Behavior” on page 361. Syntax: ASCII (character_expression) 378 Oracle Business Intelligence Server Administration Guide Version 10.Oracle BI Server SQL Reference ■ SQL Reference RMIN This function takes a set of records as input and shows the minimum value based on records encountered so far.00 An expression of any data type.2 .00 100. select month.

Concat There are two forms of this function. Syntax: CHAR_LENGTH (character_expression) where: character_expression Any expression that evaluates to a numerical value between 0 and 255. of a specified string. The second form uses the character string concatenation character to concatenate more than two character strings. in number of characters.1. The first form concatenates two character strings. the ASCII code corresponding to the first character in the expression is returned. of a specified string. Leading and trailing blanks are not counted in the length of the string. Syntax: CHAR (n_expression) where: n_expression Any expression that evaluates to a numerical value between 0 and 255.3. If the character expression evaluates to more than one character. Syntax: BIT_LENGTH (character_expression) where: character_expression Any expression that evaluates to character string. in bits. Oracle Business Intelligence Server Administration Guide Version 10.Oracle BI Server SQL Reference ■ SQL Reference where: character_expression Any expression that evaluates to an ASCII character. Bit_Length Returns the length. Char Converts a numerical value between 0 and 255 to the character value corresponding to the ASCII code. Char_Length Returns the length.2 37 9 . Each Unicode character is 2 bytes in length (equal to 16 bits).

380 Oracle Business Intelligence Server Administration Guide Version 10. Expressions that evaluate to character strings. Syntax: LEFT(character_expression. n) where: character_expression Any expression that evaluates to a character string.2 .Oracle BI Server SQL Reference ■ SQL Reference Form 1 Syntax: CONCAT (character_expression1. separated by the character string concatenation operator || (double vertical bars). Insert Inserts a specified character string into a specified location in another character string.1. character_expression) where: ‘ character_expression n m Any expression that evaluates to a character string.3. Left Returns a specified number of characters from the left of a string. Any positive integer representing the number of characters from the start of the first string where a portion of the second string is inserted. and so on.. string_expressionxx) where: string_expression Expressions that evaluate to character strings.. Syntax: INSERT(character_expression. n Any positive integer representing the number of characters from the left of the first string that are returned. Any positive integer representing the number of characters in the first string to be replaced by the entirety of the second string. m. The first string is concatenated with the second string to produce an intermediate string. and then this string is concatenated with the next string. n. character_expression2) where: character_expression Form 2 Syntax: CONCAT (string_expression1 || string_expression2 || .

This is the expression to be searched. Syntax: LENGTH(character_expression) where: character_expression Any expression that evaluates to a character string. except that the search for the pattern begins at the position specified by an integer argument. regardless of the value of the integer argument. Locate Returns the numerical position of the character_expression1 in a character expression. If you want to specify a starting position to begin the search. This is the expression to search for in the character expression. n) where: character_expression1 character_expression2 n Any expression that evaluates to a character string. The length is returned excluding any trailing blank characters. LocateN Returns the numerical position of the character_expression1 in a character expression. character_expression2. Any expression that evaluates to a character string. Syntax: LOCATE(character_expression1. The numerical position to return is determined by counting the first character in the string as occupying position 1. Oracle Business Intelligence Server Administration Guide Version 10. This is the expression to search for in the character expression. in number of characters. This is the expression to be searched.Oracle BI Server SQL Reference ■ SQL Reference Length Returns the length. If the character_expression1 is not found in the character expression.1. Syntax: LOCATE(character_expression1. Any expression that evaluates to a character string. use the LocateN function instead. the Locate function returns a value of 0. character_expression2) where: character_expression1 character_expression2 Any expression that evaluates to a character string. the LocateN function returns a value of 0.3. This is identical to the Locate function. Any positive.2 38 1 . If the character_expression1 is not found in the character expression. of a specified string. nonzero integer that represents the starting position to being to look for the locate expression.

Oracle BI Server SQL Reference ■ SQL Reference Lower Converts a character string to lower case. Octet_Length Returns the bits.2 . Repeat Repeats a specified expression n times. If the character_expression1 is not found. Any positive integer. Syntax: POSITION(character_expression1 IN character_expression2) where: character_expression1 Any expression that evaluates to a character string. Syntax: REPEAT(character_expression. 382 Oracle Business Intelligence Server Administration Guide Version 10.1. where n is a positive integer. in base 8 units (number of bytes). the function returns 0. Position Returns the numerical position of the character_expression1 in a character expression. character_expression2 Any expression that evaluates to a character string. Syntax: OCTET_LENGTH (character_expression) where: character_expression Any expression that evaluates to a character string. Used to search in the second string. Syntax: LOWER (character_expression) where: character_expression Any expression that evaluates to a character string. of a specified string. n) where: character_expression n Any expression that evaluates to a character string.3.

n Any positive integer representing the number of characters from the right of the first string that are returned. This first string is the original string. Substring Creates a new string starting from a fixed number of characters into the original string. replace_with_expression) where: character_expression change_expression replace_with_expression Any expression that evaluates to a character string. change_expression. Syntax: REPLACE(character_expression. Syntax: TRIM (BOTH 'character' FROM character_expression) Oracle Business Intelligence Server Administration Guide Version 10.2 38 3 .3. Any expression that evaluates to a character string. Right Returns a specified number of characters from the right of a string.Oracle BI Server SQL Reference ■ SQL Reference Replace Replaces specified characters from a specified character expression with other specified characters. n) where: character_expression Any expression that evaluates to a character string.1. starting_position Any positive integer representing the number of characters from the start of the string where the result begins. This third string specifies the characters to substitute into the first string. Any expression that evaluates to a character string. Syntax: RIGHT(character_expression. TrimBoth Strips specified leading and trailing characters from a character string. Syntax: SUBSTRING (character_expression FROM starting_position) where: character_expression Any expression that evaluates to a character string. This second string specifies characters from the first string that will be replaced.

a blank character is used as a default. If the character part of the specification (and the single quotes) are omitted. Upper Converts a character string to uppercase.Oracle BI Server SQL Reference ■ SQL Reference where: character character_expression Any single character. TrimTrailing Strips specified trailing characters from a character string.2 . If the character part of the specification (and the single quotes) are omitted. If the character part of the specification (and the single quotes) are omitted. Syntax: TRIM (LEADING 'character' FROM character_expression) where: character Any single character. character_expression Any expression that evaluates to a character string. a blank character is used as a default. 384 Oracle Business Intelligence Server Administration Guide Version 10. Any expression that evaluates to a character string. Math Functions The math functions perform mathematical operations. Syntax: TRIM (TRAILING 'character' FROM character_expression) where: character character_expression Any single character. Syntax: UPPER (character_expression) where: character_expression Any expression that evaluates to a character string.3. TrimLeading Strips specified leading characters from a character string. Any expression that evaluates to a character string.1. a blank character is used as a default.

where y is the first numerical expression and x is the second numerical expression. Syntax: ABS (n_expression) where: n_expression Any expression that evaluates to a numerical value.3. Syntax: ATAN (n_expression) where: n_expression Any expression that evaluates to a numerical value. Atan2 Calculates the arc tangent of y/x.Oracle BI Server SQL Reference ■ SQL Reference Abs Calculates the absolute value of a numerical expression. Oracle Business Intelligence Server Administration Guide Version 10. Syntax: ACOS (n_expression) where: n_expression Any expression that evaluates to a numerical value. Acos Calculates the arc cosine of a numerical expression.2 38 5 . Asin Calculates the arc sine of a numerical expression. Atan Calculates the arc tangent of a numerical expression.1. Syntax: ASIN (n_expression) where: n_expression Any expression that evaluates to a numerical value.

Syntax: CEILING (n_expression) where: n_expression Any expression that evaluates to a numerical value. Syntax: COS (n_expression) where: n_expression Any expression that evaluates to a numerical value.1. Cot Calculates the cotangent of a numerical expression. Syntax: DEGREES (n_expression) 386 Oracle Business Intelligence Server Administration Guide Version 10. Syntax: COT (n_expression) where: n_expression Any expression that evaluates to a numerical value. Cos Calculates the cosine of a numerical expression.Oracle BI Server SQL Reference ■ SQL Reference Syntax: ATAN2 (n_expression1.2 .3. Degrees Converts an expression from radians to degrees. n_expression2) where: n_expression (1 and 2) Any expression that evaluates to a numerical value. If the numerical expression evaluates to an integer. Ceiling Rounds a noninteger numerical expression to the next highest integer. the Ceiling function returns that integer.

3. Log10 Calculates the base 10 logarithm of an expression. Log Calculates the natural logarithm of an expression.1. Floor Rounds a noninteger numerical expression to the next lowest integer. Syntax: LOG10 (n_expression) where: n_expression Any expression that evaluates to a numerical value.2 38 7 . Oracle Business Intelligence Server Administration Guide Version 10. the FLOOR function returns that integer. Exp Sends the value e to the power specified. Syntax: FLOOR (n_expression) where: n_expression Any expression that evaluates to a numerical value.Oracle BI Server SQL Reference ■ SQL Reference where: n_expression Any expression that evaluates to a numerical value. Syntax: LOG (n_expression) where: n_expression Any expression that evaluates to a numerical value. Syntax: EXP (n_expression) where: n_expression Any expression that evaluates to a numerical value. If the numerical expression evaluates to an integer.

n_expression2) where: n_expression (1 and 2) Any expression that evaluates to a numerical value.Oracle BI Server SQL Reference ■ SQL Reference Mod Divides the first numerical expression by the second numerical expression and returns the remainder portion of the quotient. Pi Returns the constant value of pi (the circumference of a circle divided by the diameter of a circle). Syntax: RAND() 388 Oracle Business Intelligence Server Administration Guide Version 10. Syntax: POWER(n_expression1. Rand Returns a pseudo-random number between 0 and 1. Syntax: RADIANS (n_expression) where: n_expression Any expression that evaluates to a numerical value.2 . Syntax: MOD (n_expression1. Radians Converts an expression from degrees to radians.3. n_expression2) where: n_expression (1 and 2) Any expression that evaluates to a numerical value.1. Syntax: PI() Power Takes the first numerical expression and raises it to the power specified in the second numerical expression.

Syntax: ROUND (n_expression.3. n) where: n_expression n Any expression that evaluates to a numerical value.Oracle BI Server SQL Reference ■ SQL Reference RandFromSeed Returns a pseudo-random number based on a seed value. Syntax: RAND (n_expression) where: n_expression Any expression that evaluates to a numerical value. Round Rounds a numerical expression to n digits of precision. Any positive integer representing the number of digits of precision with which to round. Syntax: SIGN (n_expression) where: n_expression Any expression that evaluates to a numerical value. and 0 if the numerical expression argument evaluates to zero. a value of -1 if the numerical expression argument evaluates to a negative number. the same set of random numbers are generated. Sign Returns a value of 1 if the numerical expression argument evaluates to a positive number. Sin Calculates the sine of a numerical expression. For a given seed value. Oracle Business Intelligence Server Administration Guide Version 10.2 38 9 . Syntax: SIN (n_expression) where: n_expression Any expression that evaluates to a numerical value.1.

1. Tan Calculates the tangent of a numerical expression. Syntax: TAN (n_expression) where: n_expression Any expression that evaluates to a numerical value.2 . Syntax: TRUNCATE (n_expression. The date is determined by the system in which the Oracle BI Server is running.Oracle BI Server SQL Reference ■ SQL Reference Sqrt Calculates the square root of the numerical expression argument. Any positive integer representing the number of characters from the right of the decimal place that are returned. The numerical expression has to evaluate to a nonnegative number. n) where: n_expression n Any expression that evaluates to a numerical value.3. Calendar Date/Time Functions The calendar date/time functions manipulate data of the data types DATE and DATETIME. Syntax: CURRENT_DATE 390 Oracle Business Intelligence Server Administration Guide Version 10. Current_Date Returns the current date. Truncate Truncates a decimal number to return a specified number of places from the decimal point. Syntax: SQRT (n_expression) where: n_expression Any expression that evaluates to a nonnegative numerical value.

the function returns the default precision when no argument is specified. Day_Of_Quarter Returns a number (between 1 and 92) corresponding to the day of the quarter for the specified date. DayName Returns the day of the week for a specified date.2 39 1 .3. Current_TimeStamp Returns the current date/timestamp. The time is determined by the system in which the Oracle BI Server is running. Syntax: CURRENT_TIME (n) where: n Any integer representing the number of digits of precision with which to display the fractional second. The argument is optional. The argument is optional. Oracle Business Intelligence Server Administration Guide Version 10. Syntax: DAY_OF_QUARTER (date_expression) where: date_expression Any expression that evaluates to a date. the function returns the default precision when no argument is specified. The timestamp is determined by the system in which the Oracle BI Server is running. Syntax: CURRENT_TIMESTAMP (n) where: n Any integer representing the number of digits of precision with which to display the fractional second. Syntax: DAYNAME (date_expression) where: date_expression Any expression that evaluates to a date.1.Oracle BI Server SQL Reference ■ SQL Reference Current_Time Returns the current time.

Syntax: DAYOFYEAR (date_expression) where: date_expression Any expression that evaluates to a date.2 . Sunday through Saturday. Hour Returns a number (between 0 and 23) corresponding to the hour for a specified time. For example. Syntax: HOUR (time_expression) where: time_expression Any expression that evaluates to a time. 0 corresponds to 12 a.3.m. the number 1 corresponds to Sunday. Syntax: DAYOFWEEK (date_expression) where: date_expression Any expression that evaluates to a date. For example.1. DayOfYear Returns the number (between 1 and 366) corresponding to the day of the year for a specified date. and 23 corresponds to 11 p. and the number 7 corresponds to Saturday. DayOfWeek Returns a number between 1 and 7 corresponding to the day of the week. 392 Oracle Business Intelligence Server Administration Guide Version 10.Oracle BI Server SQL Reference ■ SQL Reference DayOfMonth Returns the number corresponding to the day of the month for a specified date. Syntax: DAYOFMONTH (date_expression) where: date_expression Any expression that evaluates to a date. for a specified date.m.

Syntax: MONTHNAME (date_expression) where: date_expression Any expression that evaluates to a date.2 39 3 .3.Oracle BI Server SQL Reference ■ SQL Reference Minute Returns a number (between 0 and 59) corresponding to the minute for a specified time. MonthName Returns the name of the month for a specified date. Syntax: MONTH_OF_QUARTER (date_expression) where: date_expression Any expression that evaluates to a date. Oracle Business Intelligence Server Administration Guide Version 10. The NOW function is equivalent to the CURRENT_TIMESTAMP function. Month Returns the number (between 1 and 12) corresponding to the month for a specified date. Month_Of_Quarter Returns the number (between 1 and 3) corresponding to the month in the quarter for a specified date. Syntax: MINUTE (time_expression) where: time_expression Any expression that evaluates to a time. Syntax: MONTH (date_expression) where: date_expression Any expression that evaluates to a date. Now Returns the current timestamp.1.

Second Returns the number (between 0 and 59) corresponding to the seconds for a specified time. A single timestamp is returned. Syntax: SECOND (time_expression) where: time_expression Any expression that evaluates to a time. TimestampAdd The TimestampAdd function adds a specified number of intervals to a specified timestamp.1. timestamp-expression) 394 Oracle Business Intelligence Server Administration Guide Version 10.2 . Syntax: TimestampAdd (interval. Syntax: QUARTER_OF_YEAR (date_expression) where: date_expression Any expression that evaluates to a date. integer-expression.3.Oracle BI Server SQL Reference ■ SQL Reference Syntax: NOW () Quarter_Of_Year Returns the number (between 1 and 4) corresponding to the quarter of the year for a specified date.

the query returns a single timestamp of 2000-03-01 14:30:00. A negative integer value results in a subtraction (going back in time). 2000 is a leap year.2 39 5 . Valid values are: SQL_TSI_SECOND SQL_TSI_MINUTE SQL_TSI_HOUR SQL_TSI_DAY SQL_TSI_WEEK SQL_TSI_MONTH SQL_TSI_QUARTER SQL_TSI_YEAR integer_expression timestamp_expression Any expression that evaluates to an integer. A null integer-expression or a null timestamp-expression passed to this function will result in a null return value. Since February. when adding to the day component of a timestamp.3. The following queries are examples of the TimestampAdd function and its results: The following query asks for the resulting timestamp when 3 days are added to 2000-02-27 14:30:00. this function verifies that the resulting timestamp has a sufficient number of days for the day component. The timestamp used as the base in the calculation. adding 1 month to 2000-05-31 does not result in 2000-06-31 because June does not have 31 days. based on the interval. Select TimestampAdd(SQL_TSI_DAY. twelve months. This function reduces the day component to the last day of the month. Adding a week translates to adding seven days. the function reduces the day component to 28. this function merely adds the specified integer value (integer-expression) to the appropriate component of the timestamp.Oracle BI Server SQL Reference ■ SQL Reference where: interval The specified interval. last day of February in a leap year). In the simplest scenario. For example. A similar issue arises when adding to the year component of a timestamp having a month component of February and a day component of 29 (that is. this function considers overflow and takes into account the number of days in a particular month (including leap years when February has 29 days). If the resulting timestamp does not fall on a leap year. and so on) necessitates adding an appropriate amount to the next component. 3. TIMESTAMP‘2000-02-27 14:30:00’) Oracle Business Intelligence Server Administration Guide Version 10. These actions conform to the behavior of Microsoft’s SQL Server and Oracle’s native OCI interface. When adding to the month component of a timestamp. and adding a quarter translates to adding three months. For example. 24 hours. An overflow of the specified component (such as more than 60 seconds.1. 2000-06-30 in this example.

The following query asks for the resulting timestamp when 25 minutes are added to 2000-07-31 23:35:00. 7. timestamp-expression2) where: interval The specified interval. The first timestamp used in the function. TIMESTAMP‘1999-07-31 00:00:00’) From Employee where employeeid = 2. The following query asks for the resulting timestamp when 7 months are added to 1999-07-31 0:0:0. Because DB2 and Oracle semantics do not fully support this function. TIMESTAMP‘2000-07-31 23:35:00’) From Employee where employeeid = 2. Select TimestampAdd(SQL_TSI_MINUTE. TimeStampDiff The TimestampDiff function returns the total number of specified intervals between two timestamps. Select TimestampAdd(SQL_TSI_MONTH. Valid values are: SQL_TSI_SECOND SQL_TSI_MINUTE SQL_TSI_HOUR SQL_TSI_DAY SQL_TSI_WEEK SQL_TSI_MONTH SQL_TSI_QUARTER SQL_TSI_YEAR timestamp_expression1 timestamp_expression2 The timestamp used in the function. Notice the reduction of day component to 29 because of the shorter month of February. IBM DB2. CAUTION: The TIMESTAMPADD function is turned on by default for Microsoft SQL Server. and Oracle databases.2 . the answers from this function might not match exactly with what the Oracle BI Server computes.3. ODBC. The query returns a single timestamp of 2000-08-01 00:00:00. Syntax: TimestampDiff (interval.1. 396 Oracle Business Intelligence Server Administration Guide Version 10. Notice the propagation of overflow through the month component. timestamp-expression1.Oracle BI Server SQL Reference ■ SQL Reference From Employee where employeeid = 2. 25. The query returns a single timestamp of 2000-02-29 00:00:00.

with Sunday as the start of the week.Oracle BI Server SQL Reference ■ SQL Reference A null timestamp-expression parameter passed to this function will result in a null return value. Microsoft’s SQL Server exhibits the same rounding behavior. Notice that the leap year in 2000 results in an additional day. 1999). TIMESTAMP‘2000-04-01 14:24:00’) From Employee where employeeid = 2. For example. The function then looks at the higher order components of both timestamps to calculate the total number of intervals for each timestamp.2 39 7 . This function first determines the timestamp component that corresponds to the specified interval parameter. the function subtracts the first timestamp’s total number of intervals from the second timestamp’s total number of intervals. IBM DB2 provides a generalized timestamp difference function (TIMESTAMPDIFF) but it simplifies the calculation by always assuming a 365-day year. and 30-day month. TIMESTAMP‘1998-07-31 23:35:00’. For example. the function calculates the total number of months for each timestamp by adding the month component and twelve times the year component. if the specified interval corresponds to the month component. the difference in years between 1999-12-31 and 2000-01-01 is one year because the fractional year represents a crossing from one year to the next (that is. Oracle does not implement a generalized timestamp difference function. 52-week year. Finally. the function calculates the difference in months and divides by three before rounding. the function calculates the difference in days and divides by seven before rounding. Additionally. By contrast. the function takes into account how the Oracle BI Administrator has configured the start of a new week in the NQSConfig. For example. Because DB2 and Oracle semantics do not fully support this function. When calculating the difference in quarters. IBM DB2 always rounds down. the answers from this function might not match exactly with what the Oracle BI Server computes.3. IBM DB2. With Tuesday as the start of the week. the difference in weeks between 2000-07-06 (a Thursday) and 2000-07-10 (the following Monday) results in a value of one week. The TimestampDiff function rounds up to the next integer whenever fractional intervals represent a crossing of an interval boundary. CAUTION: The TIMESTAMPDIFF function is turned on by default for Microsoft SQL Server. the function would return zero weeks since the fractional interval falls entirely within a particular week. It returns a value of 610.1. TimestampDiff Function and Results Example The following query asks for a difference in days between timestamps 1998-07-31 23:35:00 and 2000-04-01 14:24:00. When calculating the difference in weeks. 1999 to 2000). For example. the difference between 1999-01-01 and 1999-12-31 is zero years because the fractional interval falls entirely within a particular year (that is. Oracle Business Intelligence Server Administration Guide Version 10. Select TimestampDIFF(SQL_TSI_DAY. ODBC. however. SQL_TSI_DAY corresponds to the day component and SQL_TSI_MONTH corresponds to the month component.INI file using the parameter FIRST_DAY_OF_THE_WEEK (defaults to Sunday). and Oracle databases.

For example.Oracle BI Server SQL Reference ■ SQL Reference Week_Of_Quarter Returns a number (between 1 and 13) corresponding to the week of the quarter for the specified date. The following are the supported data types to which the value can be changed: 398 Oracle Business Intelligence Server Administration Guide Version 10. you can cast a customer_name (a data type of Char or Varchar) or birthdate (a datetime literal). Year Returns the year for the specified date. Syntax: WEEK_OF_QUARTER (date_expression) where: date_expression Any expression that evaluates to a date. Syntax: YEAR (date_expression) where: date_expression Any expression that evaluates to a date.1.3. Conversion Functions The conversion functions convert a value from one form to another.2 . Cast Changes the data type of an expression or a null literal to another data type. Week_Of_Year Returns a number (between 1 and 53) corresponding to the week of the year for the specified date. Syntax: WEEK_OF_YEAR (date_expression) where: date_expression Any expression that evaluates to a date.

you cannot can save the change.1. Oracle BI Server will explicitly convert and store as CAST (expression|NULL AS CHAR(30) ) ■ Casting to a VARCHAR data type. BIT VARYING NOTE: Depending on the source data type..2 39 9 . If you do not add a size parameter. refer to “IndexCol” on page 400. TIMESTAMP. You must use a size parameter. For a alternate method. Syntax: Oracle Business Intelligence Server Administration Guide Version 10. FLOAT. the Oracle BI Administrator must model the column permissions in the Administration Tool to enable this behavior. DATE. Syntax options appear in the following list: ■ It is recommended that you use the following syntax: CAST (expression|NULL AS CHAR(n) ) For example. The Administration Tool requires that you use a size parameter. expression2. Choose Takes an arbitrary number of parameters and returns the first item in the list that the user has permission to see. and if it does.. If you omit the size parameter. However.3. if the source data type is a BIT string. If the user does not have visibility to the column L1-Revenue but does have visibility to L2-Revenue. For example. INTEGER. BIT. VARCHAR. DOUBLE PRECISION. then L2-Revenue is returned. . a default of 30 will be added. CAST (companyname AS CHAR(35) ) ■ You can use the following syntax: CAST (expression|NULL AS datatype ) For example. Syntax: CHOOSE (expression1. The following describes unique characteristics of the CHAR and VARCHAR data types: ■ Casting to a CHAR data type. The function could look like the following: choose(L1-Revenue. L3-Revenue. L2-Revenue. a single query can be written to return security-based revenue numbers for the entire organization. TIME. some destination types are not supported. the destination data type has to be a character string or another BIT string. expressionN) For example. CAST (companyname AS CHAR ) NOTE: If you use this syntax. L4-Revenue) If the user issuing this function has access to the column L1-Revenue.Oracle BI Server SQL Reference ■ SQL Reference CHARACTER. then that column value would be returned. assigns the specified value to the expression.. IfNull Tests if an expression evaluates to a null value. SMALLINT.

Consider the following expression: IndexCol( integer literal. expression_list ) Where: expression_list equals expr1 [. As long as the user has the privileges to access the column(s) in the expression translated from IndexCol. the query will fail because the session variable has no value definition. Syntax: IndexCol( integer literal.2 . Otherwise. When the first argument to IndexCol is a session variable and if a default expression is expected to be returned even if the init block fails. Security. then the value is the same as expr2. Specifying a constant literal would result in IndexCol always choosing the same expression. The literal value is the 0-based index of the expression in the expression list to translate to. ■ ■ Usage Tracking.3. expr2. and so on. NOTE: The primary use case for IndexCol is for the first argument to contain a session variable. Query Log and cache. … ) If the literal value is 0.1. then the Oracle BI Administrator should set a default value for the session variable. expr1. expression_list ] The IndexCol function takes in an integer literal value as its first argument. Usage tracking will insert the logical SQL query string with the IndexCol function. NQSGetLevelDrillability and NQSGenerateDrillDownQuery return the context-specific drill-down information based on the expression translated from IndexCol. followed by a variable length expression list and translates to a single expression from the expression list. value) IndexCol IndexCol can use external information to return the appropriate column for the logged-in user to see. NOTE: The query cache will use the resulting translated expression for cache hit detection. the above expression is the same as expr1. ■ 400 Oracle Business Intelligence Server Administration Guide Version 10.Oracle BI Server SQL Reference ■ SQL Reference IFNULL (expression. then the query will execute. This applies to both IndexCol expressions specified in the logical SQL query and IndexCol expressions specified in a derived logical column. The logical SQL with IndexCol function appears in the SQL string in the query log. The Oracle BI Server handles this function in the following ways: ■ ODBC Procedures. But the logical request will not show the IndexCol function because Oracle BI Server will translate IndexCol to one of the expressions in its expression list in the logical request generator. If the literal value is 1.

State. City. He will get the same result and be able to drill down on State to City as if he had used SELECT State. ■ ■ VALUEOF( ) Use the VALUEOF function in an expression builder or filter to reference the value of a repository variable defined using the Server Administration Tool. He will get the same result and won't be able to drill down on City as if he had used SELECT City. the following occurs: ■ Bob logs in and IndexCol translates to the Country column because the GEOGRAPHY_LEVEL session variable is 0. For example. Variables should be used as arguments of the VALUEOF function. and the sales manager can access the State and City levels. to use the value of a static repository variables named prime_begin and prime_end: Oracle Business Intelligence Server Administration Guide Version 10.3.2 40 1 . You can also use the VALUEOF function when you edit the SQL for a request from the Advanced tab in Oracle BI Answers.1. ■ Using SELECT IndexCol( VALUEOF( NQ_SESSION. Mike logs in and IndexCol translates to the City column because the GEOGRAPHY_LEVEL session variable for Mike is 2. The CEO can access the Country level down to the City level. Jackson logs in and IndexCol translates to the State column because the GEOGRAPHY_LEVEL session variable for Jackson is 1.Oracle BI Server SQL Reference ■ SQL Reference Example With Hierarchy Levels Company ABC has a geography dimension with the hierarchy Country of State. This assume that the Oracle BI Server instance has the same user names. IndexCol Example With Hierarchy Levels TITLE CEO Sales Manager Sales Manager Sales Person Sales Person GEO LEVEL 0 1 1 2 2 CURRENCY US Dollars Japanese Yen Japanese Yen Japanese Yen US Dollars CURRENCY_COL 0 1 1 1 0 USER_NAME Bob Harriet Jackson Mike Jim The following steps illustrate one way to create a single query where each user sees the top level to which they have access: ■ The Oracle BI Administrator creates a new session variable GEOOGRAPHY_LEVEL that is populated by the initialization block: SELECT GEO_LEVEL from T where USER_NAME = ':USER'. Country. Refer to static repository variables by name. He will get the same result and be able to drill down on Country to State as if he had used SELECT Country. Revenue from Sale.GEOGRAPHY_LEVEL ). Table 41. City ). and the sales people can only access the City level. Table 41 on page 401 shows the backend database for Company ABC. Revenue from Sales. Revenue from Sales. Revenue from Sales.

"Region" = VALUEOF(NQ_SESSION. without changing them at all. this is an example of the proper syntax to use in an expression builder (filter): "SalesSubjectArea". this is an example of the proper syntax to use: SalesSubjectArea. you should use NQ_SESSION. 402 Oracle Business Intelligence Server Administration Guide Version 10.."Customer". This allows the Oracle BI Administrator to change the structure of the initialization blocks in a localized manner without impacting reports. to use the value of a session variable named REGION. If you are using a dynamic repository variable.. they are values that are taken literally as is.Oracle BI Server SQL Reference ■ SQL Reference CASE WHEN "Hour" >= VALUEOF("prime_begin")AND "Hour" < VALUEOF("prime_end") THEN 'Prime Time' WHEN ."REGION") The names of session variables need to be preceded by NQ_SESSION. ELSE. separated by a period.REGION) NOTE: Although using initialization block names with session variables (just as with other repository variables) may work. Syntax: DATABASE () Expressing Literals A literal is a nonnull value corresponding to a given data type..Region = VALUEOF("Region Security".3.2 .Customer. enclose the name in double quotes ( “ ). and contained within parentheses. NQ_SESSION acts like a wild card that matches all initialization block names.END You need to refer to a dynamic repository variable by its fully qualified name. For example. Literals are typically constant values. User Returns the user ID for the Oracle BI repository to which you are logged in. that is.1. For example. separated by a period.. and contained within parentheses. If the variable name contains a space. the names of the initialization block and the repository variable need to be enclosed in double quotes ( “ ). A literal value has to comply with the data type it represents. Syntax: USER () Database Returns the name of the Oracle BI Presentation Catalog to which you are logged in. System Functions The system functions return values relating to the session. to use the value of a dynamic repository variable named REGION contained in an initialization block named Region Security.

Floating Point To express floating point numbers as literal constants. use the keywords DATE. type the integer as part of a SQL statement (for example. Datetime Literals The SQL 92 standard defines three kinds of typed datetime literals. in the following formats: DATE 'yyyy-mm-dd' TIME 'hh:mm:ss' TIMESTAMP 'yyyy-mm-dd hh:mm:ss' These formats are fixed and are not affected by the format specified in the NQSConfig. respectively. The integer can be preceded with either a plus sign (+) or minus sign (-) to indicate the integer is a positive or negative number. the letter 'E'. TIME_DISPLAY_FORMAT. or DATE_TIME_DISPLAY_FORMAT. and FLOAT). Do not surround numeric literals with single quotes. TIME. doing so expresses the literal as a character literal. Numeric Literals A numeric literal represents a value of a numeric data type (for example.2 40 3 . No spaces are allowed between the integer. DECIMAL. Oracle Business Intelligence Server Administration Guide Version 10. surround the character string with single quotes ( ' ). To express a numeric literal.3. type a decimal number. To express a typed datetime literal. in the SELECT list).Oracle BI Server SQL Reference ■ SQL Reference SQL provides mechanisms for expressing literals in SQL statements. This section describes how to express each type of literal in SQL.INI file for the parameters DATE_DISPLAY_FORMAT. To express a character literal. respectively. Integers To express an integer constant as a literal. Two digits are required for all nonyear components even if the value is a single digit. type a decimal literal followed by the letter 'E' (either uppercase or lowercase) and followed by the plus sign (+) or the minus sign (-) to indicate a positive or negative exponent. Decimal To express a decimal literal. or TIMESTAMP followed by a datetime string enclosed in single quote marks. Character Literals A character literal represents a value of CHARACTER or VARCHAR data type. INTEGER.1. and the sign of the exponent. The decimal can be preceded with either a plus sign (+) or minus sign (-) to indicate the integer is a positive or negative number. type the number as part of a SQL statement. The length of the literal is determined by the number of characters between the single quotes.

Oracle BI Server SQL Reference ■ SQL Reference 404 Oracle Business Intelligence Server Administration Guide Version 10.2 .1.3.

DB2. refer to “Administering Usage Tracking” on page 219.sql The sample scripts set the usage tracking table name to S_NQ_ACCT. Comments at the beginning of these files should be used as a guide. Oracle BI provides the following sample JavaScript files located in the OracleBI\server\Scripts\Common subdirectory: ■ ■ ■ sblAcctLoaderMSSQL for SQL Server sblAcctLoaderOCL. see the usage tracking topics in Oracle Business Intelligence Infrastructure Upgrade Guide. the Oracle BI Server collects usage tracking data for each query and writes statistics to a usage tracking log file or inserts them directly to a database table.sql for SQL Server SAACCT. Oracle Business Intelligence Server Administration Guide Version 10.sql for Oracle SAACCT.1.js for other database servers like DB2 These JavaScript files need to be modified for your environment.MSSQL.Oracle. SQL Server and Teradata: ■ ■ ■ ■ SAACCT. The table name must match the name used in the corresponding repository. For sites that have Oracle BI Applications. Loading Usage Tracking Tables with Log Files It is strongly recommended that you load the Usage Tracking table using the Direct-Insert option. this is the name used in the Oracle BI repository. Sites that build their own repositories may change the name of the usage tracking table.Teradata. If you are upgrading from previous versions of Usage Tracking.2 40 5 .3. When usage tracking is enabled. For more information.sql for DB2 SAACCT. For those customers who have to load the Usage Tracking table from log files. NOTE: It is strongly recommended that you use Direct Insert instead of writing to a log file. DB2. Create Table Scripts for Usage Tracking Data The OracleBI\server\Schema folder contains the following Create Table scripts for Oracle.A Oracle BI Server Usage Tracking Data Descriptions and Using the Log File Method The Oracle BI Server supports the collection of usage tracking data.js for Oracle sblAcctLoaderADO.

The hour and minute the logical query was completed. Default is Null. please ask your DBA to write scripts that will load your usage tracking log files. you need to create a table to store the data.0). NOTE: UNIX installations cannot use these JavaScript files because UNIX operating systems typically do not support some of the advanced functionality used in these scripts.0). Number(10. 406 Oracle Business Intelligence Server Administration Guide Version 10. Where appropriate. The total number of rows returned by the back-end databases.0). The date the logical query was completed.0). CACHE_IND_FLG COMPILE_TIME_SEC CUM_DB_TIME_SEC CUM_NUM_DB_ROW END_DT END_HOUR_MIN END_TS The time in seconds required to compile the query. The start and end timestamps also reflect any time the query spent waiting for resources to become available.2 . Varchar(250) Error message from the back-end database. The total amount of time in seconds that the Oracle BI Server waited for back-end physical databases on behalf of a logical query. the data type and length is Decimal(10. ERROR_TEXT NODE_ID NUM_CACHE_HITS Reserved for future use. the data type and length is Decimal(10. This column is only applicable if the SUCCESS_FLG is set to a value other than 0 (zero). NOTE: For DB2. The date and time the logical query finished. Multiple messages will concatenate and will not be parsed by Oracle BI Server. Default is Null. refer to “Create Table Scripts for Usage Tracking Data” on page 405. For UNIX installations.3. Indicates the number of times query generated cache was returned. Y indicates a cache hit for the query. For more information. NUM_CACHE_INSERTED Default is Null. Column Usage Tracking Data Description Default is N. N indicates a cache miss.1.Oracle BI Server Usage Tracking Data Descriptions and Using the Log File Method ■ Description of the Usage Tracking Data Before extracting usage tracking log file data. Table 42. Number(10. Indicates the number of times existing cache was returned. the data type and length is also included. Description of the Usage Tracking Data Table 42 on page 406 describes each column in the usage tracking table. NOTE: For DB2.

TOTAL_TIME_SEC USER_NAME Oracle Business Intelligence Server Administration Guide Version 10. The name of the user who submitted the query. The date and time the logical query was submitted. If the request is not a dashboard request.The query timed out.The query failed because row limits were exceeded. Drill or Report. NUM_DB_QUERY PRESENTATION_NAME QUERY_SRC_CD QUERY_TEXT REPOSITORY_NAME ROW_COUNT RUNAS_USER_NAME The source of the request.1.The query completed successfully with no errors. The SQL submitted for the query. Default is Null. the value will be NULL. If the request is not run as an impersonated user.Oracle BI Server Usage Tracking Data Descriptions and Using the Log File Method ■ Description of the Usage Tracking Data Table 42. If the query was not submitted through an Interactive Dashboard. Varchar(128) User Id of impersonated user. For successful queries (SuccessFlag = 0) this number will be 1 or greater. Varchar(128) Name of the Presentation Catalog in Oracle BI Presentation Services. for example. SAW_SRC_PATH START_DT START_HOUR_MIN START_TS SUBJECT_AREA_NAME SUCCESS_FLG The path name in the Oracle BI Presentation Catalog for the request. the value will be NULL. The number of rows returned to the query client. Default is Null. Varchar(150) Page name in the Interactive Dashboard. The name of the business model being accessed. 1 . The name of the repository the query accesses.3.The query failed due to some other reason. 3 . Column Usage Tracking Data Description The number of queries submitted to back-end databases in order to satisfy the logical query request. 2 . SAW_DASHBOARD SAW_DASHBOARD_PG Path of the dashboard. The date the logical query was submitted. the value will be NULL. The time in seconds that the Oracle BI Server spent working on the query while the client waited for responses to its query requests. The hour and minute the logical query was submitted. The completion status of the query: 0 . Default is Null.2 40 7 .

2 .1.3.Oracle BI Server Usage Tracking Data Descriptions and Using the Log File Method ■ Description of the Usage Tracking Data 408 Oracle Business Intelligence Server Administration Guide Version 10.

A header file is provided for all of the types that will be used in the dynamically loadable authenticator.1. which is defined as follows: typedef wchar_t SAChar. All of the APIs take SAChar. The version number is predefined as 1. For more information about implementation. ■ Argument Input p A pointer to a SAChar string ■ Return value None. SAAuthenticatorNotSupported } SAReturnType.2 40 9 . All of the following APIs need to be thread-safe: ■ SAUInt32 SAAuthenticatorGetVersion() Description: This returns the current version of the authenticator. ■ unsigned int SAUInt32. Arguments None ■ Return value The version number is predefined as 1. SAAuthenticatorFalse. ■ void SAAuthenticateFreeString(SAChar *p) This function is a utility function that frees up memory pointed by p.3.B Oracle BI Server Authentication APIs The Oracle BI Administrator requests that the developer create a dynamically loadable authentication module according to the Oracle BI Authenticator API specification. This section contains the APIs that the authenticator needs to implement. Other related type definitions are defined as follows: typedef enum { SAAuthenticatorTrue. Oracle Business Intelligence Server Administration Guide Version 10. refer to “About Authenticating Users Using Initialization Blocks” on page 293.

This contains the error message. if an error occurs. SAChar **ppErrorMessage) This function authenticates a user. if an error occurs. ■ SAReturnType SAAuthenticatorLogin(const SAChar * pUserID. SAChar **ppErrorMessage) This function performs some basic initialization to the authentication module.Oracle BI Server Authentication APIs ■ ■ void SAAuthenticateFreeStringArray(SAChar **pp) This function is a utility function. the return value is SAAuthenticatorTrue. It frees up memory as pointed by pp.2 . ■ Arguments Input pConfigParams This points to the parameters to be passed to the authenticator. The authenticator writer needs to allocate memory for the error message.1.3. the return value is SAAuthenticatorFalse and the error message is stored in *ppErrorMessage. If the initialization fails. const SAChar *pPassword. The authenticator writer needs to allocate the memory for the error message. ■ Arguments Input Input Output pUserID pPassword ppErrorMessage User's login name User's password This contains the error message. ■ Return value ❏ If the authentication is successful. NOTE: The authenticator framework is responsible for freeing up the memory allocated for ppErrorMessage. ■ Argument Input pp A pointer to a SAChar array ■ Return value None ■ SAReturnType SAAuthenticatorInit(const SAChar * pConfigParams. Output ppErrorMessage ■ Return value ❏ ❏ If the initialization is successful. 410 Oracle Business Intelligence Server Administration Guide Version 10. the return value is SAAuthenticatorTrue. The string is a concatenation of the Configuration parameter and decrypted version of the Encrypted parameter. It will be called from Oracle BI Server only once.

■ Return value ❏ ❏ If the user id is valid. This contains the error message. ■ bool SAAuthenticatorIsAValidUser(const SAChar * pUserID.1. ■ Arguments Input Input Output pUserID ppKeys pppValues User's login name It points a null-terminated array of strings indicating which properties' values to return.3. SAChar **ppErrorMessage) This function contains a list of property values.Oracle BI Server Authentication APIs ■ ❏ If the authentication is unsuccessful. const SAChar **ppKeys. This API cannot return SAAuthenticatorNotSupported. if an error occurs. The authenticator framework is responsible for freeing up the memory allocated for ppErrorMessage. The authenticator framework is responsible for freeing up the memory allocated for ppErrorMessage. the return value is SAAuthenticatorFalse and the error message is stored in **ppErrorMessage. SAChar **ppErrorMessage) This function determines whether the specified user id is a valid. The Oracle BI Server authenticator framework is responsible for freeing up the memory allocated for pppValues. The authenticator writer needs to allocate the memory for the array. NOTE: This API cannot return SAAuthenticatorNotSupported. SAChar *** pppValues. If the user id is invalid. The authenticator writer needs to allocate the memory for the error message. ■ SAReturnType SAAuthenticatorGetUserProps(const SAChar * pUserID. When the key is GROUP and the user belongs to multiple groups. It points to a null-terminated array of strings which has the properties' values corresponding to ppKeys. the return value is SAAuthenticatorTrue. The authenticator writer needs to allocate the memory for the error message. if an error occurs. the return value is SAAuthenticatorTrue. Oracle Business Intelligence Server Administration Guide Version 10. the return value is SAAuthenticatorFalse and the error message is stored in *ppErrorMessage. values need to be semicolon delimited. Output ppErrorMessage ■ Return value ❏ If the function call is successful.2 41 1 . ■ Arguments Input Output pUserID ppErrorMessage User's login name This contains the error message.

■ Arguments Output pppGroups It points to a null-terminated array of strings that are the groups to which the user belongs. The Oracle BI Server authenticator framework is responsible for freeing up the memory allocated for ppErrorMessage.Oracle BI Server Authentication APIs ■ ❏ If function call fails. the return value is SAAuthenticatorFalse and the error message is stored in *ppErrorMessage. ■ Arguments None ■ Return value None 412 Oracle Business Intelligence Server Administration Guide Version 10. The Oracle BI Server authenticator framework is responsible for freeing up the memory allocated for ppErrorMessage. ■ SAReturnType SAAuthenticatorGetAllGroups(SAChar *** pppGroups. ■ void SAAuthenticatorShutdown() This function performs some cleanup up when Oracle BI Server shuts down. Output ppErrorMessage ■ Return value ❏ If the function call is successful. If function call fails.1.3. The authenticator writer needs to allocate the memory for the error message. The Oracle BI Server authenticator framework is responsible for freeing up the memory allocated for pppGroups. the return value is SAAuthenticatorFalse and the error message is stored in *ppErrorMessage. It will be called from Oracle BI Server only once. The authenticator writer needs to allocate the memory for the array.2 . ❏ NOTE: This API can return SAAuthenticatorNotSupported if it is not supported. NOTE: This API cannot return SAAuthenticatorNotSupported. This contains the error message. SAChar **ppErrorMessage) This function gets a list of all groups. the return value is SAAuthenticatorTrue. if an error occurs.

described 20 icons and symbols (table) 21 join diagrams. specifying appearance in alphabetical order 32 row counts. about calculating the rank for each value 372 StdDev. calculating average mean 367 baseline columns. about selecting first returned value 368 GroupByColumn. about calculating sum by adding distinct values 373 TopN. specifying for each source 201 aggregate table definitions. about selecting last returned value 369 Max. about 371 Rank. about and navigation 49 aggregate table fragments. about calculating a percent rank 371 PeriodAgo. described 19 File menu. about ranking the highest n values 374 aggregate navigation. computing aggregates 360 Median. about updating for tables and columns 35 scrolling speed. about 366 AvgDistinct. about ranking the lowest n values 367 Count (*) (CountStar). setting default window size 33 keyboard shortcuts (table) 21 main window. described and functions (table) 19 Oracle BI Server. about 358 alternative syntax 362 Avg aggregate function. about 371 PeriodToDate. about calculating 373 SumDistinct. about calculating maximum value 369 measure columns.3. setting 33 toolbar functions 20 Tools menu. using to shut down server 214 aggregate expression builder dialog See Expression Builder dialog boxes aggregate fact table creating and example. about and Oracle Business Intelligence Server Administration Guide Version 10. setting general preferences 29 repository components 50 repository objects. repository parts described 17 Manage menu. about calculating the number of rows 367 CountDistinct. about 385 Administration Tool See also Browse dialog box.1. described 18 Help menu. about counting number of rows 368 Count. described 19 View menu. about determining the rank of a value 370 Percentile. logical business models. about 118 aggregate functions about 366 aggregate queries. described 19 Window menu.Index A Abs math function.2 41 3 . about setting up aggregate navigation 369 LAST. using to shut down 214 preferences. adding or editing 34 repository objects. described 20 Administration Tool. computing aggregates 358 BottomN. about specifying logical columns 368 GroupByLevel. reset behavior 361 First. about returning standard deviation 372 Sum. about calculating the minimum value 370 NTILE. repository mode Cache Manager. setting up See also aggregate tables. about calculating the median value of rows 370 Min. setting permissions 33 repository objects. selecting columns to display 32 Edit menu. about adding distinct process to COUNT 367 display function. aggregate table fragments aggregate levels. about 385 Acos math function. changing column order 32 Cache Manager.

about 293 definition 293 Avg aggregate function. about 366 AvgDistinct aggregate function. overriding (procedure) 331 analyzing the cache See Cache Manager ASCII string function. defining for LDAP authentication 325 authenticator about 293 custom authentication. setting 326 Oracle BI Server internal authentication. about 385 Atan2 math function. about and example 125 aggregate table fragments about and example 206 about configuring a repository to use fragments 206 aggregate table content.2 . about 324 authentication. working with authentication. using 149 Allow direct database requests for all. groups. about 324 LDAP authentication. changing 329 USER session system variable. setting up 325 logging level. about and storage of 329 password. about 326 external table authentication. creating (procedure) 110 logical columns. setting up 326 LDAP authentication.Index ■ B example 206 aggregated fact data. about 385 authentication cache. about setting up and working in 52 business models See also Business Model and Mapping layer. specifying 201 WHERE clause filter. about 367 Browse dialog box about using 37 querying for an object 38 selecting an object in 38 synchronizing an object in the query results list with the tree control list 38 business model definition 41 Business Model and Mapping layer about creating and maintaining 109 Business Model and Mapping layer. logical table joins business model. presentation catalogs copy business model with presentation catalog utility 110 diagram. about 367 B baseline column behavior with aggregate functions 358 example 358 Between SQL logical operator. about 379 BottomN aggregate function. constructing 208 physical layer table. displaying 139 understanding 40 414 Oracle Business Intelligence Server Administration Guide Version 10. setting up logical table sources (mappings). about using to create joins 137 diagram. about 329 Oracle BI Server user IDs and passwords. overriding (procedure) 331 Allow populate queries for all. specifying 207 physical joins for virtual table. associating with a level in dimension 116 measure. creating dimension sources for each level 118 fragment content. about disabling 322 authentication options See also security. defining 119 repository. about using and procedure 327 external table authentication. about 378 Asin math function. order of 330 database authentication. creating 122 Business Model and Mapping layer. about 385 Ask DBMS button. about and navigation 49 performance. about working with 111 measure.1. about 364 Bit_Length string function. creating 207 aggregate tables aggregate table definitions. working in See also business models. about working with 110 business model. creating 113 logical table source 117 logical tables. working in. setting up 117 table sources content definitions. defining with a Select Statement 207 SQL virtual table content.3. using to change Feature table entries 65 Atan math function. about using to improve 228 alias table about 83 aliases Alias tab. removing the association 117 physical to logical mapping.

3. enabling query caching 233 query caching.1. about 396 Week_Of_Quarter. Manage menu option. about and columns described (table) 309 Request window (Session view). displaying 256 option settings (table) 255 purging cache 256 view and save SQL call 255 cache persistence time setting 234 cache sharing. viewing 310 Cache view. about 393 Now. specifying the session variable to use 98 Dynamic Name tab. about 403 check global consistency options when saving 54 checking in changes changes. about 398 Year. about 394 Second. about 234 event polling tables. configuring 235 physical tables. about and columns described (table) 309 graphical user interface. about disabling 322 cache hits description of 238 information about 238 cache information. columns described (table) 311 Session window. connectivity to 262 cluster information. about 391 DayName. about 393 Quarter_Of_Year. about using and tasks 26 checkpoints described 224 chronological keys about 127 client tools. about 392 DayOfYear. monitoring and managing caching attributes. unassigning a session variable 98 Ceiling math function. about 391 Current_TimeStamp.2 41 5 . about 379 Char_Length string function. setup 30 calendar date/time functions Current_Date. viewing cache information. columns described (table) 310 Status view. about 398 Week_Of_Year. about 398 Cast conversion function. described 307 managing clustered servers (procedure) 312 Oracle Business Intelligence Server Administration Guide Version 10. about 398 catalog folders Dynamic Name tab. about 393 Month_Of_Quarter. viewing 310 Cache view. sharing with Presentation Server 236 Cache. about 392 DayOfWeek. about 379 character literals. about 393 Month. about 392 Hour. described 19 cache. about 391 Day_Of_Quarter. about returning 390 Current_Time. controlling max number of rows 233 query caching. changing 32 columns. disabling query caching 233 query caching. selecting columns to display 32 global cache information. about and columns described (table) 307 Cluster Manager See also Cluster Server cache information. about 391 DayOfMonth. making available and saving to disk 26 Check In Changes dialog box. about 386 Char string function. setting for physical tables (procedure) 234 disabling caching for the system. sorting entries 98 Dynamic Name tab. about 394 TimeStampDiff. SAGetSharedRequestKey. columns described (table) 311 Session window (Session view). viewing 310 Cache Manager about and opening 255 column order. about 190 Calculation Wizard. using 236 cache storage cache data storage directories 233 cache entry. about 392 Minute.Index ■ C C cache behavior in offline mode 254 behavior in online mode 254 disabling 233 enabling 233 purging 256 purging when switching between repositories 254 cache authentication. about 393 MonthName. about caching and persistence timing 234 Calculation Wizard. about 394 TimestampAdd.

note about starting 307 Cluster. setting in the NQClusterConfig. about using the function in an expression builder 401 copy business model with presentation catalog utility. described 310 Session view. Manage menu option. definitions 27 setting up 27 setting up. viewing 310 Cluster Controller and Oracle BI Server. Session and Request window.Index ■ C performance considerations 313 refreshing and setting interval. about 301 secondary Cluster Controller. creating 139 Concat string function. about and procedure 110 Cos math function.2 . creating 264 input file. setting in the NQSConfig. copying messages 28 inconsistencies. Session window columns described (table) 311 Status view. described 19 column mapping logical columns to physical columns. about and complex joins 137 logical complex joins.INI file. about 302 NQClusterConfig. about 307 Cluster Server See also Cluster Manager about 301 analytics ODBC data source name. mapping 119 removing column mapping 120 Command window. about changing the data type to another data type 398 VALUEOF(). checking repository for 28 consistency. assigning (procedure) 80 connectivity client tools and data sources.INI file 304 parameters. about and columns described (table) 307 stopped or offline. fields described 70 persist connection pool property. about 265 416 Oracle Business Intelligence Server Administration Guide Version 10. about 302 startup process overview 305 stopped or offline. about using 263 consistency check repository. checking single object for 29 conversion functions Cast. about 368 Count aggregate function. about 367 CountDistinct aggregate function. about 386 Cot math function. about 302 slave server. about 379 conditional expressions CASE (if). connectivity to 262 metadata.INI file 304 performance considerations 313 primary Cluster Controller. checking for consistency 29 Consistency Check Manager about checking repository or objects for consistency 26 about passing consistency check 26 consistency. executing 278 alias-SQL output file. note about starting 307 using. starting Cluster Controller and Oracle BI Server 304 complex joins about 100 logical complex joins. about 266 deploying 278 import files. checking single object for 29 inconsistencies. importing 263 ODBC data source names. Request window (Session view) columns described (table) 311 Session view. configuring 259 query and reporting tools.3. about copying to Config directory 304 parameters. checking for consistency 28 setting up 27 single object. about 367 create view function. about 386 Count (*)/CountStar aggregate function. setting up 79 persist connection pool. (procedure) 307 scheduler. about and syntax 365 CASE (Switch). about 104 cube metadata alias-SQL file. about configuring 304 cache information. checking repository for 28 consistency. correcting 28 messages. activating (procedure) 307 Session view. starting from the Command window 304 installing 303 managing clustered servers (procedure) 312 master server. about and syntax 364 connection pool about 51 creating and configuring. about 27 consistency. about 65 creating or editing 67 dialog box.1.

importing 279 Current_Date calendar date/time function. about entering 108 usage examples 107 using.exe. about 391 DayOfMonth calendar date/time function. about 266 cube metadata input file. understanding 40 objectives of 40 data sources connectivity to 262 DATA_STORAGE_PATHS parameter. about 391 DayName calendar date/time function. XML ODBC database type. removing the association 117 presentation tables 147 presentation tables column (procedure) 148 table as a logical table source 118 Oracle Business Intelligence Server Administration Guide Version 10. about 267 output files.2 41 7 . about using 106 datetime literals. about 346 In-Process Data Mining Adapter API. database objects that accept hints (table) 107 ODBC type. about 390 Current_Time calendar date/time function. XML. about assigning if database type undetermined 61 Database system function. about 386 deleting alias 149 column mapping 120 initialization block 299 measure. about 265 running 264 SAMetaExport. and indexing. tuning. automatically assigning 61 databases See also database hints authentication.1. about 392 DayOfYear calendar date/time function. about 265 XML file. about 328 database hints See also databases database objects that accept objects (table) 107 hints. about 107 performance considerations 107 SQL comment markers. about 402 database type. about 106 database object creating manually in the Physical layer 61 database hints. about 403 default client/server communication method.3. sample implementation 347 In-Process Data Mining Adapter API. about 403 Day_Of_Quarter calendar date/time function. mapping. about 265 output. about 265 errors. importance 228 database hints. changed from DCOM to TCP/ IP 260 Degrees math function. about 267 output files. conversion rules. using to specify query cache storage 233 database authentication Oracle BI Delivers. about 392 DayOfWeek calendar date/time function. list of 266 import files. about 267 objects. about 391 D Data Mining Adapter See also XML Gateway. creating 264 metadata objects. parameters of 264 troubleshooting 266 DCOM.Index ■ D materialized query tables (MQTs). about 392 DB2 265 DB2 Cube Views Generator about 278 alias-SQL output file. about 267 metadata objects. guidelines 280 objects. automatically assigning 61 relational data source. about 107 Leading hint. using as a data source configuring (procedure) 348 In-Process Data Mining Adapter API. creating (procedure) 108 index hint. about 391 Current_TimeStamp calendar date/time function. about using and procedure 327 configuring. mapping. changed client/server communication method 260 decimal literal. using ValueOf( ) expression 347 operation modes 345 data modeling business model. restoring default entries for 64 Database types multidimensional data source. conversion rules.

populating automatically (procedure) 37 event polling table cache event processing. example 132 grand total.2 . example 131 levels. about 248 configuring 235 CREATE TABLE statements. about 125 note. about 41 sample hierarchy rollups. about 127 level. about 141 DSN connection See Oracle BI Server Dynamic Name tab entries. about 127 dimensional level general properties. about 287 dragging and dropping logical tables 112 driving table about specifying 140 caution. setting up 131 level keys. example 132 level attributes. about 47 star schema 47 dimensions about 125 about cubes from a multidimensional data source 126 automatically creating 133 creating 126 creating (procedure) 126 creating and administering 126 creating automatically 133 creating automatically (procedure) 134 hierarchies. specifying and query optimization 140 controlling and tuning performance. about 134 display functions example 361 reset behavior 361 DISPLAYNAME system session variable. performance of 46 Estimate Levels logical level counts. about and diagram 44 star and snowflake models.3. sorting 98 session variable. about 127 level-based measure calculations. about specifying when creating a Business Model Diagram 140 caution. about creating 126 time dimension. about 287 entity-relationship (E-R) models about 46 queries that perform historical analysis.based measure calculations. about and diagram 44 single table model. specifying for 135 setting up. specifying 98 session variable. about 127 grand total levels. adding 129 dimensional models about 46 sample hierarchy rollups. about and creating 54 understanding 41 dimensional schemas about and advantages 47 fact table.1.Index ■ E dimension keys creating 126 dimension level counts automatically creating 36 creating automatically 36 creating automatically (procedure) 37 dimension levels creating 126 dimensional hierarchies measures. defining 128 primary key. about including the key column in the dimension 129 dimensions. about 131 level-based measure calculations. described 19 EMAIL system session variable. about 44 dimensional hierarchy grand total levels. about specifying when creating a logical complex join 139 caution. unassigning 98 dynamic repository variables See also initialization blocks about 285 example 285 initializing 291 dynamically loadable authenticator framework about 293 definition 293 E Edit menu. about specifying when creating a logical foreign key 138 caution. defined and example 43 dimension-specific aggregation rules columns. sample event polling table 251 making the polling table active 252 418 Oracle Business Intelligence Server Administration Guide Version 10.

about importing from an Oracle database 56 primary key. creating 138 note.1. making changes to 254 troubleshooting 253 using 254 Exp math function. about 387 foreign keys logical foreign key. changing using Ask DBMS 65 File menu. about 368 floating point literal. about 194 Session Variables folder. described 18 filter See also query execution privileges complex filter. about and example 99 FROM clause syntax. defined 47 graphical user interface See Cache Manager GROUP BY clause query behavior with and without 361 syntax. about creating and example 318 LDAP authentication. about and expressing 403 integers. setting up 249 populating. about and expressing 402 datetime literals. about and expressing 403 numeric literals. about 194 Logical Tables folder. about 358 GROUP system session variable. about constructing 161 constructing a filter to view all databases references in a business model 160 Oracle Business Intelligence Server Administration Guide Version 10. relationship with 100 fragmentation content about 201 multicolumn content descriptions example 202 parallel content descriptions example 203 single column range-based predicates example 201 single column value-based predicates example 201 unbalanced parallel content descriptions example 205 fragmented data. about using with parameterized SQL queries 146 Expression Builder dialog boxes about using 190 accessing 191 Aggregate Content folder. working with See also authentication options about 317 groups. about 193 Repository Variables folder. about 253 repository. about 193 navigating within the expression builder 196 Operators folder. about 387 Export logical keys option. constructing a filter for 160 First aggregate function. about and expressing 403 floating point. identifying and using 184 overview 235 physical databases. about 368 GroupByLevel aggregate function.Index ■ F Oracle BI Event Table utility. about 193 Constraints folder.3. about 194 Dimensions folder. about specifying dimension levels 369 groups.2 41 9 . about 403 Floor math function. about 194 setting up example 195 toolbar (table) 192 Types folder. using as a data source external table authentication about 326 setting up 326 Externalize Strings utility. configuring 321 LDAP. about 403 Extensible Markup Language See XML. about and formats 403 decimal. about 194 expression literals character literals. about and starting 184 constructing a filter to view all Presentation layer columns mapped to a logical column 161 query results. building (procedure) 196 Expressions folder. about 357 functions See aggregate functions G grand total dimension hierarchy example 132 grand total levels about 127 example 132 granularity. about 193 example (diagram) 192 expression. viewing in the Query Repository dialog box 321 F Feature table entries. about 288 GroupByColumn aggregate function. about 194 Functions folder. about importing users and groups 321 member hierarchies.

executing 278 deploying cube metadata 278 materialized query tables (MQTs).3. about 380 integers literals. setting default window size 33 Joins Manager joins. selecting (procedure) 296 dynamic repository variables. removing 299 caution. about 403 Is Null SQL logical operator. definition 180 icons. about 298 associating with variables. removing execution precedence 300 variables. described 19 420 Oracle Business Intelligence Server Administration Guide Version 10. dimension name (definition) 93 physical cube table. defined and example 43 Hour calendar date/time function. tuning parameters 227 NSQConfig. about 318 privileges example (diagram) 319 privileges.2 . adding a new group to 320 repository. described 20 HIDD_A_KEY 90 hierarchies about 125 hierarchies. about 400 IndexCol conversion function. described (table) 21 IfNull conversion function. about 364 IndexCol conversion function. initializing 291 using with variables. specifying 347 configuring (procedure) 348 sample implementation 347 ValueOf( ) expressions.1. guidelines 280 XML file. about 298 associating with session variables. about 290 variables. about 364 J Jobs. re-initializing 298 session variables.Index ■ H member hierarchies. about number of columns different from number retrieved 298 Oracle BI Server. about opening Initialization Block dialog box in online mode 291 data source and connection pool. about 392 HTML tables example 344 XML Gateway. importing 279 ibot.INI file. Manage menu option. about index hint instructions 107 INI file NQClusterConfig. dimension unique name (definition) 93 physical cube table. adding an entry 152 initialization blocks associating with repository variables. about 199 indexing. about 399 importing metadata 263 metadata. importing LDAP users and groups into 323 user privileges and group privileges example (diagram) 319 H Help menu. initializing 291 initialization block execution order. assigning (procedure) 294 note. removing association 299 variables. about connecting using an ODBC connection 57 users and groups using LDAP 321 XML data using ODBC 349 In SQL logical operator. reordering 299 In-Process Data Mining Adapter API about 346 column values. described 19 join diagrams. about using to create 137 Joins. about 298 blocks. using 347 Insert string function. setting parameters for Cluster Server 304 NQSConfig. type of hierarchy (definition) 93 hierarchy. Manage menu option. time dimension (definition) 93 physical cube table. about granting and examples 318 repository. viewing in the Security Manager 321 predefined Administrators group. setting 299 name and schedule.INI file. accessing by 344 I IBM Cube Views about 278 about using with Oracle BI 277 alias-SQL file.INI file. about dimensional hierarchies 41 hierarchy physical cube table.

about 113 creating. working in about 136 Business Model Diagram. about 324 authentication.1. about 137 driving table. associating with a level in a dimension 116 measure. about 369 LDAP See Lightweight Directory Access Protocol (LDAP) Leading hint.3. configuring 321 logging level. about 107 Left string function. understanding 41 single table model. controlling and tuning performance 141 logical complex join. about 380 Length string function. about 381 log files See also query log. example 132 level-based measure calculations. setting 326 passwords and storage. about and creating 54 Logical Column dialog box measure. procedure 114 logical column.2 . defining for LDAP authentication 325 users and groups. displaying physical tables that map to 141 logical table sources removing a table as a source 118 42 1 Oracle Business Intelligence Server Administration Guide Version 10. adding 129 levels. expressing (list of) 402 Load all objects option. about 364 literals. importing LDAP users and groups into 323 USER session system variable. about 387 logging levels individual users. creating 138 logical object. about 381 LocateN string function. interpreting 218 running (procedure) 217 using. displaying all that map to physical tables 141 Logical Table dialog box foreign key. creating 138 logical object. about 381 level attributes about 127 level keys about 127 level-based measure calculations about 131 example 131 setting up 131 levels general properties. about 387 log viewer utility log records. editing 113 key. about opening and examining 305 See log files Log math function.log. using 217 override with session variable 215 user’s logging levels disabling 217 setting 217 logical business models bridge tables. administering NQServer. about using to import 321 Like SQL logical operator. creating 139 logical foreign key. creating 139 logical foreign key. about specifying and query optimization 140 driving table. defining 128 hierarchy. enabling 215 levels described (table) 216 log viewer utility.Index ■ K K key symbol. setting up 325 LDAP authentication. about 217 Log10 math function. about 114 creating. described 22 keyboard shortcuts (table) 21 L Last aggregate function. about 329 repository. interpreting the log records 218 log viewer utility. removing the association 117 logical columns creating or editing. setting up 131 Lightweight Directory Access Protocol (LDAP) authentication.log and NQCluster. administering. specifying 112 new logical table source. about 127 primary key for. about specifying 140 driving table. identifying 43 dimensional models. usage tracking. displaying 139 creating. working with grand total levels. unmapping from its source 120 logical complex join. about selecting 26 Locate string function. adding 118 logical table joins See also Business Model and Mapping layer.

creating 170 projects. list of 384 Mavg running aggregate function. checking in 175 projects. about 369 measure dimension. about 172 metadata.3. about 170 shared network directory 171 422 Oracle Business Intelligence Server Administration Guide Version 10. about 117 Where clause filter.Index ■ M Replace Wizard. ways to 111 foreign key. editing 112 logical tables creating by dragging and dropping 112 creating explicitly 112 creating. editing 113 key. specifying a 115 example 360 measure column. about 99 multidimensional dimensions for a cube from a multidimensional data source 126 multidimensional data source Ask DBMS. about 111 LOGLEVEL system session variable. repository parts described 17 Manage menu. using to set default window size 33 scrolling speed. described and functions (table) 19 Marketing. associating with 116 dimension. about 393 Mod math function. guidelines for deleting 179 history. about 375 multi-database joins. about 393 More tab joins diagrams. about 172 pointer to shared directory. online mode Month calendar date/time function.1.2 . about using with 273 using. using to constrain physical tables 125 logical table sources. about 288 Lower string function. about 393 Month_Of_Quarter calendar date/time function. about 374 Max aggregate function. about 302 materialized views Summary Advisor. about 393 MonthName calendar date/time function. creating 58 physical schema. about availability of 65 physical layer. defining 275 materialized views. creating 275 SQL. specifying 112 new logical table source. checking out 173 projects. specifying a default aggregation rule 115 Median aggregate function. about 370 Minute calendar date/time function. about 169 history. Manage menu option. creating (procedure) 170. 171 setting up environment. about 370 member counts updating (procedure) 94 viewing (procedure) 94 member hierarchies Query Repository dialog box. about 388 modes See offline mode. about 57 Min aggregate function. using to view 321 Security Manager. importing about 263 connections. exchanging information. removing the association 117 measure column behavior with aggregate functions 360 default aggregation rule. viewing in 321 metadata. deployment join constraints. adding 118 working with. creating 277 process. described 19 MASTER_SERVER parameter. using to set 33 MSUM running aggregate function. executing 274 trace file. checking out (procedure) 173 projects. setting up (procedure) 173 projects. viewing (procedure) 178 local changes. about 273 math functions. generating (procedure) 275 metadata. importing 59 multiuser development creating. finding 263 with databases 263 metadata. about 382 M main window. analyzing (procedure) 275 trace file. merging 175 making changes. about 274 query workload. using to replace tables or columns 183 setting up. about viewing and deleting 178 history. changing and testing 174 pointer to shared directory.

setting parameters for Cluster Server 304 NQCMD access. configuring 259 metadata. configuring for automatic startup 210 Windows. about and starting 184 Oracle BI Server See also Cluster Server automatic startup. and NQCluster. using to create virtual physical tables 81 Octet_Length string function. 50 online mode cache invalidation. list of 261 client tools and data sources. accessing 24. about 267 metadata objects. about and storage of 329 Windows. conversion rules for 267 metadata objects. creating 264 metadata objects. about 265 errors. conversion rules. Oracle BI repository 52 definition 52 deleting. validation rules for 267 output files. about and password 317 group. about 267 metadata objects. about connecting with 263 offline mode cache invalidation. about 382 ODBC calls from client applications.Index ■ N N Now calendar date/time function. mapping.INI centrally managing values 152 NQSConfig. opening in 25 one-to-many relationships.INI file entry.log. about 265 running 264 Oracle Business Intelligence Server Administration Guide Version 10. running the startup script 210 user ID. importing 263 query and reporting tools. implications for 254 changes.2 42 3 . list of 266 import files. about 227 NQServer. about physical metadata imports 57 data source names. changing 329 repository variable initialization blocks. about using and tasks 26 repository. adding an 152 tuning parameters. about opening and examining 305 NTile aggregate function.exe cache seeding. guidelines for 106 deploying 103 deploying (procedure) 105 redeploying.INI file. opening in 25 opaque view about deploying 103 best practice. about 265 output. about 403 O Object Type option. configuring for 210 connecting to. about importing foreign keys from 56 Oracle Database Metadata Generator cube metadata input file. about 370 numeric literals. using to set general preferences 29 Oracle BI Event Tables utility. reinitializing 298 starting 209 UNIX. about 393 NQClusterConfig. about accessing 336 note. about primary key-foreign key relationship (diagram) 48 online help. starting from Services 209 Oracle BI Server Administrator account. disallowing 63 nQCmd. about providing connectivity to 262 connection.log. using to view 217 NQSConfig. about changing repository in online mode and attempting to stop server 26 password. shutting down from Services 212 Windows.1. implications for 254 repository. about 214 fails to start 211 nonlocal files. running the shutdown script 213 UNIX. shutting down from a Windows command prompt 213 Windows. guidelines for 106 undeploying 105 undeploying (procedure) 105 Options dialog box. changing 211 user IDs and passwords.3. interpreting 218 query log file. making available and saving to disk 26 Check In Changes dialog box. about 318 Oracle BI Server XML Gateway See XML Gateway Oracle database note. running for 63 nQLogViewer utility log records.

working in See also physical joins column mapping. about using to specify multi-database joins 99 foreign key join or complex join. about and advantages 47 dimensional schemas. understanding aggregate navigation. about 56 physical tables creating or editing 85 overview 81 Physical Table dialog box. about setting for 33 physical column. creating 97 Physical layer. about imported key and foreign key joins 99 primary key and foreign key relationships. examples and discussion 203 password changing 329 Oracle BI Server administration account 317 Percentile aggregate function. executing 264 SAMetaExport. creating manually 61 Physical layer. creating or editing 67 database hints. about using 141 displaying 101 editor. completing Columns and Keys tabs 88 424 Oracle Business Intelligence Server Administration Guide Version 10. performance for queries for historical analysis 46 identifying contents 49 types of 46 understanding 46 Physical Diagram command. about 46 entity-relationship (E-R) schemas. parameters of 264 troubleshooting 266 Oracle database. defining 102 physical joins. creating or editing 87 physical database model. locating 64 schema folders. about avoiding unnecessary joins 100 physical joins. defining with the Joins Manager 101 query type. 333 limiting queries by objects (procedure) 331 limiting queries by time periods (procedure) 332 repository objects. specifying types of sent to a database 64 Physical layer catalogs. changing using Ask DBMS 65 logical columns. removing 120 connection pool.exe. working with 97 XML data source. about and example 99 Joins Manager. about defining 101 physical joins See also Physical layer. defining in the Physical Diagram 101 Physical layer creating and maintaining.Index ■ P SAMetaExport. about 99 note. stored procedures. working in about 99 complex joins. about 100 tip. described 51 Physical layer. using 82 Oracle Dimension Exporter about 274 Oracle dimensions about 274 ORDER BY clause. about setting up 49 primary-key-foreign key relationships.1. mapping to physical columns 119 physical joins. database objects that accept hints (table) 107 database type. about 371 performance database hints. about star schema 47 entity-relationship (E-R) schemas. restoring default entries for 64 Feature table entries. using to define 101 multi-database joins.3. about 358 P parallel content descriptions.exe. about 55 queries. setting properties for 76 physical schemas importing from ODBC (procedure) 57 importing.2 . creating 97 Physical layer schemas. about 106 database hints. about resulting in better query performance 107 server configuration and tuning 227 permissions See also privileges adding or editing 34 limiting queries by filtering (procedure) 332 limiting queries by maximum run time (procedure) 332 limiting queries by number of rows received (procedure) 331. about 100 fragmented data. about and diagram 48 physical databases analyzing 49 dimensional schemas.

about controlling and activities 330 Project. reordering 149 presentation columns. described 145 presentation tables. described (table) 148 presentation column. about moving columns into presentation catalog folders 146 copy business model with presentation catalog 110 creating (procedure) 145 Presentation Catalog dialog box. specifying types sent to 64 Leading hint. about using to build the join order 107 query caching. working in See also Presentation layer. creating Alias tab. reordering in the Presentation layer 147 tables.3. editing 148 Presentation layer. using 149 caution. described 145 presentation catalogs. rules for 361 database. Manage menu option. deleting 148 creating (procedure) 146 presentation column. described (table) 146 presentation tables. relationship with 100 specifying 90 primary key-foreign key relationship about and diagram 48 PRIMARY_CONTROLLER parameter. sorting in alphanumeric order 147 working in. about 302 privileges query privileges. about 145 presentation columns Alias tab. described 19 Q Quarter_Of_Year calendar date/time function. setting 33 presentation catalogs Alias tab. described (table) 148 working with. working in business models. deleting 147 presentation table. setting 29 join diagrams.2 42 5 .Index ■ Q virtual physical tables. deleting 147 table. creating See also Presentation layer. creating 148 presentation column. reordering 147 presentation tables Alias tab. about 288 Position string function. changing column order 32 Cache Manager. about removing unneeded or unwanted 144 logical keys. about working in 145 Presentation Column dialog box. about 147 Presentation Layer nested folders in Oracle BI Answers 147 Presentation layer about creating 143 about creating and maintaining 143 Presentation Layer dialog box. creating 146 presentation tables. enabling to improve performance 228 Oracle Business Intelligence Server Administration Guide Version 10. working with 147 Presentation layer. about 53 Presentation layer. using 149 creating (procedure) 148 editing (procedure) 148 Presentation Column dialog box. about 382 Power math function. reordering 149 Presentation Tables dialog box. using 149 column. described (table) 146 primary key foreign key. setting up presentation column. about 388 preferences Cache Manager. renaming 144 Presentation layer repository layer. using the Alias tab 149 Presentation layer. creating using the Object Type option 81 XML data source. about 388 populate privilege overriding database property 331 PORTALPATH system session variable. copying to the Presentation layer 143 columns. deleting 148 presentation column.1. about and example 144 Presentation Tables dialog box. about 394 queries aggregate functions. setting properties for 96 Pi math function. using 149 Presentation Catalog dialog box. specifying appearance in alphabetical order 32 scrolling speed. setting default window size 33 repository objects. selecting columns to display 32 general preferences. about exporting in the Presentation Catalog 144 presentation columns.

initializing cache entries for 231 query environment. configuring 321 LDAP. about and starting 183 reporting tool. turning off Compare Mode 163 importing from 154 LDAP authentication. about connecting with 263 repositories comparing repositories 161 comparing. about connecting with 263 R Radians math function. administering Oracle BI Server. about 382 Replace string function. administering about 214 file size. about and opening 255 Cache Manager. creating (procedure) 159 procedure 157 Query Repository dialog box about using 156 member hierarchies. constructing to view all database references in a business model 160 query specification (SELECT statement).1. using to view 321 new query. administering See also server configuration and tuning. configuring 233 cache strategies 238 cost of caching. about 231 disabling for system 234 disabling query caching 233 enabling query caching 233 global cache information. using 217 logging levels described (table) 216 setting a user’s 217 logging system. about 372 RCOUNT running aggregate function. setting for XML data sources 257 Rename Wizard. about query references with different persistence times 86 parameters to control query caching. requesting 158 parent of an object 159 searching for object based on name 158 Show Qualified Name 159 type of object 159 Query Repository Filter dialog box about and accessing 159 filter. locating 64 query caching advantages of 230 cache event processing with an event polling table 248 cache hits. about 388 RandFromSeed math function. importing users and groups into 323 making changes to and implications for cache 254 merging repositories. about 376 refresh interval. about 389 Rank aggregate function. location of 230 Presentation Server. enabling to 228 invalidation after offline repository changes 254 note. controlling 215 log viewer utility. using to rename Presentation layer and Business Model and Mapping layer tables and columns 185 Repeat string function. starting in Windows 209 query log. interpreting the log records 218 log viewer utility.Index ■ R query privileges. setting logging levels 215 query repository new object. about 383 Replace Wizard.3. configuring 215 user’s logging levels disabling 217 query log. setting for XML data sources 257 suite of queries. about 355 query tool. shutting down in UNIX 213 Oracle BI Server. about and process 163 merging version of Oracle BI repository 426 Oracle Business Intelligence Server Administration Guide Version 10. about and starting 185 Rename Wizard. sharing with 236 purge cache options 256 purging cache 256 refresh interval. constructing 160 filter. administering 214 server. about 388 Rand math function. choosing 234 Cache Manager. displaying 256 improve performance. controlling and activities 330 query type. shutting down in Windows 212 Oracle BI Server.2 . about running 240 user IDs. information about 238 cache management strategy. usage tracking. administering 219 query execution privileges 330 query log. about connecting to 214 usage tracking. starting in UNIX 210 Oracle BI Server. options settings (table) 255 cache storage. description of 238 cache hits.

about constructing 161 note.Index ■ S (procedure) 166 new group. about calculating a running sum 375 S SA system subject area about 180 sample scripts. accessing 24. about showing the minimum values based on a set of records 378 RSUM. about defining 153 new repository. setting up Administration Tools. using in an expression 284 static repository variables. sorting columns 34 repository variables See also individual repository entries and initialization blocks about 283 cache purging considerations 285 dynamic repository variables. about 389 row count updating for tables and columns 35 row counts displaying 36 updating 36 row counts in physical layer.2 42 7 . about showing the maximum values of a set of records 377 RMIN. 110. adding to 320 new user. opening repository in 25 online mode. adding entry 152 online help. 143 saving. making available and saving to disk 26 Check In Changes dialog box. about 288 Right string function. and correcting errors 152 testing and refining.INI file. using in expression builder 284 uses for static repository variables 284 repository variables. about 383 RMAX running aggregate function. about 285 dynamic repository variables.3. example 285 static repository variables. 50 Oracle BI Server. opening repository in 25 repository objects alphabetical order.1. about constructing more than one filter 161 query results. setting up 180 Repository Documentation utility. creating 97 405 Oracle Business Intelligence Server Administration Guide Version 10. example 284 static repository variables. about 154 user community. editing while repository is being loaded 25 offline mode. about importing 56 saving 54. displaying 36 Row-Wise Initialization about and example 291 variable with a List of Values. about and using 155 repository mode changes. about using and tasks 26 Load all objects option. creating 54 NQSConfig. about creating and configuring 65 data source. about 377 RMIN running aggregate function. running (procedure) 187 repository file options when saving 54 save options 54 Repository Import Wizard. about 284 static repository variables. about calculating a moving sum 375 RCOUNT. about calculating a moving average 374 MSUM. about 375 running aggregate functions about 374 Mavg. creating (procedure) 285 repository. repository components in 50 connection pool. about starting 153 physical schemas. about 378 rollover. about selecting 26 note. initializing 292 RSUM running aggregate function. adding or editing 34 permissions. setting 33 permissions. about publishing to 154 REQUESTKEY system session variable. specifying in 32 permissions. about counting number of input records 376 RMAX. managing metadata See also individual repository entries and Query Repository dialog box complex filter. described 224 Round math function. constructing a filter for 159 repository. about 186 utility. adding to 316 synchronizing and updating (procedure) 155 repository Oracle BI Delivers. checking consistency. locating and example schema folders schema object.

about and creating 54 SKIN system session variable. viewing in the Security Manager 321 Oracle BI Server administration account password 317 Oracle BI Server Administrator account. about dimensional hierarchies 44 Sort Objects tab. about 289 snowflake models. described 19 shutting down Oracle BI Server UNIX. shutting down server 213 Windows. about 358 ORDER BY clause syntax. about using 287 system session variables. Session Manager Session Manager See also query environment. tuning. administering active query. about 389 Sin math function. about creating and example 318 groups. list of 364 queries and aggregate functions. controlling 225 using. about importing 56 physical schemas. using to view 321 Security. adding new user to 316 repository. administering aggregate tables. about working with 315 user privileges and group privileges example (diagram) 319 Security Manager See also security member hierarchies.INI parameters. about granting and examples 318 groups. about 389 single table model. and indexing 228 NQSConfig.3. about importing users and groups 321 member hierarchies. viewing in the Query Repository dialog box 321 member hierarchies. adding a new group to 320 repository. about 394 SECONDARY_CONTROLLER parameter. about using 228 databases. killing 227 disconnecting a user from a session 226 Session Window fields (table) 226 session.2 . about 357 GROUP BY clause syntax. setting 33 Second calendar date/time function. using to specify repository objects in alphabetical order 32 sorting columns alphabetical 114 chronological 114 428 Oracle Business Intelligence Server Administration Guide Version 10. configuring 321 LDAP. shutting down from a command prompt 213 Windows. about 317 predefined administrators group 318 privileges example (diagram) 319 repository. Manage menu option. about 225 session variables See also initialization blocks about 283 initializing. rules for 358 query specification 355 Select list syntax 357 SQL logical operators 363 usage notes 356 WHERE clause 357 server configuration and tuning See also query environment. about 302 security See also authentication options. described 19 SELECT list syntax about and syntax 357 FROM clause syntax. importing from ODBC (procedure) 57 scrolling speed. about 357 SELECT statement about and basic syntax 355 conditional expressions. about 291 nonsystem session variables. about working with 317 LDAP authentication. creating (procedure) 289 Sessions.1. about enabling to improve performance 228 server session management See server configuration and tuning. importing LDAP users and groups into 323 user accounts. viewing 226 update speed. privileges group privileges. about and example 291 security sensitive 290 system session variables. about using 289 row-wise initialization.Index ■ S schemas See also schema folders physical schemas. table of 287 using for authenticating users 286 virtual physical databases 290 session variables. about using for tuning 227 query caching. shutting down from Services 212 Sign math function. importance of configuring. about 358 WHERE clause syntax. Manage menu option.

about 390 conversion functions. about returning the value of pi 388 Position. about and basic syntax 355 Select usage notes 356 SQL logical operators 363 SQL WHERE clause syntax. about 378 system functions. about converting a character string to lower case 382 Mod. defining 114 SQL 92 functions datetime literals. about inserting a character string 380 Left. using in 284 StdDev aggregate function.2 42 9 . about 371 running aggregate functions 374 string functions. about returning the numerical position of the character_expression1 381 LocateN. about 390 star schema about 47 dimensional hierarchies. about 357 SQL functions aggregate functions. about 403 expression literals. about returning length in number of characters 379 Concat. about 372 STORAGE_DIRECTORY parameter user tracking log files. rules for 358 Select list syntax 357 Select statement. creating 108 database objects that accept hints (table) 107 SQL syntax and semantics conditional expressions.3. about calculating the base 10 logarithm of an expression 387 Lower. list of 364 queries and aggregate functions. about selecting the Export logical keys option 144 SQL statement database hints. list of 363 SQL queries. about sending the value e to the power specified 387 Floor. about 403 NTILE function.1. about converter single character string to 378 Asin. about 371 SQL FROM clause syntax. about dividing the first numerical expression 388 Octel_Length. about 398 datetime literals. about rounding a noninteger numerical expression 386 Char. about 106 database hints. about converting from degrees to Oracle Business Intelligence Server Administration Guide Version 10. about forms of function 379 Cos. about calculating the cosine of a numerical expression 386 Cot. about calculating the arc tangent of y/ x 385 Bit_Length. about converting an expression from radians to degrees 386 Exp. about returning the bits in base 8 units 382 Pi. about rounding a noninteger numerical expression 387 Insert. about calculating the cotangent of a numerical expression 386 Degrees. about converting a numerical value 379 Char_Length. about calculating the arc sine of a numerical expression 385 Atan.Index ■ S lexicographical. using in 284 expression. about returning length in bits 379 Ceiling. about returning the numerical position of the character_expression1 381 Log. about 402 SQL logical operators. about taking the first numerical expression to the power specified 388 Radians. about 357 Sqrt math function. about 44 static repository variables See also initialization blocks about 284 example 284 expression builders. about returning the length in number of characters 381 Locate. about 366 calendar date/time functions. about calculating the absolute value 384 Acos. about 402 NTILE function. calculates the arc cosine of a numerical expression 385 ASCII. about calculating the natural logarithm of an expression 387 Log110. about returning the numerical position of the character_expression1 382 Power. selecting an output location for 222 string functions about 378 Abs. about returning characters from the left of a string 380 Length. about calculating the arc tangent of a numerical expression 385 Atan2.

3. about 390 TCP/IP. calculated the sine of a numerical expression 389 Sqrt. about returning a pseudo-random number 388 RandFromSeed. -1. about and starting 185 Upper string function. about and LDAP authentication 325 SQL functions. identifying 184 430 Oracle Business Intelligence Server Administration Guide Version 10. returns a specified expression n times 382 Replace. administering See also Session Manager. creating 122 tables event polling table. using in 197 TODATE 197 TimestampAdd calendar date/time function.1. about 384 usage tracking log files sample scripts. about calculating the square root of the numerical expression argument 390 Substring. described (table) 21 system session variables. about 373 SumDistinct aggregate function. about stripping specified leading characters 384 TrimTrailing. about and external table authentication 326 System subject area about 180 one-to-many relationship.2 . locating and example 405 usage tracking data (table) 406 usage tracking. about stripping specified trailing characters 384 Truncate. about rounding a numerical expression to n digits 389 Sign. about returning a pseudorandom number from a seed value 389 Repeat.Index ■ T radians 388 Rand. about and example 222 note. about 383 TrimLeading string function. about stripping specified leading and trailing characters 383 TrimLeading. enabling 163 U UNIX shutting down the Oracle BI Server 213 starting the Oracle BI Server 210 Update Physical Layer wizard. about error accessing usage tracking output file 222 output file. about truncating a decimal number 390 Upper. about replacing specified characters 383 Right. about calculating the tangent of a numerical expression 390 TrimBoth. about 373 symbols. about returning a value of 1. about 402 variables. usage tracking log files about and example 219 file naming conventions. or 0 389 Sin. about 374 TrimBoth string function. about and schema described T table sources content definitions. sorting in alphanumeric order 147 Tan math function. about converting a character string to uppercase 384 Substring string function. about 384 troubleshooting event polling table 253 Oracle BI Server fails to start 211 Truncate math function. client/server communication method changed 260 text strings. about 396 toolbar docking 20 on/off. sorting 130 time series functions about 197 AGO 197 Expression Builder. using the Externalize Strings utility to translate 184 time dimension chronological key. about returning a specified number of characters from the right of the string 383 Round. about creating a new string starting from a fixed number 383 Tan. about 383 Sum aggregate function. toggling 20 Tools menu. about 384 TrimTrailing string function. about and diagram 48 tables. selecting 130 chronological key. about 394 TimeStampDiff calendar date/time function. described 19 TopN aggregate function. about 390 Turn Off Compare Mode.

about 289 Week_Of_Quarter calendar date/time function. described 19 Window menu. about and starting 185 Replace Wizard. table of 287 system variables. described 19 File menu. using dynamic repository variables. about 401 ValueOf( ) expressions. described 18 Help menu. about and starting 185 workspace. configuring for automatic startup 210 shutting down Oracle BI Server from a command prompt 213 shutting down Oracle BI Server from Services 212 starting Oracle BI Server from Services 209 wizards Calculation wizard. user ID to access nonlocal files 336 ODBC data source names. about and starting 184 log viewer utility. Manage menu option. about 402 USER system session variable. selecting 222 performance considerations. changing for the Oracle BI Server 211 user interface components Edit menu. using 347 Variables. about Oracle Business Intelligence Server Administration Guide Version 10. setup 30 Rename Wizard.2 43 1 . about 190 Calculation wizard. about publishing to 154 user ID. about and external table authentication 326 Variable Manager. about 289 USER_LOG_FILE_SIZE parameter. about and example 285 nonsystem session variables.1. about and starting 184 using 289 session variables. about using 287 system session variables.3. about 315 utilities copy business model with presentation catalog utility. described 20 User system function. adding to repository 316 user accounts. about 357 Window menu. described 19 View menu. described 17 Manage menu. using 217 Oracle BI Event Tables utility. about and using 155 Update Physical Layer Wizard. described 19 virtual physical tables. described 20 Tools menu. using to control query log file size 215 users See also privileges Administration account. about and example 125 syntax. format of 222 output location. about and classes of variable 283 View menu. using variables in expression builders 284 system session variables. about and starting 183 Repository Import Wizard. about and password 317 LDAP. described 20 icons and symbols (table) 21 keyboard shortcuts (table) 21 main window. about and procedure 110 Externalize Strings utility. about 398 Week_Of_Year calendar date/time function. column behavior in 224 output file. about 398 WHERE clause filter. about and LDAP authentication 325 system session variables. described 19 toolbar functions. Administration Tool V VALUEOF( ) conversion function. about and example 284 static repository variables. about 286 static repository variables. about and checkpoints described 224 user community. interpreting the log records 218 log viewer utility. about and Oracle BI Server Administrator account 317 NT and 2000. described 20 Windows NT and 2000 Administrator account.Index ■ V (table) 222 output file. configuring 259 Oracle BI Server. creating using the Object Type option 81 W WEBGROUPS system session variable. described 19 variables. using to import users 321 new user.

accessing 344 HTML tables. more complex 340 HTML tables. about using 336 XML URL. locating 335 XPath expressions. about using Columns tab 146 X XML 266 XML data source Ask DBMS. about setting 76 query output format settings. support of 336 XMLA multidimensional data source. about 398 432 Oracle Business Intelligence Server Administration Guide Version 10.3. example 344 importing data using the XML Gateway 337 XML examples 350 XML Gateway example 338 XML Gateway. setting 76 physical table. XML Gateway example 349 importing XML data 349 XML data sources. setting 257 XML Gateway See also Data Mining Adapter. XML ODBC database type.1. using as a data source See also Data Mining Adapter. about availability of 65 connection pool properties. XML ODBC database type. example 344 XML data. importing using the XML Gateway 337 XML examples 350 XML ODBC database type See also Data Mining Adapter.2 . creating 58 Y Year calendar date/time function. about accessing 349 XML examples 350 XML. support of 336 XSL transformation files (XSLT). XML ODBC database type about 335 example. XML Gateway about using 336 example 338 example. accessing 344 HTML tables. importing 59 physical layer. specifying 77 refresh interval. setting properties for 96 properties. about using Presentation Table tab 145 Presentation Tables dialog box. more complex 340 HTML tables.Index ■ X Presentation Catalog dialog box.