Rate This Document
Findability
Accuracy
Completeness
Readability

References

Table 1 describes the OmniStateStore configuration items.

Table 1 OmniStateStore configuration items

Module

Configuration Item

Description

Default Value

Value Range

Remarks

Log

state.backend.ockdb.jni.logfile

Log path.

/usr/local/flink/log/kv.log

Files in the path for which you have the read and write permissions

Check that the path exists and the Flink run user has the read and write permissions on the path.

state.backend.ockdb.jni.loglevel

Log printing level.

2

The value is an integer in the range of 1 to 4.

Log levels:

  • 1: DEBUG
  • 2: INFO
  • 3: WARN
  • 4: ERROR

state.backend.ockdb.jni.lognum

Maximum number of log files.

20

The value is greater than or equal to 10 and less than or equal to 50.

-

state.backend.ockdb.jni.logsize

Size of a single log file.

20MB

The value is greater than or equal to 10 MB and less than or equal to 50 MB.

-

StateStore

state.backend

Open-source Flink parameter, which is used to configure the state backend.

-

com.huawei.ock.bss.OckDBStateBackendFactory

Ensure that the case-sensitive characters are correctly spelled.

state.backend.ockdb.localdir

Local OmniStateStore data path.

-

An existing path for which the Flink run user has the read and write permissions.

  • Check that the path exists and the Flink run user has the read and write permissions on the path.
  • Check that the path and the taskmanager.state.local.root-dirs path are in the same file system.

taskmanager.state.local.root-dirs

Open-source Flink parameter, which is used to set the local checkpoint temporary directory.

-

An existing path for which the Flink run user has the read and write permissions.

  • You are recommended to set this configuration path. If you choose not to set this configuration path, the path specified by io.tmp.dirs is used by default.
  • Check that the path and the state.backend.ockdb.localdir path are in the same file system.

state.backend.ockdb.savepoint.sort.local.dir

Path for storing temporary sorting files generated during savepoint creation. This parameter is required for using savepoints.

/usr/local/flink/savepoint/tmp

An existing path for which the Flink run user has the read and write permissions.

Check that the path exists and the Flink run user has the read and write permissions on the path.

state.backend.ockdb.jni.dbsize

Threshold of the memory that can be used by a single OmniStateStore database instance.

-

By default, the system calculates the upper memory limit based on the hosting memory configured for the Flink framework.

Generally, you do not need to set it separately.

state.backend.ockdb.jni.freshtable.size

Threshold of the memory that can be used by the variable data cache layer.

-

By default, the system calculates the upper memory limit based on the hosting memory configured for the Flink framework.

Generally, you do not need to set it separately.

state.backend.ockdb.jni.slice.watermark.ratio

The cache layer triggers data eviction by setting the high and low watermark ratio thresholds. Cold data is migrated to the LSM file storage layer based on the preset policy to dynamically balance storage resources.

0.8

The value should be greater than 0 and less than 1

Generally, you do not need to set it separately.

state.backend.ockdb.jni.lsmstore.compaction.switch

Indicates whether to sort and merge data in the LSM file storage layer. The leveled compaction mechanism of the LSM file storage layer controls the sorting and compaction of data files to optimize storage performance and space utilization.

0

  • 0: disable
  • 1: enable

It is recommended that you enable this option.

state.backend.ockdb.lazy.download.switch

Indicates whether to enable lazy loading during recovery from a checkpoint.

false

  • false: disable
  • true: enable

When the checkpoint size is large, enable this option to shorten the time required for restoring a task to the running state.

state.backend.ockdb.bloom.filter.switch

Indicates whether to enable the Bloom filter for state keys.

true

  • false: disable
  • true: enable

It is recommended to enable this option when there are many invalid key access requests. Note that enabling it will increase memory usage by several dozen megabytes.