Dash是一个基于 DuckDB、免费开源、本地优先的数据探索与可视化工具,既可以直接在浏览器中运行,也可以作为插件嵌入到 DuckDB 中使用。

Dash 采用 C++ 语言开发,遵循 MIT 开源协议,代码托管在 GitHub:
https://github.com/gropaul/dash
功能特性
- 本地运行:Dash 不依赖远程服务器。在浏览器模式下,数据处理全部发生在本地浏览器;通过 DuckDB 插件的方式运行,数据同样在本地进行处理和存储。
- 基于 DuckDB:Dash 底层引擎直接使用 DuckDB,意味着天然具备SQL 查询能力、CSV、JSON、Parquet、Arrow 支持、高性能列式分析、零运维部署等优势。
- 可视化探索:Dash 提供了一个无限画布,节点可以包括SQL 查询、表格、图表、文本、下拉框等组件,支持自由拖拽节点、连接节点、重排布局等方式构建数据流。

- 查询链:Dash 节点之间可以通过拖拽连接线直接引用结果,系统可以建立依赖关系(类似 Excel 公式依赖),决定执行顺序并且自动重算下游节点的数据。

上游节点采用下拉组件时,可以实现交互式数据分析。
- 查询节点数据:画布中的节点不仅可以使用 SQL 进行引用,还可以被 Python 代码或者 CLI 作为数据源进行分析。
python
import duckdb
con = duckdb.connect()
con.execute("INSTALL dash FROM community; LOAD dash;")
con.execute("PRAGMA DASH;")
df = con.execute("SELECT * FROM dash.ref_monthly_revenue()").df()
- 可视化仪表盘:由文本、可视化图表和交互控件组成仪表盘(Dashboard),构建分析报告。

- AI 助手:Dash 集成了一个由大语言模型(OpenAI、Ollama、DeepSeek)驱动的聊天界面,可以访问当前连接的 DuckDB 数据库。它能够基于自然语言生成并且执行 SQL、展示结果、生成图表以及更新已打开的数据对象。
在线使用
Dash 提供了一个在线应用,可以通过浏览器直接使用,网址如下:

本地安装
Dash 也可以作为 DuckDB 的插件进行安装,命令如下:
sql
INSTALL dash FROM community;
LOAD dash;
PRAGMA dash;
执行以上命令即可启动 Dash UI,然后通过以下地址进行访问:

参考文档: