Skip Headers
Oracle® Business Intelligence Data Warehouse Administration Console User's Guide
Version 10.1.3.4

Part Number E12652-02
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Index
Index
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
View PDF

8 Customizing DAC Objects and Designing Subject Areas

This chapter provides information about customizing, designing, executing, and monitoring ETL processes.

This chapter contains the following topics:

Creating or Copying a Source System Container

The metadata for a source system is held in a container. You cannot change the metadata for preconfigured containers. If you want to customize the metadata in a preconfigured container, you must first make a copy of the container. DAC keeps track of all customizations in the copied container, so that at any time you can find the newly created objects and modified objects, as well as the original objects.

You can also create a new, empty container if you want to build your own container with customized metadata.

To create a new container or copy an existing container

  1. In DAC menu bar, select File, then select New Source System Container.

  2. Enter an ID and a name for the container.

    The ID and Name fields are alphanumeric. The Name can contain spaces but the ID cannot. The Name field must be at least five characters long.

  3. Select one of the following:

    • Create Empty New Source System Container

    • Create as a Copy of Source System Container

  4. If you are creating an empty, new container, click OK.

  5. If you are making a copy of an existing container, select the existing container from the drop-down list, and then click OK.

About Customizing the Data Warehouse

You can add tables, columns, and indexes to the data warehouse, and you can modify these existing objects. Customizing the data warehouse in this way requires using DAC and Informatica client tools. For more information about using Informatica client tools to customize the Oracle Business Analytics Warehouse, see the Oracle Business Intelligence Applications Installation Guide for Informatica PowerCenter Users.

Figure 8-1 shows the major steps required for adding a new object to the data warehouse or modifying existing objects. As shown in Figure 8-1, you can begin the customization process by adding or modifying the new data warehouse object in DAC and then using the DAC's Data Warehouse Configurator to create or update the object in the data warehouse. Alternatively, you can add or modify the object directly in the data warehouse database and then use the DAC's Import from Database command to add the new object in DAC.

Figure 8-1 Process Flow to Add New Object to Data Warehouse

This image is described in the surrounding text.

Adding a New Table and Columns to the Data Warehouse

As shown in Figure 8-1, there are two alternative process flows for adding a new object to the data warehouse. You can enter the table and column definitions in DAC and then use the DAC's Data Warehouse Configurator to create the table and columns in the data warehouse database; for this method, follow the procedure, "To add a new table and columns to the data warehouse using the DAC's Data Warehouse Configurator".

Alternatively, you can add the new table and column definitions directly in the data warehouse database and then use the DAC's Import from Database command to add the new table and columns in DAC; for this method, follow the procedure, "To add a new table and columns using the DAC's Import command".

To add a new table and columns to the data warehouse using the DAC's Data Warehouse Configurator

  1. In the DAC toolbar, select the appropriate source system container from the drop-down list in the toolbar.

  2. From the Menu bar, select Views, then select Design, then select Tables.

  3. Create the new table.

    1. In the Tables tab, click New.

    2. In the Edit child tab, enter the appropriate information about the table, and click Save.

      For a description of the fields in this tab, see "Tables Tab".

  4. Add the columns for the new table.

    1. In the Columns child tab, click New.

    2. Enter the appropriate column information for each column you want to add to the table, and click Save.

    3. Enter the appropriate foreign key table and column information.

      Note:

      For performance purposes, it is recommended that you do not enter more than 254 columns to a dimension of fact table.

  5. Create the new tables and columns in the data warehouse database.

    1. Select Tools, then select ETL Management, then select Configure.

    2. Select the appropriate Source and Target database platforms, and then click OK.

    3. In the Data Warehouse Configuration Wizard, select Create Data Warehouse Tables, and then click Next.

    4. Enter the required information, and then click Start.

      An informational message reports whether the process was successful. For information about the process, you can review the createwtables.log file in the OracleBI\DAC\log\config folder.

