To use Remote View Extracts, both the source database and target data warehouse database must be Oracle. |
Remote view extracts are used to force a remote Oracle source system database to perform complex extraction logic in the remote source system database and return the results to the data warehouse.
When specifying a join in an extract (load) over a database link, the Oracle cost-based optimizer decides whether it is better to join the tables in the remote machine; or if the tables should be copied onto the local machine and the join performed locally. If the decision to copy is made for large tables, this can result in huge extract times. The simplest method of forcing the join to occur on the remote machine is to create a view on the remote machine from which the extract is done.
The view is re-created every time the load table is run. The load table then selects all columns from the remote view and inserts the results into the load table over the defined database link.
To create a remote view load table, users need to create a Database Link connection to load the remote view table from that connection. Refer to Creating a Database Link for details.
The steps for creating Database Link connection and then creating a remote view Load table are:
Fields | Description |
|---|---|
Connection Name | Name for the connection. |
Connection Type | Set the connection type to Database. |
ODBC Source | The ODBC source used to extract the source data. |
Database ID | The Oracle SID or TNS Name. |
Database Link Name | The name for the database link. This is a required field for establishing the Database Link connection. |
Extract User ID | The user name that has access to the source database. |
Extract User Password | The password for user that has access to the source database |
Once the Load table has a remote view name, the 'Where' clause in the Where and Group By Clauses text box is ignored and the 'Where' clause in the Source View WHERE-clause box is used instead. |
Example remote view Load table source mapping properties:
During the Load operation, column transformations are ignored with Remote View Extract load tables. After the Load operation, column transformations can be used. To create a derived column on a Remote View Extract load table, add the column leaving its source table blank and setting its source column to NULL. Then create an After Load transformation to populate the derived column. |