全部產品
Search
文件中心

MaxCompute:CREATE PACKAGE

更新時間:Jun 19, 2024

資源提供方在MaxCompute專案中建立Package。

背景資訊

假設某個阿里雲帳號下有多個MaxCompute專案,其中專案A裡有一批表、資源檔、自訂函數需要分享給其他專案使用。通常您可以使用如下方法實現資源分享:

  • 將其他專案中需要使用資源的使用者都添加到A專案,並逐個執行授權操作。但該方法比較繁瑣,不推薦在跨專案訪問資源情境下使用。僅當需要精細控制資源由單人使用,且申請人是本商務專案團隊成員時,建議使用該方式。更多授權文法資訊,請參見ACL許可權控制

  • 基於Package實現跨專案資源分享。

    Package是一種跨專案共用資料及資源的機制。A專案的所有者對其他專案需要使用的資源進行打包(也就是建立Package),然後許可其他專案安裝此Package。其他專案的所有者安裝Package之後,就可以自行管理Package是否需要進一步授權給自己專案下的使用者。完整實現流程如下。

    Package使用流程

使用限制

Package的使用限制如下:

  • 一個Package中最多可以包含1000個資源。

  • 一個Package最多允許安裝至10萬個MaxCompute專案中。

  • 一個MaxCompute專案最多可以從另外一個MaxCompute專案安裝100個Package。

  • 一個MaxCompute專案最多可以建立10萬個Package。

  • 一個MaxCompute專案最多可以安裝10萬個Package。

  • 本命令為CMD命令,僅支援在用戶端(odpscmd)工具中運行。

命令格式

create package <package_name>;

參數說明

參數名稱

是否必填

說明

package_name

指定Package的名稱,專案內唯一。可以包含字母、底線(_)或數字,但是不能以數字開頭。

您可以通過MaxCompute用戶端執行show packages;命令擷取已建立的Package資訊。

使用樣本

假設Bob@aliyun.com是test_project_a的專案所有者,現需要允許其他專案訪問test_project_a中的部分資源。建立Package,命令樣本如下。

--Bob進入專案test_project_a。
use test_project_a; 
--建立Package。
create package datashare;

相關命令

  • ADD TO PACKAGE:將資源使用方需要的資源添加至建立的Package中。

  • REMOVE FROM PACKAGE:刪除Package中已添加的資源。

  • ALLOW PROJECT:資源提供方授予其他專案使用Package的許可權。

  • DISALLOW PROJECT:資源提供方撤銷授予其他專案使用Package的許可權。

  • DESCRIBE PACKAGE:在MaxCompute專案中查看已建立的Package詳細資料

  • DROP PACKAGE:刪除已建立的Package。

  • INSTALL PACKAGE:在目標MaxCompute專案中安裝Package。

  • UNINSTALL PACKAGE:為目標MaxCompute專案卸載已安裝的Package。

  • GRANT:為使用者或角色授予訪問Package的許可權。

  • REVOKE:撤銷為使用者或角色授予的訪問Package的許可權。

  • SHOW:在MaxCompute專案中查看已建立或已安裝的Package列表。