Declarative Native App コマンドリファレンス

以下のコマンドには、アプリケーションパッケージの作成と公開をサポートする新しいパラメーターが含まれます。

CREATE APPLICATION PACKAGE

CREATE APPLICATION PACKAGE コマンドは、新しいオプションのパラメーター TYPE = DATA をサポートします。これはアプリが Declarative Native App になることを指定するものです。

構文

CREATE APPLICATION PACKAGE [ IF NOT EXISTS ] <name> TYPE = DATA
Copy

新しいオプションのパラメーター:

TYPE = [ DATA | NATIVE ]

作成するアプリケーションパッケージのタイプを指定します。

  • DATA: アプリケーションパッケージに Declarative Native App が含まれることを示します。

  • NATIVE: アプリケーションパッケージに Snowflake Native App が含まれることを示します。これがデフォルト値です。

アプリケーションパッケージのタイプを指定した後は、ALTER APPLICATION PACKAGE を使用して後からタイプを変更することができません。

TYPE = DATA が指定される場合、DATA_RETENTION_TIME_IN_DAYS や COMMENT など、このコマンドの他のパラメーターはサポートされません。

このパラメーターには、CREATE APPLICATION PACKAGE および CREATE DATABASE 権限 を持つ ロール が必要です。

アプリケーションパッケージの作成者には、自動的に、そのアプリケーションパッケージに対する OWNERSHIP 権限が付与されます。

ALTER APPLICATION PACKAGE

ALTER APPLICATION PACKAGE コマンドは、次の新しいオプションのパラメーターをサポートして、Declarative Native Apps の作成と公開をサポートします。これらの新しいパラメーターは、Snowflake Native Apps ではサポートされていません。

構文

ALTER APPLICATION PACKAGE <name>
[ ADD LIVE VERSION
| ADD VERSION FROM @STAGE/path
| BUILD
| COMMIT
| RELEASE [LIVE VERSION]
| ABORT LIVE VERSION ]
[COMMENT = 'string_literal']
Copy

新しいオプションのパラメーター

ADD LIVE VERSION

編集可能なアプリケーションパッケージのライブバージョンを作成します。このライブバージョンは、マニフェストファイルやノートブックファイルなどのファイルを追加または更新するために使用されます。

ADD VERSION FROM @<STAGE>/<path>

ステージ のファイルに基づいて、アプリケーションパッケージのライブバージョンを作成します。アプリケーションパッケージに含めるファイルのセットがあり、それらを一度に追加したい場合、このメソッドが便利です。

注釈

ライブバージョンを作成した後にファイルを反復処理する場合は、将来のバージョンの一貫性を保つために、ステージ上のファイルに同じ変更を加える必要があります。

BUILD

アプリをビルドしますが、コミットしません。このコマンドを使用して、マニフェストファイルを検証したり、アプリケーションパッケージの作業を続行したりします。

COMMIT

アプリをビルドし、公開のためにコミットしますが、リリースはしません。

コミットプロセスでは、内部バージョン番号を追加して公開用のアプリケーションパッケージを準備し、アプリケーションパッケージを不変にします。

RELEASE

アプリのコミットしたバージョンを Snowflake Marketplace にリリースします。

RELEASE LIVE VERSION

アプリをビルドし、公開のためにコミットし、Snowflake Marketplace にリリースします。

BUILD、COMMIT、RELEASE コマンドを順に実行するのと同等です。

ABORT LIVE VERSION

アプリケーションパッケージの LIVE バージョンを削除します。アプリケーションパッケージを最後にコミットされたバージョンに復元します。

既存のパラメーター

これらのパラメーターは、Declarative Native Apps と Snowflake Native Apps の両方でサポートされています。

<name>

アプリケーションパッケージの識別子を指定します。

識別子にスペース、特殊文字、または大文字と小文字が混在する場合、文字列全体を二重引用符で囲む必要があります。二重引用符で囲まれた識別子も大文字と小文字が区別されます。

COMMENT = 'string_literal'

オプション:アプリのバージョンのコメントを追加するか、既存のコメントを上書きします。このコメントは SHOW APPLICATION PACKAGES で表示されます。

アクセス制御の要件

このコマンドには、アプリケーションパッケージに対する OWNERSHIP 権限を持つロールが必要です。

  • 新しいアプリケーションパッケージを作成します。

    CREATE APPLICATION PACKAGE market_data_app TYPE = DATA;
    
    Copy
  • 編集可能なアプリケーションパッケージのライブバージョンを作成します。

    ALTER APPLICATION PACKAGE market_data_app
      ADD LIVE VERSION
      COMMENT = 'Market views for Northern region';
    
    Copy
  • 既存のステージングされたアプリケーションパッケージから、アプリケーションパッケージの新しいバージョンを作成します。

    ALTER APPLICATION PACKAGE market_data_app
      ADD VERSION FROM @my_stage/market_data_app_v1;
    
    Copy
  • アプリケーションパッケージをビルドしますが、コミットはしません。

    ALTER APPLICATION PACKAGE market_data_app BUILD;
    
    Copy
  • アプリケーションパッケージをビルドして公開用にコミットしますが、リリースはしません。

    ALTER APPLICATION PACKAGE market_data_app
      COMMIT
      COMMENT = 'Market views for North and East regions';
    
    Copy
  • Snowflake Marketplace にアプリケーションパッケージをリリースします。

    ALTER APPLICATION PACKAGE market_data_app RELEASE;
    
    Copy
  • アプリケーションパッケージのライブバージョンをビルドし、コミットし、Snowflake Marketplace にリリースします。

    ALTER APPLICATION PACKAGE market_data_app RELEASE LIVE VERSION
      COMMENT = 'Market views for North, East, and West regions';
    
    Copy
  • アプリのライブバージョンを追加して編集した後、編集を停止し、最後にコミットされたバージョンに復元します。

    ALTER APPLICATION PACKAGE market_data_app ABORT LIVE VERSION
    
    Copy

GRANT IMPORTED PRIVILEGES ON APPLICATION

GRANT IMPORTED PRIVILEGES コマンドは、新しいオプションのパラメーター ON APPLICATION <name> をサポートします。

このコマンドを使うと、コンシューマーは、組織の他のメンバーに対し、Declarative Native App のすべてのデータとビューへのアクセスを付与できます。

このコマンドはどの Declarative Native App でも使用でき、アプリケーションパッケージに対してアプリロールを定義する必要はありません。

アクセス制御の要件

このコマンドには、インストールされたアプリの OWNER 権限を持つロールが必要です。

構文

GRANT IMPORTED PRIVILEGES ON APPLICATION <name> TO ROLE <role_name>;
Copy

GRANT IMPORTED PRIVILEGES ON APPLICATION market_data_app TO ROLE marketing_team_east;
Copy