Tips for improving the performance of the
SAP HANA Output adapter.
- SAP recommends that you install
Event Stream Processor on a different server than your
SAP HANA server.
- In HANA, use column-based tables instead of row-based
tables.
- Partitioning a column based table can improve the
performance of multi threaded access to the table. Create partitions that
your SAP HANA server can handle.
- Using the threadCount
property to adjust the number of threads used to load data in parallel, can
affect the throughput of the adapter. SAP
recommends that you start the value at the number of partitions on the table
into which you are loading, and keep adjusting it, to approximately 5 times
that number, until performance no longer improves. Keep in mind that there
is a limit of 2 billion rows per partition in
SAP HANA. See your
SAP HANA documentation for more
details.
- If you are running on UNIX, use unixODBC 2.3.O, as
SAP HANA supports this version only.
- Test optimum performance by setting different values for the
bulkBatchSize,
bulkInsertArraySize,
idleBufferWriteDelayMSec, and
bufferAgeLimitMSec properties.
- Increasing bulkBatchSize increases throughput but also increases
latency. Increase this number as needed based on what you require for
latency. If you increase bulkBatchSize,
also increase bulkInsertArraySize
accordingly, as bulkInsertArraySize is
a divisor of bulkBatchSize.
- If a batch contains a bad row, the individual bad row is discarded, the bad
rows statistic is incremented, and an error message is logged to the Server
log file.