小编des*_*itb的帖子

Spark流式JavaCustomReceiver

在EMR客户端模式以及群集模式下,Spark Streaming Java自定义接收器问题在yarn中出现。

以下是问题。

当我们在EMR群集(纱线)上运行Spark Streaming的JavaCustomReceiver时,它将在执行程序之一上随机绑定侦听器。因此,我们要做的就是将所有传入流量转移到它随机选择的那个ip。

当那个执行器失败时,情况就更糟了。重新启动后,它将尝试将监听器绑定到另一个随机选择的执行器上。再次,我们必须将传入流量转移到该新选择的节点。

我的问题是:1.我们能否将侦听器绑定到我们选择的特定执行器上?(用于绑定侦听器的固定ip)否... 2.是否可以通过编程方式知道它在哪个执行器上重新启动了侦听器?(因为它选择了随机节点来启动该接收器),最重要的是。3.我们不能在运行驱动程序的节点上绑定侦听器吗?(在客户端模式下运行时)

费耶

我们已经尝试过Receiver超类的preferredLocation,但是我们并没有那么幸运。

对此,我们将给予任何帮助。

hadoop-yarn apache-spark spark-streaming

5
推荐指数
1
解决办法
138
查看次数

我们如何使用 jdbc 执行连接查询,而不是使用 pyspark 获取多个表

客户 - c_id、c_name、c_address 产品 - p_id、p_name、价格 供应商 - s_id、s_name、s_address 订单 - o_id、c_id、p_id、数量、时间

SELECT o.o_id,
       c.c_id,
       c.c_name,
       p.p_id,
       p.p_name,
       p.price * o.quantity AS amount
FROM customer c
JOIN orders o ON o.c_id = c.c_id
JOIN product p ON p.p_id = o.p_id;
Run Code Online (Sandbox Code Playgroud)

我想在不获取 3 个表作为 pyspark 中的单个数据帧并对数据帧执行连接的情况下执行上述查询。

pyspark pyspark-sql

2
推荐指数
1
解决办法
915
查看次数