Skip Headers
Oracle® Warehouse Builder User's Guide
11g Release 1 (11.1)

Part Number B31278-01
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Index
Index
Go to Master Index
Master Index
Go to Feedback page
Contact Us

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

11 Deploying to Target Schemas and Executing ETL Logic

Oracle Warehouse Builder provides functionality that supports a single logical model and multiple physical models. This enables you to design your data warehouse once and implement this design on multiple target systems. In addition to this, Warehouse Builder also supports multiple physically different implementations of the same object definitions.

This chapter describes the implementation environment in Warehouse Builder. It also describes how to create and use schedules to automate the execution of ETL logic.

This chapter contains the following topics:

About Deployment and Execution in Warehouse Builder

After you design your data warehouse, you must implement this design in the target schema by deploying and executing design objects. The Control Center Manager offers a comprehensive deployment console that enables you to view and manage all aspects of deployment and execution. It provides access to the information stored in the active Control Center.

About Deployment

Deployment is the process of creating physical objects in a target location from the logical objects in a Warehouse Builder workspace.

The data objects created when you designed the target schema are logical definitions. Warehouse Builder stores the metadata for these data objects in the workspace. To create these objects physically on the target schema, you must deploy these objects. For example, when you create a table using the Design Center, the metadata for this table is stored in the workspace. To physically create this table in the target schema, you must deploy this table to the target schema. Use the Design Center or the Control Center Manager to deploy objects.

Note:

Whenever you deploy an object, Warehouse Builder automatically saves all changes to all design objects to the workspace. You can choose to display a warning message by selecting Prompt for commit on the Preferences dialog box.

Deploying a mapping or a process flow includes these steps:

  • Generate the PL/SQL, SQL*Loader, or ABAP script, if necessary.

  • Register the required locations and deploy any required connectors. This ensures that the details of the physical locations and their connectors are available at runtime.

  • Transfer the PL/SQL, XPDL, SQL*Loader, or ABAP scripts from the Design Center to the Control Center.

After deploying a mapping or a process flow, you must explicitly start the scripts, as described in "Starting the ETL Process" in the Warehouse Builder Online Help.

You can deploy only those objects for which you have the COMPILE privilege. By default, you have this privilege on all objects in the workspace. However, the workspace owner may have instituted a different security policy.

You can deploy directly from the Design Center navigation tree or using the Control Center Manager.

Note:

Always maintain objects using Warehouse Builder. Do not modify the deployed, physical objects manually in SQL. Otherwise, the logical objects and the physical objects will not be synchronized, which may cause unpredictable results.

Deployment Actions

As soon as you define a new object in the Design Center, the object is listed in the Control Center Manager under its deployment location. Each object has a default deployment action, which you can display. The default deployment action for an object is based on a comparison of its current design status to its current deployment status. For example, an table that has not been previously deployed will have a default deployment action of Create. A table that was previously deployed will have a default action of Upgrade. You can override the default by choosing a different deployment action in the Control Center Manager.

The default is set by the previous action and varies depending on the type of object.

These are the deployment actions:

  • Create: Creates the object in the target location. If an object with that name already exists, then an error may result. For example, this may happen if the object has not been previously deployed from Warehouse Builder.

  • Upgrade: Modifies the object without losing data, if possible. You can undo and redo an upgrade. This action is not available for some object types, such as schedules.

  • Drop: Deletes the object from the target location.

  • Replace: Deletes and re-creates the object. This action is quicker than Upgrade, but it deletes all data.

Deployment Status

After you deploy an object, Warehouse Builder assigns a deployment status to it. The status represents the result of the deployment. You can view the deployment status in the Control Center Manager.

The deployment status can be one of the following:

  • Not Deployed: Indicates that the object has not yet been deployed to the target schema.

  • Success: Indicates that the object has been successfully deployed to the target schema.

  • Warning: Indicates that some warnings were generated during the deployment of the object. Double-click the status to view details about the warning.

  • Failed: Indicates that deployment of the object failed. Double-click the status to view detailed information about why the deployment failed.

About Execution

For objects that contain ETL logic such as mappings, process flows, and transformations, there is an additional step of execution. Execution is the process of executing the ETL logic defined in the deployed objects.

