Einrichten der Snowflake CLI, um eine App zu entwickeln¶
Unter diesem Thema wird beschrieben, wie Anbieter die Snowflake CLI für die Entwicklung und Verwaltung von Snowflake Native Apps installieren und verwenden. Snowflake CLI ist ein Open-Source-Befehlszeilentool, das zusätzlich zu SQL-Operationen explizit für entwicklerzentrierte Workloads entwickelt wurde.
Snowflake CLI installieren und konfigurieren¶
Führen Sie die folgenden Schritte zum Installieren und Konfigurieren der Snowflake CLI aus:
Installieren Sie die Snowflake CLI für Ihr Betriebssystem.
Weitere Informationen dazu finden Sie unter Installieren von Snowflake CLI.
Stellen Sie eine Verbindung zu Ihrem Snowflake-Konto her.
Weitere Informationen dazu finden Sie unter Konfigurieren von Snowflake CLI.
Über Snowflake CLI-Projekte und App-Vorlagen¶
Bei Verwendung der Snowflake CLI, um Ihre Snowflake Native App zu entwickeln, arbeiten Sie innerhalb eines Projekts. Ein Projekt ist ein Verzeichnis, das alle für Ihre Snowflake Native App erforderlichen Dateien und Verzeichnisse enthält. Wie andere Code-Repositorys können auch diese Dateien mithilfe von Technologien wie Git versionskontrolliert und auf Plattformen wie Github freigegeben werden.
Snowflake bietet App-Vorlagen, die Sie für die Einrichtung Ihres Projekts verwenden können. Diese Vorlagen sind im snowflake-cli-templates GitHub-Repository verfügbar.
Die verfügbaren Vorlagen sind:
Vorlage |
Beschreibung |
|---|---|
app_basic |
Eine einfache Vorlage, die die wichtigsten Dateien und Verzeichnisse für Ihre App enthält. |
app_streamlit_java |
Eine Vorlage, die die für Ihre App erforderlichen Dateien und Verzeichnisse, den Java-Erweiterungscode und die Streamlit-Beispielanwendung enthält. |
app_streamlit_js |
Eine Vorlage, die die für Ihre App erforderlichen Dateien und Verzeichnisse, den JavaScript-Erweiterungscode und eine Streamlit-Beispielanwendung enthält. |
app_streamlit_python |
Eine Vorlage, die die wichtigsten Dateien und Verzeichnisse für Ihre App, den Python-Erweiterungscode und eine Streamlit-Beispielanwendung enthält. |
Einrichten eines neuen Projekts für Ihre Snowflake Native App¶
Führen Sie die folgenden Schritte aus, um ein neues Projekt für Ihre Snowflake Native App einzurichten:
Führen Sie den Befehl
initaus, um ein neues Projekt zu erstellen:snow init --template <template_name> <project_name>
Geben Sie einen Wert für den Projektbezeichner ein.
Dieser Wert wird als Basisname für die App-Komponenten verwendet, die Snowflake CLI erstellt, einschließlich des Anwendungspakets. Sie können diesen Wert später in der Projektdefinitionsdatei ändern oder überschreiben.
Nachdem Sie diesen Befehl ausgeführt haben, wird ein neues Verzeichnis mit dem Namen <project_name> in dem Verzeichnis erstellt, in dem Sie den Befehl ausgeführt haben. Dieses Verzeichnis enthält die für Ihre Snowflake Native App erforderlichen Dateien und Verzeichnisse mit der folgenden Verzeichnisstruktur:
<project_name>/
├── app/
├── manifest.yml
├── README.md
├── setup_script.sql
├── README.md
├── snowflake.yml
Die Ordner und Dateien in diesem Verzeichnis sind in der folgenden Tabelle beschrieben:
Datei/Verzeichnis |
Beschreibung |
|---|---|
|
Dieses Verzeichnis enthält den Anwendungscode und die Ressourcen für Ihre App. Sie können in diesem Verzeichnis nach Bedarf Dateien ändern oder hinzufügen. |
|
Diese Datei definiert die Metadaten und die Konfiguration für Ihre App, einschließlich des Namens der App, der Version, der Beschreibung und der Ressourcen. Weitere Informationen dazu finden Sie unter Manifest-Datei für eine App erstellen. |
|
Diese Datei bietet einen Überblick über Ihre App und Anweisungen zu deren Verwendung. Dies ist die README-Datei, die auf Snowflake Marketplace angezeigt wird. |
|
Dieses SQL-Skript wird ausgeführt, wenn die App installiert wird. Sie können dieses Skript ändern, um alle für Ihre App erforderlichen Einrichtungsschritte aufzunehmen. Weitere Informationen dazu finden Sie unter Create the setup script. |
|
Diese Datei bietet einen Überblick über das Projekt und Anweisungen zur Verwendung der Snowflake CLI mit Ihrer App. |
|
Dies ist die Projektdefinitionsdatei, die die Objekte beschreibt, die in Snowflake bereitgestellt werden können. Sie müssen diese Datei ändern, um die Ressourcen zu definieren, die Teil Ihrer App sind. |
Projektdefinitionsdatei erstellen¶
Snowflake CLI verwendet eine Projektdefinitionsdatei, um Objekte zu beschreiben, die in Snowflake bereitgestellt werden können. Diese Datei muss den Namen snowflake.yml tragen. Diese Datei bestimmt den Namen des Anwendungspakets und gibt die Ressourcen an, die Teil Ihrer Snowflake Native App sind.
Weitere Informationen zur Projektdefinitionsdatei finden Sie unter Projektdefinitionsdateien.
Im Folgenden finden Sie ein Beispiel für eine einfache snowflake.yml-Datei, die für eine Snowflake Native App verwendet wird:
definition_version: 2
entities:
hello_snowflake_package:
type: application package
stage: stage_content.hello_snowflake_stage
manifest: app/manifest.yml
identifier: hello_snowflake_package
artifacts:
- src: app/*
dest: ./
hello_snowflake_app:
type: application
from:
target: hello_snowflake_package
debug: false
In der folgenden Tabelle werden die Felder in diesem Beispiel beschrieben:
Feld |
Beschreibung |
|---|---|
|
Die Version des Dateiformats der Projektdefinition. Die aktuelle Version ist 2. |
|
Eine Liste der Entitäten, die Teil des Projekts sind. Jede Entität hat einen eindeutigen Bezeichner und einen Typ. |
|
Der Bezeichner der Anwendungspaketsentität. Dieser Name wird als Basisname für die App-Komponenten verwendet, die Snowflake CLI erstellt, einschließlich des Anwendungspakets. |
|
Der Typ der Entität. In diesem Fall ist es ein |
|
Der Stagingbereich, in dem das Anwendungspaket gespeichert ist. |
|
Der Pfad zur Manifestdatei, die die Metadaten und die Konfiguration für Ihre App definiert. |
|
Der Bezeichner der Anwendungspaketsentität. Dieser Name wird als Basisname für die App-Komponenten verwendet, die Snowflake CLI erstellt, einschließlich des Anwendungspakets. |
|
Eine Liste der Dateien und Verzeichnisse, die im Anwendungspaket enthalten sind. Jedes Artefakt hat eine Quelle ( |
|
Gibt den Bezeichner der Anwendungsentität an. |
|
Gibt die Quelle der Anwendung an. In diesem Fall wird sie aus dem Anwendungspaket |
|
Ein boolescher Wert, der angibt, ob der Debug-Modus für die App aktiviert ist. |
Snowflake Native App entwickeln¶
Nachdem Sie Ihr Projekt eingerichtet und die Projektdefinitionsdatei erstellt haben, können Sie mit der Entwicklung Ihrer Snowflake Native App beginnen. Dazu wird das Anwendungspaket erstellt und die Manifest-Datei und das Setup-Skript geändert.
Weitere Informationen dazu finden Sie unter folgenden Themen: