背景描述

日常业务中,在服务器上搭建superset作为数据展示。经过一段时间业务发展,数据集和看板数量都有长足的增长,因此需要对数据集的使用情况做一个初步统计。

一方面可以用于评估需求可靠性,另一方面也便于统计长时间没有查看过的数据集,方便后续下掉相关任务,节省资源。

主要统计指标

数据集使用情况
最后一次访问时间
相关数据集不同时间窗口内的使用次数
不同账号的访问记录

如何监控

大致思路是通过日志中查询数据的日志,关联上对应的图表,图表在关联上对应的数据池。

搭建方式参考尚硅谷superset视频文档,默认内置数据库为SQLite,语法与psql有些不同

关键表及字段说明

在这里插入图片描述

数据集查询SQL

SELECT 
    a.dttm,
    a.user_id,
    a.slice_id,
    a.duration_ms,
    b.datasource_id,
    b.slice_name,
    c.table_name,
    d.last_name || d.first_name AS username
FROM 
    logs a
JOIN 
    slices b ON a.slice_id=b.id
JOIN 
    tables c ON b.datasource_id=c.id
JOIN 
    ab_user d ON a.user_id=d.id
WHERE 
    a.action='ChartRestApi.data' AND
    a.dttm > date('now', '-3 day', '-8 hour');

根据需求调整

补充说明

我这里主要是在sqlite里执行sql,将执行结果存成CSV,在将CSV文件load到mysql中,最后通过superset连接mysql读到相关数据,形成图表展示。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