For example, you define a mapping that sources data from a table, performs transformations on the source data, and loads it into the target table. When you deploy this mapping, the PL/SQL code generated for this mapping is stored in the target schema. When you execute this mapping, the ETL logic is executed and the data is picked up from the source table, transformed, and loaded into the target table.

About the Warehouse Builder Implementation Environment

To enable multiple physical implementations of a single design, Warehouse Builder uses a combination of the following: configurations, control centers, and locations.

Figure 11-1 describes the relationship between these components.

Figure 11-1 Relationship Between Configurations, Control Centers, and Locations

Description of Figure 11-1 follows
Description of "Figure 11-1 Relationship Between Configurations, Control Centers, and Locations"

Configurations specify physical object properties that correspond to the environment to which the objects are deployed. A named configuration must be associated with a control center. You can change the control center that is associated with a configuration. For more information about configurations, see "About Configurations".

A control center refers to a repository on a target machine and it manages a set of source and target locations. A control center can be associated with only one named configuration at a time. For more information about control centers, see "About Control Centers".

A location corresponds to the database, file, or application that Warehouse Builder sources data from or deploys data to. A location can be owned by only one control center. Each location can have one or more connectors that provide connections to other locations. For more information about locations and connectors, see "About Locations" and "About Connectors".

When you deploy objects, Warehouse Builder creates these objects in the target associated with the named configuration currently being used.

About Control Centers

A Control Center stores detailed information about every deployment and execution, which you can access either by object or by job, including:

  • The current deployment status of each object.

  • A history of all deployment attempts for each object.

  • A history of all ETL executions for each mapping and process flow.

  • A complete log of messages from all deployment jobs and execution job details.

Any workspace can be used as a Control Center. Each workspace has a default Control Center which points to itself. For example, when the workspace called REP_OWNER is used to contain design metadata, then its default Control Center will also use the workspace called REP_OWNER.

You can use the default Control Center to deploy to the local system, or you can create additional Control Centers for deploying to different systems. Only one Control Center is active at any time and this is the one associated with the current Active Configuration.

You can also access deployment and execution using the Repository Browser, as described in "Auditing Deployments and Executions" in the Warehouse Builder Online Help.

Creating a Control Center

  1. In the Connection Explorer, right-click Control Centers and select New.

    The Create Control Center dialog box is displayed.

  2. Complete the dialog box. Click the Help button for additional details.

You can also create a Control Center using the Create Configuration Wizard.

Activating a Control Center

The status bar in the Design Center displays the Active Configuration. A named configuration is associated with only one Control Center. Objects are deployed to the control center associated with the active configuration.

To activate a Control Center:

  1. In the Project Explorer, create or edit a configuration so that it uses the Control Center.

    Refer to "Creating New Configurations".

  2. Activate that named configuration.

    Refer to "Activating Configurations".

About Locations

Locations enable you to store the connection information to the various files, databases, and applications that Warehouse Builder accesses for extracting and loading data. Similarly, locations also store connection information to ETL management tools and Business Intelligence tools. For a detailed listing, see "Supported Sources and Targets".

Oracle Database locations and file locations can be sources, targets, or both. For example, you can use a location as a target for storing temporary or staging tables. Later, you can re-use that location as a source to populate the final target schema.

In some cases, such as with flat file data, the data and metadata for a given source are stored separately. In such a case, create a location for the data and another for the metadata.

Automatically Created Locations

During installation, Warehouse Builder creates an Oracle location named OWB_REPOSITORY_LOCATION. This location provides the connection details to the Warehouse Builder workspace. You cannot rename or delete the workspace location. Only a database administrator can change the password. To prevent unauthorized access to the database administrator password, all users are restricted from deploying to the workspace location.

Creating Locations

In addition to the automatically created locations, you can create your own locations that correspond to target schemas that you want to use as sources or targets.

To create a location:

  1. In the Connection Explorer, expand the Locations node and then the node that represents the type of location you want to create.

    For example, to create an Oracle database location, expand the Locations node, the Databases node, and then the Oracle node.

  2. Right-click the type of location and select New.

    The Create <location_type> Location dialog box is displayed.

  3. Complete the dialog box. Click the Help button for additional details.

Using SQL*Net to Create Locations

