问题标签 [flink-streaming]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1389 浏览

apache-flink - 使用 Apache Flink 进行数据流式传输

我正在构建一个具有以下要求的应用程序,我刚刚开始使用 flink。

  • 使用 50 个分区将数据摄取到 Kafka(传入速率 - 100,000 msgs/sec)
  • 从 Kafka 读取数据并实时处理每个数据(进行一些计算,与旧数据进行比较等)
  • 将输出存储在 Cassandra 上

我一直在寻找一个实时流媒体平台,发现 Flink 非常适合实时和批处理。

  • 你认为 flink 最适合我的用例还是应该使用 Storm、Spark 流媒体或任何其他流媒体平台?
  • 我是否需要在谷歌数据流中编写数据管道以在 flink 上执行我的一系列步骤,或者是否有任何其他方式来执行实时流的一系列步骤?
  • 假设我的每次计算需要 20 毫秒,我怎样才能更好地使用 flink 设计它并获得更好的吞吐量。
  • 我可以使用 Redis 或 Cassandra 在 flink 中为每次计算获取一些数据吗?
  • 我可以在 flink 中使用 JVM 内存缓存吗?
  • 我也可以在某个时间窗口(例如 5 秒)内基于键聚合数据。例如,假设有 100 条消息进来,并且 10 条消息具有相同的密钥,我可以将具有相同密钥的所有消息组合在一起并处理它。
  • 有没有关于使用 flink 的最佳实践的教程?

感谢并感谢您的所有帮助。

0 投票
1 回答
1414 浏览

scala - Flink java.lang.ClassNotFoundException: play.api.libs.json.Reads

我正在编写一个从文本文件中读取并将每一行解析为 Json 的代码,但是 Flink 中的作业(1.0.3 - 具有 2 个任务管理器的集群)中的作业因异常而失败:java.lang.ClassNotFoundException: play.api.libs.json.Reads

我的代码:

有什么想法吗?先感谢您

0 投票
1 回答
201 浏览

apache-flink - 为什么 flink 会停止我的流应用程序?

我的代码使用 readTextFile 来读取日志文件,当我在 Flink ( /opt/flink-1.0.3/bin/flink run -m yarn-cluster -yn 2 /home/flink/flink-json-0.1.jar) 中运行 jar 时,它会成功处理里面的行并停止我的应用程序,而不是等待新行。我需要一些参数来做吗?

先感谢您

0 投票
2 回答
805 浏览

rx-java - Apache Flink 和 RxJava 的使用

我目前正在使用 Apache flink 并在其中使用 RxJava,我的问题是:同时使用它们是否合适?因为我的 flink 操作始终是映射函数,并且在其中我大量使用 Rx,例如从 flink 中获取元组并对其进行异步操作(转到数据库,写入队列等),但我没有结束当 Rxjava 以处理结束时,使用 flink 向我公开的大多数方法和我的程序步骤返回 json。

你能告诉我这是否是 flink 的正确用法,或者是否有更好的方法来做我需要做的事情。(比如使用它,但在 flink 步骤或类似的东西之间传递 observables)。

谢谢。

0 投票
0 回答
551 浏览

hadoop - kerberos 票证有效期到期后,独立集群上的 Flink 作业失败

我的 Flink 流媒体作业写入安全 hdfs。作业在 kinit 之后顺利运行,直到 kerberos 票证有效期到期。我无法增加现在 1d 的寿命。请告诉我应该如何处理这个错误。

错误日志:

0 投票
1 回答
101 浏览

hadoop - 在 Hadoop 中使用流式处理

我正在尝试研究这个 Flink CEP示例。我确实看到在这个例子中,他们创建了一个应用程序(这是一种流应用程序),它正在生成和使用数据并对数据应用模式匹配。他们没有在两者之间放置流媒体层(如 Kafka)。到目前为止,单个应用程序足以满足此目的,这使得它非常优化。现在,我知道如果我使用 Kafka,那么我将需要 2 个应用程序;一个用于将数据摄取到 Kafka 主题中,另一个用于使用来自 Kafka 主题的数据..我有几个问题没有得到回答::

  1. 为什么他们在这个例子中没有使用任何流媒体层(比如 Kafka)?

  2. 何时何地需要流式传输?

  3. 参考 Flink CEP 示例,我想知道流层(如 Kafka/Kinesis)将在哪里以及如何发挥作用?

  4. 如果像 Kafka/Kinesis 这样的流媒体层介于两者之间,会有什么优点/缺点?

0 投票
2 回答
1537 浏览

apache-flink - apache flink窗口顺序

使用 Apache Flink 我想创建一个按存储在 Kafka 事件中的时间戳排序的流式窗口。根据下面的文章,这没有实现。

https://cwiki.apache.org/confluence/display/FLINK/Time+and+Order+in+Streams

然而,这篇文章的日期是 2015 年 7 月,现在已经快一年了。此功能是否已实现,有人可以向我指出任何相关文档和/或示例。

0 投票
1 回答
389 浏览

java - 如何根据状态变化事件以分布式方式统计有多少个“客户端”处于一个带有 flink 的状态?我需要有状态的对象

我正在使用 kafka -> flink -> 弹性搜索在 java 中处理 poc 项目。

在 kafka 上,将产生不可预测的事件数量,从 0 到每秒数千个事件,例如特定主题。

Flink 将消耗这些事件,并且应该每秒沉入弹性搜索每个状态下的事件数量,例如:

我有 10 个状态:[Created, ... , Deleted]平均生命周期为 15 分钟。状态可以每秒更改两次。理论上可以添加新的状态。

为了每秒接收流,我正在考虑使用 flink 的时间窗口https://flink.apache.org/news/2015/12/04/Introducing-windows.html

问题是我需要有状态的对象,其中包含关于guid->previous-statestateX->count的信息,以便能够在新事件发生时增加/减少计数。

我找到了一份关于有状态蒸汽处理的文档草案https://cwiki.apache.org/confluence/display/FLINK/Stateful+Stream+Processing

我是 flink 和流处理的新手,我还没有深入研究 flink 有状态流处理。对于第一阶段,我正在考虑为此使用静态对象,但是当启动多个 flink 实例时,这种方法将不起作用。

我要问你:

  1. 您如何看待这种方法?
  2. flink 适合这种流处理吗?
  3. 解决这个问题的方法是什么?

我也很欣赏窗口状态流解决方案(或其他解决方案)的一些代码片段。

谢谢,

0 投票
1 回答
1326 浏览

apache-flink - org.apache.flink.api.table.TableException:“预计字段引用表达式的别名”

我在 1.1-SNAPSHOT 版本上使用 Apache Flink 的 Table API 来评估流上的 SQL 查询。

以下是我的代码:

当我执行这个程序时,它会抛出以下异常:

我有几个问题:

  • 使用 Apache Flink 的 Table API 在流上编写 SQL 查询的方法是什么?
  • 如何在 Flink 中实现这个查询?
  • 这是 Flink 的 Table API 中的错误吗?
0 投票
2 回答
1917 浏览

scala - Flink with Kafka Consumer 不起作用

我想对 Spark 和 Flink 进行基准测试,为此我做了几个测试。然而,Flink 不适用于 Kafka,而 Spark 则可以完美运行。

代码非常简单:

我使用具有相同主题的 kafka 0.9.0.0(在消费者 [Flink] 和生产者 [Kafka 控制台] 中),但是当我将 jar 发送到集群时,没有任何反应:

集群 Flink

可能会发生什么?