更新时间:2024-08-05 GMT+08:00

企业模式简介

为方便不同安全管控要求的用户生产数据,DataArts Studio为您提供简单模式和企业模式两种工作空间模式。本文从简单模式工作空间与企业模式工作空间物理形态、对开发行为的影响等多个维度为您介绍两种模式工作空间的区别。

目前,仅管理中心和数据开发组件支持企业模式。

简单模式下为实现开发和生产环境隔离,需要创建两个工作空间,一个是开发环境工作空间,一个是生产环境工作空间,然后将开发工作空间导出的脚本或作业,导入到生产工作空间。在这种方式下,无法简单便捷地完成生产和开发环境同步,缺少审批管控环节。针对以上问题,可以通过企业空间模式,在一个工作空间实现开发与生产环境隔离,通过一键发布和审批流程,快速且高效的发布任务,极大提高了工作效率。

建议您将简单模式工作空间升级为企业模式工作空间,以便获得更好的开发流程管控。详情请参见创建企业模式工作空间

背景信息

本文内容由以下几部分构成,从不同角度分别为您解决企业模式不同的问题。

表1 了解企业模式

分类

说明

简单模式与企业模式介绍

不同工作空间模式的介绍。

不同模式工作空间对生产任务开发与运维的影响

DataArts Studio建立于对应工作空间物理属性之上的任务开发与运维机制介绍。

不同模式工作空间的优劣势对比

不同工作空间模式的优劣势对比。

企业模式对使用流程的影响

介绍企业模式工作空间下的流程管控。

不同工作空间模式下,DataArts Studio模块对应操作

简单模式仅有生产环境,企业模式有开发环境和生产环境,此部分为您介绍各个环境与DataArts Studio模块的对应关系。

注意事项

  • 不同工作空间模式对于数据湖引擎存在一定的要求,企业模式工作空间需要分别为开发环境和生产环境进行数据湖引擎配置,才可以实现开发生产环境隔离。配置开发生产环境隔离包含以下三种方式:
    图1 配置开发生产环境隔离
    • 配置两套数据湖服务,进行开发与生产环境隔离。

      对于集群化的数据源(例如MRS、DWS、RDS、MySQL、Oracle、DIS、ECS等),DataArts Studio通过管理中心的创建数据连接区分开发环境和生产环境的数据湖服务,在开发和生产流程中自动切换对应的数据湖。因此您需要准备两套数据湖服务,且两套数据湖服务的版本、规格、组件、区域、VPC、子网以及相关配置等信息,均应保持一致,详细操作请参见创建DataArts Studio数据连接

      创建数据连接时,通过不同的集群来进行开发与生产环境的隔离,如图2所示。

      图2 创建数据连接时选择不同集群

    • 配置DLI环境隔离。

      配置企业模式环境隔离,包含DLI队列配置和DB配置。

      对于Serverless服务(例如DLI),DataArts Studio通过管理中心的环境隔离来配置生产环境和开发环境数据湖服务的对应关系,在开发和生产流程中自动切换对应的数据湖。因此您需要在Serverless数据湖服务中准备两套队列、两套数据库资源,建议通过名称后缀进行区分,详细操作请参见配置DataArts Studio企业模式环境隔离

    • 配置DB,在同一个数据湖服务下配置两套数据库,进行开发与生产环境隔离。

      对于DWS、MRS Hive和MRS Spark这三种数据源,如果在创建数据连接时选择同一个集群,如图3所示,则需要配置数据源资源映射的DB数据库映射关系进行开发生产环境隔离,如图4所示。详细操作请参见DB配置

      图3 创建数据连接时选择同一个集群

      图4 DB配置

  • 企业模式工作空间下,开发环境的数据开发作业默认不进行调度,仅发布至生产环境后可进行调度。

简单模式与企业模式介绍

简单模式:传统的DataArts Studio工作空间模式。简单模式工作空间下,DataArts Studio数据开发组件以及对应管理中心组件无法设置开发环境和生产环境,只能进行简单的数据开发,无法对数据开发流程和表权限进行强管控。一个数据湖作为DataArts Studio的生产环境。

图5 简单模式工作空间
企业模式:为解决简单模式存在的风险,DataArts Studio工作空间新增支持企业模式。企业模式下,DataArts Studio数据开发组件以及对应管理中心组件的数据连接支持设置开发环境和生产环境,有效隔离开发者对生产环境业务的影响。需要两个数据湖中,其中一个数据湖作为DataArts Studio开发环境,另一个作为DataArts Studio生产环境。其中:
  • 开发环境只针对开发人员开放,只用于脚本或作业开发,开发完后发布到生产环境中。
  • 生产环境内不能做任何修改,只对最终用户开放,任何修改必须回退到开发环境中重新修改发布。
