找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

4165

积分

0

好友

583

主题
发表于 前天 21:08 | 查看: 27| 回复: 0

最近在 GitHub 闲逛时,我又发现了一个让人眼前一亮的新项目。这回不是什么花哨的前端框架,而是一个特别对“后端党”胃口的工具——Shaper

坦白说,现在市面上数据分析(BI)和可视化工具已经很多了,从功能庞杂的商业软件到各式各样的云服务,选择确实不少。但每次想要快速搭建一个内部数据看板,我的操作流程都出奇地一致:先用 SQL 客户端连上数据库,查询数据,导出为 CSV 文件,再导入某个图表工具里调整样式、配置筛选器。这一套“组合拳”打下来,大半个上午就没了,而且整个数据流转过程非常脆弱,像块苏打饼干,轻轻一碰就散架。

Shaper 的出现,让我眼前一亮。它的核心理念简单直接:既然所有数据的最终来源都可以通过 SQL 获取,那为什么不能用 SQL 来定义整个仪表盘呢?

简单来说,Shaper 是一个支持自主部署的开源数据可视化工具,完全由 SQL 驱动。后端用 Go 编写,前端基于 React,整个项目代码完全开放,通过 Docker 一条命令就能快速启动。开发者可以很轻松地加入我们的技术讨论。

1. 丰富的数据源支持

Shaper 几乎能连接我们日常使用的所有数据源:从本地的 CSV、JSON、Parquet、Excel、文本文件,到远程的 HTTP 文件、Amazon S3 存储,再到主流的 PostgreSQL、SQLite、MySQL 等数据库,当然还包括其内置的 DuckDB 引擎。

更有意思的是,借助 DuckDB 强大的扩展生态,Shaper 还能间接访问 Snowflake、BigQuery、ClickHouse、Arrow Flight、Iceberg 乃至 Google Sheets 等数据源。这意味着我们可以通过一个统一入口,轻松访问分散在各个角落的数据。

2. 动态交互的嵌入式仪表盘

Shaper 构建的仪表盘不仅高度动态,交互体验也很流畅。你可以轻松添加筛选条件,让所有图表组件实时联动更新。同时,它支持为图表添加注释,还能灵活控制各个部件的显示与隐藏。

Shaper SQL查询与客户满意度趋势折线图仪表盘

对于想在自己产品中嵌入分析功能的开发者来说,Shaper 提供了 JavaScript 嵌入式 API,可以无缝地将仪表盘集成到 Web 应用中,配合 JWT Token 机制来管理访问权限,实现安全可控的内部分享。

3. 自动化的工作流支持

Shaper 对生产环境的需求考虑得很周到。它支持创建定时任务,自动执行 SQL 脚本,无论是定时拉取远程数据、执行 ETL 转换还是清理历史数据都不在话下。

更关键的是,整个仪表盘的构建完全基于 SQL 脚本文件,这意味着我们可以像管理代码一样,用任意文本编辑器来编写和维护,配合 Git 进行版本控制,轻松融入团队的 CI/CD 流程。

Shaper API密钥创建成功弹窗界面

4. 便捷的分享与导出

分析结果只有被看到才有价值。Shaper 支持生成可在线分享的仪表盘链接,并可以设置密码保护,方便又安全地与他人协作。同时,分析结果可以导出为 CSV、Excel 等格式,或直接生成精美的 PDF 报告,满足不同场景的需求。

Shaper仪表盘访问权限设置对话框

5. 一键部署体验

Shaper 的部署非常友好,官方推荐的 Docker 方式简单得不能再简单:

docker run --rm -it -p5454:5454 -v ./mydata:/data taleshape/shaper

这条命令会拉取最新镜像,映射端口并挂载本地目录用于数据持久化。启动后,浏览器访问 http://localhost:5454,点击 “+ New” 就能开始创建第一个可视化仪表盘。

6. 直观的使用体验

写段 SQL 查数据,在传统工具里还得手动点选“这里用柱状图”、“那里显示成表格”。但在 Shaper 中,你可以在编辑框里直接告诉它:

SELECT 'Sessions per Week'::LABEL;
SELECT
  date_trunc('week', created_at)::XAXIS,
  category::CATEGORY,
  count()::BARCHART_STACKED,
FROM dataset
GROUP BY ALL ORDER BY ALL;

然后它就会自动生成一个可交互的图表,整个过程行云流水。

Shaper Sessions Demo 仪表盘概览

开源地址:https://github.com/taleshape-com/shaper

惊讶的卡通表情包




上一篇:绩效拿C也不加班?一位开发者的职场清醒账
下一篇:Spring Boot 实现大文件断点续传:3GB 文件上传不断网
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-3-17 16:32 , Processed in 0.607837 second(s), 39 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表