To add a new table and columns using the DAC's Import command

  1. Add the new table and column definitions into the data warehouse database.

  2. In the DAC toolbar, select the appropriate source system container from the drop-down list in the toolbar.

  3. From the Menu bar, select Views, then select Design, then select Tables.

  4. Import the new table definition.

    1. Right-click and select Import from Database, then select Import Database Tables.

    2. In the Import Tables dialog, select DataWarehouse.

    3. Optionally, enter filter criteria to identity the table name you entered in Step 1.

      See "DAC Query Commands and Operators" for available filter commands and operators.

    4. Click Read Tables.

    5. In the list of tables displayed, select the Import check box for the tables you want to import.

    6. Click Import Tables.

      An informational message indicates whether the process was successful.

  5. Import the new column definitions.

    1. In the Tables tab, query for the table you imported in Step 4.

    2. With the table highlighted, right-click and select Import from Database, then select Import Database Columns.

    3. In the Importing Columns... dialog, select Selected Record Only, and then click OK.

    4. In the Import Table Columns dialog, click Read Columns.

      The Changes column displays a description of column changes, which are explained below:

      Change Explanation

      The object was added to the database.

      The column is in the database but not the DAC repository. Importing it will add the column to the DAC repository.

      The object was added to the repository.

      The column is in the DAC repository but not in the database. Importing it will delete it from the DAC repository.

      The object was modified.

      The column definition in the database does not match the definition in the DAC repository.


    5. In the list of columns displayed, select the Import check box for the columns you want to import.

    6. Click Import Columns.

      An informational message indicates whether the process was successful.

Adding an Index to the Data Warehouse

Follow this procedure to add a new index to the data warehouse.

To add a new index to the data warehouse

  1. Add the new index definition into the data warehouse database.

  2. In the DAC toolbar, select the appropriate source system container from the drop-down list in the toolbar.

  3. From the Menu bar, select Views, then select Design, then select Tables.

  4. Query for the table for which you want to import index definitions.

  5. Right-click and select Import from Database, then select Import Indices.

  6. Choose to import indexes for a selected table or for all the records retrieved in your query, and click OK.

  7. In the Import Indices dialog, select DataWarehouse from the Data Sources drop-down list.

  8. Click Read Indices.

    1. In the list of indexes displayed, select the Import check box for the indexes you want to import.

    2. Click Import Indices.

      An informational message indicates whether the process was successful.

Importing New Data Warehouse Objects into the Informatica Repository

This step requires using Informatica client tools to import new data warehouse objects into the Informatica repository. For instructions on this step of customizing the data warehouse, see Oracle Business Intelligence Applications Installation Guide for Informatica PowerCenter Users.

Creating Informatica Mappings and Workflows

This step requires using Informatica client tools to create new Informatica mappings and workflows for the data warehouse objects that you imported into the Informatica repository. For instructions on this step of customizing the data warehouse, see Oracle Business Intelligence Applications Installation Guide for Informatica PowerCenter Users.

Creating Tasks in the DAC for New or Modified Informatica Workflows

You need to perform this step for all new workflows you create in Informatica and for all workflows that you modify.

To create a task in the DAC for new or modified Informatica workflows

  1. In the DAC toolbar, select the appropriate source system container from the drop-down list in the toolbar.

  2. In the DAC, create custom logical and physical task folders for the custom folder you created in the Informatica repository.

    1. In the DAC, navigate to Tools, then select Seed Data, then select Task Folders.

    2. To create a custom logical folder, click New.

    3. In the Name field, enter a name for the custom logical folder, for example, Custom Logical.

    4. In the Type field, select Logical.

    5. To create a custom physical folder, click New.

    6. In the Name field, enter a name for the custom physical folder, for example, Custom Physical.

    7. In the Type field, select Physical.

  3. Register the folders you created in Step 2 in the Source System Folders tab.

    1. Navigate to Design, then select Source System Folders.

    2. Click New.

    3. In the Edit child tab, enter the name of the custom logical folder in the Logical Folder field.

    4. Enter the name of the custom physical folder in the Physical Folder field, and click Save.

  4. Create new tasks for the workflows.

    1. Navigate to Design, then select Tasks, and click New in the top pane toolbar.

    2. In the Edit child tab, enter the workflow name as it appears in Informatica Workflow Manager.

    3. Right-click and select Synchronize Tasks.

    4. Select Selected Record Only, and click OK. Click OK in the informational message box.

      This command synchronizes the source and target table information between the DAC and Informatica.

    5. In the Tasks tab, enter the remaining information required for the task.

      For a description of the fields in this tab, see "Tasks Tab".

    The new table is now ready to be associated with a subject area. For information about creating a subject area, see "Creating a Subject Area".

