Apache Flink 用于实时处理有限流
Apache Flink for a real-time processing of finite streams
我正在考虑如何将 Apache Flink 用于我目前正在开发的投票系统。我是 Flink 的新手,如有任何帮助,我们将不胜感激。
要求是:
- 具有一定权限的用户可以对任意问题进行投票。用户可以随时关闭投票。
- 可能有数十万人参与投票
- 计票应在投票开始后立即开始,中间结果应随时间更新,以便向参与者显示。
- 当系统在投票结束后完成计票时,应将最终结果通知参与者。
在我的理解中,Flink的流处理是对无限流的实时处理,批处理是对有限流的非实时处理
实时处理有限流,如何应用Flink?
Flink 的DataStream API 可以毫无问题地处理有限流的事件。 DataStream 程序将在流到达末尾时简单地终止。
如果您使用 SocketTextStreamFunction
从套接字读取文本数据,则可以模拟此行为。关闭套接字后,程序将终止。或者,您也可以从也是某种有限流的文件中读取数据。但是,请记住,不完整的 windows 不会被自动评估。因此,如果您使用它们,您必须确保不会丢失 windows 中的数据。
我正在考虑如何将 Apache Flink 用于我目前正在开发的投票系统。我是 Flink 的新手,如有任何帮助,我们将不胜感激。
要求是:
- 具有一定权限的用户可以对任意问题进行投票。用户可以随时关闭投票。
- 可能有数十万人参与投票
- 计票应在投票开始后立即开始,中间结果应随时间更新,以便向参与者显示。
- 当系统在投票结束后完成计票时,应将最终结果通知参与者。
在我的理解中,Flink的流处理是对无限流的实时处理,批处理是对有限流的非实时处理
实时处理有限流,如何应用Flink?
Flink 的DataStream API 可以毫无问题地处理有限流的事件。 DataStream 程序将在流到达末尾时简单地终止。
如果您使用 SocketTextStreamFunction
从套接字读取文本数据,则可以模拟此行为。关闭套接字后,程序将终止。或者,您也可以从也是某种有限流的文件中读取数据。但是,请记住,不完整的 windows 不会被自动评估。因此,如果您使用它们,您必须确保不会丢失 windows 中的数据。