Skip to main content

Replicating Oracle data to SAP HANA

DatabaseWriter can continuously replicate one or many Oracle tables to a SAP HANA database. First, create a table in SAP HANA corresponding to each Oracle table to be replicated. Then load the existing data using DatabaseReader. For example, to replcate all tables in MYORADB to MYSAPDB:

CREATE SOURCE OracleJDBCSource USING DatabaseReader (
  Username:'Striim',
  Password:'****',
  ConnectionURL:'jdbc:oracle:thin:@203.0.113.49:1521:orcl',
  Tables:'MYORADB.%'
)
OUTPUT TO DataStream;

CREATE TARGET SAPHANAInitialLoad USING DatabaseWriter (
  ConnectionURL:'jdbc:sap://203.0.113.50:39013/?databaseName=MYASPDB&currentSchema=striim',
  Username:'striim',
  Password:'******',
  Tables:'MYORADB.%,MYSAPDB.%'
)
INPUT FROM DataStream; 

See Database Reader and Database Writer for more information about the properties.Database Writer

Once the initial load is complete, the following application will continuously replicate new data from Oracle to SAP HANA:

CREATE SOURCE OracleCDCSource USING OracleReader ( 
  Username: 'Striim',
  Password: '******',
  ConnectionURL: '203.0.113.49:1521:orcl',
  Compression:'True',
  Tables: 'MYORADB.%'
 ) 
OUTPUT TO DataStream;

CREATE TARGET SAPHANAContinuous USING DatabaseWriter(
  ConnectionURL:'jdbc:cassandra://203.0.113.50:9042/mykeyspace',
  Username:'striim',
  Password:'******',
  Tables: 'MYORADB.%,MYSAPDB.% '
INPUT FROM DataStream;

When the input stream of a SAP HANA DatabaseWriter target is the output of an Oracle source (Database Reader, Incremental Batch Reader, or Oracle Reader), the following types are supported:

Oracle type

SAP HANA type

BINARY_DOUBLE

DOUBLE

BINARY_FLOAT

REAL

BLOB

BLOB, VARBINARY

CHAR

ALPHANUM, TEXT, VARCHAR

CHAR(1)

BOOLEAN

CLOB

CLOB, VARCHAR

DATE

DATE

DECIMAL

DECIMAL

FLOAT

FLOAT

INT

INTEGER

INTEGER

INTEGER

NCHAR

NVARCHAR

NUMBER

INTEGER

NUMBER(1,0)

INTEGER

NUMBER(10)

INTEGER

NUMBER(19,0)

INTEGER

NUMERIC

BIGINTEGER, DECIMAL, DOUBLE, FLOAT, INTEGER

NVARCHAR2

NVARCHAR

SMALLINT

SMALLINT

TIMESTAMP

TIMESTAMP

TIMESTAMP WITH LOCAL TIME ZONE

TIMESTAMP

TIMESTAMP WITH TIME ZONE

TIMESTAMP

VARCHAR2

VARCHAR