When you create Oracle locations of type SQL*Net, you must set up a TNS name entry for these locations. The TNS name must be accessible from the Oracle Database home. To do this, run the Net Configuration Assistant from the Oracle Database home.

While setting up a TNS name for use during deployment and execution of maps and process flows, the TNS name must be accessible from the Warehouse Builder home used to run the control center service. To make the TNS name accessible, run the Net Configuration Assistant from the Warehouse Builder home. Next, restart the control center service so that it can pick up the changes.

About Locations, Passwords, and Security

Considering that all Warehouse Builder users can view connection information in a location, note that the passwords are always encrypted. Furthermore, Warehouse Builder administrators can determine whether or not to allow locations to be shared across users and persisted across design sessions. By default, locations are not shared or persisted.

See Also:

Oracle Warehouse Builder Installation and Administration Guide for more information about managing passwords

Registering and Unregistering Locations

All modules, including their source and target objects, must have locations associated with them before they can be deployed.

Registering a location establishes a link between the workspace and the locations of source data and deployed objects. You can change the definition of a location before it is registered, but not afterward. After the location is registered, you can only change the password. To further edit a location or one of its connectors, you must first unregister the location. Unregistering deletes the deployment history for the location.

Locations are registered automatically by deployment. Alternatively, you can explicitly register a location in the Control Center.

To register a location:

  1. Open the Control Center Manager and select a location from the navigation tree.

  2. From the File menu, select Register.

    The Location dialog box is displayed.

  3. Check the location details carefully.

    Click Help for additional information.

  4. Click OK.

To unregister a location:

  1. Open the Control Center Manager and select a location from the navigation tree.

  2. From the File menu, select Unregister.

  3. Click OK to confirm the action.

Deleting Locations

To delete a location, right-click the location in the Connection Explorer and select Delete. If the delete option is not available here, this indicates that the location has been registered in a control center and is likely being utilized. Verify that the location is not in use, unregister the location in the Control Center Manager, and then you can delete the location from the Connection Explorer.

About Connectors

A connector is a logical link created by a mapping between a source location and a target location. The connector between schemas in two different Oracle Databases is implemented as a database link, and the connector between a schema and an operating system directory is implemented as a database directory.

You do not need to create connectors manually if your user ID has the credentials for creating these database objects. Warehouse Builder will create them automatically the first time you deploy the mapping. Otherwise, a privileged user must create the objects and grant you access to use them. You can then create the connectors manually and select the database object from a list.

See Also:

To create a database connector:

  1. In the Connection Explorer, expand the Locations folder and the subfolder for the target location.

  2. Right-click DB Connectors and select New.

    The Create Connector wizard opens.

  3. Follow the steps of the wizard. Click the Help button for specific information.

To create a directory connector:

  1. In the Connection Explorer, expand the Locations folder and the subfolder for the target location.

  2. Right-click Directories and select New.

    The Create Connector dialog box opens.

  3. Click the Help button for specific information about completing this dialog box.

The Deployment and Execution Process

During the lifecycle of a data system, you typically will take these steps in the deployment process to create your system and the execution process to move data into your system:

  1. Select a named configuration with the object settings and the Control Center that you want to use.

  2. Deploy objects to the target location. You can deploy them individually, in stages, or all at once.

    For information about deploying objects, see "Deploying Objects".

  3. Review the results of the deployment. If an object fails to deploy, then fix the problem and try again.

  4. Start the ETL process.

    For information about starting the ETL process, see "Starting ETL Jobs".

  5. Revise the design of target objects to accommodate user requests, changes to the source data, and so forth.

  6. Set the deployment action on the modified objects to Upgrade or Replace.

  7. Repeat these steps.

Note:

Warehouse Builder automatically saves all changes to the workspace before deployment.

Deploying Objects

Deployment is the process of creating physical objects in a target location from the metadata using your generated code. As part of the deployment process, Warehouse Builder validates and generates the scripts for the object, transfers the scripts to the Control Center, and then invokes the scripts against the deployment action associated with the object. You can deploy an object from the Project Explorer or using the Control Center Manager.

Deployment from the Project Explorer is restricted to the default action, which may be set to Create, Replace, Drop, or Update. To override the default action, use the Control Center Manager, which provides full control over the deployment process.

To deploy from the Project Explorer:

