scala - 在对rdd上的spark scala中进行哈希连接
问题描述
我正在尝试在 spark scala 中执行分区+广播连接。我有一本要广播到所有节点的字典。字典的结构如下:
{ key: Option[List[Strings]] } // I created this dictionary using a groupByKey first and then called collectAsMap before broadcasting.
上面的字典是使用结构类似于下面提到的表的表创建的。
我有一个表是一对RDD,其结构如下:
Col A | Col B
我正在尝试按如下方式执行连接:
val join_output = table.flatMap{
case(key, value) => custom_dictionary.value.get(key).map(
otherValue => otherValue.foreach((value, _))
)
}
我的目标是获得一对 RDD 作为输出,其内容是(来自表,来自存储在字典中的列表)。
代码运行并编译成功,但是当我检查输出时,我只看到:“()”作为正在保存的输出。我哪里错了?我确实看过其他一些在某种程度上反映了这个问题的帖子,但没有一个选项有效。我请求就这个问题提供一些指导。另外,如果有帖子准确指出这一点,请告诉我。
解决方案
推荐阅读
- c# - 在c#中将基类动态转换为子类
- telegram-bot - 使用 SOCKS5 的 Telegram Bot api
- linux - 未从 arm 设备加载 goodix 驱动程序
- javascript - 从 redux store 获取 API 响应并发送响应
- json - 正确转义 JSON 以与 bash 一起使用
- data-mining - LSH:解决 EXACT Near Neighbor Search?
- r - 如何在 excel/sql/R 中将具有两种不同日期格式的日期列标准化为具有单一日期格式的列
- python - ^ 不表示 python 中的行首
- reactjs - react-native-gifted-chat 多次显示相同的消息
- c++ - 如何将 const char* str 解压到模板中
?