Streamlit in Snowflake: Aktivieren der Git-Integration und die Bearbeitung mehrerer Dateien für Streamlit in Snowflake-Apps (Ausstehend)¶
Achtung
Diese Verhaltensänderung ist in Bundle 2025_01 enthalten.
Den aktuellen Status des Bundles finden Sie unter Bundle-Verlauf.
Streamlit in Snowflake-Apps verhalten sich wie folgt:
- Vor dieser Änderung:
Die Git-Integration und die Bearbeitung mehrerer Dateien für Streamlit in Snowflake-Apps werden in Snowsight nicht unterstützt.
- Nach dieser Änderung:
Die Git-Integration und die Bearbeitung mehrerer Dateien werden für neue Streamlit in Snowflake-Apps unterstützt und beinhalten Änderungen in den folgenden Bereichen:
-
Unterstützt die Verbindung von Streamlit in Snowflake-Apps mit einem Git-Repository.
Unterstützt die Erstellung von Streamlit in Snowflake-Apps aus einem Git-Repository.
Unterstützt die Bearbeitung mehrerer Dateien in Snowsight selbst.
Änderungen an den Befehlen CREATE STREAMLIT und ALTER STREAMLIT
Bemerkung
Die bestehenden Streamlit in Snowflake-Apps, die ROOT_LOCATION verwenden, funktionieren wie bisher, aber die Git-Integration und die Bearbeitung mehrerer Dateien werden nicht unterstützt.
-
Snowsight¶
Erstellen einer Streamlit in Snowflake-App aus einer Datei in einem Git-Repository¶
Um eine Streamlit-App aus einer Datei in einem Git-Repository zu erstellen, gehen Sie wie folgt vor:
Melden Sie sich bei Snowsight an.
Wählen Sie Projects » Streamlit aus.
Öffnen Sie neben + Streamlit das Dropdown-Menü, und wählen Sie Create from repository aus.
Wählen Sie unter File location in repository das Repository und den Zweig in dem Repository aus, welche die Streamlit-App-Datei enthalten, und wählen dann die spezifische
.py
-Datei aus. Einzelheiten zur Verbindung von Snowflake mit Ihrem Git-Repository finden Sie unter Einrichten von Snowflake für Verwendung von Git.Wählen Sie unter App location eine Datenbank und ein Schema aus, welche die Streamlit-App enthalten sollen. Diese können nicht mehr geändert werden, nachdem Sie die App erstellt haben.
Wählen Sie unter Query warehouse und App warehouse ein Warehouse aus.
Wählen Sie Create, um eine Streamlit-App aus der Datei
.py
in Ihrem Git-Repository zu erstellen.
Verbinden einer Streamlit in Snowflake-App mit einem Git Repository¶
Um eine bestehende Streamlit-App mit einem Git-Repository zu verbinden, gehen Sie wie folgt vor:
Melden Sie sich bei Snowsight an.
Wählen Sie Projects » Streamlit und öffnen oder erstellen Sie eine Streamlit-App.
Wählen Sie auf der Registerkarte Files neben dem Datenbank-Objekt-Explorer die Option Connect Git Repository aus.
Wählen Sie unter File location in repository das Repository und den Zweig im Repository aus, mit dem Sie die Streamlit-App synchronisieren möchten.
Wählen Sie Select Folder aus.
Wenn Sie aufgefordert werden, Ihre App zu übertragen und in das Git-Repository zu verschieben, wählen Sie Push to Git aus.
Bearbeiten mehrerer Dateien innerhalb von Snowsight¶
So bearbeiten Sie mehrere Dateien Ihrer Streamlit in Snowflake-App innerhalb von Snowsight:
Melden Sie sich bei Snowsight an.
Wählen Sie Projects » Streamlit und öffnen oder erstellen Sie eine Streamlit-App.
Wählen Sie auf der Registerkarte Files eine Datei aus, die Sie bearbeiten möchten.
Änderungen an den Befehlen CREATE STREAMLIT und ALTER STREAMLIT¶
Wenn dieses Verhaltensänderungs-Bundle aktiviert ist, werden die folgenden Änderungen an den Befehlen CREATE STREAMLIT und ALTER STREAMLIT eingeführt.
CREATE STREAMLIT¶
Der Code für Streamlit-Apps benötigt kein separates Stagingobjekt mehr; das Streamlit-Objekt speichert den App-Code. Mit der FROM-Klausel können Sie den vorhandenen Speicherort angeben, von dem aus der Code in die Streamlit-App kopiert werden soll.
Syntax¶
CREATE [ OR REPLACE ] STREAMLIT [ IF NOT EXISTS ] <name>
[ { VERSION <version_alias_name> |
VERSION (COMMENT = <version_comment>) |
VERSION <version_alias_name> (COMMENT = <version_comment>) } ]
[ FROM <source_location>]
MAIN_FILE = '<path_to_main_file_in_root_directory>'
QUERY_WAREHOUSE = <warehouse_name>
[ COMMENT = <create_comment> ]
[ DEFAULT_VERSION = <default_version_name_or_alias> ]
[ TITLE = '<app_title>' ]
[ IMPORTS = ( '<stage_path_and_file_name_to_read>' [ , ... ] ) ]
[ EXTERNAL_ACCESS_INTEGRATIONS = ( <integration_name> [ , ... ] ) ]
Erforderliche Parameter¶
name
Name der Streamlit-App.
path_to_main_file_in_root_directory
Gibt den Dateinamen der Streamlit-App an. Dieser Dateiname ist relativ zu dem Wert von
ROOT_LOCATION
.warehouse_name
Gibt das Warehouse an, in dem SQL-Abfragen der Streamlit-App ausgeführt werden.
Optionale Parameter¶
version_alias_name
Ein vom Benutzer festgelegter Alias-Name für die Version.
version_comment
Ein vom Benutzer bereitgestellter Kommentar für diese Version.
source_location
Ein Ort, von dem die Quelldateien kopiert werden.
create_comment
Gibt einen Kommentar für das Streamlit-Objekt an. In der Standardeinstellung ist kein Wert vorhanden.
default_version_name_or_alias
Der Name der verwendeten Standardversion.
app_title
Gibt einen Titel für die Streamlit-App an, der in Snowsight angezeigt werden soll.
stage_path_and_file_name_to_read
Der Speicherort (Stagingbereich), der Pfad und der Name der zu importierenden Datei(en).
integration_name
Die Namen der Integrationen für den externen Zugriff, die benötigt werden, damit der Code der Streamlit-App auf externe Netzwerke zugreifen kann.
Beispiele¶
Um eine Streamlit-App aus einem Stagingbereich zu erstellen, führen Sie den Befehl CREATE STREAMLIT aus, wie im folgenden Beispiel gezeigt:
CREATE STREAMLIT app
FROM @streamlit_db.streamlit_schema.streamlit_stage;
MAIN_FILE = 'streamlit_app.py'
QUERY_WAREHOUSE = my_warehouse;
Um eine Streamlit-App aus einem Git-Repository zu erstellen, führen Sie den Befehl CREATE STREAMLIT aus, wie im folgenden Beispiel gezeigt:
CREATE STREAMLIT app
FROM @streamlit_db.streamlit_schema.streamlit_repo/branches/streamlit_branch/;
MAIN_FILE = 'streamlit_app.py'
QUERY_WAREHOUSE = my_warehouse;
ALTER STREAMLIT¶
Wenn dieses Verhaltensänderungs-Bundle aktiviert ist, wird der Befehl ALTER STREAMLIT aktualisiert und enthält nun Folgendes:
Syntax¶
ALTER STREAMLIT <name> ADD VERSION [ [ IF NOT EXISTS] <version_alias_name> ]
FROM <source_location>
[ COMMENT = <add_version_comment> ]
ALTER STREAMLIT <name> ADD VERSION <version_name>
FROM { <snowgit_tag_uri> | <snowgit_commit_uri> }
[ COMMENT = <git_pull_comment> ]
ALTER STREAMLIT <name> ADD LIVE VERSION [ [IF NOT EXISTS] <version_alias_name> ]
[ FROM LAST ]
[ COMMENT = <add_version_comment> ]
ALTER STREAMLIT <name> VERSION <existing_version_name_or_alias>
SET ALIAS = <new_version_name_alias>
ALTER STREAMLIT <name> COMMIT [ VERSION <live_version_alias> ] [COMMENT = <version_comment>]
ALTER STREAMLIT <name> SET DEFAULT_VERSION = <version_name> | <version_name_alias>
ALTER STREAMLIT <name> PUSH [TO <git_branch_uri>] [ { GIT_CREDENTIALS = <snowflake_secret> | USERNAME = <git_username> password = <git_password> } NAME = <git_author_name> EMAIL = <git_author_email> ] [ COMMENT = <git_push_comment>]
ALTER STREAMLIT <name> ABORT [ VERSION <live_version_alias> ]
ALTER STREAMLIT <name> PULL
Parameter¶
name
Name der Streamlit-App.
version_alias_name
Ein vom Benutzer festgelegter Alias-Name für die Version.
source_location
Ein Ort, von dem die Quelldateien kopiert werden. Erfordert die OWNERSHIP-Berechtigung.
ALTER STREAMLIT name PUSH
Überträgt die neuesten Änderungen in das Git-Repository. Dabei wird der in der Basisversion gespeicherte Zweig verwendet, wenn
git_branch_uri
nicht angegeben ist.Wenn die Basisversion nicht auf einem Git-Zweig basiert, wird ein Fehler ausgelöst. Erfordert OWNERSHIP-Berechtigung.
git-branch-uri
Zielzweig, in den die Änderungen übertragen werden sollen.
git_author_name
Zu verwendender Name des Git-Autors.
git_author_email
Eine gültige E-Mail-Adresse, die als Name des Git-Autors verwendet werden soll.
git_push_comment
Ein vom Benutzer angegebener Kommentar, der in den Git-Push aufgenommen wird.
ALTER STREAMLIT name ABORT
Entfernt eine vorhandene Version und löscht ihre Dateien. Wenn keine Version angegeben ist, wird standardmäßig live_version gelöscht. Erfordert OWNERSHIP-Berechtigung.
ALTER STREAMLIT name PULL
Zieht die letzten Änderungen aus dem Quellcode in die Live-Version dieses Streamlits. Erfordert OWNERSHIP-Berechtigung.
Neue Spalten in der Ausgabe DESCRIBE STREAMLIT¶
Wenn dieses Verhaltensänderungs-Bundle aktiviert ist, enthält die Ausgabe des Befehls DESCRIBE STREAMLIT die folgenden neuen Spalten:
Spaltenname |
Beschreibung |
---|---|
default_version |
Für die zukünftige Verwendung. |
default_version_name |
Für die zukünftige Verwendung. |
default_version_alias |
Für die zukünftige Verwendung. |
default_version_location_uri |
Für die zukünftige Verwendung. |
default_version_source_location_uri |
Für die zukünftige Verwendung. |
default_version_git_commit_hash |
Für die zukünftige Verwendung. |
live_version |
Zeichenfolge. Gibt an, welche Version die Live-Version für diese App ist. |
live_version_name |
Zeichenfolge. Der Name der Live-Version für diese App. |
live_version_alias |
Zeichenfolge. Der Alias der Live-Version für diese App. |
live_version_location_uri |
Zeichenfolge. Die URI, wo die Dateien der Live-Version gespeichert sind. |
live_version_source_location_uri |
Zeichenfolge. Gibt die URI an, von der die live_version kopiert wurde. Null, wenn dieses Streamlit nicht geklont wurde. |
live_version_git_commit_hash |
Zeichenfolge. Hexadezimaler Hash des Git-Commits, auf den die live_version zeigt. Null, wenn ein Git-Repository nicht verbunden ist. |
Ref: 1888