EDA 介绍与选型指南
EDA(Edalitics,jortilles/EDA)开源 Web 数据分析与 BI 平台介绍与选型指南:元数据驱动的无代码仪表盘架构、15 类数据源连接、KPI 告警与 RLS 行级安全、快速开始,及与 Metabase/Redash/Superset 的量化选型对比。
EDA 介绍与选型指南
目标:说清 EDA(Edalitics)是什么、架构与功能边界在哪、适合谁用,并用同赛道开源 BI 工具(Metabase、Redash、Superset)做一轮带数据的横向对比,帮助读者在一小时内完成"认知 + 选型"决策。本文为认知篇,全部信息来自官方渠道联网溯源(标注来源与查询日期 2026-10-30),不含本地实测;部署、配置与 API 细节见本专栏后续各篇。
一、环境信息
本篇是介绍与选型指南(A1 认知篇),不依赖本地环境,所有版本号、星数、发布时间均于 2026-10-30 通过以下官方渠道实查取得:
- 官方网站:
https://www.edalitics.com(SaaS 服务入口与产品介绍) - 官方文档站:
http://doc.edalitics.com(README "Documentation" 节指向) - 代码仓库:
https://github.com/jortilles/EDA(Releases Atom 源releases.atom) - 社区数据:shields.io 徽章接口(
img.shields.io/github/stars/jortilles/EDA.json,返回212;img.shields.io/github/commit-activity/m/jortilles/EDA.json,返回74commits/月) - 技术栈与默认凭证:仓库
master分支README.md与eda/eda_api/package.json、eda/eda_app/package.json(版本声明分别为3.2.0开发版与3.1.2)
⚠️ 说明:GitHub API(
api.github.com)在查询当日不可用,星数与提交活跃度改由 shields.io 徽章接口取证(该接口返回 JSON{"label":"stars","message":"212",...}),版本列表由 GitHub Releases Atom 源取证,两者均为官方数据的直接镜像,可信度等同于仓库页。
二、软件概述
EDA,现名 Edalitics(前身 "Enterprise Data Analytics",仓库 jortilles/EDA),是西班牙软件公司 Jortilles 开源的数据分析与仪表盘(BI)平台。其定位在 README 第一段写得直白:让数据探索与可视化"对非技术用户极其简单,同时为高级分析师保留强大能力"。项目采用 AGPL-3.0 许可证发行(README "License" 节,查询日期 2026-10-30)。
产品有两种消费形态:一是官方托管的 SaaS 服务(edalitics.com,免费试用层 free.edalitics.com),二是自托管——官方最简部署是一条 docker run -p 80:80 jortilles/eda:latest(README "Run edalitics with Docker" 节,标注为 recommended),默认管理员账号 eda@jortilles.com / 密码 default(README "Default credentials" 节)。本专栏后续各篇围绕自托管形态展开。
它是典型的元数据驱动BI:用户先对源库建"数据模型"(把表、列、关系组织成业务人员可理解的树),再基于模型无代码拼装图表与仪表盘;同时为高级用户保留直写 SQL 的模式。README 概括为两步:1. Create a data model;2. Create nice reports。
版本与活跃度(2026-10-30 取证):
| 项目 | 值 | 来源 |
|---|---|---|
| 最新稳定发布 tag | edalitics-3.1.2(2026-08-10) | GitHub Releases Atom 源 |
上一版 edalitics-3.1.1 | 2026-06-26 发布,新增 GA4/Holded/Odoo 连接器、DuckDB 引擎支持、KPI Deviation 可视化 | 同上(Release Notes) |
| GitHub 星数 | 212 | shields.io 徽章接口 |
| 提交活跃度 | 约 74 commits/月 | shields.io commit-activity 徽章 |
| 仓库内版本声明 | 前端 3.1.2 / 后端 API 3.2.0(master 开发分支) | package.json |
发布节奏上,3.1.x 在 2026 年保持约每两个月一个功能版的速率(3.1.1 于 6 月、3.1.2 于 8 月),项目处于活跃维护期,但社区体量小(数百星量级),属于"小众但活着"的长尾开源项目。
💡 技术拓展:开源 BI 工具的"数据接入模型"主要有三类——
模型 机制 代表工具 取舍 直连推查询(query pushdown) 不抽数,图表实时向源库下发 SQL EDA、Metabase、Redash、Superset 零 ETL、数据实时,但源库负载随看板使用增长 抽取/缓存模式 把数据抽到内部引擎再查询 Metabase(同步+缓存)、Superset(结果缓存) 查询快,但需要同步调度与存储 内嵌列存引擎 CSV/Excel 抽入内嵌 DuckDB 再分析 EDA(3.1.1 起内置 DuckDB) 无库用户也能分析文件数据 EDA 实际是"直连推查询为主 + DuckDB 兜底文件数据"的组合:数据库类数据源实时下推,文件类数据源(CSV/Excel)经上传导入 DuckDB 后分析。
三、核心架构
以下架构信息来自仓库 master 分支源码与 Docker 镜像构建文件(Dockerfile、eda/docker_run.sh、eda/eda_api 路由定义,查询日期 2026-10-30):
浏览器
│ http://<host>/
▼
┌─────────────────────────────────────────────────────┐
│ 单个一体化服务(官方镜像 jortilles/eda) │
│ │
│ Apache2 (:80) │
│ ├─ / Angular 前端静态资源 │
│ └─ /edapi/ ──反代──▶ Node.js/Express API (:8666) │
│ ├─ 用户/组/角色管理 │
│ ├─ 数据源与数据模型 │
│ ├─ 仪表盘与图表查询 │
│ ├─ 定时任务与邮件(KPI 告警) │
│ └─ AI 助手 / MCP 端点 │
│ MongoDB 8.0 (:27017,仅本机访问) │
│ └─ 元数据库 EDA:用户、组、数据源模型、仪表盘定义 │
└─────────────────────────────────────────────────────┘
│ 实时下推查询(各驱动直连) │ CSV/Excel 经 DuckDB
▼ ▼
MySQL / PostgreSQL / SQL Server / Oracle 内嵌 DuckDB 文件引擎
Vertica / ClickHouse / Snowflake / BigQuery
MongoDB / JSON WebService / GA4 / Odoo / Holded
- 一体化部署单元:官方镜像把 Angular 前端静态文件(Apache 托管)、Node.js/Express 后端 API(PM2 守护,监听 8666)和 MongoDB 8.0(元数据存储,
--dbpath /eda/mongo/data)打包在同一个服务单元内,对外只暴露 80 端口。Apache 通过ProxyPass /edapi/把 API 请求反代到本机 8666(eda/000-default.conf)。这意味着自托管的运维面很窄:一个服务、一个数据目录、一个端口。 - 元数据存 MongoDB:用户、组、数据源连接配置、数据模型、仪表盘布局全部存于内置 MongoDB 的
EDA库(docker_run.sh初始化users/groups/dashboard/data-source/files/features六个集合)。业务数据不落 EDA——所有查询实时下推到源库。 - 数据源连接层:后端为每类数据源实现独立连接器(
eda_api/lib/services/connection/db-systems/下 mysql、pg、sqlserver、oracle、vertica、clickhouse、snowflake、bigquery、mongodb、duckdb、json-webservice 等),支持自定义连接池大小(poolLimit)、SSL、连接测试与结果缓存开关(allowCache/optimize)。 - 安全模型:内置 EDA_ADMIN(管理员)、EDA_DATASOURCE_CREATOR(可建数据源)、EDA_RO(只读)三种角色组;数据模型上可配表级授权(
table_granted_roles)与 RLS 行级安全(row_granted_roles),README 将其列为关键特性;另支持 SAML/Google/Microsoft SSO 登录(eda_api路由含auth/saml、auth/google、auth/microsoft)。 - 可编程接口:后端自带 OpenAPI 描述文件(
eda_api/openapi.json,66 个端点,覆盖认证、数据源、仪表盘、查询、文件上传、AI 助手、MCP),并以pm2运行;官方 API 文档在 doc.edalitics.com。本专栏《EDA API 使用详解》一篇按域实测了核心端点。
💡 技术拓展:自托管 BI 的元数据存储选型常见三种——
选型 代表 取舍 关系库(MySQL/PG) Metabase、Redash 运维人员熟悉,备份恢复路径成熟 内嵌文件库(H2/SQLite) Metabase 默认 零依赖最简,但不宜多实例 文档库(MongoDB) EDA 模型/布局类嵌套文档天然契合,但引入一类新组件的运维成本 EDA 选择 MongoDB 并直接内置在发行单元里,用户无需自备——代价是它不提供外接 MongoDB 的官方配置项,备份即备份内置库数据目录。
四、功能特性
以下特性清单来自官方 README、Release Notes(3.1.1/3.1.2)与文档站(查询日期 2026-10-30):
- 无代码仪表盘:拖拽式建图表,官方宣称"无需写代码,几分钟出仪表盘"(README 使命陈述);3.1.1 改进了仪表盘编辑体验与样式选项。
- 可视化类型:柱/线/饼/表格/地图(内置西班牙等地行政边界 GeoJSON)、KPI、KPI Trend、Knob、气泡图、树图、散点、漏斗、旭日图等(3.1.1 Release Notes);3.1.2 新增 KPI Deviation(目标偏差)可视化。
- 数据模型(Tree mode):把多表组织成业务树,业务人员按树导航取数,无需理解 JOIN(README "Tree mode")。
- 高级 SQL 模式:直写 SQL 查询源库(README "Advanced SQL query mode")。
- KPI 与邮件告警:定义 KPI 阈值,超限自动发邮件;邮件含图表截图(镜像内置 Playwright Chromium 用于渲染截图,
Dockerfile注释 "Dependencias de chronium para el envio por correo")。 - 公开分享:仪表盘可发布为公开 URL 供外部访问(README "Public dashboards")。
- 行级安全(RLS):按用户/组约束数据可见范围(README "Row Level Security")。
- 数据源连接器:MySQL、PostgreSQL、SQL Server、Oracle、Vertica、ClickHouse、Snowflake、BigQuery、MongoDB、JSON WebService、DuckDB、GA4、Holded、Odoo 及 CSV/Excel 文件导入(3.1.1 Release Notes 与
datasource.controller.ts白名单)。 - AI 助手:内置自然语言问数与建议接口(
/assistant/*、/ia/*、/arima/*时序预测端点),支持外部大模型接入配置。 - SSO:SAML、Google、Microsoft OAuth 登录(
auth/*路由)。 - 界面语言:支持英语、西班牙语等多语言界面(官方演示站可切换,中文支持未见于官方文档明示)。
五、快速开始(最小可用示例)
官方主推的试用方式是单命令拉起一体化服务(README "Why Edalitics?" 节原文,官方镜像渠道引用):
docker run -p 80:80 jortilles/eda:latest
浏览器打开 http://<服务器IP>,使用默认管理员账号 eda@jortilles.com(密码 default)登录即可开始建模建图。SaaS 体验可访问 https://free.edalitics.com。官方文档入口为 http://doc.edalitics.com,提供从建模型到建报表的视频教程(README 内链 YouTube:数据模型 Px709s0ftiI、报表 RFznLe9kxHU)。
⚠️ 注意:上面的单命令适合快速体验;生产自托管应使用编排方式管理数据目录持久化、随开机自启与升级回滚,且默认密码必须第一时间修改。完整部署步骤、持久化与初始化踩坑(官方首次初始化逻辑对挂载数据目录敏感,直接挂空目录会跳过管理员账号与反向代理配置)见本专栏《EDA Docker Compose 部署指南》。
六、适用场景与限制
适用场景:
- 中小团队需要"连上业务库就出报表",无专职数据工程师,希望业务人员自助取数(数据模型/Tree mode + 无代码图表正是为此设计)。
- 数据源类型杂(MySQL/PG/Oracle/ClickHouse/Snowflake/Excel 混合),想要一个工具统一建看板;EDA 的连接器清单覆盖了主流关系库、数仓与 SaaS 业务系统(GA4/Odoo/Holded)。
- 需要内网私有化部署且对行级权限有要求的报表场景(RLS + 组角色 + 表级授权三层控制)。
- 想要 KPI 阈值邮件告警这类"轻监控 + 报表"二合一的开箱能力。
限制与风险(选型前必须知晓):
- 社区体量小:212 星、约 74 commits/月(shields.io,2026-10-30),遇到问题可检索的中文/英文社区资料远少于 Metabase/Superset,深度排障常需读源码或直接联系 Jortilles(商业支持)。
- AGPL-3.0 传染性:若把 EDA 二次开发后作为网络服务提供给外部用户,按 AGPL 须开放修改后的源码;商业产品集成前需法务评估。
- 一体化单元的扩展边界:官方发行形态是单服务一体化(前端+API+元数据库同进程组),无官方多实例/高可用部署路径;规模上限受单机约束,适合部门级而非企业级大规模并发。
- 元数据绑定 MongoDB:备份、迁移、监控需覆盖 MongoDB,对只熟悉关系库的运维团队有额外学习成本。
- 文档以英/西语为主:官方文档站与视频教程无中文,中文用户有一定上手门槛。
- 开发版与稳定版并存:GitHub 最新稳定 tag 为 3.1.2,但 Docker Hub
latest镜像由 master 分支持续构建(仓库内 API 版本声明 3.2.0 开发版),生产固定版本时需注意镜像 tag 策略。
七、同类选型对比
同赛道主流开源 BI/数据可视化工具对比(数据来源:GitHub Releases Atom 源、shields.io 徽章接口、各官方文档站;查询日期统一为 2026-10-30;Metabase 星数当日接口未返回有效数值,以官方文档陈述定性):
| 维度 | EDA (Edalitics) | Metabase | Redash | Superset |
|---|---|---|---|---|
| GitHub 星数 | 212 | 数万级(该品类最流行开源 BI 之一) | 29k | 75k |
| 最新版本 | edalitics-3.1.2(2026-08-10) | 持续滚动发布 | v10/11 线 | 6.x 线 |
| 许可证 | AGPL-3.0 | AGPL-3.0(开源版) | BSD-3-Clause | Apache-2.0 |
| 技术栈 | Node.js + Angular + 内置 MongoDB | Java/Clojure + React | Python/Flask + React + SQL 元库 | Python/Flask + React + SQL 元库 |
| 部署重量 | 一体化单元(内含元数据库,单端口) | 单服务(内嵌 H2 或外接 MySQL/PG) | 多服务(server+worker+PostgreSQL+Redis) | 多服务(web+worker+Redis+元库) |
| 数据源 | 14 类数据库/SaaS + DuckDB 文件 | 20+ 数据库 | 30+ 数据库/REST | 30+ 数据库(SQLAlchemy 生态) |
| 无代码建模 | 数据模型/Tree mode(面向业务树导航) | 图形化提问界面 | 弱(以 SQL 查询为中心) | 数据集 + 图表向导 |
| SQL 直查 | 支持(高级模式) | 支持(Native query) | 核心能力(查询编辑器起家) | 支持(SQL Lab) |
| 行级安全 | 支持(RLS 行/表授权) | 企业版功能 | 需查询参数模拟 | 支持(RLS 子句,核心版) |
| 告警 | KPI 阈值邮件告警(内置截图) | 企业版 | 需外接 | 需外接(Alert Report 部分版) |
| 公开分享 | 支持 | 支持 | 支持 | 支持 |
| AI 能力 | 内置助手 + MCP 端点 + ARIMA 预测 | 商业 AI 功能 | 无 | 实验性 |
| 中文界面 | 未明示 | 社区语言包齐全 | 部分翻译 | 较完整 |
| 适合谁 | 想要"一体化最简自托管 + 业务树建模 + KPI 告警"的中小团队 | 想要最成熟自助 BI 体验与社区生态 | 数据分析师主导、SQL 工作流 | 数据工程团队、大规模可视化平台 |
"如果……则……"选型建议:
- 如果你要的是部署运维最省心的一体化 BI(一个服务、一个数据目录、内置告警),且数据源以关系库/文件为主、规模在部门级——EDA 值得一试,它的"开箱即用程度"高于 Redash/Superset。
- 如果你需要成熟社区、丰富教程与中文资料,或未来可能多实例扩展——选 Metabase(自助体验最好)或 Superset(可视化能力与扩展性最强),两者社区规模比 EDA 大两个数量级。
- 如果团队工作流以 SQL 为中心(分析师写查询、互相复用、结果导出),Redash 的查询编辑器生态仍是最佳匹配。
- 如果主要消费文件数据(CSV/Excel)无库可用——EDA 内置 DuckDB 引擎是四者中唯一的原生方案(3.1.1 起),Metabase/Redash/Superset 需先落数据库。
- 如果涉及把 EDA 改造后对外提供服务——注意 AGPL 义务;Superset(Apache-2.0)/Redash(BSD)在这方面约束最小。
八、参考链接
- 官方网站(SaaS 与产品介绍):
https://www.edalitics.com - 官方文档站:
http://doc.edalitics.com - 免费试用层:
https://free.edalitics.com - 代码仓库:
https://github.com/jortilles/EDA - 发布列表:
https://github.com/jortilles/EDA/releases(本篇取证用 Atom 源:https://github.com/jortilles/EDA/releases.atom) - Docker Hub 官方镜像:
https://hub.docker.com/r/jortilles/eda - 数据模型教程视频:
https://youtu.be/Px709s0ftiI;报表教程:https://youtu.be/RFznLe9kxHU - 站内延伸阅读:《Metabase 0.64 介绍与选型指南》、《Superset 6.1.0 介绍与选型指南》、《EDA Docker Compose 部署指南》