- 主题:自定义算法的运行环境为啥是zip包的形式放到spark/hadoop上?
自己写了个算法,算法所需的运行环境用conda打了个zip包,扔到了hadoop上。在spark上运行用如下命令。
这里为什么是个zip包呢? 这样每次运行还得解压,不是浪费时间吗?
不能提前把conda环境在hadoop上解压,每次直接运行吗?
命令:
spark-submit --master yarn \
--deploy-mode cluster \
--num-executors=8 \
--executor-memory=10g \
--executor-cores=2 \
--driver-memory=4g \
--conf spark.pyspark.python=./scoenv/scoenv/bin/python3.6 \
--archives hdfs:/user/xx/xx//scoenv.zip#scoenv \
--py-files demo.zip spark_driver.py xxx
--
FROM 223.104.40.*
【 在 qianfeng018 的大作中提到: 】
: 自己写了个算法,算法所需的运行环境用conda打了个zip包,扔到了hadoop上。在
: spark上运行用如下命令。
: 这里为什么是个zip包呢? 这样每次运行还得解压,不是浪费时间吗?
: 不能提前把conda环境在hadoop上解压,每次直接运行吗?
你这样就是把集群管理系统和被运行的应用程序的边界打破了
: 命令:
: spark-submit --master yarn \
: --deploy-mode cluster \
: --num-executors=8 \
: --executor-memory=10g \
: --executor-cores=2 \
: --driver-memory=4g \
: --conf spark.pyspark.python=./scoenv/scoenv/bin/python3.6 \
: --archives hdfs:/user/xx/xx//scoenv.zip#scoenv \
: --py-files demo.zip spark_driver.py xxx
--
FROM 139.227.19.*
如果一个算法运行环境是固定的,之后会有几百个算法、模型在此环境运行,
如果每一次spark submit都要解压,浪费的时间是很客观的吧?
我提前把环境解压好,每次只是在该环境运行算法,此场景下会节省很多时间。我觉得是很值得妥协一下的
【 在 JulyClyde 的大作中提到: 】
: 你这样就是把集群管理系统和被运行的应用程序的边界打破了
--
FROM 223.104.40.*
有这种思想说明你缺乏运维思维
试想几种场景:
1 你的运行包将来要升级
2 你的运行包放上去之后被别人改动了
3 spark本身将来要升级
4 spark将来还要运行别的东西,你还得考虑各个运行包的放置路径
【 在 qianfeng018 的大作中提到: 】
: 如果一个算法运行环境是固定的,之后会有几百个算法、模型在此环境运行,
: 如果每一次spark submit都要解压,浪费的时间是很客观的吧?
: 我提前把环境解压好,每次只是在该环境运行算法,此场景下会节省很多时间。我觉得是很值得妥协一下的
--
修改:JulyClyde FROM 139.227.19.*
FROM 139.227.19.*
是的, 所以我才来问问,都有哪些原因非要这么做。而这些原因,是不是我能接受的
像你说的这些因素,我觉得可以接受。因为我们的运行环境确定后,基本不会变。使用者只会在固定的运行环境下运行成百上千使用固定算法的模型。
【 在 JulyClyde 的大作中提到: 】
: 有这种思想说明你缺乏运维思维
: 试想几种场景:
: 1 你的运行包将来要升级
: ...................
--
FROM 223.104.40.*
所以你的选择就是情绪大于规则呗
那还问啥,直接上啊
【 在 qianfeng018 的大作中提到: 】
: 是的, 所以我才来问问,都有哪些原因非要这么做。而这些原因,是不是我能接受的
: 像你说的这些因素,我觉得可以接受。因为我们的运行环境确定后,基本不会变。使用者只会在固定的运行环境下运行成百上千使用固定算法的模型。
--
FROM 139.227.19.*
不是情绪大于规则。 而是像我说的这种场景:各类环境比较稳定,不会变化
这种情况是否是解压后的环境直接用,效率更高?而且不会引起其他问题
【 在 JulyClyde 的大作中提到: 】
: 所以你的选择就是情绪大于规则呗
: 那还问啥,直接上啊
--
FROM 223.104.40.*
你这是先有结论后找证据,并且无视反驳啊
明明就是情绪大于规则
所以我觉得你不必问
就坚持自己的意见好了
用着顺手是最重要的;而且这点违反也出不了啥大事
【 在 qianfeng018 的大作中提到: 】
: 不是情绪大于规则。 而是像我说的这种场景:各类环境比较稳定,不会变化
: 这种情况是否是解压后的环境直接用,效率更高?而且不会引起其他问题
--
FROM 139.227.19.*
成年人了
自己选择, 自己承担结果就完了啊
别人也给不了你什么保证
引起了问题再搞就是了
【 在 qianfeng018 的大作中提到: 】
: 不是情绪大于规则。 而是像我说的这种场景:各类环境比较稳定,不会变化
: 这种情况是否是解压后的环境直接用,效率更高?而且不会引起其他问题
--
FROM 123.123.205.*
我不是很了解spark,但就Python来说,没有这种担忧,Python原生支持导入一个zip包,python包导入是不会重复导入的,除非你显示的要求重新导入
【 在 qianfeng018 的大作中提到: 】
:
: 自己写了个算法,算法所需的运行环境用conda打了个zip包,扔到了hadoop上。在spark上运行用如下命令。
: 这里为什么是个zip包呢? 这样每次运行还得解压,不是浪费时间吗?
: 不能提前把conda环境在hadoop上解压,每次直接运行吗?
:
#发自zSMTH@CDU.MP
--
FROM 117.23.183.*