c代码中 执行sh文件 带参数_0672-5.16.1-CDSW中Run Experiments异常分析

作者:唐辉

1.CDSW Experiments简介

从CDSW (Cloudera Data Science Workbench) 1.4开始,CDSW中新增了一个Experiments 功能,它允许数据科学家运行批处理实验,跟踪不同版本的代码,并进行参数输入和输出。Experiments 是批量执行的工作负载,将代码、输入参数和输出模板化。此功能还提供轻量级跟踪输出数据的功能,包括文件、指标和元数据用以进行比较。

  • 测试环境:

1.RedHat7.2

2.CDH5.16.1

2.问题描述

当我们在项目中添加一个脚本,这里使用官方示例 add.py

import sysimport cdswargs = len(sys.argv) - 1 sum = 0x = 1while (args >= x):  print ("Argument %i: %s" % (x, sys.argv[x])) sum = sum + int(sys.argv[x]) x = x + 1print ("Sum of the numbers is: %i." % sum)

参数如下:

afa420ab19571407c8dedfe90852efe7.png

run experiments ,会出现如下错误

fbd9ce16c6ec87a47f90b9b1b14f4971.png

3.解决办法

关于上面的问题主要在于run experiments 时,会run /home/cdsw/cdsw-build.sh,这个脚本中会执行pip install sklearn,当我们在离线的环境下,无法安装sklearn 包,就会出现该问题,那么解决该问题有两种办法

3.1.添加定制镜像,引入sklearn的安装包

如何定制镜像可以参考Fayson 之前的文章《如何基于CDSW基础镜像定制Docker》和《如何在CDSW中定制Docker镜像》这里不多描述,定制完成后选择新的镜像并保存

91542dd570e353d004ed022d76df03a9.png

然后重新打开会话,run experiments

0984e0e68f448d42fbffa9c50bf24d9f.png

发现可以正常pip install sklearn,并成功执行完成

3.2.到会话中注释/home/cdsw/cdsw-build.sh 文件中的pip install sklearn

进入会话中,点击_Terminal access

0af89d3100e598fb63a5368fd096a4f4.png

注释/home/cdsw/cdsw-build.sh 文件中的pip install sklearn

e21fd973d9bbdd7ce948404e10b2467b.png

然后再重新执行,也可以正常执行完成

3112dbf343c80aa8651f631e2702d189.png
729fcbd2859ce2aea044bba2aded0d4f.png

参考文档:

https://www.cloudera.com/documentation/data-science-workbench/latest/topics/cdsw_experiments.htm

l

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值