Requirements for HANA
This section describes the requirements, access privileges, and other features of HVR when using SAP HANA for replication. For information about the capabilities supported by HVR on HANA, see Capabilities for HANA.
For information about compatibility and supported versions of HANA with HVR platforms, see Platform Compatibility Matrix.
To quickly setup replication into HANA, see Quick Start for HVR into HANA.
- 1 ODBC Connection
- 2 Location Connection
- 3 Connecting to Remote HANA Location from Hub
- 4 Capture
- 5 Integrate and Refresh Target
- 6 Compare and Refresh Source
HVR requires that the HANA client (which contains the HANA ODBC driver) is installed on the machine from which HVR will connect to HANA.
HVR does not support integrating changes captured from HANA into databases where the distribution key cannot be updated (e.g. Greenplum, Azure Data Warehouse).
This section lists and describes the connection details required for creating HANA location in HVR.
|Node||The hostname or ip-address of the machine on which the HANA server is running. |
|Mode||The mode for connecting HVR to HANA server. Available options:
|Instance Number||The database instance number. |
|Port||The port on which the HANA server is expecting connections. For more information about TCP/IP ports in HANA, refer to SAP Documentation|
|Database||The name of the specific database in a multiple-container environment. This field is enabled only if the Mode is either Multiple containers - Tenant database or Manual port selection.|
|User||The username to connect HVR to the HANA Database. |
|Password||The password of the User to connect HVR to the HANA Database.|
|Driver Manager Library||The directory path where the Unix ODBC Driver Manager Library is installed. For a default installation, the ODBC Driver Manager Library is available at /usr/lib64 and does not need to specified. When UnixODBC is installed in for example /opt/unixodbc-2.3.1 this would be /opt/unixodbc-2.3.1/lib|
|ODBCSYSINI||The directory path where odbc.ini and odbcinst.ini files are located. For a default installation, these files are available at /etc and does not need to be specified. When UnixODBC is installed in for example /opt/unixodbc-2.3.1 this would be /opt/unixodbc-2.3.1/etc. The odbcinst.ini file should contain information about the HANA ODBC Driver under the heading [HDBODBC].|
|ODBC Driver||The user defined (installed) ODBC driver to connect HVR to the HANA database.|
Connecting to Remote HANA Location from Hub
HVR allows you to connect from a hub machine to a remote HANA database by using any of the following two methods:
- Connect to an HVR installation running on the HANA database machine using HVR’s protocol on a special TCP port number (e.g. 4343). This option must be used for log-based capture from HANA.
- Use ODBC to connect directly to a HANA database remotely. In this case no additional software is required to be installed on the HANA database server itself. This option cannot be used for log-based capture from HANA database.
HVR only supports capture from column-storage tables on HANA.
Grants for Log-based Capture
- The User should have permissions to select from replicated tables.
grant select on tbl to hvruser
- Connect to the HANA database as user SYSTEM.
- Create a schema called _HVR.
- Grant SELECT privilege on this schema to User.
- Execute the hvrhanaviews.sql script from the $HVR_HOME/sql/hana directory. This will create a set of views that HVR uses to read from system dictionaries on HANA.
create schema _HVR; grant select on schema _HVR to hvruser;
OS Level Permission Requirements
Log-based capture from HANA database requires that HVR is installed on the HANA database server itself, and HVR remote listener is configured to accept remote connections. The operating system user the HVR is running as should have read permission on the HANA database files. This can typically be achieved by adding this user to the sapsys user group.
Channel Setup Requirements
It is not possible to enable 'supplemental logging' on HANA. This means that the real key values are not generally available to HVR during capture. A workaround for this limitation is by capturing the Row ID values and use them as a surrogate replication key.
The following two additional actions should be defined to the channel, prior to using Table Explore (to add tables to the channel), to instruct HVR to capture Row ID values and to use them as surrogate replication keys.
|Source||ColumnProperties /Name=hvr_rowid /CaptureFromRowId||This action should be defined for capture locations only.|
|*||ColumnProperties /Name=hvr_rowid /SurrogateKey||This action should be defined for both capture and integrate locations|
Integrate and Refresh Target
Grants for Integrate and Refresh Target
- The User should have permission to read and change replicated tables
grant select, insert, update, delete on tbl to hvruser
- The User should have permission to create and alter tables in the target schema
grant create any, alter on schema schema to hvruser
- The User should have permission to create and drop HVR state tables
Burst Integrate and Bulk Refresh
HVR allows you to perform Integrate with Burst and Bulk Refresh on HANA location for maximum performance. To perform Integrate with Burst and Bulk Refresh, define action LocationProperties on HANA location with the following parameters:
- /StagingDirectoryHvr: the location where HVR will create the temporary staging files.
- /StagingDirectoryDb: the location from where HANA will access the temporary staging files. This staging-path should be configured in HANA for importing data,
alter system alter configuration ('indexserver.ini', 'system') set ('import_export', 'csv_import_path_filter') = 'STAGING-PATH' with reconfigure
Grants for Burst Integrate and Bulk Refresh
- The User should have permission to import data
grant import to hvruser
Compare and Refresh Source
Grants for Compare and Refresh Source
- The User should have permission to read replicated tables
grant select on tbl to hvruser