简介:DataWorks功能实践系列,帮助您解析业务实现过程中的痛点,提高业务功能使用效率!

往期回顾:

  • DataWorks 功能实践速览01期——数据同步解决方案:为您介绍不同场景下可选的数据同步方案。
  • DataWorks 功能实践速览02期——独享数据集成资源组:为您介绍进行数据同步时,可使用的资源组与网络连通方案、注意事项。

通过前两期的介绍,您可以了解使用DataWorks进行数据同步的主要知识点:数据同步方案和资源组,而在实际应用过程中,我们常常会需要将开发和生产环境进行隔离,开发环境用于数据同步测试,生产环境用于生产数据的同步处理。本期就为您介绍DataWorks实现开发与生产环境隔离的主要知识点。

功能推荐:标准模式——开发环境与生产环境隔离

为方便不同安全管控要求的用户生产数据,DataWorks为您提供简单模式标准模式两种工作空间模式,其中简单模式无法设置开发环境和生产环境,而标准模式同时提供开发环境与生产环境,并将两个环境隔离开,您可以分别在开发环境和生产环境中进行数据任务处理。

Part1:简单模式与标准模式的DataWorks工作空间

首先为您介绍两种模式工作空间的主要区别。

简单模式

标准模式

在简单模式工作空间下,一个DataWorks空间下层对应一个MaxCompute项目(或一个EMR集群、Hologres数据库等),该环境即视为生产(PROD)环境。

在标准模式工作空间下,一个DataWorks空间下层对应两个MaxCompute项目(或两个EMR集群、Hologres数据库等),一个视为开发(DEV)环境,一个视为生产(PROD)环境。

由上可见,DataWorks的标准模式工作空间可以将开发、生产环境进行隔离,因此,如果您使用了标准模式后,进行数据访问与权限管控时,开发环境与生产环境的使用注意事项不一致。

Part2:不同模式工作空间的数据访问

您可以在DataWorks的工作空间配置 > 计算引擎信息区域,设置不同模式下,工作空间的数据访问模式。

计算引擎类型

环境

标准模式工作空间

简单模式工作空间

(开发环境即生产环境)

MaxCompute

开发环境

页面运行任务(不可选):默认为执行任务者(当前登录者)

页面运行任务(不可选):默认为执行任务者(当前登录者)

调度访问身份(可选):

  • 阿里云主账号
  • 阿里云RAM角色
  • 任务负责人:任务Owner账号的身份

生产环境

调度访问身份(可选):

  • 阿里云主账号
  • 阿里云RAM用户
  • 阿里云RAM角色

E-MapReduce

开发环境

  • 快捷模式下访问身份:统一使用集群内的Hadoop用户。
  • 安全模式下访问身份:任务执行者
  • 快捷模式下访问身份:统一使用集群内的Hadoop用户。
  • 安全模式下访问身份(可选):
    • 任务责任人
    • 阿里云主账号
    • 阿里云RAM用户

生产环境

  • 快捷模式下访问身份:统一使用集群内的Hadoop用户。
  • 安全模式下访问身份(可选):
    • 任务责任人
    • 阿里云主账号
    • 阿里云RAM用户

Hologres

开发环境

页面运行任务(不可选):默认为执行任务者(当前登录者)。

页面运行任务(不可选):默认为执行任务者(当前登录者)

调度访问身份(可选):

  • 阿里云主账号
  • 阿里云RAM用户

生产环境

调度访问身份(可选):

  • 阿里云主账号
  • 阿里云RAM用户

Part3:不同模式工作空间的权限管理特征

DataWorks采取RBAC权限模型供用户管理DataWorks所有页面可见功能以及API的使用权限,同时这套权限体系与MaxCompute的RBAC角色体系存在天然的映射关系,详情可参见 成员及角色管理与成员角色与权限关系。不同工作空间类型的权限管理特征与优缺点不一致,以下表格为您对比介绍两种空间类型的权限细分特点。

细分特点

简单模式

标准模式

权限概述

在简单模式空间下,DataWorks的“开发”角色因为与所绑定MaxCompute项目的“Role_Project_Dev” Role进行了映射,因此DataWorks开发角色天然能够读取MaxCompute项目内的所有数据

在标准模式空间下,DataWorks的“开发”角色因为与所绑定MaxCompute项目(dev环境)的“Role_Project_Dev” Role进行了映射,因此:

  • DataWorks开发角色天然能够读取MaxCompute项目(dev环境)内的所有数据。
  • 由于没有和MaxCompute项目(PROD环境)的role映射,因此默认情况下DataWorks开发角色无MaxCompute(PROD环境)的数据权限

优点

简单、方便、易用

仅需要授权数据开发人员“DataWorks开发角色”即可完成所有数据仓库开发工作。

安全、规范

  • 具备安全、规范的代码发布管控流程(包含代码评审、代码DIFF查看等功能),保障生产环境稳定性,避免不必要的因代码逻辑引起的脏数据蔓延或任务报错等非预期情况。
  • 数据访问得到有效管控,数据安全得以保障。

缺点

存在不稳定、不安全的风险。

  • 开发角色可以不经过任何人审批,随时新增、修改代码并提交至调度系统,给生产环境带来不稳定因素。
  • 面向MaxCompute计算引擎时,开发角色默认拥有当前MaxCompute项目所有表的读写权限,可随意对表进行增加、删除和修改等操作,存在数据安全风险。

流程相对复杂,一般情况下无法一人完成所有数据开发、生产流程。

MaxCompute引擎在不同模式下数据库表命名规范

简单模式下不区分开发环境和生产环境,开发库即生产库。标准模式下,支持开发环境和生产环境隔离,开发环境和生产环境的数据库表命名有所区别,如果需要在开发环境访问生产环境的数据库表,请根据以下命名规范严格区分数据库表名,避免误操作生产环境。

环境类型

标准模式

示例

开发环境

项目名_dev.表名

在projectA项目下创建一个开发库表user_info,则数据库表名为:projectA_dev.user_info。

生产环境

项目名.表名

在projectA项目下创建一个生产库表user_info,则数据库表名为:projectA.user_info。

更多的简单模式与标准模式的区别可前往帮助中心。

场景实践:

权限管理与规范化数据开发:通过本实践,您可以了解使用标准模式的工作空间时,用户进行数据开发的标准流程与权限管控建议。

原文链接:https://developer.aliyun.com/article/788461?

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

DataWorks 功能实践 — 生产开发环境隔离相关推荐

  1. DataWorks 功能实践速览03期 — 生产开发环境隔离

    简介: DataWorks功能实践系列,帮助您解析业务实现过程中的痛点,提高业务功能使用效率! 往期回顾: DataWorks 功能实践速览01期--数据同步解决方案:为您介绍不同场景下可选的数据同步 ...

  2. DataWorks功能实践速览 05——循环与遍历

    简介:DataWorks功能实践系列,帮助您解析业务实现过程中的痛点,提高业务功能使用效率!通过往期的介绍,您已经了解到在DataWorks上进行任务运行的最关键的几个知识点,其中上期参数透传中为您介 ...

  3. DataWorks功能实践速览 — 参数透传

    简介: DataWorks功能实践系列,帮助您解析业务实现过程中的痛点,提高业务功能使用效率! 往期回顾: DataWorks 功能实践速览01期--数据同步解决方案:为您介绍不同场景下可选的数据同步 ...

  4. DataWorks功能实践速览

    简介:DataWorks功能实践系列,帮助您解析业务实现过程中的痛点,提高业务功能使用效率! 往期回顾:DataWorks 功能实践速览01期--数据同步解决方案 功能推荐:独享数据集成资源组 如上期 ...

  5. DataWorks 功能实践速览

    简介: DataWorks功能实践系列,帮助您解析业务实现过程中的痛点,提高业务功能使用效率! 功能推荐:独享数据集成资源组 如上期数据同步解决方案介绍,数据集成的批数据同步任务运行时,需要占用一定的 ...

  6. ios开发 mvp实践_实践中开发人员的工作流程-我们如何在30天内建立​​MVP

    ios开发 mvp实践 by Léna Faure 莱娜·福雷(LénaFaure) 实践中开发人员的工作流程-我们如何在30天内建立​​MVP (The developer's workflow i ...

  7. 半导体ISO26262功能安全合规性开发的3P法则(下)

    在半导体的ISO 26262功能安全合规性开发3P法则(上)中,我们提到,每个向汽车半导体市场提供产品的组织都必须能够证明开发活动符合标准.这些文档涵盖了相关的人员.开发的流程以及所需的产品分析.本篇 ...

  8. NHibernate 3.x新功能实践(二) QueryOver(下)

    一.引言 NHibernate3.0增加了一种新的查询API--QueryOver.QueryOver构建在NHibernate原有的 ICriteria API之上,支持Lambda表达式与扩展方法 ...

  9. Google Protobuf 实践使用开发

    Android 敏捷开发助手 Lottie动画 轻松使用 PNG.JPG等普通图片高保真转SVG图 Android 完美的蒙层方案 Android MMKV框架引入使用 强大无匹的自定义下拉列表 Go ...

最新文章

  1. mysql常用转换函数_MySQL中常用转换函数介绍
  2. 青源 Forum | 人工智能的数理基础前沿系列报告 · 第 5 期
  3. IntelliJ IDEA安装主题详细步骤
  4. Hadoop2.0 YARN
  5. Android之单复选框及Spinner实现二级联动
  6. 配置虚拟目录的方式(Linux下/windows下)
  7. devstack安装OpenStack Pike版本 (OVN+VLAN)
  8. 如何理解VMware内存资源管理
  9. 串口之GetCommState、SetCommState函数详解
  10. 【Spark】Spark SQL 物化视图技术原理与实践
  11. CentOS7系列离线安装指定软件及升级系统
  12. 文本分类——NaiveBayes
  13. Reporting Services 空白页面
  14. 程序员该如何对付日常小病小痛?
  15. JavaScript 中 typeof 和 instanceof 的区别及如何判断数组
  16. (23)ObjectARX2015 + vs2012操作图层
  17. 炼数成金-Spark大数据平台
  18. 机甲大师:矩形框选(23/4/23已更新)
  19. sht30 linux示例代码,STM32------SHT30温湿传感器(示例代码)
  20. C语言对于char*和char[]的理解

热门文章

  1. arcgis 圈选获取图层下点位_ArcGIS小技巧——提取面要素的质心点
  2. 终结 Python 原生字典?这个库要逆天改命了
  3. 30 个极简Python代码,拿走即用(真干货)
  4. 面试系列 | 带你彻底搞懂 Python 装饰器
  5. linux自动挂载usb光驱,Linux下使用Usbmount实现USB设备自动挂载
  6. 我的世界光影mod怎么用_用“戏剧化”光影艺术 唤醒千年沉睡世界!
  7. 23-爬虫之scrapy框架增量式实时监测数据爬取10
  8. linux 低功耗运行,关于Linux的快速启动(fastboot)和低功耗(low power)的学习记录...
  9. list(map(list,zip(*a)))
  10. [APIO2015]巴厘岛的雕塑[按位贪心+dp]