さまざまなタイプのStreamlitオブジェクトについて理解する¶
SnowflakeのStreamlitオブジェクトには、機能、制限、管理に影響する2つの重要な違いがあります。
ソース場所の指定方法: ROOT_LOCATION パラメーター(レガシー)または FROM パラメーター(推奨)を使用します。
ランタイム環境: ウェアハウスランタイムまたはコンテナランタイム(プレビュー)。
このページでは、ソース場所の仕様の違いについて説明します。これらは、使用できるランタイム環境に影響を与えます。
ランタイム環境の詳細については、 Streamlitアプリのランタイム環境 をご参照ください。ウェアハウスからコンテナランタイムに移行するためのチェックリストについては、 ランタイム環境間の移行 をご参照ください。
ソースロケーション¶
SnowflakeでStreamlitアプリを作成する場合、2つの異なるパラメーターを使用してソースファイルの場所を指定できます( ROOT_LOCATION または FROM )。 ROOT_LOCATION は、複数の制限を持つレガシーパラメーターです。現在、 FROM は新規アプリの推奨パラメーターであり、コンテナーランタイムを含む最新の Streamlit in Snowflake 機能にアクセスするために必要です。このページでは、2つのタイプのアプリを区別する方法を説明します。最新の Streamlit in Snowflake 機能を有効にするには、従来のStreamlitをアップグレードする必要があります。詳細については、 ランタイム環境間の移行 をご参照ください。
FROM パラメーター(推奨)¶
FROM パラメーターは、指定された場所からStreamlitオブジェクト内の埋め込みステージにファイルをコピーします。これは、Streamlitアプリの作成に現在推奨されているアプローチです。
利点:
ウェアハウスとコンテナランタイムの両方をサポートします。
Snowsight でのマルチファイル編集を可能にします。
Git統合機能と互換性があります。
Streamlitオブジェクト内に埋め込まれたバージョン化されたステージを使用します。
構文:
CREATE STREAMLIT my_app
FROM '@my_stage/app_folder'
MAIN_FILE = 'streamlit_app.py';
ROOT_LOCATION パラメーター(レガシー)¶
ROOT_LOCATION パラメーターは、内部ステージをソースとして参照するアプリを作成します。これは、複数の制限があるレガシーアプローチです。Snowsight の古いバージョンを使用してアプリを作成した場合、アプリのルートの場所が名前付きのステージではなく、snow URL ( snow:// )である可能性があります。
制限:
ウェアハウスランタイムのみをサポートします(コンテナランタイムは使用できません)。
Snowsight でマルチファイル編集をサポートしません。
Git統合機能を使用できません。
内部ステージへの継続的なアクセスが必要です。
構文:
CREATE STREAMLIT my_app
ROOT_LOCATION = '@my_stage/app_folder'
MAIN_FILE = '/streamlit_app.py';
アプリのソース場所タイプの識別¶
DESCRIBE STREAMLIT 出力を調べると、どのパラメーターがアプリの作成に使用されたかを判断できます。
DESCRIBE STREAMLIT my_app;
ROOT_LOCATION ベースのアプリはより少ない列を返し、
root_location列を含みます。FROM ベースのアプリはより多くの列を返し、
live_version_location_uri列を含みます。
Snowsight でアプリを編集する場合、アプリの種類に応じて、 root_location または live_version_location_uri のいずれかに更新をプッシュします。SQL コマンドを使用して両方のタイプのアプリを更新して、これらの場所に PUT または COPYFILES できます。