华为云实时流计算日志分析实践
参加了华为云的实时流计算免费体验活动,记录实践过程。原文链接地址,请访问这里:https://bbs.huaweicloud.com/forum/thread-13952-1-1.html?utm_source=wechat&utm_medium=sm
CS介绍
大数据计算,实时性越强,越有价值。数据随着时间增长价值迅速衰减,数据永远是临时的,而分析永远是有时效性的。实时的产品推荐,实时的产品质量反馈,在线风险分析。都可以是数据产生极大的价值。华为云实时流计算服务,打造最优秀的云上实时流计算平台,为客户创造前所未有的极致体验。
实时流计算服务,简称CS,采用全托管的服务方式,使得用户无需感知计算集群。只需聚焦于Stream SQL业务,即时执行作业,就可以完成实时流计算的数据分析。
适用场景
CS服务的使用,聚焦于互联网和物联网场景,适用于实时性要求高、吞吐量大的业务场景。主要应用在互联网行业中小企业、物联网、车联网、金融反欺诈等多种行业应用场景,如互联网汽车、日志在线分析、在线机器学习、在线图计算、在线推荐算法应用等。
实验介绍
本示例从DIS数据源读取数据,实时分析日志信息,向OBS输出源写数据。通过本示例,你会学习到:
创建并运行Flink SQL应用
完成“日志分析”示例场景
创建DIS通道
进入DIS控制台,点击右侧 购买接入通道 ,创建一个DIS通道:注意选择通道所在 区域为北京一 , 数据源类型 选择 CSV ,通道名称 填写 input-dis 。
最终完成参考如下图:
创建OBS桶
区域北京一
桶名称自定义,本示例为:outputs-obs
存储类型:标准存储
桶策略:私有
创建完毕后,打开OBS桶,新建文件夹,名称为logInfos
创建Flink SQL作业
登录实时流计算CS控制台,点击新建作业,输入自定义名称,选择模板 [云生态]DIS-CS-OBS样例模板,点击确认
确认完毕后,在编辑处,如果以上名称全部按照本文档命名,那么这里不需要做任何修改。可以直接看下一步。
如果DIS名称不一致,修改如下channel参数,为你自己设定的名称
如果OBS名称不一致,只需要修改obs_dir 参数,目录指向自己obs目录名称,本示例为"outputs-obs/logInfos", 如下图
修改完毕后,点击“语义校验”提示无错误后,点击提交按钮。
注意,右侧参数SPUs 2 并行数1保持默认即可,不需要修改。最后核对信息如下;确认无误后,点击确认按钮
发送DIS数据
使用DIS Agent向云上DIS通道发送CSV结构的数据,DIS Agent是一个本地运行的代理,监控本地文件变化,一旦文件中有新的数据追加,就会即时把新增的数据发送到DIS通道中,类似flume。
启动DIS Agent步骤:
1. 下载DIS Agent Url:https://dis-publish.obs-website.cn-north-1.myhwclouds.com/dis-agent-1.1.0.zip
2. 本地解压
3. 修改 conf/agent.yml
4. 启动 DIS Agent : Linux环境 bin/start-dis-agent.sh ; Windows环境 bin/start-dis-agent.bat
修改conf/agent.yml参数指导:
AK、SK
ak/sk:进入console控制台->右上角 我的账号 选择"我的凭证"-> "管理访问秘钥"->"新增访问秘钥"
projectId
进入console控制台->右上角 我的账号 选择"我的凭证"-> "项目列表"中选择"cn-north-1"对应的"项目ID"
DISStream DIS创建的名称
filePattern填写数据文件所在的路径,参考示例如下:D:/disagent-cw/dis-agent-1.1.0/data/*.log
注意:目录间隔符为/ ,并不是\,因为直接从windows路径中复制会成为\
剩余其他参数不需要变化。修改完毕后注意保存。
发送DIS数据
本示例下的是python程序,文件名称为send.py ,windows主机前提是安装了python程序才可以执行:
import time
for idx in range(10000):
with open("test.log", mode = "a+") as f:
f.write("api.huaweicloud.com||45.249.212.44||15421010072.675||200||651||228||POST
/x/report/heartbeat HTTP/1.1||-||Mozilla/5.0 (Windows NT 6.0; rv:34.0) Gecko/20100101
Firefox/34.0||-||200||0.033||-.918nw0fj-||0.033||140.206.227.10:80" + "\n" +
"api.huaweicloud.com||45.249.212.52||15421010072.875||200||651||228||POST /details/jobs
HTTP/1.1||-||Mozilla/5.0 (Windows NT 6.0; rv:34.0) Gecko/20100101 Firefox/34.0||-
||200||0.033||-.918nw0fj-||0.033||140.206.227.10:80" + "\n")
time.sleep(60)
启动程序
以上内容编辑完成后,需要将send.py 放到之前在agent.yml中filePattern参数指定的目录路径下执行点击send.py 启动程序;本文示例路径为D:/disagent-cw/dis-agent-1.1.0/data/
send.py启动截图(上图)
启动python程序后,再启动DIS Agent程序,DIS Agent : Linux环境 bin/start-dis-agent.sh ; Windows环境 bin/start-dis-agent.bat
DIS Agent启动截图(上图)
登录到obs控制台,查看产生的数据。并且我们可以下载下来,打开查看
打开log_out.1文件如下截图:
我们也可以在cs任务列表中进行查看任务
资源删除
如果您已经完成本示例,记得删除以下资源,以免资源继续产生费用,首先删除CS的Flink SQL作业,然后删除DIS通道,最后删除OBS桶,删除obs桶需要先删除桶内的数据,才能删除桶。
- 点赞
- 收藏
- 关注作者
评论(0)