问题标签 [dstream]

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 投票
3 回答
1777 浏览

apache-spark - Spark Streaming 未将任务分配到集群上的节点

我有两个节点独立集群用于火花流处理。下面是我的示例代码,它演示了我正在执行的过程。

我的问题是 spark 没有将此状态 RDD 分配给多个节点或没有将任务分配给其他节点并导致响应的高延迟,我的输入负载约为每秒 100,000 个元组。

我已经尝试过以下事情,但没有任何效果

1)spark.locality.wait到 1 秒

2)减少分配给执行程序进程的内存以检查天气火花分发RDD或任务,但即使它超出了驱动器也在运行的第一个节点(m1)的内存限制。

3) 将 spark.streaming.concurrentJobs 从 1(默认)增加到 3

4) 我检查了流 ui 存储,状态 dstream RDD 大约有 20 个分区,都位于本地节点 m1 上。

如果我运行 SparkPi 100000,那么 spark 能够在几秒钟(30-40)后利用另一个节点,所以我确信我的集群配置很好。

编辑

我注意到的一件事是,即使对于我的 RDD,如果我设置存储级别 MEMORY_AND_DISK_SER_2 然后也在应用程序 ui 存储中显示Memory Serialized 1x Replicated

0 投票
2 回答
20192 浏览

scala - 对于 DStream 中的每个 RDD,如何将其转换为数组或其他一些典型的 Java 数据类型?

我想将 DStream 转换为数组、列表等,然后我可以将其转换为 json 并在端点上提供它。我正在使用 apache spark,注入 twitter 数据。如何在 Dstream 上执行此操作statuses?除了 之外,我似乎什么也做不了print()

0 投票
2 回答
5961 浏览

apache-spark - 从 dstream 驱动程序中的 RDD 收集结果

我在驱动程序中有这个函数,它将 rdds 的结果收集到一个数组中并将其发回。但是,即使 RDD(在 dstream 中)有数据,该函数也会返回一个空数组……我做错了什么?

0 投票
1 回答
299 浏览

apache-spark - DStream的笛卡尔

我使用 Spark 笛卡尔函数来生成列表 N 对值。

然后我映射这些值以生成每个用户之间的距离度量:

这按预期工作。

使用 Spark Streaming 库,我创建了一个 DStream,然后对其进行映射:

我可以在 customReceiverStream.foreachRDD 中使用笛卡尔函数,但根据文档http://spark.apache.org/docs/1.2.0/streaming-programming-guide.htm这不是它的预期用途:

foreachRDD(func) 应用函数的最通用的输出运算符,func, to each RDD generated from the stream. This function should push the data in each RDD to a external system, like saving the RDD to files, or writing it over the network to a database. Note that the function func is executed in the driver process running the streaming application, and will usually have RDD actions in it that will force the computation of the streaming RDDs.

如何计算 DStream 的笛卡尔?也许我误解了 DStreams 的使用?

0 投票
2 回答
1054 浏览

scala - 使用 Spark 流式传输的迭代算法

所以我知道 Spark 可以在单个 RDD 上执行迭代算法,例如逻辑回归。

上面的例子是迭代的,因为它维护了一个w在每次迭代后更新的全局状态,并且它的更新值在下一次迭代中使用。这个功能在 Spark 流中是否可行?考虑同样的例子,除了现在points是一个 DStream。在这种情况下,您可以创建一个新的 DStream 来计算梯度

但是您将如何处理全局状态w。似乎w也必须是一个 DStream (updateStateByKey可能使用),但是它的最新值需要以某种方式传递给points我认为不可能的 map 函数。我不认为 DStreams 可以以这种方式进行通信。我是正确的,还是可以在 Spark Streaming 中进行这样的迭代计算?

0 投票
1 回答
326 浏览

spark-streaming - 未找到 DStream 类中的 mapValues 函数

我想对 Spark Streaming 中提供的 StreamingKMeans 算法做一些修改,所以我创建了一个包含必要文件的项目,但不幸的是我在 DStream 类中找不到 mapValues 函数!

有人能告诉我在哪里可以找到 mapValues 函数吗?!谢谢。

0 投票
2 回答
923 浏览

spark-streaming - Spark Streaming:如何总结几个 DStreams 的所有结果?

我现在正在使用 Spark Streaming + Kafka 来构建我的消息处理系统。但是我有一点技术问题,我将在下面描述它:

例如,我想每10 分钟做一次 wordcount ,所以,在我最早的代码中,我将 Batch Interval 设置为 10 分钟。代码如下:

但我认为这不是一个很好的解决方案,因为 10 分钟是一个很长的时间和大量的数据,我的内存无法承受这么多数据。所以,我想将批处理间隔减少到 1 分钟,例如:

那么问题来了:十个‘1分钟’怎么能总结出10分钟的结果呢?我认为这个词只能在驱动程序而不是工人程序中完成,我该怎么办?

我是 Spark Streaming 的新学习者。任何人都可以帮我一把吗?

0 投票
0 回答
333 浏览

java - 具有不同时间值的并行 reduceByKeyAndWindow()

我正在研究 Spark Streaming 的一个用例,该用例需要在不同的窗口长度上计算 4 个不同的输出。

特别是,我需要我的程序基于 4 个不同的时间窗口(窗口彼此独立)每秒输出计算结果。

到目前为止,我通过调用在 60 秒的单个窗口上实现了它

在一个JavaPairDStream<K, V>对象上(批次应该是 1 秒长)。之后,对这些元组进行计算。

现在,在同一秒内,我需要输出 300 秒和 600 秒长的窗口的结果,彼此独立。

我的问题是:这在 Spark Streaming 中是否可行?我对它比较陌生,我不能说。如果是的话,有人可以建议我怎么做吗?

0 投票
0 回答
329 浏览

window - reduceByKeyAndWindow 生成的 DStream 中有多少个 RDD

我目前正在从事一项小型 Spark 工作,以从 DStream 计算股票相关矩阵。

从 DStream[(time, quote)] 开始,我需要在计算相关性(考虑 rdds 的所有引号)之前在多个 rdds 之间按时间(Long)聚合引号(double)

在我看来,如果生成的 dstream(来自 reduceByKeyAndWindow)仅包含 1 个带有所有聚合引号的 rdd,这可能是一个解决方案。

但我不确定。reduceByKeyAndWindow 后数据如何分布?有没有办法在 dstream 中合并 rdds?

0 投票
0 回答
790 浏览

unit-testing - 模拟输入 dstream apache spark

我试图在编写火花流单元测试时模拟输入 dstream。我可以模拟 RDD,但是当我尝试将它们转换为 dstream 时,dstream 对象变为空。我使用了以下代码-

任何有关相同的帮助将不胜感激。