博学谷 > 资讯 > 大数据 > 大数据面试题 Storm实时看板案例

原创 大数据面试题 Storm实时看板案例

发布时间:2019-07-11 14:22:13 浏览 991 来源:博学谷资讯 作者:照照

    随着数据体积的越来越大,实时处理成为了许多机构需要面对的首要挑战,而Storm大数据分析变得轻松加愉快。今天,小编和大家分享大数据面试题之Storm实时看板案例。

     

     

    大数据面试题 Storm 实时看板案例

     

     

    1、需求分析

     

    平台在活动促销日(例如双 11)要求实时展示当日的一些销售信息我们从三个维度去统计计算:

     

    平台运维角度统计指标: 平台总销售额、平台下单人数、平台商品销售数量。

     

    商品销售角度统计指标: 每个商品总销售额、每个商品购买人数、每个商品销售数量。

     

    店铺销售角度统计指标: 每个店铺总销售额、每个店铺购买人数、每个店铺销售数量。

     

    2、确定数据源

     

    数据源:订单系统与支付系统产生的数据。

     

    3、确定采集方案

     

    订单系统和支付系统产生的数据 通过 ActiveMQ 到 kafka 中,Storm 集成kafka 获取数据。(注:为什么用 ActiveMQ?一方面,电商业务系统当中需要用到事务支持,只能用比较严谨的 jms 系统来实现,所以考虑到用 ActiveMQ。另一方面,kafka 直接读取数据库,会影响数据库速度。所以订单系统的数据通过 ActiveMQ 这个中间件来落地到数据库,kafka从ActiveMQ 中间件中取数据,就可以避免直接读数据库的问题。)

     

    4、确定存储

     

    我们将 Storm 处理后的数据,通过 Redis 来累加计数并存储在 Redis 中。

     

    5、数据计算

     

    编写 Storm 代码:Storm 与 kafka 整合来获取到数据,将每一条数据信息,利用 Redis 中 incrBy 这个命令来累加计数并存储在 Redis 中。

     

    6、展现

     

    可以写一个定时器,定时的去 Redis 中获取结果数据,展示到 web 界面上。

     

    7、storm 日志监控告警系统

     

    8、需求分析

     

    现项目中日志监控的功能,需要做到日志监控实时告警,例如系统中出现任何异常,触发任何的告警规则,都可以实时通过短信或者邮件告知相关系统负责人。

     

    9、确定数据源

     

    每个业务系统(如: 订单系统,商品管理系统,用户系统)产生的日志信息。

     

    10、确定采集方案

     

    将日志数据 通过 flume 采集到 kafka 中,Storm 集成 kafka 获取数据。

     

    11、确定存储

     

    将触发告警规则的数据,存储在MySQL 数据库中。

     

    12、数据计算

     

    ·通过自定义flume 拦截器,给不同系统产生的日志数据前加上一个appId 来做唯一标识(不同系统对应的告警规则和负责人不同,所以这里要加一个唯一标识方便我们查找对应的规则和负责人)。

     

    ·Storm 代码编写步骤:

     

    (1)、获取 kafka 中的数据。

     

    (2)、设置定时器,定时读取在 MySQL 数据库中的告警规则(数据库中的告警规则我们可以随时去修改,所以要采用定时器去读取,保证拿到是最新的规则)。

     

    (3)、将获取到的数据,与告警规则进行匹配,得到匹配成功的告警数据信息。

     

    (4)、将告警信息 以邮件,或者短信 方式发送给对应的负责人(对应人的信息,从 MySQL 数据库中获取)。

     

    (5)、最后将警告信息存储到我们的 MySQL 数据库中(方便以后查询异常记录)。

     

    以上就是小编整理的大数据面试题之Storm实时看板案例,大家都弄明白了吗?

上一篇:大数据培训时间要多久?零基础多久能学会? 下一篇:揭秘 数据分析究竟在企业经营中有什么实际作用?

相关推荐 更多

最新文章

扫描二维码,回复"大数据"获取20G资料包

4887铁算结果开奖结果小说