发布模式说明

最近更新时间:2026-05-15 15:26:21

我的收藏

概述

WeData 提供多种发布模式来实现开发与生产环境的隔离,满足不同安全等级和操作效率的需求。本文帮助您了解各发布模式的核心区别、适用场景和隔离能力,以便根据实际业务需求选择合适的方案。
注意:
不同发布模式对项目模式、环境部署有不同的前提要求,请在环境搭建前确认适合的发布模式。

发布模式总览

WeData 支持以下四种发布模式:
发布模式
功能名称
核心特点
项目内发布(标准模式)
发布中心
同一项目内,通过开发/生产环境隔离实现代码和数据的逻辑隔离
同账号跨项目发布(跨项目克隆)
跨项目克隆
同一账号下不同项目间克隆任务,实现任务的逻辑隔离
跨环境发布(导入导出)
迁移助手
不同项目间通过导入导出实现任务迁移,支持跨账号、跨地域
CI/CD
WeData Bundle
通过 Git + 自动化流水线实现持续集成与交付,支持跨项目、跨账号

核心差异对比

维度
项目内发布(标准模式)
同账号跨项目发布(跨项目克隆)
跨环境发布(导入导出)
CI/CD
功能名称
发布中心
跨项目克隆
迁移助手
WeData Bundle
项目模式要求
标准模式(DO 隔离模式)
简单模式
简单模式
简单模式
项目数量
1 个项目
同账号下 2 个及以上项目
2 个及以上项目(可跨账号)
2 个及以上项目(可跨账号)
跨地域支持
不支持
不支持(仅支持同地域)
支持
支持
跨账号支持
不支持
不支持
支持
支持
版本管理
平台内置版本管理
有发布记录,不支持回滚
有发布记录,不支持回滚
Git 版本管理
自动化程度
手动提交发布
手动执行克隆
手动导出导入
自动化流水线触发
审批流程
内置发布审批
内置发布审批
无内置审批
可通过 Git 合并审批实现
工作流调度模式支持
暂不支持
暂不支持
暂不支持
支持

隔离能力对比

隔离维度
项目内发布(标准模式)
同账号跨项目发布(跨项目克隆)
跨环境发布(导入导出)
CI/CD
网络
互通
互通
物理隔离
支持跨项目和跨环境两种模式。隔离情况分别对应跨项目克隆和跨环境发布
用户账号
互通
互通
物理隔离
同上
计算资源
物理隔离
物理隔离
物理隔离
同上
存储资源
物理隔离
物理隔离
物理隔离
同上
任务 ID
互通
逻辑隔离
物理隔离
同上
任务代码/配置
逻辑隔离(版本管理)
逻辑隔离
物理隔离
同上
项目成员
互通
逻辑隔离
物理隔离
同上
项目参数
逻辑隔离(开发/生产取值不同)
逻辑隔离
物理隔离
同上
执行资源组
互通
逻辑隔离
物理隔离
同上
数据源配置
逻辑隔离(开发/生产两套配置)
逻辑隔离
物理隔离
同上

成本与安全对比

维度
项目内发布(标准模式)
同账号跨项目发布(跨项目克隆)
跨环境发布(导入导出)
CI/CD
部署成本
低(1 套 WeData + 1 或 2 套引擎)
低(1 套 WeData + 2 套及以上引擎)
中高(1 套或多套 WeData + 对应引擎)
中(1 套或多套 WeData + 2 套及以上引擎 + Git 服务)
安全等级
中(数据物理隔离 + 任务逻辑隔离)
中(数据物理隔离 + 任务逻辑隔离)
高(完全物理隔离)
中高(数据物理隔离 + Git 管控)

环境准备说明

项目内发布(标准模式)

部署 1 套 WeData 产品(同集群、同 WeData 同项目)
部署 1 套或 2 套大数据引擎(如 1 个 EMR 集群创建 2 个数据库,或 2 个 EMR 集群)
创建 1 个标准模式项目,配置存算引擎的开发环境和生产环境

同账号跨项目发布(跨项目克隆)

部署 1 套 WeData 产品(同集群、同 WeData 平台,双项目隔离)
部署 2 套大数据引擎(如 2 个 EMR 集群 或 2 个地域的 DLC)
创建 2 个简单模式项目(1 个开发项目 + 1 个生产项目)

跨环境发布(导入导出)

部署 2 套 WeData 产品(可跨账号、跨地域)
部署 2 套大数据引擎
分别创建 1 个简单模式项目

CI/CD

部署 1 套 WeData 产品
部署 1 套或 2 套大数据引擎
创建 1 个或 2 个项目(通过 wedata.yml 配置 dev/prod 两个 target)
搭建 Git 仓库(如 GitLab、GitHub)
配置 CI/CD 流水线(如 .gitlab-ci.yml

发布模式选择建议

1. 选择项目内发布(标准模式):
更注重开发效率,对安全性要求相对一般的情况
团队中数据开发与运维人员不严格区分,但需要保护生产数据不被开发调试污染
希望在一个项目内完成开发和发布,操作简单高效,灵活度和效率相对高
需要内置审批流程管控发布质量
2. 选择同账号跨项目发布(跨项目克隆):
需要较好的隔离性,但成本上又相对可控的情况
开发与运维人员有一定分工,需要项目级别的逻辑隔离
同账号同地域下管理开发和生产环境
需要保留完整的任务依赖关系映射能力
后续有往物理隔离升级的可能
成本低,不涉及两套部署
3. 选择跨环境发布(导入导出):
对安全性要求很高,涉及安全敏感数据的情况
开发人员不允许接触生产环境,需要完全物理隔离
从管控、任务、数据三层全隔离
可接受较高的部署维护成本和较低的操作效率
4. 选择 CI/CD:
团队熟悉 Git 工作流,希望通过代码版本管理任务配置
需要自动化的持续集成与交付流程
希望通过 Git 分支策略(如 dev/prod)管控发布节奏
需要跨项目甚至跨账号的灵活部署能力

相关文档