SAP Hana Cloud
SAP HANA Cloud Integration enables Manufacturing Connect Edge (MCe) to connect with an SAP HANA Cloud (or on-premise SAP HANA) database over the SQL endpoint. The connector writes data from Message Broker into a target table and also supports ad hoc queries from the Analytics IT Hub processor.
Supported communication
- Outbound (Publish data from MCe to SAP HANA Cloud): Yes
- Inbound (Subscribe data from SAP HANA Cloud to MCe): No
- Analytics IT Hub processor support: Yes
Configurations
Field | Details | Required |
|---|---|---|
Name | Connector name. | Yes |
Hostname | DNS name or IP of the SQL endpoint, for example <instance-id>.hana.<region>.hanacloud.ondemand.com. | Yes |
Port | SQL endpoint port. SAP HANA Cloud listens on 443; on-premise systems use 3<instance-nr>15, for example 30015. | Yes |
Authentication method | password authenticates with a database user name and password. x509 authenticates with a client certificate; the database user is then derived server-side from the certificate mapping. | No |
Username | Database user. Required for password authentication and ignored for x509. | No |
Password | Password for the database user. Required for password authentication and ignored for x509. | No |
Client Certificate | PEM client certificate presented for x509 authentication. Its subject must be mapped to a database user on the instance. | No |
Client Private Key | PEM private key matching the client certificate. Must not be password encrypted. | No |
TLS mode | disable connects in cleartext and only works against on-premise systems. require encrypts without checking the server certificate. verify-full encrypts and validates the certificate chain and host name. | No |
CA Certificate | CA certificate used to validate the server. Leave empty to trust the system certificate store, which already covers SAP HANA Cloud. | No |
TLS server name | Overrides the host name checked against the server certificate. Needed when the instance is reached through an IP address or a forwarding proxy. | No |
Tenant database | Tenant database to redirect to on a multi-tenant system. Leave empty for SAP HANA Cloud, where the SQL endpoint already addresses the database. | No |
Connection timeout (seconds) | Seconds to wait for one connection attempt: the login handshake, the CURRENT_SCHEMA lookup, and each liveness check. Raise it for an instance reached over a slow or congested link. This field is in seconds, while Commit timeout is in milliseconds. | No |
Schema | Schema holding the target table. Leave empty to use the CURRENT_SCHEMA of the connecting user. SAP HANA stores unquoted identifiers in upper case, so enter MYSCHEMA unless the schema was created with a quoted lower-case name. | No |
Table | Target table to write data into. Must exist in the selected schema unless Create table is enabled. SAP HANA stores unquoted identifiers in upper case, so enter MYTABLE unless the table was created with a quoted lower-case name. | Yes |
Mapping | Key is a column in your table. Value is a payload field name (deviceId), the matching default-schema column name (device_id), or static text prefixed with @ (@plant-a). Leave empty to use the default table layout. | No |
Create table | Create the table with the default layout if it does not exist. The database user needs CREATE TABLE permission on the schema. | Yes |
Commit timeout | Transaction commit timeout (ms). | No |
Batch timeout | The maximum time (in milliseconds) to wait after the previous commit attempt before writing an incomplete batch to the database. | No |
Max transaction size | Maximum number of messages before a transaction is committed regardless of timeout. | No |
Bulk insert count | Buffer messages and perform bulk insert once the Bulk insert count value is reached. | No |
Write mode | How the connector acknowledges messages. sync: a message is acknowledged only after its batch is committed, so with persistent storage on, a failed write is kept and retried. async: a message is acknowledged once buffered, for higher throughput, and a batch that fails to write is dropped. Default: sync. | No |
Parallel transactions | The maximum number of batch inserts that run at the same time, each on its own database connection. Values above 1 increase throughput, but rows from different batches can be written out of publish order. Default: 1. | No |
Parallel Publish Count | The number of simultaneously publishing messages. | No |
Allow data modification via Execute Command | When disabled, Execute Command accepts only SELECT and WITH; INSERT, UPDATE, DELETE, MERGE, TRUNCATE, DDL, GRANT, and CALL are rejected before reaching the database. Enable this only if you intend to modify data through Execute Command, and note that doing so is your responsibility. The statement runs as supplied, with no validation beyond its leading keyword, and Execute Command can't report how many rows changed. A committed UPDATE returns OK with 0 rows, exactly like a SELECT that matched nothing. The privileges of the database user are the only limit on what a statement can do. | No |
Throttling limit | Set a limit on the number of outbound messages per second. If sending data to a server that has restrictions on the rate of incoming messages, this ensures that no messages are lost. | No |
Persistent storage configurations
Field | Details | Required |
|---|---|---|
Persistent storage | If enabled, messages in the outbound queue are stored on disk. If there are interruptions in connection or power loss, messages are retained and sent when the connection is restored. | No |
Persistent storage size limit | Set the size limit for storing persisted data in GB. | No |
Queue Mode | Select the sequence of data transfer: FIFO or LIFO. FIFO (First In First Out) sends the earliest message first. LIFO (Last In First Out) sends the latest message first. | No |
Authentication methods
Value | Behavior |
|---|---|
password | Database user name and password. Requires Username and Password. |
x509 | SAP HANA X.509 client-certificate authentication. Requires Client Certificate, Client Private Key, and a TLS mode other than disable. The database user is derived server-side from the subject mapping of the certificate, so Username and Password aren't used. |
TLS modes
Value | Behavior |
|---|---|
disable | No TLS. Login and data are sent in cleartext. Works only against on-premise systems that allow unencrypted connections. SAP HANA Cloud refuses them. |
require | TLS is used, but the server certificate is not validated. Protects against passive eavesdropping only. |
verify-full | TLS is used and the server certificate chain and host name are validated. Default, and the correct setting for SAP HANA Cloud. Supply a CA Certificate when the server uses a private CA. |
Query with the Analytics IT Hub processor
Because this connector supports the Analytics IT Hub processor, an Analytics flow can use the processor to run ad hoc SQL against it. Trigger the processor with a message that names the connector instance and carries the SQL in body. Only connector and body are required; the other fields are optional and carry the defaults shown here, so the whole message can be copied and edited as needed:
{
"connector": "<sap-hana-connector-id>",
"body": "SELECT * FROM READINGS WHERE DEVICE_ID = 'press-01' LIMIT 100",
"parameters": [],
"headers": {},
"response_topic": "cc.results.sql",
"force_reset_cache": false,
"stream_name": "",
"message_id_prefix": ""
}The connector publishes the query result to the response_topic, one message per row. The IT Hub processor subscribes to that topic and forwards each message to its output, carrying the rows on to the rest of the Analytics flow. For a SELECT that returns a table, the resulting data can also be shown in the processor's tabular view.
The optional fields map to the processor's advanced parameters: parameters supplies positional query parameters, headers passes free-form headers, force_reset_cache drops any cached connector state before the call, stream_name verifies the response topic maps to a JetStream stream, and message_id_prefix seeds the per-chunk message IDs.