491
微信
控制台快速开始__快速入门_批量计算-阿里云
控制台快速开始例子
本文档将介绍如何使用控制台来提交一个作业,目的是统计一个日志文件中“INFO”,”WARN”,”ERROR”,”DEBUG”出现的次数。
如果您还没开通批量计算服务,请先开通。
步骤预览
- 作业准备
- 上传数据文件到OSS
- 上传任务程序到OSS
- 使用控制台提交作业
- 查看作业状态
- 查看结果
1. 作业准备
本作业是统计一个日志文件中“INFO”,”WARN”,”ERROR”,”DEBUG”出现的次数。
该作业包含3个任务: split, count 和 merge:
- split 任务会把日志文件分成 3 份。
- count 任务会统计每份日志文件中“INFO”,”WARN”,”ERROR”,”DEBUG”出现的次数(count 任务需要配置InstanceCount为3,表示同时启动3个 count 任务)。
- merge 任务会把 count 的结果统一合并起来。
DAG图例:
(1) 上传数据文件到OSS
下载本例子所需的数据: log-count-data.txt
将 log-count-data.txt 上传到:
oss://your-bucket/log-count/log-count-data.txt
- your-bucket如表示您自己创建的bucket,本例子假设region为: cn-shenzhen.
- 如何上传到OSS,请参考OSS上传文档。
(2) 上传任务程序到OSS
本例子的作业程序是使用python编写的, 下载本例子所需的程序: log-count.tar.gz
本例子不需要改动示例代码。直接将 log-count.tar.gz 上传到 oss,如上传到:
oss://your-bucket/log-count/log-count.tar.gz。
如何上传前面已经讲过。
- BatchCompute 只支持以 tar.gz 为后缀的压缩包, 请注意务必用以上方式(gzip)打包, 否则将会无法解析。
- 如果你要修改代码,可以解压后修改,然后要用下面的方法打包:
命令如下:
> cd log-count #进入目录
> tar -czf log-count.tar.gz * #打包,将所有这个目录下的文件打包到 log-count.tar.gz
可以运行这条命令查看压缩包内容:
$ tar -tvf log-count.tar.gz
可以看到以下列表:
conf.py
count.py
merge.py
split.py
2. 使用控制台提交作业
然后点击”作业列表”—“提交作业”进行作业提交。请注意选择合适Region(该region需要和bucket的region一致)。
这里使用了AutoCluster提交作业, 匿名集群需要至少配置2个参数, 其中:
如果需要运行本例子,还需把 PackagePath (作业打包上传的OSS路径,本例子中为 oss://your-bucket/log-count/log-count.tar.gz)、
StdoutRedirectPath、StderrRedirectPath(任务结果和错误的输出地址),修改成与上文对应的您的OSS路径(本例子中为:oss://your-bucket/log-count/logs/)。
作业JSON模板如下,具体参数含义请参照这里。
{
"DAG": {
"Dependencies": {
"split": [
"count"
],
"count": [
"merge"
],
"merge": []
},
"Tasks": {
"split": {
"InstanceCount": 1,
"LogMapping": {},
"AutoCluster": {
"ResourceType": "OnDemand",
"InstanceType": "bcs.a2.large",
"ImageId": "img-ubuntu"
},
"Parameters": {
"Command": {
"EnvVars": {},
"CommandLine": "python split.py",
"PackagePath": "oss://your-bucket/log-count/log-count.tar.gz"
},
"InputMappingConfig": {
"Lock": true
},
"StdoutRedirectPath": "oss://your-bucket/log-count/logs/",
"StderrRedirectPath": "oss://your-bucket/log-count/logs/"
},
"InputMapping": {
"oss://your-bucket/log-count/": "/home/input/"
},
"OutputMapping": {
"/home/output/": "oss://your-bucket/log-count/"
},
"MaxRetryCount": 0,
"Timeout": 21600,
"ClusterId": ""
},
"merge": {
"InstanceCount": 1,
"LogMapping": {},
"AutoCluster": {
"ResourceType": "OnDemand",
"InstanceType": "bcs.a2.large",
"ImageId": "img-ubuntu"
},
"Parameters": {
"Command": {
"EnvVars": {},
"CommandLine": "python merge.py",
"PackagePath": "oss://your-bucket/log-count/log-count.tar.gz"
},
"InputMappingConfig": {
"Lock": true
},
"StdoutRedirectPath": "oss://your-bucket/log-count/logs/",
"StderrRedirectPath": "oss://your-bucket/log-count/logs/"
},
"InputMapping": {
"oss://your-bucket/log-count/": "/home/input/"
},
"OutputMapping": {
"/home/output/": "oss://your-bucket/log-count/"
},
"MaxRetryCount": 0,
"Timeout": 21600,
"ClusterId": ""
},
"count": {
"InstanceCount": 3,
"LogMapping": {},
"AutoCluster": {
"ResourceType": "OnDemand",
"InstanceType": "bcs.a2.large",
"ImageId": "img-ubuntu"
},
"Parameters": {
"Command": {
"EnvVars": {},
"CommandLine": "python count.py",
"PackagePath": "oss://your-bucket/log-count/log-count.tar.gz"
},
"InputMappingConfig": {
"Lock": true
},
"StdoutRedirectPath": "oss://your-bucket/log-count/logs/",
"StderrRedirectPath": "oss://your-bucket/log-count/logs/"
},
"InputMapping": {
"oss://your-bucket/log-count/": "/home/input/"
},
"OutputMapping": {
"/home/output/": "oss://your-bucket/log-count/"
},
"MaxRetryCount": 0,
"Timeout": 21600,
"ClusterId": ""
}
}
},
"Description": "batchcompute job",
"Priority": 0,
"JobFailOnInstanceFail": true,
"Type": "DAG",
"Name": "log-count"
}
确定各个参数及路径填写正确后,点击左下角的“提交作业”,并确认。
3. 查看作业状态
点击作业列表中最新提交的log-count作业,可以查看详情:
点击任务名称 split,可以查看任务详情:
点击绿色方块,可以查看实例的日志:
4. 查看结果
您可以登录OSS控制台 查看your-bucket 这个bucket下面的这个文件:/log-count/merge_result.json。
内容应该如下:
{"INFO": 2460, "WARN": 2448, "DEBUG": 2509, "ERROR": 2583}
最后更新:2016-12-05 15:22:39
上一篇:
开通批量计算__快速入门_批量计算-阿里云
下一篇:
命令行快速开始1__快速入门_批量计算-阿里云
优惠券_阿里云帮助中心-阿里云,领先的云计算服务提供商
授权资源组__账号管理类 API_Open API 参考_企业级分布式应用服务 EDAS-阿里云
图文识别异步检测结果查询接口__OCR图文识别API_内容检测API文档_阿里绿网-阿里云
参数化__脚本编写_使用手册_性能测试-阿里云
Credentials__数据类型_STS API文档_访问控制-阿里云
新增水印模版__水印模板接口_API使用手册_媒体转码-阿里云
采集-专用网络(VPC)日志文件__最佳实践_日志服务-阿里云
怎样为一个子用户授予RDS服务的完全管理权限___云数据库(RDS)授权问题_授权常见问题_访问控制-阿里云
英文识别__API介绍_文字识别_人工智能图像类-阿里云
使用报警服务__快速入门_云监控-阿里云
相关内容
常见错误说明__附录_大数据计算服务-阿里云
发送短信接口__API使用手册_短信服务-阿里云
接口文档__Android_安全组件教程_移动安全-阿里云
运营商错误码(联通)__常见问题_短信服务-阿里云
设置短信模板__使用手册_短信服务-阿里云
OSS 权限问题及排查__常见错误及排除_最佳实践_对象存储 OSS-阿里云
消息通知__操作指南_批量计算-阿里云
设备端快速接入(MQTT)__快速开始_阿里云物联网套件-阿里云
查询API调用流量数据__API管理相关接口_API_API 网关-阿里云
使用STS访问__JavaScript-SDK_SDK 参考_对象存储 OSS-阿里云