当前位置: 首页 > 知识库问答 >
问题:

在Spark SQL中连接分区以获得更好的性能

公西星文
2023-03-14

我是Spark SQL的新手。我有一个关于联接期间分区使用的问题

假设有一个名为test1的表,它保存在10分区(parquet)文件上。还假定spark.sql.shuffle.partitions=200

谢谢

共有1个答案

严安志
2023-03-14

Spark在大多数情况下将使用200个分区(SortMergeJoin,ShuffleHashJoin),除非Spark估计您的表足够小,可以容纳一个BroadcastHashJoin

 类似资料:
  • 我为回归问题建立了一个模型,即从9个输入变量中预测一个值。该模型的开发是基于Keras库的人工神经网络 在这个使用编译和拟合方法的模型中,我已经预测了输出值。然而,我得到了糟糕的评价分数。我使用RMSE和R2评估了模型 (已归一化的)预测值和标记值之间的RMSE为0.207,(原始形式)预测值和标记值之间的RMSE为215,R2为0.4 如何修改模型以获得更好的结果(低RMSE和高R2)?或者这种

  • 问题内容: 我有一个存储“主题”的数据库,每个主题都与一堆图像(=这些主题的屏幕快照)相关联。现在,我想显示最新的10个主题,对于每个主题,我只想从数据库中获取一张图像(ID最低的图像)。 当前,我的查询如下所示(我正在使用子查询): 它可以工作,但是查询速度很慢。当我使用EXPLAIN时,我可以看到有一个“依赖子查询”。是否可以将此依赖子查询转换为某种可以通过mysql更快处理的联接? PS:我

  • 我定义了两个HTTP GET API /test-mono和 /test-no-mono,除了 /test-mono使用Mono返回类型之外,两者都是完全相同的。HelloControlllerSpec使用100个线程池测试两个API 1000次, /test-no-mono需要45秒,但 /test-mono需要4分钟以上,为什么?看起来 /test-no-mono的默认并发配置比 /test-

  • 使用,我们可以获得分区的计数。但是我们怎么得到分区呢? 我还试图从文档和所有属性(使用)中获取一些信息。但是,我找不到任何提供分区的API,只能找到、、。 我读了这篇文章并推断Spark不知道分区键。我的疑问是,如果它不知道分区键,因此也不知道分区,它怎么能知道它们的计数呢?如果可以,如何确定分区?

  • 我正在尝试使用以下有问题的sql查询计算特定页面上的注释: 问题是它输出的是0而不是2。 表列如下: 页数: 评论: 因此,实际上,原始查询应该从中获取每个注释的真(如pages表中设置的,由连接 完成连接和/或获得计数的最终代码是什么样子的?谢谢.

  • 请帮我找出问题所在。我太过分了,请帮我解决这个问题