更新时间:2024-05-28 GMT+08:00

Flink常见参数说明

表1 Flink常见参数说明

参数名称

参数描述

建议值

说明

-c

指定主类名。

根据实际填写

必填

-yjm

JobManager进程内存,默认值:2GB。

根据实际填写

选填

-ytm

TaskManager进程内存,默认值:4GB。

根据实际填写

选填

-ynm

Flink Yarn作业名称。

根据实际填写

必填

-ys

TaskManager中slot个数。

2

选填

execution.checkpointing.interval

checkpoint触发间隔(毫秒),通过-yD添加,单位毫秒。

60000

必填

execution.checkpointing.timeout

checkpoint超时时长,通过-yD添加,默认值:30min。

30min

必填

execution.checkpointing.tolerable-failed-checkpoints

checkpoint失败容忍次数总和,通过-yD添加。

1000

选填

state.checkpoints.num-retained

checkpoint保留个数,通过-yD添加。

5

选填

state.backend

状态后端使用rocksdb,通过-yD添加。

rocksdb

默认开启

state.backend.incremental

开启rocksdb增量状态后端,通过-yD添加。

TRUE

必填

state.backend.rocksdb.block.blocksize

写状态后端的数据块大小,通过-yD添加。

512KB

必填

state.backend.rocksdb.block.cache-size

整个状态后端的block cache大小,通过-yD添加。

1024MB

必填

taskmanager.memory.jvm-overhead.max

用于JVM其他开销的本地内存的最大值,例如栈空间、垃圾回收空间等,通过-yD添加。

10g

选填

taskmanager.memory.jvm-overhead.fraction

用于JVM其他开销的本地内存占tm内存的比例,例如栈空间、垃圾回收空间等,通过-yD添加。

0.2

选填

parallelism.default

作业并行度,例如join算子,通过-yD添加,默认值:1。

根据实际填写

选填

table.exec.state.ttl

Flink状态TTL(join ttl),通过-yD添加,默认值:0。

根据实际填写

必填

heartbeat.timeout

jm与tm之间心跳超时时间,通过-yD添加。

1800000

必填

akka.ask.timeout

akka通信超时时间,通过-yD添加。

240s

必填

taskmanager.memory.segment-size

内存管理和网络栈使用的内存缓冲块字节数大小,默认值: 32768 (32KB),通过-yD添加。

64kb

选填

taskmanager.network.memory.max-buffers-per-channel

每个channel最大能持有多少buffers,如果segment有很多空闲,可以适当调大该值,否则channel会因为拿不到segment而blocking,通过-yD添加。

100

选填

taskmanager.network.memory.buffers-per-channel

每个channel独享的buffer数,通过-yD添加。

10

选填

taskmanager.network.memory.floating-buffers-per-gate

每个channel浮动buffer数,通过-yD添加。

2000

选填

taskmanager.network.netty.server.numThreads

每个taskmanager中netty服务端线程数,通过-yD添加。

20

选填

taskmanager.network.netty.client.numThreads

每个taskmanager中netty客户端线程数,通过-yD添加。

20

选填

state.backend.rocksdb.files.open

最大打开文件数目,-1意味着没有限制,通过-yD添加。

-1

选填

state.backend.rocksdb.compaction.level.use-dynamic-size

参数允许Rocksdb对每层数据存储的数据量阈值进行动态调整,通过-yD添加。

TRUE

选填

state.backend.rocksdb.levels.num

Rocksdb允许存储compaction数据层数,通过-yD添加。

10

选填

state.backend.rocksdb.compaction.style

compaction算法,通过-yD添加。

FIFO

选填

state.backend.rocksdb.verify.checksum

关闭数据读取时数据check,通过-yD添加。

FALSE

选填

state.backend.rocksdb.thread.num

后台负责flush和compaction的最大并发线程数,通过-yD添加。

4

选填

state.backend.rocksdb.writebuffer.count

memtable的最大数量,通过-yD添加。

5

选填

state.backend.rocksdb.writebuffer.number-to-merge

在flush发生之前被合并的memtable最小数量,通过-yD添加。

3

选填

state.backend.rocksdb.background.compaction.max

负责compaction最大线程数,通过-yD添加。

10

选填

state.backend.rocksdb.flush.max

rocksdb flush线程数,通过-yD添加。

1

选填