同一个dataworks工作空间下,能进行代码隔离吗?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
在DataWorks中,是否可以在同一个工作空间下实现代码隔离,取决于所使用的工作空间模式。以下是详细解答:
在简单模式下,无法实现开发环境和生产环境的代码隔离。
- 原因:
- 简单模式仅支持一个环境(即生产环境),所有操作都在该环境中进行。 - 开发人员可以直接对生产环境中的表、资源、函数等进行操作,缺乏有效的隔离机制。 - 数据源也只有一个,无法区分开发和生产环境的数据源。
在标准模式下,可以实现开发环境和生产环境的代码隔离。
- 实现方式:
- 数据源隔离:标准模式支持为开发环境和生产环境分别创建物理隔离的数据源。例如,开发环境和生产环境可以绑定不同的云实例、项目或数据库。 - 任务隔离:开发环境的任务默认不进行周期调度,仅在发布至生产环境后才会执行周期调度。 - 权限隔离:开发环境和生产环境使用不同的身份访问数据源。例如,开发环境默认以“任务执行者”身份运行任务,而生产环境则使用指定的身份(如阿里云主账号、RAM用户或RAM角色)执行调度任务。
如果当前使用的是简单模式,并希望实现代码隔离,建议将工作空间升级为标准模式。
- 升级影响:
- 升级后,数据源会被拆分为开发环境和生产环境两套配置,从而实现环境隔离。 - 开发环境和生产环境的代码、计算资源、权限等均会分离,提升开发流程的安全性和规范性。
如果您正在使用简单模式并希望保留现有代码,可以通过创建两个简单模式工作空间(一个作为开发环境,一个作为生产环境)并通过跨空间发布的方式实现部分隔离,但这种方式存在生产环境代码更新入口不唯一的缺点,仍建议升级为标准模式。
DataWorks基于MaxCompute/Hologres/EMR/CDP等大数据引擎,为数据仓库/数据湖/湖仓一体等解决方案提供统一的全链路大数据开发治理平台。