摘要: 用户自定义函数 大多数操作都需要用户定义的函数。本节列出了如何指定这些函数的不同方法。我们还涵盖了累加器,它可以用来深入了解您的Flink应用。 Lambda函数 在前面的例子中已经看到,所有的操作都接受lambda函数来描述操作。 val data: DataSet[String] = // [. 阅读全文
posted @ 2021-01-03 19:15 田野与天 阅读(173) 评论(0) 推荐(0)
摘要: 管理状态的自定义序列化 本页面的目标是为需要使用自定义状态序列化的用户提供指导,涵盖了如何提供自定义状态序列化器,以及实现允许状态模式演化的序列化器的指南和最佳实践。 如果你只是简单地使用Flink自己的序列化器,这个页面是不相关的,可以忽略。 使用自定义状态序列器 当注册一个托管操作符或键控状态时 阅读全文
posted @ 2021-01-03 19:00 田野与天 阅读(199) 评论(0) 推荐(0)
摘要: 状态方案的演变 Apache Flink流媒体应用通常被设计为无限期或长时间运行。与所有长期运行的服务一样,应用程序需要更新以适应不断变化的需求。这对于应用程序所针对的数据模式也是一样的,它们会随着应用程序的发展而发展。 本页提供了关于如何演进状态类型的数据模式的概述。当前的限制在不同的类型和状态结 阅读全文
posted @ 2021-01-03 18:51 田野与天 阅读(251) 评论(0) 推荐(0)
摘要: 状态后台 Flink提供了不同的状态后端,指定状态的存储方式和位置。 状态可以位于Java的堆上或离堆。根据你的状态后端,Flink还可以为应用程序管理状态,这意味着Flink处理内存管理(必要时可能会溢出到磁盘),以允许应用程序持有非常大的状态。默认情况下,配置文件flink-conf.yaml决 阅读全文
posted @ 2021-01-03 18:16 田野与天 阅读(105) 评论(0) 推荐(0)
摘要: 可查询的状态 注意:可查询状态的客户端API目前处于不断发展的状态,对所提供接口的稳定性不做保证。在即将到来的Flink版本中,客户端的API很可能会有突破性的变化。 简而言之,该功能将Flink的托管键值(分区)状态(参见Working with State)暴露给外界,并允许用户从Flink外部 阅读全文
posted @ 2021-01-03 18:08 田野与天 阅读(166) 评论(0) 推荐(0)
摘要: 检查点 Flink中的每一个函数和操作符都可以是有状态的(详情请看使用状态)。有状态的函数在单个元素/事件的处理过程中存储数据,使得状态成为任何类型的更复杂操作的关键构建模块。 为了使状态具有容错性,Flink需要对状态进行检查点。检查点允许Flink恢复流中的状态和位置,使应用程序具有与无故障执行 阅读全文
posted @ 2021-01-03 17:40 田野与天 阅读(289) 评论(0) 推荐(0)
摘要: 广播状态模式 在本节中,您将了解如何在实践中使用广播状态。请参考状态流处理,了解状态流处理背后的概念。 提供的API 为了展示所提供的API,我们将在介绍它们的全部功能之前先举一个例子。作为我们的运行示例,我们将使用这样的情况:我们有一个不同颜色和形状的对象流,我们希望找到相同颜色的对象对,并遵循特 阅读全文
posted @ 2021-01-03 17:32 田野与天 阅读(170) 评论(0) 推荐(0)