1.概述
官网:通用异步基本接收器
Flink sinks 有很多类似的行为。大多数根据用户定义的缓冲提示sink批处理记录,签署请求,将它们写入目的地,重试不成功或受限制的请求,并参与检查点。
这就是为什么我们决定在 Flink 1.15 中创建AsyncSinkBase(FLIP-171),这是一个提取了许多常用功能的抽象接收器。
这是异步接收器的基本实现,您应该在需要实现不提供事务功能的sink时使用它
。添加对新目标的支持现在只需要一个轻量级 shim,它使用支持异步请求的客户端来实现目标的特定接口。
这种通用抽象将减少维护从该抽象接收器扩展的单个接收器所需的工作,错误修复和对接收器核心的改进使扩展它的所有实现受益。设计的AsyncSinkBase侧重于可扩展性和对目的地的广泛支持。接收器的核心保持通用,并且没有任何特定于连接器的依赖项。
接收器基础旨在参与检查点以提供至少一次语义,并且可以直接与提供支持异步请求的客户端的目标一起使用。
在这篇文章中,我们将详细介绍 AsyncSinkBase,以便您可以开始使用它来构建您自己的 concrete sink。