Select the object and click the Deploy icon on the toolbar. You can also select the object, and then choose Deploy from the Design menu.

Status messages appear at the bottom of the Design Center window. For notification that deployment is complete, select Show Deployment Completion Messages in your preferences before deploying.

To deploy from the Control Center Manager:

  1. Open a project.

  2. Select Control Center Manager from the Tools menu.

    The Control Center Manager that provides access to the control center for the active configuration of the project is displayed. If this menu choice is not available, then check that the appropriate named configuration and Control Center are active. Refer to "Creating Additional Configurations".

  3. In the Control Center Manager navigation tree, expand the location node containing the object to be deployed. Select the objects to be deployed.

    You can select multiple objects by holding down the Ctrl key while selecting the objects.

  4. Set the deployment action for the selected objects in the Object Details panel.

  5. Click the Deploy icon.

Deploying Business Definitions to Oracle Discoverer

After you create your business definitions, you can deploy them to Oracle Discoverer. The method used to deploy business definitions depends on the version of Oracle Discoverer to which business definitions are deployed and the licensing option you use. For more information about the various licensing options, see "Product Options and Licensing".

Table 11-1 summarizes the combinations possible when you deploy business definitions to Oracle Discoverer using the different licensing options.

Table 11-1 Different Methods of Deploying Business Definitions


Warehouse Builder Core Functionality Warehouse Builder Enterprise ETL Option

Versions Lower than Oracle Discoverer 10g Release 2

Generate scripts for the business definitions, copy these scripts to an .eex file, and import the .eex file into Oracle Discoverer.

See "Deploying Business Definitions Using the Core Functionality".

Use the Control Center to create an .eex file and then import the .eex file into Oracle Discoverer.

See "Deploying Business Definitions to Earlier Versions of Oracle Discoverer".

Oracle Discoverer 10g Release 2

Generate scripts for the business definitions, copy these scripts to an .eex file, and import the .eex file into Oracle Discoverer.

See "Deploying Business Definitions Using the Core Functionality".

Use the Control Center to directly deploy to Oracle Discoverer.

See "Deploying Business Definitions Directly to Oracle Discoverer".


Deploying Business Definitions Directly to Oracle Discoverer

You can directly deploy business definitions to Oracle Discoverer, just like you deploy other data objects, using the Control Center or Project Explorer. The business definitions are deployed to the Discoverer location associated with the Business Definition module that contains these business definitions.

Before you deploy business definitions, ensure that a valid Discoverer location is associated with the Business Definition module. For information about how to associate a Discoverer location with a Business Definition module, see "Setting the Connection Information" in the Warehouse Builder Online Help.

When you deploy business definitions directly to Oracle Discoverer 10g Release 2, the following steps are performed:

  1. Creates an .eex file that contains the definitions of the business definitions.

  2. Connects to the EUL specified in the Discoverer location associated with the Business Definition module containing the business definitions.

    Note:

    If the EUL is in a different database from your object definitions, a connector is created. This connector is deployed when you deploy the business definitions.
  3. Imports the .eex file into Oracle Discoverer.

    During the import, any new business definitions are appended on top of the existing definitions. You must validate the EUL and remove redundant definitions. For example, you deploy an item folder that contains four items. Subsequently, you delete one item from the item folder. When you redeploy the item folder, it still contains four items. This is because only new definitions are being appended, but old definitions are not removed.

Deploying Business Definitions to Earlier Versions of Oracle Discoverer

You cannot directly deploy business definitions to versions of Oracle Discoverer earlier than 10g Release 2. However, you can still transfer your business definitions to Discoverer using the following work around.

When you deploy business definitions to a location that is associated with a version of Discoverer lower than 10g Release 2, the deployment will fail. But an .eex file that contains the business definitions is created. This .eex file is assigned a default name, for example, 2022.eex, and is stored in the OWB_ORACLE_HOME\deployed_scripts directory. You can connect to the EUL using Oracle Discoverer and import this .eex file.

Deploying Business Definitions Using the Core Functionality

When you use the core functionality of Warehouse Builder, you cannot directly deploy business definitions to Oracle Discoverer. You also cannot use the Control Center to create an .eex file as described in "Deploying Business Definitions to Earlier Versions of Oracle Discoverer". However, you can save your business definitions to Discoverer using the steps described in the following section. For more information about the core functionality, see "Product Options and Licensing".

