ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

DataEase 开源 BI 工具实战指南:快速部署、数据源接入与架构解析

DataEase 开源 BI 工具实战指南:快速部署、数据源接入与架构解析 DataEase 开源 BI 工具实战指南快速部署、数据源接入与架构解析【免费下载链接】dataease 人人可用的开源 BI 工具数据可视化神器。An open-source BI tool alternative to Tableau.项目地址: https://gitcode.com/GitHub_Trending/da/dataeaseDataEase 是一款人人可用的开源 BI商业智能工具旨在帮助用户快速分析数据、洞察业务趋势并改进业务流程。本文以官方 README阿拉伯语版 docs/README.ar.md为骨架结合当前仓库中的安装脚本、控制命令、Compose 编排与数据源 SDK 源码完整讲解其核心定位、数据源能力、一键安装流程、配置参数与日常运维方案读完后你将能够独立完成 DataEase 的部署、配置、数据源接入与服务管理。什么是 DataEaseDataEase 是飞致云FIT2CLOUD出品的一款开源数据分析工具设计目标是让用户通过鼠标点击与拖拽即可完成数据分析并快速产出可视化图表、仪表板从而支撑业务改进与优化。它的核心体验在于低门槛——无需编写复杂代码通过简单的拖拽操作就能把数据转化为直观的业务洞察。依据官方文档DataEase 具有以下四大优势开源开放零门槛获取支持在线快速安装按月迭代更新简单易用极易上手通过鼠标点击和拖拽即可完成分析全场景支持支持多平台安装部署并提供多样化的嵌入Embedding选项安全分享支持多种数据分享方式同时确保数据安全。支持的数据源全景DataEase 对数据源的覆盖非常广泛官方文档明确列举了以下五类OLTP 数据库MySQL、Oracle、SQL Server、PostgreSQL、MariaDB、Db2、TiDB、MongoDB-BI 等OLAP 数据库ClickHouse、Apache Doris、Apache Impala、StarRocks 等数据仓库/数据湖Amazon RedShift 等数据文件Excel、CSV 等API 数据源。这一能力在源码层面可以得到直接印证在 DatasourceConfiguration.java 中定义了完整的DatasourceType枚举每个类型携带type类型标识、name显示名称、catalog分类OLTP/OLAP/DL/LOCALFILE/API、prefix/suffixSQL 标识符引用符与flag类型编号类型标识显示名称分类说明mysqlMysqlOLTP主力关系型数据库oracleORACLEOLTP使用双引号标识符pgPostgreSQLOLTP使用双引号标识符sqlServerSqlserverDL使用方括号[]标识符mariadbMariadbOLTPMySQL 分支db2Db2OLTP无引用符TiDBTiDBOLTP分布式 HTAPmongoMongoDBDL文档型数据库ckClickhouseOLAP列式分析数据库dorisApache DorisOLAP列式分析数据库impalaApache ImpalaOLAP大数据查询引擎StarRocksStarRocksOLAP列式分析数据库esElasticsearchOLAP使用双引号标识符h2H2OLAP内嵌测试数据库redshiftAWS RedshiftOLTP云数据仓库APIAPIAPIHTTP 接口数据源Excel/ExcelRemoteExcelLOCALFILE本地/远程文件数据源从代码结构看flag值如 mysql27、oracle1、ck11用于数据源类型的全局标识而prefix/suffix则决定了不同数据库在生成查询 SQL 时字段的引用方式如 MySQL 使用反引号、Oracle/PostgreSQL 使用双引号、SQL Server 使用方括号这是 DataEase 能屏蔽底层数据库差异、实现统一查询建模的关键设计之一。对应的数据源管理逻辑集中在 DataSourceManage.java它负责数据源节点的组织、类型识别与插件化扩展非内置类型可通过PluginManageApi查询插件数据源。快速开始一分钟在线安装官方文档给出的快速开始方式非常简洁准备一台2 核 CPU、4GB 内存以上的 Linux 服务器以root 用户执行以下一键安装脚本curl -sSL https://dataease.oss-cn-hangzhou.aliyuncs.com/quick_start_v2.sh | bash # 安装完成后默认登录信息 # 用户名: admin # 密码: DataEase123456这条命令对应的脚本逻辑保存在仓库的 quick_start.sh 中其执行链路大致如下探测下载服务器连通性通过curl -m 5检测github.com可达性失败则中止获取最新版本号调用 GitHub Releases APIapi.github.com/repos/dataease/dataease/releases用 Python 脚本过滤出符合v2.\d.\d正则的正式版本跳过prerelease下载在线安装包拼装dataease-online-installer-version-ce.tar.gz下载地址并解压执行安装进入解压目录调用/bin/bash install.sh完成真正的安装。安装流程拆解install.sh 做了什么仓库中的 install.sh 是安装过程的核心实现整体按以下步骤推进检查环境并初始化变量检测系统是否已安装 DataEase v2通过dectl version判断区分全新安装与升级安装两种模式同时检查安装目录磁盘剩余空间不足 20GB 会给出警告设置运行目录默认运行目录为DE_BASE/dataease2.0配置文件位于其下的conf目录初始化运行目录创建logs、conf、data/{mysql,static-resource,map,geo,...}、apisix/logs、task/logs等持久化目录并通过envsubst将templates下的模板渲染为实际配置详见下文安装 dectl 命令行工具将 dectl 复制到/usr/local/bin/dectl并建立软链调整系统设置若 SELinux 处于 Enforcing 则自动关闭若 firewalld 处于开启状态则放行${DE_PORT}端口安装 Docker已安装则跳过否则优先离线安装docker目录存在时在线则下载官方安装脚本同时写入/etc/docker/daemon.json将日志驱动限制为每个容器最多 3 个文件、每个 10MB安装 docker-compose优先使用系统已有的docker-compose否则尝试docker compose再不行则下载 v2.16.0 二进制加载 DataEase 镜像离线包场景下遍历images目录执行docker load -i注册 systemd 服务并启动将dataease.service安装到/etc/systemd/system/设置开机自启最后systemctl start dataease。安装完成后终端会输出访问地址http://服务器IP:8100社区版默认端口以及默认账号密码admin / DataEase123456。核心配置参数详解install.conf一键安装脚本通过环境变量驱动的配置模板系统完成参数注入所有可调参数集中定义在 install.conf下面按类别完整梳理基础配置参数默认值说明DE_BASE/optDataEase 安装/运行目录的父目录DE_PORT8100服务对外访问端口DE_LOGIN_TIMEOUT960登录超时时间分钟即默认 16 小时DE_INSTALL_MODEcommunity安装模式community社区版/enterprise企业版DE_CONTEXT_PATH空服务动态路径context-path数据库配置参数默认值说明DE_EXTERNAL_MYSQLfalse是否使用外部数据库false时随 Compose 一起拉起内置 MySQLDE_MYSQL_HOSTmysql-de数据库地址DE_MYSQL_PORT3306数据库端口仅外部数据库时生效DE_MYSQL_DBdataease数据库名DE_MYSQL_USERroot数据库用户名DE_MYSQL_PASSWORDPassword123mysql数据库密码如含特殊字符需用双引号包裹如DE_MYSQL_PASSWORDTest4^%*^DE_MYSQL_PARAMSautoReconnectfalseuseUnicodetrue...JDBC 连接参数字符编码、SSL、公钥检索等定时报告Playwright配置参数默认值说明DE_EXTERNAL_PLAYWRIGHTfalse是否使用外部 Playwright 服务DE_PLAYWRIGHT_SERVERhttp://de-playwright-api:3000/screenshotPlaywright 截图服务地址DE_PLAYWRIGHT_CONCURRENCY4截图并发数DE_PLAYWRIGHT_SHM_SIZE2gb共享内存大小API 网关APISIX配置参数默认值说明DE_EXTERNAL_APISIXfalse是否使用外部 APISIXDE_APISIX_DASHBOARD_PORT9000APISIX Dashboard 端口DE_APISIX_PORT9080APISIX 网关端口企业版入口同步模块与其它配置参数默认值说明DE_EXTERNAL_SYNC_TASKfalse是否使用外部同步任务模块DE_EXPORT_VIEWS_LIMIT100000视图导出条数上限DE_EXPORT_DATASET_LIMIT100000数据集导出条数上限DE_ORIGIN_LISThttp://localhost:8000允许的跨域来源列表DE_SERVERSdataease节点列表多节点部署时以逗号分隔如192.168.1.101,192.168.1.102DE_SPRING_PROFILE空application.yml 中可引入的其他配置文件这些环境变量最终会通过envsubst注入到 Spring Boot 模板 application.yml 中形成后端实际配置包括数据源连接串jdbc:mariadb://${DE_MYSQL_HOST}:${DE_MYSQL_PORT}/${DE_MYSQL_DB}、上传文件大小上限单文件/单请求均 500MB、APISIX 网关地址与密钥、导出限制、登录超时、多节点服务器列表等。日常运维dectl 控制命令安装完成后可以通过 dectl 管理 DataEase 服务的完整生命周期。它基于docker-compose自动兼容docker compose插件并依据.env中的DE_EXTERNAL_MYSQL等开关动态拼接 compose 文件。常用命令如下dectl status # 查看服务运行状态容器、磁盘、日志、健康检查 dectl start # 启动服务 dectl stop # 停止服务 dectl restart # 重启服务 dectl reload # 重新加载服务 dectl upgrade # 在线升级自动比对当前版本与 GitHub 最新 v2 版本 dectl backup # 备份服务打包 /opt/dataease2.0排除日志 dectl restore xxx.tar.gz # 从备份文件还原服务 dectl clear-images # 清理旧版本镜像及虚悬镜像 dectl clear-logs # 清理历史日志 dectl version # 查看当前版本与最新版本几个值得注意的实现细节upgrade会先通过_get_current_version从docker-compose.yml中解析当前镜像版本再调用 GitHub API 获取最新 v2 版本版本一致则跳过否则下载在线升级包并调用install.sh完成平滑升级backup默认会交互询问是否先停服以保证数据一致性也可以传stop参数显式停服备份备份文件命名为dataease-backup-YYYYMMDD_HHMMSS.tar.gzrestore会先停服、清空data/mysql/*再解压备份随后重新启动status中的健康检查会轮询容器状态最多 90 秒打印正在启动/正常运行/无法访问等实时状态。Docker Compose 架构组成DataEase 采用 Docker Compose 进行多服务编排安装目录 installer/dataease 下按职责拆分了多个 compose 文件docker-compose.yml核心服务dataease镜像为registry.cn-qingdao.aliyuncs.com/dataease/dataease:DE_TAG将宿主机${DE_PORT}映射到容器 8100 端口并挂载conf、logs、data/{static-resource,geo,map,appearance,exportData,plugin,font,i18n,report}、cache等持久化卷通过depends_on.condition: service_healthy等待数据库就绪docker-compose-mysql.yml内置 MySQL 8.4.11 服务带mysqladmin ping健康检查通过mysql.env、my.cnf与docker-entrypoint-initdb.d完成初始化数据持久化到data/mysql当DE_EXTERNAL_MYSQLtrue时该文件不会参与编排并会从主 compose 中移除depends_on依赖docker-compose-apisix.yml企业版使用的 APISIX 3.17.0 网关 etcd 3.5.10 注册中心挂载 cas-auth.lua 与 hmac-auth.lua 两个认证插件对外暴露${DE_APISIX_PORT}docker-compose-task.yml 与 docker-compose-playwright.yml分别承载同步任务模块与定时报告截图服务。在 dectl 中脚本会根据DE_EXTERNAL_MYSQL、DE_EXTERNAL_APISIX、DE_EXTERNAL_SYNC_TASK、DE_EXTERNAL_PLAYWRIGHT等开关自动决定加载哪些 compose 文件社区版仅使用内置 MySQL企业版DE_INSTALL_MODE ! community才会叠加 APISIX、任务与 Playwright 组件且首次启动时会自动生成随机的DE_APISIX_KEY并写入 APISIX 与后端配置。技术栈一览根据官方文档DataEase 的技术栈构成如下前端Vue.js共 500 个 Vue 组件文件可视化图表库AntV支撑拖拉拽式图表制作后端Spring Boot同时通过 sdk/extensions 提供数据源插件化扩展能力数据库MySQL内置部署版本为 MySQL 8.4.11数据处理Apache CalciteSQL 解析与优化、Apache SeaTunnel数据同步/同步任务基础设施Docker 容器化部署。这一组合使得 DataEase 既能开箱即用又具备向企业级扩展的弹性社区版覆盖完整 BI 分析闭环企业版在 APISIX 网关、同步任务、定时报告等组件加持下支持更复杂的多节点部署场景。安全与开源许可官方文档提示如果发现任何安全问题可通过 weifit2cloud.com 联系项目方进行上报。DataEase 采用GNU GPLv3开源协议授权。官方文档声明版权归 FIT2CLOUD飞致云所有Copyright (c) 2014-2024 FIT2CLOUD软件按原样AS IS分发不附带任何明示或暗示的担保。完整的许可证文本见 https://www.gnu.org/licenses/gpl-3.0.html。仓库内同时提供了多语言版本的项目说明除本中文解读外还可参考 英文版、繁体中文版、日语版、法语版、德语版、西语版、葡语版、印尼语版、韩语版、土耳其语版 等。总结从官方 README 出发结合仓库源码可以看到DataEase 以人人可用的开源 BI 工具为定位凭借覆盖 OLTP/OLAP/数据仓库/文件/API 的丰富数据源接入能力SDK 中由DatasourceType枚举统一建模、一行命令的在线快速安装quick_start.sh → install.sh、集中式环境变量配置install.conf以及完整的 dectl 运维命令体系构成了一个从部署、配置、数据接入到日常运维的完整闭环。对于希望快速搭建数据可视化平台或评估开源 BI 方案的团队按照本文步骤即可在 2 核 4G 的 Linux 服务器上完成一次端到端的落地实践。【免费下载链接】dataease 人人可用的开源 BI 工具数据可视化神器。An open-source BI tool alternative to Tableau.项目地址: https://gitcode.com/GitHub_Trending/da/dataease创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表