美文网首页
用 Superset 和 Druid 快速打造实时数据分析看板

用 Superset 和 Druid 快速打造实时数据分析看板

作者: 程序员赤小豆_gzh同名 | 来源:发表于2023-04-20 23:00 被阅读0次

    Apache Superset是一款开源的企业级数据可视化和探索平台。它具有直观的界面,丰富的图表与仪表盘类型,并支持大规模数据集,方便进行实时分析与探索。Apache Druid是一款高性能、分布式、低延迟的OLAP数据存储方案。它适用于数据探查和快速数据摘要等场景,能轻松应对PB级数据。


    Screenshot 2023-04-21 at 10.59.51 PM.png

    本文将介绍如何结合Superset和Druid这两个优秀的开源软件,快速搭建一个实时数据分析看板应用。将二者整合,我们可以轻松实现一个帮助企业快速监控数据、获得数据洞察的智能平台。

    一、环境准备

    1. 安装 Druid,安装和配置Superset
      安装步骤省略,可自行搜索。

    2. 添加 Druid 数据源

    • 登录Superset, 选择“数据源”菜单
    • 点击“+ 数据源”按钮,选择“Druid”数据源类型
    • 填写Druid数据源相关信息:
      • 名称: Druid数据源名称, 如test_druid
      • 主机: Druid Broker主机IP/域名
      • 端口:Druid Broker服务端口,默认为8082
      • 点击“保存”按钮,Druid数据源添加成功!

    二、构建Druid数据表和查询

    1. 登录Druid Console, 构建数据表
      在Druid Console通过上传数据文件或提供数据流的方式创建数据表

    2. 定义复杂的查询
      Druid支持丰富的查询类型, 如GroupBy、TopN、Timeseries等...(查询语法示例)

    {
      "queryType": "groupBy",
      "dataSource": "wikiticker", 
      "granularity": "all",
      "dimensions": ["page","country"],
      "aggregations": {
        "count": "count"
      },
      "intervals": [
        "2020-01-01/2020-01-02"
      ] 
    }
    
    • queryType:指定GroupBy查询类型
    • dataSource:查询的数据源
    • granularity:聚合粒度,all表示全量数据
    • dimensions:分组维度
    • aggregations:聚合指标,这里使用count计数
    • intervals:时间范围
      该查询会按page和country两个维度对wikiticker数据源在2020-01-01至2020-01-02的所有数据进行分组,并统计每个分组的记录数。
      Druid通过简洁的JSON配置支持构建复杂的分组、TopN、时间序列等聚合查询。

    三、在 Superset 中创建报表

    1. 新建Druid表格视图
      在Superset中,我们需要创建表格视图来显示Druid数据集的数据。新建Druid表格视图的步骤如下:
    • 选择数据源为我们之前添加的Druid数据源test_druid
    • 选择“Druid数据集”,这会拉取Druid Console中已有的数据集列表
    • 选择要查询的Druid数据集,比如wikiticker
    • 选择要查询的时间范围,可选择最近1小时、1天、1周、1月或自定义时间范围
    • 选择要使用的查询类型,包括Timeseries、TopN、GroupBy等
    • 根据所选查询类型配置对应的参数,如分组维度、聚合指标等
    • 点击“引入表格”按钮,表格视图创建成功
    1. 使用多种图表类型可视化数据
      在新建的表格视图上,点击工具栏的“创建图表”按钮,选择要使用的图表类型,即可将查询结果以图表形式进行可视化展示。

    Superset支持线图、柱状图、散点图、地图、盒形图等多种图表类型,选择合适的可视化形式。

    1. 构建实时数据看板
      将创建好的多个图表和文本框拖动到仪表盘,设置自动刷新间隔,即可以实现一个实时数据监控看板。
      步骤如下:
    • 点击左侧“仪表盘”菜单, 选择“新建仪表盘”
    • 输入仪表盘名称, 选择布局样式, 点击“保存”
    • 添加文本框、图像等组件进行装饰(可选)
    • 将创建好的图表从左侧的可用内容拖动到仪表盘 Grid 空间中
    • 点击添加到仪表盘的图表,在右侧设置面板中设置自动刷新间隔(如每1分钟)
    • 回到仪表盘界面, 点击右上方“保存并进入编辑模式”按钮
    • 调整组件大小和位置, 美化仪表盘整体样式
    • 点击右上方“保存”按钮, 实时数据看板创建成功!

    四、总结
    通过 Superset 和 Druid,我们实现了一个实时数据分析看板应用。Druid提供实时和历史数据的存储与查询,Superset通过丰富的可视化手段, 将Druid查询结果呈现直观的网页报表和仪表盘。

    写作是一个学习和思考的过程, 我也会不断总结与改进。谢谢阅读,如果你对文章中的内容有疑惑,欢迎点击我头像,看我个人介绍,与我取得联系,谢谢~

    相关文章

      网友评论

          本文标题:用 Superset 和 Druid 快速打造实时数据分析看板

          本文链接:https://www.haomeiwen.com/subject/afydjdtx.html