scala和broadcast的问题

scala和broadcast的问题

rescale重分区有些不太理解,等于是局部循环的意思吗,这个局部的规则是怎么定的,这段代码不太理解。

@Override
public int selectChannel(SerializationDelegate<StreamRecord<T>> record) {
if (++nextChannelToSendTo >= numberOfChannels) {
nextChannelToSendTo = 0;
}
return nextChannelToSendTo;
}


还有broadcast广播,什么是会把输出数据输送到下游的每个Channel中?指的是重复消费吗?

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

rescale可以认为是局部分区,不是全量分区

看源码只看一个方法很多时候是不完整的,源码会涉及很多上下游的东西

刚才找了一个有rescale源码介绍的文章你可以参考一下
https://blog.csdn.net/lvwenyuan_1/article/details/103722226


broadcast可以实现的效果是,假设数据源里面有1~10这10条数据,调用了broadcast之后,后面假设接了一个map算子,map算子的并行度为4,那么map算子的每个并行度里面都可以收到1~10这10条数据,也就是map算子最终会处理40条数据。

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师