Use the following steps to save business definitions to Discoverer:

  1. Associate a valid location with the Business Definition Module that contains the business definitions.

    Although you cannot use this location to deploy business definitions, defining the location ensures that the credentials of the EUL user are included in the generated code. When you define the location, a check is performed to determine if the relational schema that the intelligence objects reference is in the same database as the objects. If they are in different databases:

    • A connector is created to the Discoverer location.

    • The name of the database link used by the connector is included in the generated code.

    The connector is created under the Discoverer location node associated with the Business Definition module. Ensure that you deploy this connector to create a database link.

  2. Right-click the business definition module that contains the business definitions that you want to deploy to Discoverer and select Generate.

    The Generation Results window is displayed.

  3. Navigate to the Scripts tab of the Generation Results window.

    This tab lists all the business definitions with the names of the corresponding files that store the scripts generated for these definitions.

  4. Select all the objects that you want to save to Oracle Discoverer.

    You can select multiple files by pressing down the Ctrl key.

  5. Click the Save As button.

    The Save As dialog box is displayed.

  6. Select the directory in which you want to save the generated scripts. Ensure that you save all the files in a single directory.

    For example, you save all the generated scripts in the directory c:\sales\generated_scripts.

  7. Copy all the generated scripts to a single .eex file.

    Use the operating system commands to concatenate the generated scripts into a single file. For example, in Windows, you open a Command Prompt window and execute the following steps:

    c:> CD c:\sales\generated_scripts
    c:\sales\generated_scripts> COPY *.xml sales_scripts.eex
    
    

    This copies all the generated .xml files to an .eex file called sales_scripts.eex.

  8. Edit the .eex file created in the previous step using any text editor and perform the following steps:

    1. Add the following lines at the beginning of the file:

      <?xml version="1.0" encoding="UTF-8"?>
      <EndUserLayerExport SourceEULId="20030730144738"
      SourceEULVersion="4.1.9.0.0" MinimumCodeVersion="4.1.0"
      ExportFileVersion="4.1.0">
      
      
    2. Add the following lines at the end of the file:

      </EndUserLayerExport>
      
      
  9. Open Oracle Discoverer Administrator and connect to the EUL into which you want to import the business definitions.

  10. From the File menu, select Import.

    The Import Wizard is displayed.

  11. Import the .eex file you created into Discoverer Administrator.

Reviewing the Deployment Results

You can monitor the progress of a job by watching the status messages at the bottom of the window and the Status column of the Control Center Jobs panel.

When the job is complete, the new deployment status of the object appears in the Details tab. You can review the results and view the scripts.

To view deployment details:

Double-click the job in the Job Details panel.

The Deployment Results window will appear. For a description of this window, select Topic from the Help menu.

To view deployed scripts:

  1. Open the Deployment Results window, as described in the previous steps.

  2. Select the object in the navigation tree.

  3. On the Script tab, select a script and click View Code, or just double-click the script name.

Starting ETL Jobs

ETL is the process of extracting data from its source location, transforming it as defined in a mapping, and loading it into target objects. When you start ETL, you submit it as a job to the Warehouse Builder job queue. The job can start immediately or at a scheduled time, if you create and use schedules. For more information about schedules, see "Process for Defining and Using Schedules".

Like deployment, you can start ETL from the Project Explorer or using the Control Center Manager. You can also start ETL using tools outside of Warehouse Builder that execute SQL scripts.

Starting a mapping or a process flow involves the following steps:

  1. Generating the PL/SQL, SQL*Loader, or ABAP script, as needed.

  2. Deploying the script, as needed.

  3. Executing the script.

To start ETL from the Project Explorer:

Select a mapping or a process flow, then select Start from the Design menu.

To start ETL from the Control Center Manager:

Select the mapping or process flow, then click the Start icon in the toolbar.

Alternatively, you can select the mapping or process flow, then select Start from the File menu.

Viewing the Data

After completing ETL, you can easily check any data object in Warehouse Builder to verify that the results are as you expected.

To view the data:

In the Project Explorer, right-click the object and select Data. The Data Viewer will open with the contents of the object.

