ITPub博客

首页 > 数据库 > 数据库开发技术 > 数据的最后一公里 Apache Superset 数据可视化

数据的最后一公里 Apache Superset 数据可视化

原创 数据库开发技术 作者:DevXTalk 时间:2024-02-02 08:30:00 0 删除 编辑

数据的最后一公里 Apache Superset 数据可视化

数据可视化是数据领域一个非常重要的应用。而结合了数据可视化和数据探索功能的BI(商业智能)工具,更是被各大公司青睐。但是,由于数据可视化工具的开发成本过高,长期以来一直是商业化的BI工具处于垄断地位。

Apache Superset是一个现代的数据可视化和数据探索平台。Superset可以取代或增强许多团队的专有商业智能工具。也可以与各种数据源很好地集成。他可以在不需要任务编码的情况下,快速构建自己的图表。提供了一个强大的基于Web的SQL编辑器。对几乎所有SQL数据库提供了开箱即用的支持,比如Oracle,Mysql,Doris等等。对可视化效果的支持非常丰富,从简单的条形图到地理空间图都可以完美支持。 将其成为目前最优秀的开源BI工具并不为过。

概述

Apache Superset是一个基于Python的开源数据可视化工具。它由Airbnb公司开发,后来捐赠给Apache软件基金会,并进入Apache孵化器。Superset提供了直观的界面和丰富的可视化选项,支持各种类型的数据源,包括关系型数据库、NoSQL数据库、文件系统等。

Superset的核心概念是“仪表盘”。一个仪表盘是一个由多个可视化组件组成的页面,每个可视化组件可以展示一个或多个数据图表。用户可以通过简单拖拽和点击的方式,在界面上创建和编辑仪表盘。Superset支持各种常见的数据图表类型,如折线图、柱状图、散点图、地图等,同时也支持更高级的可视化技术,如热力图、力导向图、桑基图等。

Superset还提供了丰富的数据分析和处理功能。用户可以在界面上对数据进行筛选、排序、聚合等操作,还可以使用SQL语言进行更复杂的数据处理。Superset还支持数据的缓存和预计算,以提高性能和响应速度。

apache superset 官网:https://superset.apache.org/

Apache Superset 使用层面主要分为以下个部分:

  • Data:主要功能是新增数据源和数据集Dataset(旧版本也叫Table),Dataset作为数据图表可视化的基础;
  • Charts:图表,就是针对准备好的Dataset数据集,选择一款合适的图表呈现;
  • Dashboards:仪表盘,其实就是报表、看板大屏展示,可以将多个Charts组合到一个仪表盘内一起展示。
  • SQL Lab:SQL实验室,其实就是一个类似DBeaver、Navicat、DataGrip等一样的多功能数据库连接客户端,但是只有查询功能,配置驱动和连接后可以进行数据库、表、字段等模型的SQL查询操作。
  • 设置:语言选择,登录注销、人员权限,操作日志等设置;

「设置, 创建角色,用户」

Apache Superset中的安全性由Flask AppBuilder(FAB)处理,FAB是一个构建在Flask之上的应用程序开发框架。FAB提供身份验证、用户管理、权限和角色,可以查看其相关文档。Apache Superset默认提供了不同的角色,每种角色拥有的权限不同,在运行superset init命令时,与每个角色关联的权限将重新同步到其原始值,不建议更改与每个角色关联的权限(例如,通过删除或添加权限),支持admin再自建角色类型,指定想要的权限,默认的角色及权限如下;

  • Admin:管理员拥有所有可能的权限,包括授予或撤销其他用户的权限,以及更改其他用户的切片和仪表板;

  • Alpha:Alpha用户可以访问所有数据源,但不能授予或撤消其他用户的访问权限。它们也仅限于改变它们所拥有的对象。Alpha用户可以添加和更改数据源。

  • Gamma:Gamma用户的访问权限有限。他们只能使用来自通过另一个补充角色访问的数据源的数据。他们只能查看由他们可以访问的数据源制作的切片和仪表板。目前Gamma用户无法更改或添加数据源。我们假设他们主要是内容消费者,尽管他们可以创建切片和仪表盘。另请注意,当Gamma用户查看仪表板和切片列表视图时,他们将只看到他们有权访问的对象。

  • sql_lab:sql_lab角色授予对sql lab的访问权限。请注意,虽然管理员用户在默认情况下可以访问所有数据库,但Alpha和Gamma用户都需要在每个数据库的基础上获得访问权限。

  • public:要允许注销的用户访问某些超集功能,需要自己配置权限,并将其分配给另一个角色,您希望将其权限传递给该角色。

「SQL Lab ,编写 SQL」

链接数据库

新建数据库连接的作用是为数据集Datasets和SQL实验室SQL Lab提供数据库、表的选择,就是提供数据源,当然Data下还有个Upload CSV(最新版本也支持Upload Excel)也可以直接将本地的CSV文件作为数据源上传到Superset站点,直接进行数据探索分析。

创建数据集

数据集的作用是为后续的Charts(图表)数据可视化作为数据源头。

SQL Lab(SQL实验室)

SQL Lab其实就是一个数据库查询客户端,利用SQL语句对数据库的表,字段模型进行查询探索,同时支持智能补全,当然SQL Lab的查询结果也可以直接EXPLORE到Charts(图表),作为数据可视化的数据源。

SQL Lab有三个选项,三个选项的功能如下:

  • SQL Editor:进行SQL查询探索
  • Saved Queries:保存的通用查询SQL
  • Query Search:查询的历史记录

创建图表

图表的作用是数据可视化,利不同的图表满足不同的业务需求,图表同时也作为仪表盘的展示的一部分,一个仪表盘内可以展示一个或多个图表。

创建 Dashboards

仪表盘就是最后的数据总体呈现,即报表展示。把创建好的图表加入到 Dashboard 中。

总结

Superset 开源免费,上手简单,易于使用的界面,用于浏览和可视化数据。可扩展的高粒度安全性/权限模型,允许有关谁可以访问单个要素和数据集的复杂规则。 支持多种数据源,可以引入外部图表库。短短几分钟就可以实现数据的可视化,不需要额外的图表开发工作,能够极大的提高工作效率。


欢迎加入 DevXTalk 的程序员、架构师、IT从业者交流群,在这里你可以和大佬们一起交流分享技术,行业经验,职位内推,摸鱼聊天。总之期待你的加入... 添加我的wx,备注:“进群”拉你进群(群二维码有效时间太短维持不了几天)


「看完本文有收获?转发给更多的朋友吧」

「DevXTalk 不止于技术」

原文作者:DevXTalk;如有侵权,请联系管理员删除。

下一篇: Java 虚拟线程
请登录后发表评论 登录
全部评论

注册时间:2019-03-23

  • 博文量
    178
  • 访问量
    82581