简介
Cloudera Data Science Workbench为从单个交互式会话中启动多个称为workers的引擎实例提供了基本支持。任何R或Python会话均可用于生成workers。这些工作程序可以配置为在启动时运行脚本(例如Python文件)或命令中。
可以使用 launch_workers函数。以及另外两个函数是list_workers 和 list_workers。来自所有工作程序的输出将显示在启动它们的会话的控制台中。会话退出时,这些workers将终止。
Python示例
Python分布式运算基本语法
import cdsw
workers=cdsw.launch_workers(n=2,cpu=0.2,memory=0.5,code="print('Hello from a CDSW Woker')")
- n(int) -要启动的引擎数。
- cpu(float) -要分配给引擎的CPU内核数。
- 内存(float) -分配给引擎的内存的千兆字节数。
- nvidia_gpu(int,optional) -要分配给引擎的GPU数量。
- kernel(str,optional) -内核。可以是r、 python2、 python3或scala。
- script(str,optional) -工作者启动后应立即执行的Python源文件的名称。
- code(str,optional) -引擎在启动后应立即执行的Python代码。如果指定了脚本,则代码将被忽略。
- env(dict,optional) -在引擎中设置的环境变量。
list_workers
cdsw.list_workers()
stop_worker
cdsw.stop_workers()
编辑Python文件master.py;在Master引擎中,该脚本将启动三个工作程序并接受来自Workers的传入连接。
# master.py
import cdsw, socket
# Launch two CDSW workers. These are engines that will run in
# the same project, execute a given code or script, and exit.
workers = cdsw.launch_workers(n=3, cpu=0.2, memory=0.5, script="worker.py")
# Listen on TCP port 6000
s