Scheduling ETL Jobs

You can use any of the following methods to schedule ETL:

Configuring the Physical Details of Deployment

Warehouse Builder separates the logical design of the objects from the physical details of the deployment. It creates this separation by storing the physical details in configuration parameters. An object called a named configuration stores all of the configuration settings. You can create a different named configuration for each deployment location, with different settings for the object parameters in each one.

Before deployment, be sure to check the configuration of the target objects, the mappings, and the modules.

For an object to be deployable:

About Configurations

When you create a repository, Warehouse Builder creates a named configuration and a control center. This configuration is referred to as the default configuration and is named DEFAULT_CONFIGURATION. The control center is named DEFAULT_CONTROL_CENTER. The DEFAULT_CONFIGURATION is associated with the DEFAULT_CONTROL_CENTER.

A named configuration contains the physical details for every object in a given project that are required to deploy a data system. You can create additional named configurations as described in "Creating Additional Configurations".

Named configurations are used as a means to implement different physical parameters for the same design on different systems (for example, development, production, testing). Named configurations enable you to easily move Warehouse Builder applications from the development to the test environment and then into production. For example, on the development system, you can specify the parallel settings as NOPARALLEL. On the production system, you can specify the parallel setting as PARALLEL with a degree of 16.

Each named configuration is associated with only one control center. The default control center always points to the local unified repository and allows for direct deployment and execution on that local system.

Active Configuration

Only one named configuration is active at a time. This configuration is called the active configuration. All configuration settings that you set are stored against this named configuration.

When you first install Warehouse Builder, the default configuration is set as the active configuration. By default, all objects that you deploy, are deployed using the default control center as it links to the default configuration.

Changing the active configuration changes the storage of physical configuration settings, the locations used, and the control center through which the deployment is done.

Creating New Configurations

To create a new named configuration:

  1. In the Project Explorer, select a project and expand the navigation tree.

  2. Select Configurations.

  3. From the Design menu, select New.

    The Create Configuration wizard opens.

  4. On the Name page, provide a name and an optional description.

    Click Set and save as my active configuration for this project to set the new named configuration the active configuration. Any configuration parameters that you set for design objects are saved in this named configuration. Also, any objects that you deploy are deployed to the control center associated with this new named configuration.

  5. On the Details page, select the control center that should be associated with this configuration.

    If you have not already created the control center, click New to create one and associate it with the configuration.

  6. Click Finish to close the wizard and create the named configuration.

The new named configuration appears in the Configurations folder.

Activating Configurations

There can be only one active configuration at a time. Any objects that you deploy are deployed to the control center associated with the active configuration. To implement your design to a different target system, you must deploy objects to the control center associated with that target system. You can do this by activating the named configuration associated with the control center.

To activate a named configuration:

  1. Right-click the named configuration you want to activate and select Open Editor.

  2. On the Name tab, select Set and save as my Active Configuration for this project.

To activate a named configuration for the current session only:

  1. In the Project Explorer, select a project and expand the navigation tree.

  2. Expand the Configurations folder.

  3. Select a named configuration.

  4. From the Design menu, select Set As Active Configuration.

    The selected named configuration is set as the active configuration for the current session. If you exit Warehouse Builder and log in subsequently, the changes are not saved.

Any changes that you make to the configuration parameters of objects are saved in the active configuration. If you switch to the previous named configuration, then these parameters will have their previous settings. The Control Center associated with this named configuration is now active and stores all new information about validation, generation, and deployment of objects in the project.

Creating Additional Configurations

You can create additional named configurations that are associated with different control centers for a single project. To implement your logical design on different systems, you deploy your project separately for each named configuration. You must first activate a named configuration before you deploy objects using that configuration.

Note:

To create additional named configurations, you must licence the Warehouse Builder Enterprise ETL Option.

Scenario Requiring Multiple Configurations

An enterprise data warehouse typically has multiple environments such as development, testing, and production. The same design objects need to be created in all these environments. But the objects need different physical configuration settings in each environment

Table 11-2 lists the configuration settings for a particular table in the development, testing, and production environments.

Table 11-2 Configuration Properties for a Table in Different Environments

Configuration Property Development Environment Test Environment Production Environment

Tablespace

DEV

TEST

PROD

