CREATE STREAMLIT¶
Snowflakeに新しいStreamlitアプリケーションオブジェクトを作成するか、同じスキーマの既存のStreamlitアプリケーションオブジェクトを置き換えます。
- こちらもご参照ください。
SHOW STREAMLITS, DESCRIBE STREAMLIT, ALTER STREAMLIT, DROP STREAMLIT
構文¶
CREATE [ OR REPLACE ] STREAMLIT [ IF NOT EXISTS ] <name>
FROM <source_location>
MAIN_FILE = '<path_to_main_file_in_root_directory>'
QUERY_WAREHOUSE = <warehouse_name>
[ COMMENT = '<string_literal>' ]
[ TITLE = '<app_title>' ]
[ IMPORTS = ( '<stage_path_and_file_name_to_read>' [ , ... ] ) ]
[ EXTERNAL_ACCESS_INTEGRATIONS = ( <integration_name> [ , ... ] ) ]
[ ROOT_LOCATION = '<stage_path_and_root_directory>' ]
必須パラメーター¶
name
Streamlitオブジェクトの識別子(つまり、名前)を指定します。この識別子は、テーブルが作成されるスキーマに対して一意である必要があります。
また、識別子はアルファベット文字で始まる必要があり、識別子文字列全体が二重引用符で囲まれている場合を除き、スペースや特殊文字を含めることはできません(例:
"My object"
)。二重引用符で囲まれた識別子も大文字と小文字が区別されます。詳細については、 識別子の要件 をご参照ください。
FROM source_location
指定された場所からソースファイルをコピーし、アプリを初期化します。これは一度だけです。例えば、
FROM @streamlit_db.streamlit_schema.streamlit_stage
です。MAIN_FILE = 'path_to_main_file_in_root_directory'
Streamlit Pythonアプリケーションのファイル名を指定します。このファイル名は、
ROOT_LOCATION
の値からの相対パスです。QUERY_WAREHOUSE = warehouse_name
Streamlitアプリケーションが発行した SQL クエリを実行するウェアハウスを指定します。
注釈
Streamlitアプリケーションオブジェクトを Snowflake Native App Framework 内で作成または置換する場合、
QUERY_WAREHOUSE
パラメーターはオプションです。
オプションのパラメーター¶
COMMENT = 'string_literal'
Streamlitオブジェクトのコメントを指定します。
DEFAULT: 値なし
TITLE = 'app_title'
Snowsight に表示する Streamlit アプリのタイトルを指定します。
IMPORTS = ( 'stage_path_and_file_name_to_read' [ , ... ] )
インポートするファイルの場所(ステージ)、パス、および名前。
EXTERNAL_ACCESS_INTEGRATIONS = ( integration_name [ , ... ] )
Streamlitアプリケーションコードが外部ネットワークにアクセスするために必要な 外部アクセス統合 の名前。
ROOT_LOCATION = 'stage_path_and_root_directory'
重要
ROOT_LOCATION
はレガシーのパラメーターです。Snowflakeは、FROM source_location
の使用を推奨します。ROOT_LOCATION を使用して作成されたStreamlitアプリでは、マルチファイル編集とGit統合はサポートされていません。
Streamlit Pythonファイル、メディアファイル、
environment.yml
ファイルを含むステージへのフルパスを指定します。ROOT_LOCATION = '@streamlit_db.streamlit_schema.streamlit_stage'
この例では、Streamlit ファイルは
streamlit_db
という名前のデータベースとstreamlit_schema
という名前のスキーマ内にあるstreamlit_stage
という名前付きステージにあります。注釈
このパラメーターは、名前付き内部ステージ内の1つのディレクトリをポイントする必要があります。
Streamlit in Snowflake 用外部ステージはサポートされていません。
Snowflake Native App Framework 内で Streamlit アプリケーションオブジェクトを作成または交換する場合は、
ROOT_LOCATION = 'stage_path_and_root_directory'
ではなくFROM 'relative_path_from_stage_root_directory'
を使用してください。
使用上の注意¶
Streamlitオブジェクトを含むスキーマまたはデータベースをクローンする場合、Streamlitオブジェクトはクローンされません。
Streamlitアプリケーションで使用するパッケージを指定するには、
environment.yml
ファイルを使用します。メタデータについて:
注意
Snowflakeサービスを使用する場合、お客様は、個人データ(ユーザーオブジェクト向け以外)、機密データ、輸出管理データ、またはその他の規制されたデータがメタデータとして入力されていないことを確認する必要があります。詳細については、 Snowflakeのメタデータフィールド をご参照ください。
OR REPLACE
とIF NOT EXISTS
句は互いに排他的です。両方を同じステートメントで使うことはできません。CREATE OR REPLACE <オブジェクト> ステートメントはアトミックです。つまり、オブジェクトが置き換えられると、単一のトランザクションで、古いオブジェクトが削除されて新しいオブジェクトが作成されます。
例¶
ステージからStreamlitアプリを作成するには、次の例のように CREATE STREAMLIT コマンドを実行します。
CREATE STREAMLIT hello_streamlit
FROM @streamlit_db.streamlit_schema.streamlit_stage
MAIN_FILE = 'streamlit_main.py'
QUERY_WAREHOUSE = my_warehouse;
GitリポジトリからStreamlitアプリを作成するには、次の例のように CREATE STREAMLIT コマンドを実行します。
CREATE STREAMLIT hello_streamlit
FROM @streamlit_db.streamlit_schema.streamlit_repo/branches/streamlit_branch/
MAIN_FILE = 'streamlit_main.py'
QUERY_WAREHOUSE = my_warehouse;