有哪些数据可视化服务工具?能对远程服务器上的数据库内的数据以网页形式进行可视化展现?

2020-07-22 16:16:48 +08:00
 tctc4869

有哪些可视化 Web 服务,可以部署在数据库所在服务器上,客户端访问可视化服务的网站查看数据库数据的可视化展现的内容。客户端用户可以直接在网页中进行配置 sql 语句,可以在不用写前端代码,就能对查询结果集制定不同的数据展现方式。

例如 给定一个 sql 语句,可视化服务将 sql 语句进行包装后,扔给数据库进行查询,查询结果集为单行单列的 json 字符串结果集,将结果集进行可视化展示,展示方式包含列表和图表。

如果是列表展示,则能定义外观,包括行外观,能展示的列的数量,表格结构布局等,通过设置交互 ui (例如按钮)为 select 语句配置 limit 语句和 order by 语句增加分页和指定列排序的功能。

也可以以表格模式访问数据表,对数据表选定行进行增删改等。

针对 postgresql

2870 次点击
所在节点    程序员
29 条回复
lower
2020-07-22 16:22:14 +08:00
你说的好像是 phpMyAdmin ?
mnssbe
2020-07-22 16:23:36 +08:00
superset
tctc4869
2020-07-22 16:25:52 +08:00
@lower 这是面向 Mysql,有针对 postgresql 的么?
fanzheng
2020-07-22 16:27:38 +08:00
metabase
superset
redash

metabase 有用过,满足你的要求。
MoYi123
2020-07-22 16:31:16 +08:00
https://github.com/parse-community/parse-server 里面的 dashboard
但是必须建一些它必须的表。
szdubinbin
2020-07-22 16:34:20 +08:00
会 sql 事情就方便太多了,metabase,superset 就很好满足你的要求,superset 可以用的图表库花样多一点。
tctc4869
2020-07-22 16:48:44 +08:00
@fanzheng
@mnssbe
@szdubinbin

这些支持表格展示么?比如给定一个查询语句,比如给出 select id,name,age from table where type=1;以表格形式展现该语句查询的结果集。

可以根据以该 select 语句为根基,通过设置交互 ui 为其进行 where 条件配置,分页配置,排序配置。

比如设置一个 where 条件配置,and age >18,设置一个选框,该选框选中后,查询语句就会变成 select id,name,age from table where type=1 and age>18,取消选中后会变回原样。

比如设置指定列排序的操作交互 ui,设置一个下拉框,下拉选项里有名字( name ),年龄( age ),设置在 ui 操作上进行 order by 的列 配置

还有分页继承功能,比如下一页,上一页,跳转目标页功能
fanzheng
2020-07-22 17:23:59 +08:00
@tctc4869 都是免费开源的,可以自己去试一下的。superset 和 redash 是 python 的,部署麻烦一点,metabase 有一个 jar 文件,直接运行`java -jar metabase.jar` 就可以。
lower
2020-07-22 17:26:50 +08:00
没注意看最后一句话,postgresql 的,新版的(>=10 )客户端不就是 web 版的嘛??不过我觉得很难用
chucongqing
2020-07-22 17:34:14 +08:00
grafana
tctc4869
2020-07-22 18:25:30 +08:00
@fanzheng 不是,我问题的是关于他们的可视化功能,它们的数据可视化功能支不支持列表模式展示,不会仅仅只是把一个 select 语句的结果集转成图表显示在页面上吧?


比如用户给定一个 select id,name,age from table where type=1 的查询语句。点击某个按钮,弹出一个查询结果集展示的数据列表页面,展示基于 select id,name,age from table where type=1 以及该语句扩展的查询。并且该类页面还支持数据分页。支持配置交互 UI 追加 sql 语句。(比如配置一个选框,被选中后,sql 语句会变成 select id,name,age from table where type=1 and age>18,未选择会变回原样)

我把这个叫查询页面实例,可以把这个查询页面实例保存。下次打开网站再次使用的时候,就不用每次都配置 sql 语句了,就可以使不知道 sql 语句知识的用户查询数据了。
graetdk
2020-07-22 18:37:44 +08:00
推荐 Superset,参考: https://mianbaoduo.com/o/bread/YpmVm54=
tctc4869
2020-07-22 18:40:02 +08:00
@graetdk 支持列表模式浏览么,列表模式浏览,如果用 html 前端的话来说,就是使用 table 标签或类似的 ui 组件去展示数据?而不是图表?
graetdk
2020-07-22 18:48:48 +08:00
@tctc4869 支持列表,但是不方便直接修改,如果只是展示的话没问题,图表类型中就有一类是列表
tctc4869
2020-07-22 19:17:54 +08:00
@graetdk 关于列表的话,只考虑查询吧
关于查询,是否支持分页,如果不支持分页的话,查询数据量太大可不好啊,比如 给定 select id,name,age from table where type=1,在分页模式下,页数为 20,执行查询时的 sql 语句会追加变成 select id,name,age from table where type=1 limit 20 offset 1

支持配置交互 ui 来追加 sql 语句么? 配置交互 ui 来追加 sql 语句,通过 ui 事件给执行时的 select 追加 sql 语句,以上面给定的 select 语句为例,比如配置一个选框,它的追加内容是“and age >18”,选框选中事件,点击查询会把执行的 select id,name,age from table where type=1 追加成 select id,name,age from table where type=1 and age >18 。

这些以上设想的功能配置可不可以保存封装为一个列表查询实例,以后每次写同样的查询都不用再次手打,在网页界面上“列表查询实例”列表里显示保存的列表查询实例,这样的话,可以不会 sql 的用户也可以通过点击“列表查询实例”的项来查询数据了。
hoyixi
2020-07-22 19:33:28 +08:00
postgresql 不是有个 pgAdmin 吗
不过如果是业务的真实环境,公网暴露数据库服务器,并且允许远程登陆,是不太好的做法。
graetdk
2020-07-22 19:39:41 +08:00
@tctc4869 你问住我了。。。你可以研究研究,反正是开源的
tuchg
2020-07-22 19:41:33 +08:00
楼主可以看看 BI 工具,基本满足需求,我最近用了几天
tuchg
2020-07-22 19:42:30 +08:00
@tuchg 楼上说的应该都是数据库管理不是可视化,可视化看看 BI 很好用
lekai63
2020-07-22 19:46:12 +08:00
需求跟你有点像,区别是我的插入和更新逻辑稍微复杂些。
最后考虑用 go-admin 撸一个。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/692222

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX