如何离线分析 Kafka 海量业务消息?

阅读数:156 2019 年 10 月 23 日 18:04

如何离线分析Kafka海量业务消息?

场景介绍

说起 Kafka,许多使用者对它是又爱又恨。Kafka 是一种分布式的、基于发布 / 订阅的消息系统,其极致体验让人欲罢不能,但操心的运维、复杂的安全策略、可靠性易用性的缺失等,仍需要使用者付出诸多的背后工作。即使你是 Kafka 老手,也难免会有上述同样的烦恼。

与其整日操心 Kafka 的部署,不如试试云上 Kafka 带给你的惊喜?目前国内主流的云服务厂商均提供了云上的 Kafka 服务,为应用系统提供异步的消息队列服务。通过高可用的消息缓冲队列,实现应用解耦、突发流量处理及与第三方的互通和集成,具有大规模、高可靠、高并发访问、可扩展且完全托管的特点。比如华为云分布式消息服务 DMS,帮助云端的应用程序组件去耦合,具有很高的成本效益。DMS 拥抱开源,提供支持兼容开源 Kafka 接口,用户可无缝迁移,按需使用。

分布式消息服务(Data Message Service,简称 DMS)Kafka 专享版支持采集增量的交易消息数据并上传到华为云对象存储服务(Object Storage Service,简称 OBS),通过实时流计算框架(例如 Flick)或者华为云实时流计算服务(Cloud Stream Service, 简称 CS)分析上传的交易数据,能够分析出最近交易指标等信息,以支持用户交易做决策。

申请环境与资源

1. 开启转储

如何离线分析Kafka海量业务消息?

在更多列中点击开启转储即可开启消息转储功能

2. 创建转储任务

等待开启转储任务完成后,即可以添加转储任务进行转储,点击实例链接进入实例管理里有转储管理页签,通过点击创建转储任务即可创建消息转储任务进行消息的转储,如下:

如何离线分析Kafka海量业务消息?

点击后,会弹出创建转储任务的详情:

如何离线分析Kafka海量业务消息?

需要填入打星号的必填参数。这里主要关注要填入的参数 Topics,即需要转储的 Topic 名称,支持多个 Topic 的输入或者正则表示的方式去订阅 Topic 消息,并把消息内容上传到 OBS 桶中。点击转储地址行中的选择按钮,弹出选择数据转储地址,会列出那些 OBS 桶可以被转储。

如何离线分析Kafka海量业务消息?

需要一提的是,如果没有 OBS 桶,则需要创建一个 OBS 桶用来存放 DIS 转储的数据。

3. 查看转储任务

创建转储任务后,可以在转储管理页中看到这个任务信息,点击查看转储信息,可以实时查看转储 Topic 的消息转储进度。

如何离线分析Kafka海量业务消息?

查看 OBS 信息与分析数据

登录华为云 OBS 可以查看到转储地址桶的中存在分区的文件,已经按照转储时设定的时间格式上传到 dms-obs 桶中。

如何离线分析Kafka海量业务消息?

可以使用 Flink 等实时数据对上传目录的文件内容进行分析,得到分析后汇总结果展示即可。

本文转载自公众号中间件小哥(ID:huawei_kevin)。

原文链接:

https://mp.weixin.qq.com/s/nf_TAA6wTCUAuIQmZdow2w

评论

发布