Parallel Access Mode

PARALLEL

NOPARALLEL

PARALLEL

Logging Mode

NOLOGGING

NOLOGGING

LOGGING


You can implement this scenario by creating different configurations for each environment. Specify different values for the configuration properties of the object in each named configuration. By switching among different named configurations, you can change the physical design without making any changes to the logical design. You can easily deploy a single data system to several different host systems or to various environments.

Setting Configuration Properties for a Named Configuration

To set configuration properties for a particular named configuration:

  1. Set the named configuration as the active configuration.

    For information about activating a configuration, see "Activating Configurations".

  2. In the Project Explorer, right-click the object that you want to configure and select Configure.

  3. Specify the configuration properties for the selected object.

  4. Repeat steps 2 and 3 for all objects in the project for which you want to set configuration properties.

You can now deploy the design objects. The Control Center that is presented in the Deployment Manager is the Control Center that is associated with the active configuration.

Deploying a Design to Multiple Target Systems

Creating multiple configurations enables you to deploy the same design to multiple target systems. To deploy a design to a particular target system, you activate the named configuration associated with the target system and deploy your design.

To deploy a set of design objects to multiple target systems:

  1. If you have not already done so, create a named configuration for each target system to which design objects must be deployed.

    See "Creating New Configurations".

    For each named configuration, ensure that you create a separate control center that points to the target system. Also set the configuration properties for design objects in each named configuration, as described in "Setting Configuration Properties for a Named Configuration".

  2. Activate the named configuration associated with the target system to which design objects must be deployed.

    See "Activating Configurations".

  3. Resolve errors related to deployment or execution.

    You may encounter some errors even if you validated data objects before deploying them. These errors could be caused by configuration properties you set. Configuration property values represent physical property information that is not semantically checked before deployment. For example, the value you specify for the Tablespace Name property is not checked against the database at validation time. Such errors are encountered during deployment.

  4. Deploy the design objects.

    See "Deploying Objects".

  5. Repeat steps 2 to 5 for each target system to which design objects must be deployed.

Benefit of Creating Additional Configurations

A named configuration stores the physical details for every object in a project. You can create multiple named configurations for a project, each containing different physical settings for objects. The physical settings for design objects in each named configuration are preserved.

Consider a scenario that requires the same design objects to be implemented in different target systems, that is, different control centers. For each target system, you can create a named configuration and then specify different configuration properties for design objects in that named configuration. To implement your design to a particular environment, you simply activate the named configuration associated with that environment and deploy objects.

Configuration property values belong to the named configuration object and are preserved. You do not have to reset configuration values when you switch between named configurations. The configuration properties that you see in the Design Center are the settings associated with the active configuration. The status bar at the bottom of the Design Center displays the name of the active configuration.

For example, the named configuration associated with the development environment is currently active. So any changes you make to configuration property values are made to the development environment. For the table MY_TABLE, you set the Tablespace configuration parameter to DEV. Next activate the named configuration associated with the production environment. The configuration values displayed will be the same values that you set the last time the production configuration was active. The Tablespace configuration parameter for MY_TABLE is null. You set it to PROD. This change affects only the production configuration. Switching back to the development configuration will show the Tablespace configuration parameter for MY_TABLE remains as DEV. Every object instance in a project has unique configuration values. So, in this example, setting tablespace value for MY_TABLE has no effect on any other table. Each table instance must be individually configured.

Another advantage of multiple configurations is the ease with which it enables you to make changes to your existing environment. For example, you design objects, implement your development environment, deploy objects, and then move to the testing environment. You then need to change some objects in the development environment. To do this, you just activate the named configuration associated with the development environment, make the changes to objects, regenerate scripts, and deploy objects. To return to the testing environment, you activate the testing configuration. There is no need to make changes to the design objects.

About Schedules

Use schedules to plan when and how often to execute operations that you designed within Warehouse Builder. You can apply schedules to mappings and process flows that you want to execute in an Oracle Database, version 10g or higher.

When you are in the development phase of using Warehouse Builder, you may not want to schedule mappings and process flows but rather start and stop them immediately from a Control Center as described in "Deploying Objects".

