十分钟构建双十一交互分析大盘

提到双十一很多人第一印象是一张成交金额跳动的炫酷大屏,的确大盘在阿里双十一中几乎是每个团队标配,例如:

  • CEO看业务:把重要数据放到一张大屏上,简洁而有冲击力
  • 运营看效果:把多个指标放在一起,有利于综合分析定制投放策略
  • 开发看流量:服务请求延时,排队情况,掌握实时性能与动态
  • 监控看水位:集中监控整体服务的状态,有利于快速的做出响应

大盘方案选型

典型方案是流式计算架构:

  • 数据采集:利用Agent、API、SDK等采集各源头数据
  • 中间存储:利用类Kafka软件进行生产系统和消费系统解耦
  • 实时计算:环节中最重要环节,订阅实时数据,通过计算规则对窗口中数据进行运算
  • 结果存储:计算结果数据存入SQL和NoSQL
  • 可视化:通过API调用结果数据进行展示

在阿里集团内,有大量成熟的产品可以完成此类工作,一般可供选型的产品如下:

image.png | left | 827x392

对大盘进一步诉求

虽然前期做了大量准备工作,但运营、研发和运维等除了看大盘外,还会围绕整个活动的运行做大量工作,例如:

  • 运营对每个类目的细节,下单数目,用户量预期水平等进行大量分析,对某些用户群体激活和促销
  • 研发关注请求流量,用户延时体验,定位和分析各种原因
  • 运维分析系统的水位,查看各资源的分布,调度资源以确保稳定性

image.png | left | 827x187

从上述例子中可以看到,除了数据的呈现之外,我们需要对大盘融入“交互式分析”的能力。给大家介绍一种选择:通过日志服务(LOG,原SLS)一站式的查询分析LogSearch/Analytics API 直接对接可视化大屏。
​ 
大屏的选择可选方案有日志服务Dashboard,Grafana,Datav等,也可以通过API、JDBC接口对接自己的可视化大屏和第三方的软件(例如Tableua)。日志㐏对三种大屏提供了插件,只需在配置中直接使用SQL进行计算,并展示结果。

 交互分析平台支撑实时性定时刷新视图支持适合场景
日志服务Dashboard PC 丰富 运维、运营、开发等
Grafana   PC​   一般 时间序列数据场景
DataV   PC​、移动端、大屏 丰富 适合于presentation场景
基于JDBC或OpenAPI自建可视化前端            

日志服务Dashboard主要面需要交互式分析的查询需求,例如发现错误时,需要下钻定位原因。跟踪到某个类目中查看细节,对比同比与环比数据。该方案有如下特点:

  • 实时性强

    • 从数据产生,秒级别即可在日志服务看到数据。
    • 动态刷新,秒级别即可计算出指标,展示在大屏上。
  • 秒级精度

    • 日志时间精确到秒级别。
  • 灵活查询

    • 使用SQL进行交互查询,可以进行探索式分析,快速进行假设和验证。可反复在原始数据上进行任意维度的计算。而流计算在计算完原始数据后,即抛弃了原始数据,若想回溯调整查询,基本不可能。所以日志服务的交互式查询可谓灵活很多。
  • 机器学习支持

    • 时序类机器学习函数,帮助发现业务规律与趋势
    • 分类与聚类函数,帮助发现与定位异常

image.png | left | 827x193

使用步骤

以日志服务dashboard对接为例,要对接一个大屏,首先要接入数据,然后编写SQL,配置仪表盘视图。

1. 接入数据

日志服务提供30+数据接入手段可以满足各种数据源诉求,具体参考文档

image.png | left | 827x210

2. 调试SQL+机器学习函数

我们在日志服务查询页面,通过SQL语法,计算出需要的指标。SQL语法参考语法文档

image.png | left

3. 配置视图并保存

SQL调试好后,配置视图的参数,添加到仪表盘:

 

在配置好的大屏中,使用下钻深入分析结果:

image | left

日志服务控制台内置14+类型视图,用于可视化展示SQL计算结果,具体参考文档

image | left

基于日志服务大盘案例

image.png | left

图:datav大屏

image.png | left

图:grafana大屏

  • 日志服务Nginx dashboard:使用日志服务内置的地图、饼图、折线图等可视化Nginx日志指标

image.png | left

图:日志服务dashboard

  • Pangu 2.0 秒级监控
    Pangu2.0是阿里云自研的新一代普惠智能新存储系统。Pangu基于日志服务搭建秒级监控,Pangu 日志产生后,秒级采集到日志服务,并在秒级别计算出各个机器的IOPS、延时、吞吐。可迅速发现负载高的机器,及时跟进处理。

image.png | left | 827x486

  • Fuxi 双十一资源画像为混部保驾护航资源调度大屏:
    伏羲是阿里云自研的分布式调度系统。在双十一期间,为了监控所有集群的容量、负载信息,伏羲团队搭建了基于日志服务+dataV的可视化大屏。一张大屏囊括了所有的集群信息,看到这张大屏,就像拥有了一张地图,在双十一波涛汹涌的流量面前,做到胸有成竹。

image.png | left

posted @ 2018-12-18 15:11  zhaowei121  阅读(224)  评论(0编辑  收藏  举报