Flink Keyed State的优化与实践

六虎 六虎 ·

Flink SQL在双流join场景中,当State的存储达到TB级别后,会发现State的scan/next/readNull请求RT会变得较高。通过使用RocksDB的BlobDB方案,可以大大降低IO和CPU毛刺。经过适配并在大State中开启KV分离后,观察RocksDB日志发现SST的文件大小急剧下降,State Key也全聚集在了L0和L1这两层中。最后的效果是ReadNull耗时全降到了百微妙左右,scan和next的RT 99线也降到了1毫秒左右。

原文中文,约4600字,阅读约需11分钟。
阅读原文