Setting a Task Phase Dependency

A task phase dependency enables you to dictate additional dependency hints for tasks that are completely unrelated to each other through source/target table relationships.

To set a task phase dependency

  1. In the DAC toolbar, select the appropriate source system container from the drop-down list in the toolbar.

  2. From the Menu bar, select Views, then select Design, then select Tasks.

  3. Query for the task for which you want to add a phase dependency, and make sure it is highlighted.

  4. Click the Phase Dependency child tab.

  5. Click Add/Remove.

  6. In the Choose Phases dialog, select a phase and click Add.

  7. Click OK in the message box that states the phase was added.

  8. Select Phase, Grain, and Scope and click OK.

    For information about these fields, see "Tasks Tab: Phase Dependency Subtab".

    The task phase dependency appears in the Phase Dependency child tab.

  9. Reassemble the appropriate subject area.

    1. In the Subject Areas tab, query for the appropriate subject area.

    2. Click Assemble.

  10. Rebuild the execution plan.

    1. Navigate to the Execution Plans tab in the Execute view.

    2. Query for the appropriate execution plan.

    3. In the Parameters child tab, click Generate.

    4. In the top pane toolbar, click Build.

Creating a Task Group

The DAC automatically organizes tasks into a dependency structure based on dependency rules. For information about the DAC's dependency rules, see "How DAC Determines the Order of Task Execution within an Execution Plan". The DAC assigns priority randomly to tasks that have the same properties. You can use the Task Group feature to group such tasks that share the same properties and enforce a priority of your choosing.

This feature can be useful for the following: truncation and restartability purposes; when more than one task with similar properties writes to the same table; and when there is a circular read/write relationship between tables; for example, task 1 reads from table A and writes to table B, and task 2 reads from table B and writes to table A.

To create a task group

  1. In the DAC, select the appropriate source system container from the drop-down list in the toolbar.

  2. From the Menu bar, select Views, then select Design, then select Task Groups.

  3. Create a new task group.

    1. Click New in the top pane toolbar.

    2. In the Edit child tab, enter a name and select the appropriate properties.

  4. Click the Child Tasks child tab, and click Add/Remove in the toolbar.

  5. In the left-hand window of the Choose Child Tasks dialog, query for the tasks you want to add to the task group.

  6. Select the tasks, and click Add.

  7. In the right-hand window, enter an execution order.

  8. Click Save, and then click OK to close the window.

About Parameter Management

This section describes how the DAC handles parameters and how you can define and manage parameters at the source system and task levels. It contains the following topics:

Overview of Parameters

The ETL logic in Oracle Business Intelligence Applications uses parameters in the Informatica mappings and sessions. You define and manage parameters using the DAC parameter management feature. A parameter can apply to all tasks under a source system container (referred to as a source system parameter) or it can apply to a particular task (referred to as a task level parameter). Parameters set up at the task level have priority over parameters set up at the source system level.

In the DAC, there are two types of parameters: static and runtime. The value of static parameters remains constant for all ETL runs. Examples of static parameters include language codes and currencies. The value of runtime parameters is dynamic, and the DAC updates this value for each ETL run. Examples of dynamic parameters include last refresh dates and last WID sequence numbers.