You can define schedules to execute once or to execute repeatedly based on an interval you define in the user interface. For each schedule you define, Warehouse Builder generates codes that follows the iCal calendaring standards, which can be deployed to a scheduler such as Oracle 10g Scheduler or Applications Concurrent Manager.

Schedules are defined in the context of projects and contained in schedule modules under the Schedules node on the Project Explorer.

Figure 11-2 displays schedules on the Project Explorer.

Figure 11-2 Schedules on the Project Explorer

This illustration is described in the surrounding text.
Description of "Figure 11-2 Schedules on the Project Explorer"

For every new project you create, Warehouse Builder creates a default schedule module, MY_CAL_MODULE. Create schedules under the default module or create a new module by right- clicking the Schedules node and selecting New.

Deploying Warehouse Builder Schedules to Oracle Workflow

To successfully deploy Warehouse Builder schedules to Oracle Workflow, ensure access to the correct version of Oracle Workflow as described in the Oracle Warehouse Builder Installation and Administration Guide. Scheduled jobs should be deployed to a standard database location, not to a Workflow Location. Only Process Flow packages should be deployed to Oracle Workflow.

Scheduled jobs may reference an executable object such as a process flow or a mapping. If a job references a process flow, then you must deploy the process flow to Oracle Workflow and deploy the scheduled job to either a database location or a Concurrent Manager location.

For remote Oracle Workflow locations and remote Warehouse Builder 10g locations to which schedules are deployed, ensure that the target location has the CREATE SYNONYM system privilege. If the Evaluation Location is specified or the deployment location references a different database instance from Control Center schema, then the deployment location must have the CREATE DATABASE LINK system privilege.

Process for Defining and Using Schedules

  1. To create a module to contain schedules, right-click the Schedules node and select New.

  2. To create a schedule, right-click a schedule module and select New.

    Warehouse Builder displays the Schedule Wizard.

  3. On the Name and Description page, type a name for the schedule that is 24 characters or less.

    The rules for most Warehouse Builder objects is that physical names can be 1 to 30 alphanumeric characters and business names can be 1 to 2000 alphanumeric characters.

  4. Follow the instructions in the Schedule Wizard.

    Use the wizard to specify values for Start and End Dates and Times, Frequency Unit, and Repeat Every. When you complete the wizard, Warehouse Builder saves the schedule under the schedule module you selected.

    See Also:

    "Example Schedules" for examples of schedules
  5. On the Project Explorer, right-click the schedule you created with the wizard and select Open Editor.

    Warehouse Builder displays the schedule editor. Review your selections and view the list of calculated execution times. For complex schedules, you can now enter values for the By Clauses.

  6. To apply a schedule to a mapping or process flow, right-click the object in the Project Explorer and select Configure. In the Referred Calendar field, click the Ellipsis button to view a list of existing schedules.

    For any mapping or process flow you want to schedule, the physical name must be 25 characters or less and the business name must be 1995 characters or less. This restriction enables Warehouse Builder to append to the mapping name the suffix _job and other internal characters required for deployment and execution.

  7. Deploy the schedule.

    Recall that when you deploy a mapping, for example, you also need to deploy any associated mappings and process flows and any new target data objects. Likewise, you should also deploy any associated schedules.

    When properly deployed with its associated objects, the target schema executes the mapping or process flow based on the schedule you created.

Example Schedules

Use Table 11-3 as a guide for defining schedules.

Table 11-3 Example Repeat Expressions for Schedules

Schedule Description Frequency Units Repeat Every By Clause

Every Friday.

weekly

1 week

By Day = FRI

Every other Friday.

weekly

2 weeks

By Day = FRI

Last day of every month.

monthly

1 month

By Month Day = -1

Second-to-last day of every month.

monthly

1 month

By Month Day = -2

First Friday of any month containing 5 weeks.

monthly

1 month

By Day = -5FRI

Last workday of every month.

monthly

1 month

By Day = MON,TUE,WED,THU,FRI;

By Set Pos = -1

On March 10th.

yearly

1 year

By Month = MAR

By Month Day = 10

Every 12 days.

daily

12 days

n/a

Every day at 8 am and 5 pm.

daily

1 day

By Hour = 8,17

On the second Wednesday of every month.

monthly

1 month

By Day = 2 WED

Every hour for the first three days of every month.

hourly

1 hour

By Month Day = 1,2,3