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 Grants for Integrate and Refresh Target
- 6 Burst Integrate and Bulk Refresh Target
- 7 Grants for 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.
Grants for Log-based Capture
- The User should have permissions to select from replicated tables.
grant select on tbl to hvruser
- The User should also have permissions to read from some system views and table. In HANA, however, it is impossible to directly grant permissions on system objects to any user. Instead, special wrapper views should be created, and hvruser should be granted read permission on this views. See Log-based Capture Requirements section below for the details.
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.
Database Level Permission Requirements
The User should be granted permission to read the replicated tables.
grant select on tbl to hvruser
The User should also be granted select permission from some system table and views. To do this,
- 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.
create schema _HVR; grant select on schema _HVR to hvruser;
This will create a set of views that HVR uses to read from system dictionaries on HANA.
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|
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 Target
- The User should have permission to import data
grant import to hvruser
- The staging-path defined in LocationProperties /StagingDirectoryDb should be configured for importing data
alter system alter configuration ('indexserver.ini', 'system') set ('import_export', 'csv_import_path_filter') = 'STAGING-PATH' with reconfigure
Grants for Compare and Refresh Source
- The User should have permission to read replicated tables
grant select on tbl to hvruser