项目(Project)是MaxCompute的基本组织单元,是进行多用户隔离和访问控制的主要边界。您开通MaxCompute服务后,需要通过项目使用MaxCompute。本文为您介绍如何通过MaxCompute新版控制台创建、管理MaxCompute项目。
前提条件
- 阿里云账号或RAM用户已开通MaxCompute服务。
- 默认只有阿里云账号可以创建、配置和删除项目以及变更项目状态,如果您需要以RAM用户管理MaxCompute项目,请确认已获取RAM用户账号并已授予AliyunMaxComputeFullAccess系统策略或自定义RAM策略权限。
更多创建或获取RAM用户信息操作,请参见准备RAM用户。
权限说明
- 阿里云账号:拥有项目管理所有查看和操作权限。
- RAM用户:
- 需将RAM用户添加到项目中,在项目列表中才可见对应项目。
- 创建、删除、修改项目的默认Quota和项目冻结、恢复操作需获取RAM权限,详情请参见RAM权限。
- 进入项目配置页面,进行参数配置、角色权限、Package管理操作需有项目的相关管理权限,内置角色Admin、Super_Administrator,自定义管理权限请参见项目管理类权限一览表。
注意事项
创建MaxCompute项目时,您需要注意:
- 使用阿里云账号创建MaxCompute项目后,您具备项目内所有内容的操作权限。任何人未经授权无法访问该项目。
- 对于RAM用户创建的MaxCompute项目,RAM用户和归属的阿里云账号同时具备项目内所有内容的操作权限。其他人未经授权无法访问该项目。
- 对于RAM用户创建的MaxCompute项目,为方便管理,MaxCompute会默认赋予RAM用户该项目的Super_Administrator角色。
创建项目
MaxCompute控制台创建的Project允许被各客户端使用,DataWorks提供统一的全链路大数据开发治理平台,紧密的集成MaxCompute,其工作空间标准模式不支持绑定存量MaxCompute项目。推荐您直接通过DataWorks创建MaxCompute项目并进行使用,详情请参见创建工作空间。
- 登录MaxCompute控制台,在左上角选择地域。
- 在左侧导航栏单击项目管理。
- 在项目管理页面,单击新建项目。
- 在新建项目对话框,根据界面提示配置参数。如下参数需重点关注。
参数 说明 计算资源付费类型 默认计算Quota的计费类型。 默认Quota 用于实现计算资源分配。 不指定计算Quota的情况下,该项目发起的作业将消耗默认Quota资源。更多计算资源使用请参见计算资源使用。
单SQL消费限制 单SQL消费的最高阈值。 单位:扫描量(GB)*复杂度。非必填项,当选择按量付费计费类型时建议设置,可以避免非预期的单SQL消费过高。同时也建议配置实时消费监控告警,多方位监控限制消费超出预期,详情请参见消费监控告警。
数据类型 MaxCompute数据类型包含1.0数据类型、2.0数据类型和Hive兼容类型。 您需要根据业务情况选择合适的数据类型版本,三种数据类型版本的区别请参见数据类型版本说明。
是否加密 指定创建的MaxCompute项目是否需要开启数据加密功能。更多数据加密信息,请参见数据加密。 当选择需要加密时,需要选择密钥和对应算法:- 密钥:项目空间使用的密钥类型,包含默认密钥(MaxCompute Default Key)和自带密钥(BYOK)。默认密钥(MaxCompute Default Key)是MaxCompute内部创建的默认密钥。
- 算法:密钥支持的加密算法,包含AES256、AESCTR和RC4。
- 单击确定,完成新建项目。
配置项目
- 登录MaxCompute控制台,在左上角选择地域。
- 在左侧导航栏单击项目管理。
- 在项目管理页面,单击目标项目操作列的管理。
- 参数配置。
- 角色管理。在角色权限页签,可对项目进行角色权限管理,包含角色增、删、改以及将角色授权给用户。说明 默认只有阿里云账号有权限对项目进行角色管理,如果您需要以RAM用户身份进行,需要拥有对应项目的管理权限角色。其他相关操作。
- 查看角色。在角色权限的角色列表可以查看项目空间下所有的角色,包括内置的Super_Administrator和Admin。单击目标角色操作列的编辑角色,可以查看指定角色的权限。说明 如果角色是通过Policy方式创建可以正常显示Policy的内容,如果角色是通过ACL方式创建,那么会有可能因为Table、Resource、Function等对象过多无法展示,只能搜索单个对象查看action是否有授权或通过执行
describe role <role_name>;
命令查看整个角色权限内容。 - 编辑角色权限。单击目标角色操作列的编辑角色,ACL授权方式的角色,可以添加或移除某个对象的Action,或将某对象添加或移除,如果需要移除的对象没在角色列表里显示,可通过命令进行编辑,详情请参见项目级别角色授权。说明 如果MaxCompute项目与DataWorks工作空间关联,则DataWorkd会给对应的项目初始化一些角色,这些角色有固定的权限符合DataWorks的业务逻辑,不建议对这些角色进行更新。具体DataWorks初始化的角色请参见附录:空间级预设角色与MaxCompute引擎权限的映射关系。
- 查看角色成员。
单击目标角色操作列的成员管理,在成员管理对话框可以查看角色成员、将角色赋予用户或将用户从角色里移除(即收回赋予用户的角色)。
- 删除角色。
单击目标角色操作列的删除,即在MaxCompute项目中删除已创建的角色。等同于执行
drop role <role_name>;
命令,详情请参见角色规划。 - 启用或禁用租户级别角色。在角色权限页签,角色级别选择租户,单击目标角色操作列的启用或禁用。说明 涉及项目空间内的对象,需要在项目空间内进行启用才生效。
- 查看角色。
- 配置Package。MaxCompute跨项目访问资源授权方式推荐使用Package,Package常用于只需分享Tables、Resources、Functions但不需要共享计算资源或无人员管理的数据权限管理需求,Package主要分为资源分享方和资源访问方,一个完整的通过Package进行跨项目授权访问的步骤流程如下。
变更项目状态
MaxCompute项目支持变更状态的操作有如下两种操作。
- 冻结:即停止服务,项目将被禁用,无法运行作业,项目内数据也不能被查询,但是数据将继续保留,因此会产生存储费用。冻结后的项目状态为停服。
- 恢复:将停服状态、预删除状态的项目恢复,恢复成功后项目状态将为正常。
- 登录MaxCompute控制台,在左上角选择地域。
- 在左侧导航栏单击项目管理。
- 在项目管理页面的项目列表,单击目标项目操作列的冻结或恢复。
- 在确认对话框,单击确定。
删除项目
删除项目时支持立即删除,即彻底删除,永久不可恢复,删除时需要短信验证,默认验证码发送到阿里云账号绑定的手机(。 里绑定设置的手机号)
说明
- RAM角色删除项目不支持短信验证,因此为了避免误删除不建议RAM角色拥有删除项目权限。
- 项目立即删除后,清理数据需要一定的时间,项目数量越大需要清理的时间越长。因此,若立即创建同名项目时报错表示项目已存在,则需要稍后再重试。
需要注意项目删除将导致如下后果:
- 立即删除后,项目内所有表(数据)将立即被删除,并且永久无法恢复。
- 所有向该MaxCompute项目提交的任务因项目不存在都将运行失败。
- 如果MaxCompute项目已经绑定DataWorks工作空间,删除MaxCompute项目后DataWorks工作空间将无法正常使用并不能恢复,请先访问DataWorks进行解绑再删除MaxCompute项目。
- 登录MaxCompute控制台,在左上角选择地域。
- 在左侧导航栏单击项目管理。
- 在项目管理页面的项目列表,单击目标项目操作列的删除。
- 在删除项目对话框,选择删除类型,单击确定。
项目标签管理
MaxCompute支持用户为项目绑定或解绑标签,标签的详细用法及使用限制请参见标签概述。
- 登录MaxCompute控制台,在左上角选择地域。
- 在左侧导航栏单击项目管理。
- 创建标签。
- 单个项目创建标签。
- 将鼠标悬浮于目标项目所在标签列的
图标上,单击绑定/编辑。
- 在编辑标签对话框中,输入标签键和标签值。
- 单击确定,并在标签编辑成功对话框中单击关闭。
- 将鼠标悬浮于目标项目所在标签列的
- 批量创建多个项目的标签。
- 选中要批量添加标签的项目,单击页面底部的批量打标。
- 在编辑标签对话框中,输入标签键和标签值。
- 单击确定,并在标签编辑成功对话框中单击关闭。
- 单个项目创建标签。
- 标签筛选。项目绑定标签后,您可以在标签筛选下拉列表中根据标签的键和值筛选项目。
- (可选)解绑标签。
- 单个项目解绑标签。
- 将鼠标悬浮于目标项目后所在标签列的
图标上,单击编辑。
- 在编辑标签对话框中,单击要解绑标签后方的
图标。
- 单击确定,并在标签编辑成功对话框中单击关闭。
- 将鼠标悬浮于目标项目后所在标签列的
- 批量解绑多个项目的标签。
- 选中要批量解绑标签的项目,单击页面底部的批量删除标签。
- 在批量解绑标签对话框中,选中需要解绑标签左侧的复选框。
- 单击解绑x个标签(x为具体的解绑标签数),并在标签编辑成功对话框中单击关闭。
- 单个项目解绑标签。