我只是想让自己更多地了解火花。所以想问这个问题。在
我已经在本地机器上安装了Spark。16GB的马赫数。在
我连接了一个用Pyspark运行的Jupyter笔记本。在
所以现在当我在笔记本上做任何编码时,比如读取数据并将数据转换成Spark DataFrame,我想检查一下:
(一)。所有数据集都分布在本地计算机上。比如它使用不同的CPU内核来分发数据集等等?。有没有办法找到答案?在
(二)。只使用没有spark的Jupyter笔记本运行代码和计算与使用Pyspark运行Jupyter笔记本不同?就像第一个只使用一个核心的机器和运行使用一个线程,而Jupyter笔记本电脑与Pyspark运行代码和计算在不同的CPU核多线程/处理?这种理解正确吗?。在
有没有办法检查这些。在
谢谢
Jupyter主要有三个部分:Jupyter笔记本、Jupyter客户端和内核。http://jupyter.readthedocs.io/en/latest/architecture/how_jupyter_ipython_work.html
以下是Jupyter主页上关于内核的简短说明。
Jupyter的工作是在内核(如python内核、spark Kernel..)和web界面(您的笔记本)之间进行通信。所以在引擎盖下,spark为您运行驱动程序和执行器,Jupyter帮助您与spark驱动程序进行通信。在
Spark将生成n个数量的执行器(负责执行任务的进程),如使用
num-executors
指定的,执行器由Spark驱动程序(负责在Spark引擎上运行作业的程序/进程)管理。所以在运行spark程序时指定了执行器的数量,您将找到这个kernel conf目录。在是的,正如我所解释的,Jupyter只是一个让你运行代码的接口。在幕后,Jupyter连接到内核,不管是普通的Python还是apachespark。在
Spark有自己良好的UI来监视作业,默认情况下它运行在Spark主服务器的4040端口上。在您的情况下,它将在http://localhost:4040上提供
相关问题 更多 >
编程相关推荐