Installation Guide
Overview
Data Integration Hub consists of a web application with an embedded Tomcat container, and a standalone Java runtime
server. Except for the pre-requisites listed below, no additional third-party downloads or installations
should be required.
DIH components
The components comprising DIH include the following. For more information, see Architecture.
- DIH web application
- Run time server
- Angular UI application
Prerequisites
Before installing DIH, ensure you have the following:
-
OS Compatibility: Linux or Windows
-
Resource recommendations:
- Webserver – 512MB Java heap
- SSO server (optional) – 512MB Java heap
- Runtime Server – 1024MB Java heap per instance
- Disk space:
- Without embedded OUAF application jars – 80MB
- With embedded OUAF application jars – 700MB
-
Hardware configurations:
- 8 CPUs
- 64GB memory
- 20GB disk space (mostly for logging)
Installation Files
The installation package is distributed as a zip file ria-dih-.zip This contains all the required software and scripts for the installation and setup.
SQL scripts
sql/create-dih-tables.sql
This SQL script creates the tables, views and DBMS Scheduler objects required by the tool. The tool’s table and view names are prefixed by “UA_”. The DBMS Scheduler Program that is used to submit tasks is also created by this script.
sql/ria_dih.sql
This is the script to create the PL/SQL package required by the tool.
/tools/dl
An export/import utility called DataLoader is included to install the initial configuration data (see below).
Installation Steps
To install Data Integration Hub, follow these steps:
- Unzip the installation package.
- (For Linux) Make shell scripts executable.
The ria-dih/bin directory contains bash shell scripts that need to be made “executable”. - Create database schema (if required). To setup a new schema for DIH, these statements can used:
CREATE TABLESPACE DIHTS_01 LOGGING DATAFILE '/opt/oracle/oradata/XE/dihts01.dbf'
SIZE 512M REUSE AUTOEXTEND ON NEXT 8192K MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL UNIFORM SIZE 256K;
CREATE USER DIHADM IDENTIFIED BY DIHADM
DEFAULT TABLESPACE DIHTS_01
TEMPORARY TABLESPACE TEMP
PROFILE DEFAULT;
GRANT UNLIMITED TABLESPACE TO DIHADM WITH ADMIN OPTION;
GRANT SELECT ANY TABLE TO DIHADM;
GRANT CREATE DATABASE LINK TO DIHADM;
GRANT CONNECT TO DIHADM;
GRANT RESOURCE TO DIHADM;
GRANT DBA TO DIHADM WITH ADMIN OPTION;
GRANT CREATE ANY SYNONYM TO DIHADM;
GRANT SELECT ANY DICTIONARY TO DIHADM;
ALTER USER DIHADM DEFAULT ROLE ALL;
GRANT CREATE SESSION TO DIHADM;
- Run the following from the SYSDBA user to grant appropriate permissions to the DIH Schema.
grant create job to &1;
grant execute any class to &1;
grant manage scheduler to &1;
begin
DBMS_RULE_ADM.grant_system_privilege(
privilege => DBMS_RULE_ADM.create_rule_set_obj,
grantee => '&1',
grant_option => false);
DBMS_RULE_ADM.grant_system_privilege(
privilege => DBMS_RULE_ADM.create_evaluation_context_obj,
grantee => '&1',
grant_option => false);
DBMS_RULE_ADM.grant_system_privilege(
privilege => DBMS_RULE_ADM.create_rule_obj,
grantee => '&1',
grant_option => false);
END;
/
- Optional. Setup email notifications to the DBMS Scheduler.
DBMS_SCHEDULER.set_scheduler_attribute('email_server', 'SMTP-server-name:port')
- Create database objects by running the following script.
sql/create-dhi-tables.sql
- Configure the tool by copying important configuration files from
configtoconfig/override
config/ria-boot.properties -> config/override/ria-boot.properties
config/hazelcast.xml -> config/override/hazelcast.xml
- Optional. Configure the environment name by editing
config/override/ria-boot.propertiesand setting the following:
com.ria.core.env.name = <user-defined-name>
-
Configure the server address and port by editing
config/override/ria-boot.propertiesand setting the following:com.ria.core.host.address com.ria.core.host.port = 16080 -
Configure the database connection parameters by editing
config/override/ria-boot.propertiesand setting the following:com.ria.core.db.url com.ria.core.db.user com.ria.core.db.password (optional) -
Configure the service user and language (only if embedded OUAF is used) by editing
config/override/ria-boot.propertiesand setting the following:com.ria.converter.service.language = ENG com.ria.converter.service.user = SYSUSER -
Enable security configuration by specifying the following in the
ria-boot.propertiescom.ria.core.authz.fileBased = false -
Setup email for notifications. These properties enable the email executable to send emails when specified on a task. At a minimum, the email server name is required, but authentication and SSL transport are typically also required. These examples from the
ria-boot.propertiesfile can be used as a starting point:com.ria.mail.debug = false com.ria.mail.smtp.socketFactory.class = javax.net.ssl.SSLSocketFactory com.ria.mail.smtp.host = smtp.gmail.com com.ria.mail.smtp.port = 465 com.ria.mail.smtp.auth = true com.ria.mail.user = user@gmail.com com.ria.mail.password = password
bin/encrypt.
-
Review the Hazelcast cluster name and network parameters. The tool uses Hazelcast IMDG for clustering of the runtime server JVMs. Even if only a single JVM is used, the cluster name and network values must be set to not conflict with other, or other potential Hazelcast configurations. Edit
config/override/hazelcast.xmland set the values highlighted below to reflect the environment:<cluster-name>ria-dhi-dev</cluster-name> <network> <port auto-increment="true">5701</port> <join> <multicast enabled="false"> <multicast-group>224.2.2.3</multicast-group> <multicast-port>54327</multicast-port> </multicast> <tcp-ip enabled="true"> <interface>localhost</interface> </tcp-ip> </join> </network> -
Load the initial configuration data by running the import script to load the initial configuration. Change to the
tools/dldirectory and run the following command:bin/dlload -script lds/init-config.lds
-
Start the web application server:
bin/startws -
Access the web application by navigating to
http://<host>:<port>. Chrome and Firefox browsers are recommended.