Apache flink 使用ApacheFlink进行数据流
我正在构建一个具有以下要求的应用程序,我刚刚开始使用flinkApache flink 使用ApacheFlink进行数据流,apache-flink,flink-streaming,Apache Flink,Flink Streaming,我正在构建一个具有以下要求的应用程序,我刚刚开始使用flink 使用50个分区将数据摄取到Kafka中(传入速率-100000毫秒/秒) 从卡夫卡读取数据并实时处理每个数据(进行一些计算,与旧数据进行比较等) 将输出存储在Cassandra上 我正在寻找一个实时流媒体平台,发现Flink非常适合实时和批处理 你认为flink最适合我的用例,还是我应该使用Storm、Spark流媒体或任何其他流媒体平台 我是否需要在google data flow中编写一个数据管道来在flink上执行我的一
- 使用50个分区将数据摄取到Kafka中(传入速率-100000毫秒/秒)
- 从卡夫卡读取数据并实时处理每个数据(进行一些计算,与旧数据进行比较等)
- 将输出存储在Cassandra上
- 你认为flink最适合我的用例,还是我应该使用Storm、Spark流媒体或任何其他流媒体平台
- 我是否需要在google data flow中编写一个数据管道来在flink上执行我的一系列步骤,或者是否有其他方法来执行实时流媒体的一系列步骤
- 比如说,如果我的每次计算大约需要20毫秒,我如何用flink更好地设计它并获得更好的吞吐量
- 我可以使用Redis或Cassandra在flink中为每次计算获取一些数据吗
- 我能在flink中使用内存缓存中的JVM吗
- 我还可以在某个时间窗口(例如5秒)内基于键聚合数据。例如,假设有100条消息传入,10条消息具有相同的密钥,我可以将具有相同密钥的所有消息分组并进行处理吗
- 有关于使用flink的最佳实践的教程吗
感谢并感谢您的帮助。根据您的任务描述,Apache Flink看起来非常适合您的用例
通常,Flink提供并拥有一个参数来调整这些参数。您可以从Redis或Cassandra读取和写入数据。但是,您也可以。弗林克也有。您可以阅读、查看以了解更多信息,或者按照此学习API。感谢您的回复。我想再澄清一件事。我应该使用google dataflow sdk创建管道并在flink上运行它,还是flink本身有一些sdk可以在其中创建管道。我查看了数据流api,但无法确定它是否具有与数据流类似的所有功能。感谢您的帮助。ApacheBeam(以前的Google数据流API)runner是在Flink的DataStream API之上实现的。因此,DataStream API(至少)与Beam API一样具有表达能力。