Parameter Data Types

Parameters can have one of the following data types.

Text

The value for the parameter is defined as text. You can use the Text data type for both static and runtime parameters.

DB Specific Text

The value for the parameter is defined as database-specific text. This parameter should be used only if you have a heterogeneous database environment, and the parameter value needs to be different for the different database types. The DAC evaluates the string based on the source or target database type. If you do not specify database-specific text, the DAC returns the default value.

Timestamp

The value for the parameter is defined as a timestamp. You can use the Timestamp data type for both static and runtime parameters. A static timestamp can be any time that is constant. A runtime timestamp parameter is a variable for which the value is supplied by the DAC at runtime. You can define the timestamp in one of multiple formats or define a custom format. You can also use SQL to fetch any value that can be fired against the specified logical database connection. The DAC executes the SQL against a data source that maps to the specified logical connection and then formats the resulting value in the specified format. A SQL specified for a given timestamp parameter can include nested DAC parameters. For information about nested parameters, see "Nesting Parameters within Other Parameters".

SQL

The DAC fetches the value for the parameter from a database using SQL.

Preconfigured Parameters

Oracle Business Intelligence Applications ships with preconfigured parameters. Some of these preconfigured parameters are held in text files named parameterfileDW.txt and parameterfileOLTP.txt, which are stored in the folder \OracleBI\DAC\Informatica\parameters\input. Other preconfigured parameters are held in the DAC. The parameters held in the DAC are specific to the different source system containers.

You can add new parameters in the DAC or change the existing parameters held in the DAC. However, Oracle recommends that you do not change the parameters held in the parameter text files. You can override the parameters in the text files by creating new parameters in the DAC.

If you do make changes to the parameter text files, however, make sure the files remain in the folder \OracleBI\DAC\Informatica\parameters\input.

How DAC Handles Parameters at Runtime

During an ETL execution, the DAC reads and evaluates the parameters held in the text files parameterfileDW.txt and parameterfileOLTP.txt along with the parameters held in the DAC. The DAC then creates an individual parameter file for each session. This file contains the evaluated name-value pairs for all parameters, both static and runtime. The naming convention for this parameter file is <Informatica folder name>.<Informatica session name>.txt. The DAC copies this file to a location specified in the DAC system property InformaticaParameterFileLocation.

Note:

The Informatica Server must be configured to read parameter files from the location specified in the DAC system property InformaticaParameterFileLocation. For instructions on setting this property, see Oracle Business Intelligence Applications Installation Guide for Informatica PowerCenter Users.

Nesting Parameters within Other Parameters

You can nest any parameter definition within another parameter definition. For example, you could nest a runtime text parameter that returns the current run ID within a where clause of a SQL parameter, or you could use database specific text inside another parameter of the text or SQL data types. Parameters that are nested within other parameters must use the prefix @DAC_.

An example of a text parameter that returns the current run ID placed in a where clause of a SQL parameter would look similar to the following:

SELECT VALUE FROM PARAM_TEST
WHERE ROW_ID=`@DAC_p1'

Note:

Avoid circular nesting, such as parameter A nested within parameter B, which is nested within parameter A. In such situations, the DAC randomly picks one of the parameters in the circle and evaluates it as an empty string.

Defining a Text Type Parameter

Follow this procedure to define a parameter using the Text data type. This procedure applies to parameters defined at both the source system and task levels.

To define a text type parameter:

  1. Do one of the following:

    • To define a source system parameter, from the Views menu, select Design, and then select Source System Parameters.

    • To define a task level parameter, from the Views menu, select Design, then select Tasks, and then click the Parameters subtab.

  2. Click New.

  3. Enter a parameter name.

  4. Select the Text data type.

  5. Click in the Value field to open the Enter Parameter Value dialog.

  6. Select one of the following options:

    • Static. This option specifies a value that remains constant for all ETL runs.

    • Runtime. This option specifies a value will be updated by the DAC before each ETL run.

  7. If you selected the Static option, enter a text value in the text window, and click OK.

  8. If you selected the Runtime option, select a DAC Variable from the list, and click OK.

  9. (Optional) To inactivate the parameter, select Inactive.

  10. Click Save.

Defining a Database Specific Text Type Parameter

Follow this procedure to define a parameter using the DB Specific Text data type. This procedure applies to parameters defined at both the source system and task levels.

To define a database specific text type parameter:

  1. Do one of the following:

    • To define a source system parameter, from the Views menu, select Design, and then select Source System Parameters.

    • To define a task level parameter, from the Views menu, select Design, then select Tasks, and then click the Parameters subtab.

  2. Click New.

  3. Enter a parameter name.

  4. Select the DB Specific Text data type.

  5. Click in the Value field to open the Enter Parameter Value dialog.

  6. Select one of the following Connection Type options:

    • @DAC_SOURCE_DBTYPE. This option specifies a source database connection.

    • @DAC_TARGET_DBTYPE. This option specifies a target database connection.

  7. To define a parameter specific to all database types:

    1. Click in the Default field to open the Default text box.

    2. Enter the parameter definition, and click OK.

  8. To define a parameter specific to a particular database type:

    1. Click in the appropriate database type field to open the text box.

    2. Enter the parameter definition, and click OK.

  9. Click OK to close the Enter Parameter Value dialog.

  10. (Optional) To inactivate the parameter, select Inactive.

  11. Click Save.

Defining a Timestamp Type Parameter

Follow this procedure to define a parameter using the Timestamp data type. This procedure applies to parameters defined at both the source system and task levels.

To define a Timestamp type parameter:

  1. Do one of the following:

    • To define a source system parameter, from the Views menu, select Design, and then select Source System Parameters.

    • To define a task level parameter, from the Views menu, select Design, then select Tasks, and then click the Parameters subtab.

  2. Click New.

  3. Enter a parameter name.

  4. Select the Timestamp data type.

  5. Click in the Value field to open the Enter Parameter Value dialog.

  6. Select one of the following options:

    • Static. This option specifies a value that remains constant for all ETL runs.

    • Runtime. This option specifies the value will be updated by the DAC before each ETL run.

    • SQL. This option

  7. If you selected the Static option:

    1. Click in the Date field to open the Date dialog.

    2. Enter a data and time, click OK.

  8. If you selected the Runtime option:

    1. Click in the Value field to open the Enter Parameter Value dialog.

    2. Select a Variable from the list.

    3. From the Function list, select a format to which the DAC will convert the date. If you select Custom, enter a custom date format.

      If you select SQL Syntax or SQL Syntax (Date Only), select a Connection Type.

  9. If you selected the SQL option:

    1. Click in the SQL field to open the Enter Parameter Value dialog.

    2. Select a Logical Data Source from the list.

    3. Enter the parameter definition and click OK.

  10. Click OK to close the Enter Parameter Value dialog.

  11. (Optional) To inactivate the parameter, select Inactive.

  12. Click Save.

Defining a SQL Type Parameter

Follow this procedure to define a parameter using the text data type. This procedure applies to parameters defined at both the source system and task levels.

To define a SQL type parameter:

  1. Do one of the following:

    • To define a source system parameter, from the Views menu, select Design, and then select Source System Parameters.

    • To define a task level parameter, from the Views menu, select Design, then select Tasks, and then click the Parameters subtab.

  2. Click New.

  3. Enter a parameter name.

  4. Select the SQL data type.

  5. Click in the Value field to open the Enter Parameter Value dialog.

  6. Select a Logical Data Source.

  7. Enter a SQL statement, and click OK.

  8. (Optional) To inactivate the parameter, select Inactive.

  9. Click Save.

Specifying Tablespaces for Indexes by Table Type

You can specify tablespaces for indexes by table type in the Setup view in the DAC. For example, you could specify a tablespace for indexes of the dimension table type.

Note:

You must create the tablespace in the database before you can specify tablespaces for indexes.

To specify tablespaces for indexes by table type

  1. In the DAC toolbar, click Setup, then click the Physical Data Sources tab, then click the Index Spaces subtab.

  2. In the Index Spaces toolbar, click Generate.

    A list of available table types appears in the Table Type list.

  3. In the Index Space column, enter an index space for each table type, and click Save.

    If the Index Space property is left empty for a table type, the default index space for the default database connection will be used. The default index space is specified on the Edit subtab of the Physical Data Sources tab in the Setup view. If the Default Index Space property is also empty, the default tablespace assigned for the table owner will be used.

Working with Configuration Tags

A configuration tag is an object that controls the inclusion of tasks in subject areas. When a task is tagged, it is not eligible to be included in the collection of tasks for any subject area, unless the tag is part of the subject area definition "Include Task" property.

A configuration tag can function in one of the following ways:

To remove tasks from all subject areas

  1. In the DAC toolbar, select the appropriate source system container from the drop-down list in the toolbar.

  2. From the Menu bar, select Views, then select Design, then select Configuration Tags.

  3. Create a new configuration tag.

    1. Click New in the top pane toolbar.

    2. In the Edit child tab, enter a name.

    3. Make sure the Include Tasks check box is not selected.

    4. Click Save.

  4. Add tasks to the configuration tag.

    1. With the new configuration tag highlighted in the top pane, click the Tasks child tab.

    2. In the bottom pane toolbar, click Add/Remove.

    3. In the Tasks dialog, query for the tasks you want to add to the configuration tag.

    4. Highlight the tasks, and then click Add.

      The tasks appear in the right-hand window.

    5. Click Save, and then click OK to close the window.

      These tasks will not be eligible to participate in any subject area.

To reassign autogenerated tasks to a subject area

  1. In the DAC toolbar, select the appropriate source system container from the drop-down list in the toolbar.

  2. From the Menu bar, select Views, then Design, then select Configuration Tags.

  3. Query for the configuration tag that contains the tasks you want to reassign to a subject area.

  4. Verify the configuration tag contains the appropriate tasks by clicking the Tasks child tab and reviewing the list of tasks associated with this configuration tag.

    Note:

    Only a subject area's autogenerated tasks will be reassigned. If non-autogenerated tasks appear in the list, the DAC will ignore them.

  5. Associate the configuration tag with the subject areas to which you want to reassign the tasks.

    1. With the configuration tag highlighted in the top pane, click the Subject Areas child tab.

    2. Click Add/Remove in the bottom pane toolbar.

    3. In the Subject Areas dialog, query for one or more subject areas to which you want to reassign the task or tasks.

    4. Highlight the appropriate subject areas, and click Add.

    5. Click Save, and then click OK to close the window.

  6. Reassemble the subject area.

    1. In the Subject Area tab, query for all the subjects areas you added to the configuration tag.

    2. Highlight the subject areas, and click Reassemble.

To add non-autogenerated tasks to a subject area

  1. In the DAC toolbar, select the appropriate source system container from the drop-down list in the toolbar.

  2. From the Menu bar, select Views, then select Design, then select Configuration Tags.

  3. Create a new configuration tag.

    1. Click New in the top pane toolbar.

    2. In the Edit child tab, enter a name.

    3. Select the Include Tasks check box.

    4. Click Save.

  4. Add the non-autogenerated tasks to the configuration tag.

    1. With the new configuration tag highlighted in the top pane, click the Tasks child tab.

    2. In the bottom pane toolbar, click Add/Remove.

    3. In the Tasks dialog, query for the extraneous tasks you want to add to the configuration tag.

    4. Highlight the tasks, and then click Add.

    5. Click Save, and then click OK to close the window.

  5. Associate the configuration tag with the subject areas to which you want to add the non-autogenerated tasks.

    1. With the configuration tag highlighted in the top pane, click the Subject Areas child tab.

    2. Click Add/Remove in the bottom pane toolbar.

    3. In the Subject Areas dialog, query for one or more subject areas to which you want to add the non-autogenerated tasks.

    4. Highlight the appropriate subject areas, and click Add.

    5. Click Save, and then click OK to close the window.

  6. Reassemble the subject area.

    1. In the Subject Area tab, query for all the subjects areas you added to the configuration tag.

    2. Highlight the subject areas, and click Reassemble.

To assign only configuration tag tasks to a subject area (excludes the subject area's autogenerated tasks)

  1. In the DAC toolbar, select the appropriate source system container from the drop-down list in the toolbar.

  2. From the Menu bar, select Views, then select Design, then select Subject Areas.

  3. Query for the subject area to which you want to add configuration tag tasks.

    Note:

    The autogenerated tasks for this subject area will be excluded.

  4. Select the Configuration Tag Tasks Only check box, and click Save.

  5. Create a configuration tag.

    1. Navigate to the Configuration Tags tab.

    2. Click New in the top pane toolbar.

    3. In the Edit child tab, enter a name.

    4. Select the Include Tasks check box.

    5. Click Save.

  6. Add the tasks to the configuration tag.

    1. With the new configuration tag highlighted in the top pane, click the Tasks child tab.

    2. In the bottom pane toolbar, click Edit.

    3. In the Tasks dialog, query for the tasks you want to add to the configuration tag.

    4. Highlight the tasks, and then click Add.

    5. Click Save, and then click OK to close the window.

  7. Associate the configuration tag with the subject area.

    1. With the configuration tag highlighted in the top pane, click the Subject Areas child tab.

    2. Click Add/Remove in the bottom pane toolbar.

    3. In the Subject Areas dialog, query for the appropriate subject area.

    4. Highlight the subject area, and click Add.

    5. Click Save, and then click OK to close the window.

  8. Reassemble the subject area.

    1. In the Subject Area tab, query for all the subjects areas you added to the configuration tag.

    2. Highlight the subject areas, and click Reassemble.

Overview of Subject Areas

Oracle BI Applications provides preconfigured subject areas. You can change these preconfigured subject areas or create new subject areas to correspond to your particular business processes.

Note:

To change a preconfigured subject area or to create a new subject area, you must first make a copy of an existing source system container or create a new container. For instructions, see "Creating or Copying a Source System Container".

Designing a Subject Area

In designing a subject area, you should consider the following questions:

  • Tables. Which tables need to be populated for the data warehouse? From which tables does your organization source data? What tables will create the star schemas.

  • Subject areas. Do the subject areas cover all the relevant tables?

  • Tasks. Are the tasks that load this table defined?

  • Indexes. Do the target tables have the correct indexes defined?

Previewing and Pruning Subject Areas

You can preview a subject area to determine whether it contains the appropriate tables and tasks to suit your business needs. When you assign a fact table to a subject area, the fact table's related tables are automatically assigned to the subject area. If you determine you do not need one or more of the related tables, you can remove the tables during the subject area Assembly process. This kind of modification is referred to as pruning the subject area. You can also add individual tables and tasks.

To preview a subject area, follow the procedure "Creating a Subject Area" through the assembly and review stages, but do not complete the process (by clicking Accept in the Subject Area Assembly dialog box) unless the subject area is suitable for your needs.

How DAC Determines Tasks Required for Subject Areas

A subject area is a collection of tasks. When a subject area is defined, DAC generates a list of relevant tasks and assembles those tasks using the following logic:

  1. Initial selection of tables.

    Find all the fact tables that belong to the subject areas.

  2. Recursive selection of related tables.

    Recursively find all the tables directly related through foreign keys and all other logically related tables.

  3. Initial selection of tasks.

    Find all the tasks that load into the tables selected above, that is, tasks whose target tables are one of the tables identified above.

    Tasks that DAC automatically assigns to a subject area are indicated with the Autogenerated flag (in the Tasks subtab of the Subject Areas tab).

    You can inactivate a task from participating in a subject area by selecting the Inactive check box (in the Tasks subtab of the Subject Areas tab). When the Inactive check box is selected, the task remains inactive even if you reassemble the subject area.

    You can also remove a task from a subject area using the Add/Remove command in the Tasks subtab of the subject Areas tab, but when you remove a task it is only removed from the subject area until you reassemble the subject area.

  4. Recursive selection of all tasks.

    Depending on the source and target table relationships, recursively figure out the prerequisite tasks.

Note:

A task is listed only once, even if it is associated with several tables in the subject area. DAC expands or trims the total number of tasks based on the configuration rules defined as configuration tags. This process can be resource intensive as DAC loads all of the objects in the container into memory before parsing.

Creating a Subject Area

When you create a new subject area, you assign one or more fact tables to the subject area. DAC then determines which dimension and other related tables are required as well as the tasks and their order of execution.

To create a subject area

  1. In DAC, select the appropriate source system container from the drop-down list in the toolbar.

    Note:

    You cannot modify objects in the preconfigured source system containers. You must make a copy of a preconfigured container in order to make any changes to it. For instructions on how to make a copy of a preconfigured source system container, see "Creating or Copying a Source System Container".

  2. From the Menu bar, select Views, then select Design, and then select Subject Areas.

  3. In the top pane toolbar, click New.

  4. In the Edit child tab, enter a name for the subject area, and click Save.

  5. Make sure the new subject area name is highlighted in the top pane, and click the Tables child tab.

  6. Click Add/Remove in the child tab toolbar.

    The Choose Tables dialog opens. The left-hand window lists all the tables held in the selected container.

  7. Query for one or more fact tables.

  8. Select the fact table (use Shift+click to select more than one table), and click Add.

    The tables are added to the right-hand window, which represents the subject area.

  9. Click OK to close the Choose Tables dialog.

  10. In the top pane toolbar, click Assemble.

  11. In the Assembling... dialog, select Selected Record Only.

    If you select the option All Records in the List, DAC will reassemble all the subject areas listed in the top pane.

    DAC assembles the selected subject area by determining what dimensions and other related tables are required.

    The Subject Area Assembly dialog box appears, displaying on the left a tree view that shows the fact tables that belong to the subject area. You can expand the fact table node to view its related tables.

    Subject Area Assembly dialog box
  12. Click Calculate Task List to assemble the tasks needed to load the tables displayed in the tree view.

    If configuration tags have been assigned to any of the tasks, an information message will appear.

    A list of tasks appears in the Task List tab on the right side of the window. Also, the Table List tab displays the tables included in the subject area.

  13. Click Accept to complete the subject area assembly process.

  14. (Optional) Prune the subject area to better suit your business needs by removing one or more tables from the subject area.

    1. In the tree view, remove one or more tables from the subject area by deselecting the check box to the left of the table name.

    2. Click Calculate List.

    3. Review the changes to the subject area:

      The Task List tab displays the new set of tasks required to load the pruned subject area.

      The Task Difference Report tab displays the tasks that were added and the tasks that were deleted during the last assembly process.

      The Table List tab displays the tables that are included in the pruned subject area as well as the tables that were excluded during the pruning process.

    4. To accept the changes made to the subject area, click Accept.

    5. Click OK in the message box stating the subject area was successfully assembled.

  15. (Optional) Click the Tasks tab to view which tasks DAC has determined are required for this subject area.

    Tasks that are automatically assigned to the subject area by DAC are indicated with the Autogenerated check mark.

    You can inactivate a task from participating in the subject area by selecting the Inactive check box. When the Inactive check box is selected, the task remains inactive even if you reassemble the subject area.

    You can also remove a task from the subject area using the Add/Remove command, but when you remove a task it is only removed from the subject area until you reassemble the subject area.