Spark 中 Lookup 和 Join 的区别
Posted
技术标签:
【中文标题】Spark 中 Lookup 和 Join 的区别【英文标题】:Difference between a Lookup and a Join in Spark 【发布时间】:2017-10-25 19:37:04 【问题描述】:我想知道是否有人知道 Spark 中关于 Joins 与 Lookups 的任何讨论?我看过这个页面:Lookup in spark dataframes,基本上每个人都说连接远优于查找,我在 google-fu 尝试找到任何支持它甚至讨论这两个主题的东西都没有成功。
【问题讨论】:
【参考方案1】:Spark DataFrame 中的查找之类的东西根本不存在,因此它不如任何其他解决方案,连接(散列或广播)或使用本地数据结构是唯一的选择。
【讨论】:
【参考方案2】:查找和连接是关系数据系统中的两个不同概念。因此,在一般情况下说一个优于另一个是没有意义的,因为它们具有不同的功能。查找只是查找数据,有时使用键或哈希值来优化查询速度。连接是使用两个数据集中的公共元素来创建一个新的数据集。
例如(完全假设和抽象)
查找查询1
= '你好'
加入查询1,查询2
=
'你好世界'
如果 查询 2 等于 世界
【讨论】:
以上是关于Spark 中 Lookup 和 Join 的区别的主要内容,如果未能解决你的问题,请参考以下文章
求教DATASTAGE中MERGE,JOIN和LOOKUP三者之间的区别
Flink Interval Join,Temporal Join,Lookup Join区别
Flink Interval Join,Temporal Join,Lookup Join区别