我要把oss数据load到大数据计算MaxCompute,acs:ram::这个信息是从哪获取的?[阿里云MaxCompute]

我要把oss数据load到大数据计算MaxCompute,acs:ram::xxxxxx:role/aliyunodpsdefaultrole 这个信息是从哪获取的?

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
=====这是一个广告位,招租中,联系qq 78315851====
2 条回复 A 作者 M 管理员
  1. 如果您想要将 OSS 中的数据 load 到 MaxCompute 中,需要在执行 load 命令之前,先进行 OSS 授权和 RAM 授权。具体而言,您需要在 RAM 中创建一个子用户,并为该子用户授予 AliyunOSSFullAccess 和 AliyunMaxComputeFullAccess 两个策略,以获取 OSS 和 MaxCompute 的权限。

    以下是具体的操作步骤:

    登录 RAM 控制台,创建一个子用户。在创建子用户时,需要为该子用户设置用户名和登录密码,并选择自定义访问控制。

    为子用户添加 AliyunOSSFullAccess 和 AliyunMaxComputeFullAccess 两个策略。在添加策略时,可以选择从策略列表中添加,也可以自定义创建策略。

    在 MaxCompute 控制台中创建一个 OSS 连接。在创建连接时,需要输入 OSS 的 AccessKey 和 SecretKey,以及 OSS 的 Endpoint 和 Bucket 等信息。

    在 MaxCompute 控制台中创建一个外部表,用于关联 OSS 中的数据。在创建表时,需要指定外部表类型为 oss,以及指定与 OSS 连接相关的信息。

    使用 load 命令将 OSS 中的数据 load 到 MaxCompute 中。在执行 load 命令时,需要指定外部表的名称、文件路径、分隔符和列信息等参数。

  2. 要将数据从OSS加载到MaxCompute,您需要提供一个有效的角色(Role)信息,以授权MaxCompute访问和读取您的OSS数据。这个角色通常是在阿里云RAM(资源访问管理)中创建的。

    下面是一些步骤来获取并使用正确的角色信息:

    1. 登录到阿里云管理控制台。
    2. 导航到”访问控制RAM”页面或直接搜索”RAM”。
    3. 在RAM控制台,导航到”角色管理”页面。
    4. 在角色管理页面,点击”新建角色”。
    5. 在新建角色页面,选择”云产品”,然后选择”大数据计算 MaxCompute”。
    6. 为该角色选择适当的权限策略,如”AliyunODPSDefaultRole”。
    7. 完成创建角色的过程,并记下所创建角色的ARN(Amazon Resource Name)。

    您提到的acs:ram::xxxxxx:role/aliyunodpsdefaultrole中的xxxxxx部分应该是您创建的角色的ID或名称。请将其替换为您实际创建的角色信息。

    在使用TUNNEL命令加载数据时,您可以使用类似以下的语法指定角色:

    tunnel odps://project-name oss://bucket-name/path/to/data.odps -role=acs:ram::xxxxxx:role/aliyunodpsdefaultrole;

    通过在命令中使用正确的角色信息,MaxCompute将能够获得访问OSS数据所需的权限。

  3. 这里的一个有oss权限的角色,你看下有的话复制一下arn信息,没有的话,需要创建一个https://help.aliyun.com/zh/maxcompute/user-guide/create-an-oss-external-table?spm=a2c4g.11186623.0.i74#section-ah9-vto-xoy,此回答整理自钉群“MaxCompute开发者社区2群”