温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。
Fayson的github:
https://github.com/fayson/cdhproject
提示:代码块部分可以左右滑动查看噢
1.文档编写目的
在前面的文章Fayson介绍了关于《CDSW1.4的新功能》及《Hadoop之上的模型训练 - CDSW1.4新功能模块》,本篇文章Fayson主要介绍CDSW1.4版本中新增的Experiments功能及使用。
1.Experiments功能介绍
2.Experiment使用
3.总结
1.CM和CDH版本为5.15
2.CDSW版本为1.4
3.操作系统为RedHat7.4
2.Experiments功能使用
在CDSW中快速的运行一个Experiment,步骤如下:
1.登录CDSW平台创建一个Python模板的工程
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zhkMlFiI-1583680753915)(https://ask.qcloudimg.com/http-save/yehe-1522219/44lfxtkbg1.png)]
工程创建成功
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0HBQbE5m-1583680753917)(https://ask.qcloudimg.com/http-save/yehe-1522219/q24irltt1s.jpeg)]
2.打开WorkBench,在工程中创建一个add.py文件,内容如下:
import sys
import cdsw
args = len(sys.argv) - 1
sum = 0
x = 1
while (args >= x):
print ("Argument %i: %s" % (x, sys.argv[x]))
sum = sum + int(sys.argv[x])
x = x + 1
print ("Sum of the numbers is: %i." % sum)
(可左右滑动)
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DdGEVaQ2-1583680753918)(https://ask.qcloudimg.com/http-save/yehe-1522219/jj68otnx6b.jpeg)]
3.点击“Run Experiments”,在脚本栏填写创建好的add.py,Arguments输入: 1 2 3 4
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qwensJrv-1583680753918)(https://ask.qcloudimg.com/http-save/yehe-1522219/fp3wcdoyt6.png)]
4.点击“Start Run”按钮运行,回到Project界面,点击“Experiments”菜单查看
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iUJGm8xP-1583680753919)(https://ask.qcloudimg.com/http-save/yehe-1522219/fuu7v9lttu.jpeg)]
可以看到我们运行的Experiment,点击Run列的数字进入查看详细信息
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cZHFzWSC-1583680753919)(https://ask.qcloudimg.com/http-save/yehe-1522219/uzjrx85h1r.jpeg)]
点击“Build”显示实验环境build过程
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-q45mV4ns-1583680753920)(https://ask.qcloudimg.com/http-save/yehe-1522219/o42sx5c9cf.jpeg)]
Build成功后,Docker镜像准备就绪并开始运行
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1fXHroGl-1583680753920)(https://ask.qcloudimg.com/http-save/yehe-1522219/xl4a980aak.jpeg)]
此时点击“Session”可以看到运行结果
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lEAuqOfX-1583680753921)(https://ask.qcloudimg.com/http-save/yehe-1522219/cire6cr1w9.jpeg)]
5.回到“Experiments”页面,可以看到运行状态标识为“Success”
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8EB45fef-1583680753921)(https://ask.qcloudimg.com/http-save/yehe-1522219/4oq42dfm0s.jpeg)]
6.在CDSW库中包含了一些内置的函数,可用于比较试验运行结果并保存试验中的任何文件
可以在add.py脚本的默认增加如下内容,记录试验运行结果
cdsw.track_metric("Sum", sum)
(可左右滑动)
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-turDyBtN-1583680753921)(https://ask.qcloudimg.com/http-save/yehe-1522219/wbddn7ram8.jpeg)]
再次提交一个“Run Experiment”
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hQ5c29s3-1583680753922)(https://ask.qcloudimg.com/http-save/yehe-1522219/w6wk83mq32.jpeg)]
查看运行结果,在运行列表中多出了“Sum”列
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ewQLjkqh-1583680753922)(https://ask.qcloudimg.com/http-save/yehe-1522219/g54t1lxz1w.jpeg)]
3.总结
1.Experiment默认继承工程所在环境,在上述测试可以看到test-experiments使用的engine:5,创建的Experiment也是使用的engine:5进行编译,会默认的执行工程下的cdsw-build.sh脚本,自动安装依赖环境。
2.目前Experiments有些功能只支持Python和R,不支持Scala。
3.实验可以支持输出多个指标,默认的实验列表只能显示3个指标,如果需要查看更多的指标可以在实验详情页面查看。
提示:代码块部分可以左右滑动查看噢
为天地立心,为生民立命,为往圣继绝学,为万世开太平。
温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。