如何启用Flink广播状态检查点的压缩



我正在使用Flink 1.14.4,并且有一个广播状态的检查点非常大的问题。Flink文档说:

Flink为所有检查点和保存点提供可选压缩(默认:关闭)

然而,这个设置似乎不用于广播状态。我看到keyGroupCompressionDecoratorHeapKeyedStateBackend使用,而不是被HeapBroadcastState使用。我还测试了w/打开压缩,它没有改变广播状态的大小。

我错过了什么,或者这是一个故意的限制,或者只是代码中的一个错误?

BroadcastState是操作符状态,不是KeyedState。参考文档引用KeyedState:

压缩作用于键控状态下的键组粒度,

也许文档可以更明确地说明这个行为。

不幸的是,据我所知,没有对OperatorState进行压缩。我不是100%确定,但我相信它从来没有被实施过,因为我们不想投资它,因为在大多数情况下KeyedState应该是首选。

最新更新