图6 企业模式工作空间
  • 您可选择创建任意模式工作空间体验DataArts Studio,使用企业模式工作空间实现DataArts Studio开发环境与生产环境代码隔离、不同环境计算资源隔离、权限隔离、任务发布流程管控等需求。
  • 若您已在使用简单模式工作空间,并且希望保留当前简单模式工作空间的代码时,可选择工作空间模式升级,详情请参见创建企业模式工作空间

不同模式工作空间对生产任务开发与运维的影响

表2 不同模式工作空间对生产任务开发与运维的影响

对比

简单模式

企业模式(推荐)

生产任务开发流程管控差异

任务提交后,无需发布,即可进入调度系统周期性执行,产出结果数据。

(提交-->生产)

  • 任务需要先提交至开发环境,再执行发布操作,将任务发布至生产环境,才可以自动调度运行任务。

(提交-->发布-->生产)

  • 生产环境内不能做任何修改,只对最终用户开放,任何修改必须回退到开发环境中重新修改发布。

生产任务运维权限管控差异

开发人员可直接编辑生产任务的脚本和作业。

开发人员只能在数据开发界面编辑代码并且提交,但是不能将代码直接发布到生产环境,发布生产的操作需要有运维权限(部署者、管理员、运维者这几类角色拥有此权限)。

  • 所有脚本和作业仅支持在开发环境编辑,无法修改生产环境的代码。
  • 您可基于企业模式工作空间特性,以及DataArts Studio角色权限体系来规划与管控DataArts Studio上任务开发与运维流程。详情请参见企业模式业务流程

生产数据权限管控差异

开发人员可直接使用生产数据进行测试,无法保障生产数据安全。

开发人员在开发环境可使用测试数据进行测试,生产环境数据可读。

不同模式工作空间的优劣势对比

表3 不同模式工作空间的优劣势对比

对比

简单模式

企业模式

优势

简单、方便、易用。

  • 仅需要授权数据开发人员“开发者”角色即可完成所有数据开发工作。
  • 提交脚本或作业后,您无需发布,脚本或作业即可进入调度系统周期性执行,产出结果数据。

安全、规范。

  • 具备安全、规范的代码发布管控流程(包含代码评审、代码DIFF查看等功能),保障生产环境稳定性,避免不必要的因代码逻辑引起的脏数据蔓延或任务报错等非预期情况。
  • 数据访问得到有效管控,数据安全得以保障。
  • 所有脚本或作业仅支持在开发环境编辑,开发者无法修改生产环境的脚本或作业。
  • 开发环境和生产环境的数据隔离,开发者无法影响生产环境的数据。
  • 开发环境下,脚本、作业以当前开发者的身份执行;生产环境下,脚本、作业则使用空间级的公共IAM账号或公共委托执行。
  • 如果需要对生产环境进行变更,必须在开发环境通过开发者的发布操作才能将变更提交到生产环境,需要管理者或部署者审批通过,才能发布成功。

劣势

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

  • 无法设置开发环境和生产环境隔离,只能进行简单的数据开发。
  • 无法对生产表权限进行控制。
    说明:

    开发调测阶段,开发者可直接访问生产数据湖的数据,随意对表进行增加、删除和修改等操作,存在数据安全风险。

  • 无法对数据开发流程进行管控。
    说明:

    开发者可以不经过任何人审批,随时新增、修改脚本或作业并提交至调度系统,给业务带来不稳定因素。

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

企业模式对使用流程的影响

  • 简单模式工作空间下,DataArts Studio数据开发组件以及对应管理中心组件无法设置开发环境和生产环境,只能进行简单的数据开发,无法对数据开发流程和表权限进行强管控。提交脚本或作业后,您无需发布,脚本或作业即可进入调度系统周期性执行,产出结果数据。
    图7 简单模式流程
  • 企业模式下,DataArts Studio数据开发组件以及对应管理中心组件的数据连接支持设置开发环境和生产环境,有效隔离开发者对生产环境业务的影响。其中:开发环境只针对开发人员开放,只用于脚本或作业开发,开发完后发布到生产环境中。生产环境内不能做任何修改,只对最终用户开放,任何修改必须回退到开发环境中重新修改发布。
    图8 企业模式流程

不同工作空间模式下,DataArts Studio模块对应操作

表4 不同工作空间模式下对应模块的操作

DataArts Studio模块

简单模式

企业模式

管理中心

操作生产环境(数据连接、数据导入导出)

操作开发环境+生产环境(数据源资源映射配置、数据连接、数据导入导出)

数据开发

操作生产环境(实例、数据库)

操作开发环境+生产环境(实例、数据库)