往期回顾:
- DataWorks 功能实践速览01期——数据同步解决方案:为您介绍不同场景下可选的数据同步方案。
- DataWorks 功能实践速览02期——独享数据集成资源组:为您介绍进行数据同步时,可使用的资源组与网络连通方案、注意事项。
通过前两期的介绍,您可以了解使用DataWorks进行数据同步的主要知识点:数据同步方案和资源组,而在实际应用过程中,我们常常会需要将开发和生产环境进行隔离,开发环境用于数据同步测试,生产环境用于生产数据的同步处理。本期就为您介绍DataWorks实现开发与生产环境隔离的主要知识点。
功能推荐:标准模式——开发环境与生产环境隔离
为方便不同安全管控要求的用户生产数据,DataWorks为您提供简单模式和标准模式两种工作空间模式,其中简单模式无法设置开发环境和生产环境,而标准模式同时提供开发环境与生产环境,并将两个环境隔离开,您可以分别在开发环境和生产环境中进行数据任务处理。
Part1:简单模式与标准模式的DataWorks工作空间
首先为您介绍两种模式工作空间的主要区别。
简单模式 |
标准模式 |
在简单模式工作空间下,一个DataWorks空间下层对应一个MaxCompute项目(或一个EMR集群、Hologres数据库等),该环境即视为生产(PROD)环境。
|
在标准模式工作空间下,一个DataWorks空间下层对应两个MaxCompute项目(或两个EMR集群、Hologres数据库等),一个视为开发(DEV)环境,一个视为生产(PROD)环境。
|
由上可见,DataWorks的标准模式工作空间可以将开发、生产环境进行隔离,因此,如果您使用了标准模式后,进行数据访问与权限管控时,开发环境与生产环境的使用注意事项不一致。
Part2:不同模式工作空间的数据访问
您可以在DataWorks的工作空间配置 > 计算引擎信息区域,设置不同模式下,工作空间的数据访问模式。
计算引擎类型 |
环境 |
标准模式工作空间 |
简单模式工作空间 (开发环境即生产环境) |
MaxCompute |
开发环境 |
页面运行任务(不可选):默认为执行任务者(当前登录者) |
页面运行任务(不可选):默认为执行任务者(当前登录者) 调度访问身份(可选):
|
生产环境 |
调度访问身份(可选):
|
||
E-MapReduce |
开发环境 |
|
|
生产环境 |
|
||
Hologres |
开发环境 |
页面运行任务(不可选):默认为执行任务者(当前登录者)。 |
页面运行任务(不可选):默认为执行任务者(当前登录者) 调度访问身份(可选):
|
生产环境 |
调度访问身份(可选):
|
Part3:不同模式工作空间的权限管理特征
DataWorks采取RBAC权限模型供用户管理DataWorks所有页面可见功能以及API的使用权限,同时这套权限体系与MaxCompute的RBAC角色体系存在天然的映射关系,详情可参见 成员及角色管理与成员角色与权限关系。不同工作空间类型的权限管理特征与优缺点不一致,以下表格为您对比介绍两种空间类型的权限细分特点。
细分特点 |
简单模式 |
标准模式 |
权限概述 |
在简单模式空间下,DataWorks的“开发”角色因为与所绑定MaxCompute项目的“Role_Project_Dev” Role进行了映射,因此DataWorks开发角色天然能够读取MaxCompute项目内的所有数据。 |
在标准模式空间下,DataWorks的“开发”角色因为与所绑定MaxCompute项目(dev环境)的“Role_Project_Dev” Role进行了映射,因此:
|
优点 |
简单、方便、易用。 仅需要授权数据开发人员“DataWorks开发角色”即可完成所有数据仓库开发工作。 |
安全、规范。
|
缺点 |
存在不稳定、不安全的风险。
|
流程相对复杂,一般情况下无法一人完成所有数据开发、生产流程。 |
MaxCompute引擎在不同模式下数据库表命名规范
简单模式下不区分开发环境和生产环境,开发库即生产库。标准模式下,支持开发环境和生产环境隔离,开发环境和生产环境的数据库表命名有所区别,如果需要在开发环境访问生产环境的数据库表,请根据以下命名规范严格区分数据库表名,避免误操作生产环境。
更多的简单模式与标准模式的区别可前往帮助中心。
场景实践:
权限管理与规范化数据开发:通过本实践,您可以了解使用标准模式的工作空间时,用户进行数据开发的标准流程与权限管控建议。