Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache spark Google Dataproc上的Spark用户界面:数字解释_Apache Spark_Pyspark_Google Cloud Dataproc - Fatal编程技术网

Apache spark Google Dataproc上的Spark用户界面:数字解释

Apache spark Google Dataproc上的Spark用户界面:数字解释,apache-spark,pyspark,google-cloud-dataproc,Apache Spark,Pyspark,Google Cloud Dataproc,我正在Google Dataproc集群上运行spark作业(3个节点n1-highmem-4,每个节点有4个内核和26GB,主节点的类型相同)。 关于Hadoop和spark UI上显示的信息,我有几个问题: 当我检查Hadoop UI时,我得到: 我的问题是:我的总RAM应该是84(3x26),为什么这里只显示60Gb?24GB是否用于其他用途 (二) 这是显示当前启动的执行器的屏幕。 我的问题是: 为什么只使用10芯?难道我们不能用剩下的2个内核启动第6个执行器吗?因为我们有12个,每

我正在Google Dataproc集群上运行spark作业(3个节点n1-highmem-4,每个节点有4个内核和26GB,主节点的类型相同)。 关于Hadoop和spark UI上显示的信息,我有几个问题:

当我检查Hadoop UI时,我得到:

我的问题是:我的总RAM应该是84(3x26),为什么这里只显示60Gb?24GB是否用于其他用途

(二)

这是显示当前启动的执行器的屏幕。 我的问题是:

  • 为什么只使用10芯?难道我们不能用剩下的2个内核启动第6个执行器吗?因为我们有12个,每个执行器使用2个

  • 为什么每个执行器有2个内核?如果我们运行12个执行器,每个执行器有1个内核,会有什么变化吗

  • 什么是“输入”列?每个执行者收到的用于分析的总容量

(三)

这是“存储”面板的屏幕截图。我看到了我正在处理的数据帧。 我不懂“内存大小”一栏。它是用来缓存数据帧的总RAM吗?与我加载到数据帧(500GB+)的行文件的大小相比,它似乎非常低。这是错误的解释吗


感谢所有读到这篇文章的人

如果你能看一下,它基本上回答了你的问题1和2

总之,总内存较少,因为保留了一些内存以运行操作系统和系统守护程序或Hadoop守护程序本身,例如Namenode、NodeManager

与核心类似,在您的情况下,它将是3个节点,每个节点运行2个执行器,每个执行器使用2个核心,应用程序主节点除外。对于应用程序主节点所在的节点,将只有一个执行器,剩下的核心将交给主节点。这就是为什么您只看到5个执行器和10个内核

对于第三个问题,这个数字应该是该RDD中分区使用的内存,大约等于分配给每个执行器的内存(在您的情况下是~13G)

请注意,Spark不会一次加载500G数据,而是在分区中加载数据,同时加载的分区数取决于可用的内核数