前言
身为兼职量化交易开发者, 如果以后要处理TB级别的交易数据, 单机运行就太弱鸡了, 这时候就要上Spark集群了.
在 Spark 上有很多集群的模式, 其中 Spark 自带就是 Standalone 模式.
咩系集群? 即系配置一堆电脑计算同一件任务.
反正公司大把电脑(肉机)…
Standalone模式将各台电脑分成两种角色 – Master(大佬) 和 Worker(马仔)
也就是 Master 可以给各个 Worker 分配任务, 而 Master 自己又可以揸刀劈友(运行计算), 这就形成了一股强大的算力.
Step1: 设置 Master
1 | spark-class org.apache.spark.deploy.master.Master |
结果会出现 spark://ip:port
为 Master 的地址, 设置 Worker 时需用到.
Step2: 设置 Worker
在另外一台电脑上设置其为 Worker
, 用 Master:
1 | spark-class org.apache.spark.deploy.worker.Worker spark://ip:port |
Step3: 提交
在 master 机中提交写好嘅程序:
1 | spark-submit --master spark://ip:port examples/src/main/python/pi.py 1000 |
在 Master 机用浏览器打开 http://localhost:8080 可以看到集群计算运行的情况
踩坑
spark-submit 提交 python 时没有反应.
解决方法: 在 windows 里面要在 python 安装路径中创建python3副本(复制 python.exe 为 python3.exe)
在 windows 中 spark-submit 提交 jar 包命令时不要带 –jars