小编use*_*405的帖子

不能在同一个查询中反复使用group(partition by)?

我有一个myTable有3列的表.col_1是一个INTEGER和另外两列是DOUBLE.例如,col_1={1, 2}, col_2={0.1, 0.2, 0.3}.in中的每个元素col_1都包含所有值,col_2并且col_2每个元素都有重复的值col_1.第3列可以具有任何值,如下所示:

    col_1 | col_2 | Value
    ----------------------
    1     |  0.1  |  1.0
    1     |  0.2  |  2.0
    1     |  0.2  |  3.0
    1     |  0.3  |  4.0
    1     |  0.3  |  5.0
    2     |  0.1  |  6.0
    2     |  0.1  |  7.0
    2     |  0.1  |  8.0
    2     |  0.2  |  9.0
    2     |  0.3  |  10.0
Run Code Online (Sandbox Code Playgroud)

我想要的是 …

sql db2 group-by partition-by

15
推荐指数
2
解决办法
3万
查看次数

Spark:每个执行程序的核心对应用程序运行时没有影响

我正在测试每个执行器(--executor-cores)的不同核心数对Spark上SVD的运行时间的影响.在--executor-cores固定的情况下,主数据RDD的分区数量是变化的.但是,--executor-cores对于给定数量的RDD分区,对于不同的SVD计算时间似乎没有显着变化.这有点令人困惑.

我的环境是:

  • 具有3个节点的Spark Cluster(每个节点32个内核和32GB内存).每个节点运行1个Worker.
  • spark.max.cores = 96
  • 集群管理器= Standalone
  • 部署模式= client

我已经绘制了结果,--executor-cores = [4, 16]并且可以看出,对于给定的分区大小,分区大小增加时的计算时间之间没有太大差异.所以我的问题是:

  • 设置每个执行程序的核心数有什么影响?
  • 每个执行程序的内核确实对运行时有重大影响,但仅适用于较小的分区大小而不适用于大分区,为什么?
  • 它是否会以任何方式影响并行性(我不确定是这样)?

在此输入图像描述

parallel-processing svd apache-spark apache-spark-mllib

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