sparkR默认是以单机方式运行的。实现sparkR的集群启动,需要指定master地址,占用内存、CPU,及UI端口等,这对分析人员来说是比较麻烦的。

如何实现对其启动的封装,方便分析人员来使用:

vi bdcmagicR

#!/bin/bash function rand(){ min=$1 max=$(($2-$min+1)) num=$(($RANDOM+1000000000)) #增加一个10位的数再求余 echo $(($num%$max+$min)) } rnd=$(rand 400000 500000) echo $rnd /opt/modules/spark/bin/sparkR --master spark://10.130.2.20:7077 --executor-memory 8g --total-executor-cores 45 --conf spark.ui.port=$rnd

说明:

1)首先使用一个随机函数生成一个40000到50000之间随机数,用来做UI的端口。

2)然后指定指定master地址,占用内存、CPU。

3)最后把bdcmagicR 加入环境变量即可。

使用时,在终端输入 bdcmagicR

sparkR集群启动脚本的封装。-LMLPHP

即可以集群方式启动运行sparkR

04-23 04:05