☰
nao支持12+数据仓库连接:从BigQuery到DuckDB,一站式接入你的数据栈
2026/10/11 9:05:44 网站建设 项目流程

【免费下载链接】nao

👾 nao is an open source analytics agent. (1) Create context with nao-core cli, (2) deploy nao chat interface for everyone

项目地址:https://gitcode.com/gh_mirrors/nao4/nao
点击查看免费下载

nao 是一款开源数据分析智能体(Analytics Agent),核心能力是一站式数据仓库连接:无论你的数据放在 BigQuery、Snowflake、Databricks 还是本地 DuckDB 文件里,只需在一份配置文件里声明,nao 就能把表结构、字段描述、数据样例自动同步成 Agent 的"上下文",让团队成员用自然语言直接查询自己的数据栈。

一、15 种数据仓库,一个配置格式

nao 的数据库支持集中定义在 cli/nao_core/config/databases/ 目录中,每种引擎都有独立的连接器和专属优化逻辑:

类别支持的引擎
云数仓BigQuery、Snowflake、Redshift、Databricks、Microsoft Fabric、Athena、StarRocks
联邦查询Trino、ClickHouse、MotherDuck、DuckLake
关系型数据库PostgreSQL、MySQL、MSSQL
本地分析DuckDB

所有类型都继承自统一的基类 base.py,这意味着:换引擎 = 换一段 YAML 配置,而不是换一套工具链。你的分析规则、测试用例、上下文文档全部复用。

二、三步接入你的数据仓库

接入流程由 nao-core CLI 驱动,全程交互式引导,无需手写连接串:

第 1 步:安装并初始化

pip install nao-core nao init

nao init会依次询问项目名称、要连接的数据库(可选,支持从 15 种类型中任选)、代码仓库、LLM Key 等,最后生成项目脚手架和 nao_config.yaml。

第 2 步:同步上下文

nao sync

这一步会把数据库的表结构、字段类型、数据预览等渲染成 Markdown 上下文文件。仓库自带的示例项目 example/databases/type=duckdb/database=jaffle_shop/ 就展示了 sync 后的 40+ 张表文档。

第 3 步:启动聊天

nao chat

浏览器打开http://localhost:5005,即可用自然语言提问。想排查连接问题随时运行nao debug,还能用nao test对 Agent 做单元测试(见 test/)。

三、数据库配置长什么样?

参考仓库中的 example/nao_config.yaml,一个 DuckDB 连接只需 10 来行:

databases: - name: duckdb-jaffle-shop type: duckdb path: ./jaffle_shop.duckdb templates: [columns, preview] include: [] exclude: []

各引擎的专属字段差异不小,举几个典型例子:

  • BigQuery(bigquery.py):支持 SSO/服务账号认证、dataset_id默认数据集、max_query_size查询费用护栏,还能通过partition_filters为分区表指定预览过滤条件
  • DuckDB(duckdb.py):只需一个path指向.duckdb文件,本地文件默认以只读方式打开并禁用外部访问,保证安全
  • Snowflake(snowflake.py):支持外部浏览器 SSO、密钥对认证、Programmatic Access Token 等多种认证方式
  • PostgreSQL(postgres.py):标准 host/port/user/password,最熟悉的接入方式

每个连接都支持templates选项,决定为每张表生成哪些上下文文档:columns(字段)、preview(数据预览)、profiling(数据剖析)、query_history(历史查询)、ai_summary(AI 摘要),按需勾选即可控制同步成本。

四、不只是"连上",还有精细管控

面向生产环境,nao 提供了数据访问层面的细粒度控制(同样定义在 base.py):

  • 🎯include / exclude:用 Glob 模式只纳入analytics.dim_*这类核心表,排除temp_*临时表
  • 🔒allow_listed_only:开启后 Agent 生成的 SQL 只能查询已同步进上下文的表,杜绝"查错表"
  • 🚫exclude_columns:按schema.table.column排除敏感列(如*.ssn),从源头防泄漏
  • 💰max_query_size(BigQuery):执行前先做 dry-run 估算扫描量,超预算直接拦截

五、总结

nao 的数据接入理念可以用一句话概括:声明式配置 + 自动同步 + 自然语言查询。从 BigQuery 到 DuckDB 的 15 种数据源共用同一套 nao_config.yaml 格式和 CLI 工作流(init → sync → chat),数据团队建好一次上下文,业务同学就能立刻在聊天界面里提问、出图、分享分析结论。

如果你想上手试试,可以从仓库内置的 example/ 示例项目开始——它附带了一个完整的 jaffle_shop DuckDB 数据库,pip install nao-core之后几分钟就能看到效果。

【免费下载链接】nao

👾 nao is an open source analytics agent. (1) Create context with nao-core cli, (2) deploy nao chat interface for everyone

项目地址:https://gitcode.com/gh_mirrors/nao4/nao
点击查看免费下载

相关推荐

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询