简介:DataWorks性能实际系列,帮忙您解析业务实现过程中的痛点,进步业务性能应用效率!
往期回顾:
- DataWorks 性能实际速览01期——数据同步解决方案:为您介绍不同场景下可选的数据同步计划。
- DataWorks 性能实际速览02期——独享数据集成资源组:为您介绍进行数据同步时,可应用的资源组与网络连通计划、注意事项。
通过前两期的介绍,您能够理解应用DataWorks进行数据同步的次要知识点:数据同步计划和资源组,而在理论利用过程中,咱们经常会须要将开发和生产环境进行隔离,开发环境用于数据同步测试,生产环境用于生产数据的同步解决。本期就为您介绍DataWorks实现开发与生产环境隔离的次要知识点。
性能举荐:规范模式——开发环境与生产环境隔离
为不便不同平安管控要求的用户生产数据,DataWorks为您提供简略模式和规范模式两种工作空间模式,其中简略模式无奈设置开发环境和生产环境,而规范模式同时提供开发环境与生产环境,并将两个环境隔离开,您能够别离在开发环境和生产环境中进行数据工作解决。
Part1:简略模式与规范模式的DataWorks工作空间
首先为您介绍两种模式工作空间的次要区别。
<span>简略模式</span> | <span>规范模式</span> |
<span>在简略模式工作空间下,一个DataWorks空间上层对应一个MaxCompute我的项目(或一个EMR集群、Hologres数据库等),该环境即视为生产(PROD)环境。</span><span class="lake-card-margin-top lake-card-margin-bottom"><img src="https://ucc.alicdn.com/pic/developer-ecology/5905f40277b34b25b42339b43191595c.png" class="image lake-drag-image" alt="简略工作空间.png" title="简略工作空间.png"></span> | <span>在规范模式工作空间下,一个DataWorks空间上层对应两个MaxCompute我的项目(或两个EMR集群、Hologres数据库等),一个视为开发(DEV)环境,一个视为生产(PROD)环境。</span><span class="lake-card-margin-top lake-card-margin-bottom"><img src="https://ucc.alicdn.com/pic/developer-ecology/06025e5dcc2a4570bcea8a5c681a7e4a.png" class="image lake-drag-image" alt="规范工作空间.png" title="规范工作空间.png"></span> |
<span>计算引擎类型</span> | <span>环境</span> | 规范模式工作空间 | 简略模式工作空间<span>(开发环境即生产环境)</span> |
MaxCompute | <span>开发环境</span> | <span>页面运行工作(不可选):默认为执行工作者(以后登录者)</span> | <span>页面运行工作(不可选):默认为执行工作者(以后登录者)</span><span>调度拜访身份(可选):</span><ul><li><span>阿里云主账号</span></li><li><span>阿里云RAM角色</span></li></ul><ul><li><span>工作负责人:工作Owner账号的身份</span></li></ul> |
<span>生产环境</span> | <span>调度拜访身份(可选):</span><ul><li><span>阿里云主账号</span></li><li><span>阿里云RAM用户</span></li></ul><ul><li><span>阿里云RAM角色</span></li></ul> | ||
<span>E-MapReduce</span> | <span>开发环境</span> | <ul><li><span>快捷模式下拜访身份:对立应用集群内的Hadoop用户。</span></li><li><span>平安模式下拜访身份:工作执行者</span></li></ul> | <ul><li><span>快捷模式下拜访身份:对立应用集群内的Hadoop用户。</span></li><li><span>平安模式下拜访身份(可选):</span></li></ul><ul><li><ul><li><span>工作责任人</span></li><li><span>阿里云主账号</span></li></ul></li></ul><ul><li><ul><li><span>阿里云RAM用户</span></li></ul></li></ul> |
<span>生产环境</span> | <ul><li><span>快捷模式下拜访身份:对立应用集群内的Hadoop用户。</span></li><li><span>平安模式下拜访身份(可选):</span></li></ul><ul><li><ul><li><span>工作责任人</span></li><li><span>阿里云主账号</span></li></ul></li></ul><ul><li><ul><li><span>阿里云RAM用户</span></li></ul></li></ul> | ||
<span>Hologres</span> | <span>开发环境</span> | <span>页面运行工作(不可选):默认为执行工作者(以后登录者)。</span> | <span>页面运行工作(不可选):默认为执行工作者(以后登录者)</span><span>调度拜访身份(可选):</span><ul><li><span>阿里云主账号</span></li><li><span>阿里云RAM用户</span></li></ul> |
<span>生产环境</span> | <span>调度拜访身份(可选):</span><ul><li><span>阿里云主账号</span></li><li><span>阿里云RAM用户</span></li></ul> |
<span>细分特点</span> | <span>简略模式</span> | <span>规范模式</span> |
<span>权限概述</span> | <span>在简略模式空间下,DataWorks的“开发”角色因为与所绑定MaxCompute我的项目的“Role_Project_Dev” Role进行了映射,因而DataWorks</span><span>开发角色人造可能读取MaxCompute我的项目内的所有数据</span><span>。</span> | <span>在规范模式空间下,DataWorks的“开发”角色因为与所绑定MaxCompute我的项目(dev环境)的“Role_Project_Dev” Role进行了映射,因而:</span><ul><li><span>DataWorks开发角色人造可能读取MaxCompute我的项目(dev环境)内的所有数据。</span></li><li><span>因为没有和MaxCompute我的项目(PROD环境)的role映射,因而默认状况下DataWorks</span><span>开发角色无MaxCompute(PROD环境)的数据权限</span><span>。</span></li></ul> |
<span>长处</span> | <span>简略、不便、易用</span><span>。</span><span>仅须要受权数据开发人员“DataWorks开发角色”即可实现所有数据仓库开发工作。</span> | <span>平安、标准</span><span>。</span><ul><li><span>具备平安、标准的代码公布管控流程(蕴含代码评审、代码DIFF查看等性能),保障生产环境稳定性,防止不必要的因代码逻辑引起的脏数据蔓延或工作报错等非预期状况。</span></li><li><span>数据拜访失去无效管控,数据安全得以保障。</span></li></ul> |
<span>毛病</span> | <span>存在</span><span>不稳固、不平安</span><span>的危险。</span><ul><li><span>开发角色能够不通过任何人审批,随时新增、批改代码并提交至调度零碎,给生产环境带来不稳固因素。</span></li><li><span>面向MaxCompute计算引擎时,开发角色默认领有以后MaxCompute我的项目所有表的读写权限,可随便对表进行减少、删除和批改等操作,存在数据安全危险。</span></li></ul> | <span>流程绝对简单</span><span>,个别状况下无奈一人实现所有数据开发、生产流程。</span> |
<span>环境类型</span> | <span>规范模式</span> | <span>示例</span> |
<span>开发环境</span> | <span>我的项目名_dev.表名</span> | <span>在projectA我的项目下创立一个开发库表user_info,则数据库表名为:projectA_dev.user_info。</span> |
<span>生产环境</span> | <span>我的项目名.表名</span> | <span>在projectA我的项目下创立一个生产库表user_info,则数据库表名为:projectA.user_info。</span> |