snow dbt deploy¶
Kopieren Sie dbt-Dateien, und stellen Sie dbt entweder auf Snowflake wieder her, falls das --force
-Flag bereitgestellt wird, oder erstellen Sie dbt neu, falls noch nicht vorhanden. Sie können auch Dateien aktualisieren, falls vorhanden, und eine neue Version erstellen.
Syntax¶
snow dbt deploy
<name>
--source <source>
--profiles-dir <profiles_dir>
--force / --no-force
--connection <connection>
--host <host>
--port <port>
--account <account>
--user <user>
--password <password>
--authenticator <authenticator>
--private-key-file <private_key_file>
--token <token>
--token-file-path <token_file_path>
--database <database>
--schema <schema>
--role <role>
--warehouse <warehouse>
--temporary-connection
--mfa-passcode <mfa_passcode>
--enable-diag
--diag-log-path <diag_log_path>
--diag-allowlist-path <diag_allowlist_path>
--oauth-client-id <oauth_client_id>
--oauth-client-secret <oauth_client_secret>
--oauth-authorization-url <oauth_authorization_url>
--oauth-token-request-url <oauth_token_request_url>
--oauth-redirect-uri <oauth_redirect_uri>
--oauth-scope <oauth_scope>
--oauth-disable-pkce
--oauth-enable-refresh-tokens
--oauth-enable-single-use-refresh-tokens
--client-store-temporary-credential
--format <format>
--verbose
--debug
--silent
--enhanced-exit-codes
Argumente¶
name
Bezeichner des DBT-Projekts, zum Beispiel: my_pipeline.
Optionen¶
--source TEXT
Pfad zum Verzeichnis mit den bereitzustellenden dbt-Dateien. Standardmäßig wird das aktuelle Verzeichnis verwendet.
--profiles-dir TEXT
Pfad zum Verzeichnis mit profiles.yml. Standardmäßig wird das in „–source“ angegebene Verzeichnis oder das aktuelle Arbeitsverzeichnis verwendet.
--force / --no-force
Überschreibt gegebenenfalls kollidierende Dateien im Projekt. Standard: False.
--connection, -c, --environment TEXT
Name der Verbindung, wie in Ihrer
config.toml
-Datei definiert. Standard:Standard
.--host TEXT
Host-Adresse für die Verbindung. Überschreibt den für die Verbindung angegebenen Wert.
--port INTEGER
Port für die Verbindung. Überschreibt den für die Verbindung angegebenen Wert.
--account, --accountname TEXT
Name, der Ihrem Snowflake-Konto zugewiesen wurde. Überschreibt den für die Verbindung angegebenen Wert.
--user, --username TEXT
Benutzername für die Verbindung zu Snowflake. Überschreibt den für die Verbindung angegebenen Wert.
--password TEXT
Snowflake-Kennwort. Überschreibt den für die Verbindung angegebenen Wert.
--authenticator TEXT
Snowflake-Authentifikator. Überschreibt den für die Verbindung angegebenen Wert.
--private-key-file, --private-key-path TEXT
Dateipfad zum privaten Snowflake-Schlüssel. Überschreibt den für die Verbindung angegebenen Wert.
--token TEXT
OAuth-Token, das bei der Verbindung mit Snowflake verwendet werden soll.
--token-file-path TEXT
Pfad zur Datei mit einem OAuth-Token, das bei der Verbindung mit Snowflake verwendet werden soll.
--database, --dbname TEXT
Zu verwendende Datenbank. Überschreibt den für die Verbindung angegebenen Wert.
--schema, --schemaname TEXT
Zu verwendendes Datenbankschema. Überschreibt den für die Verbindung angegebenen Wert.
--role, --rolename TEXT
Zu verwendende Rolle. Überschreibt den für die Verbindung angegebenen Wert.
--warehouse TEXT
Zu verwendendes Warehouse. Überschreibt den für die Verbindung angegebenen Wert.
--temporary-connection, -x
Verwendet eine mit Befehlszeilenparametern definierte Verbindung anstelle einer in config definierten. Standard: false
--mfa-passcode TEXT
Für die mehrstufige Authentifizierung (MFA) zu verwendendes Token.
--enable-diag
Ob ein Verbindungsdiagnosebericht erstellt werden soll. Standard: false
--diag-log-path TEXT
Pfad für den generierten Bericht. Standardmäßig wird das temporäre Verzeichnis des Systems verwendet. Standard: <system_temporary_directory>.
--diag-allowlist-path TEXT
Pfad zu einer JSON-Datei, die allowlist-Parameter enthält.
--oauth-client-id TEXT
Wert der Client-ID, die vom Identitätsanbieter für die Snowflake-Integration bereitgestellt wird.
--oauth-client-secret TEXT
Wert des Client-Geheimnisses, das vom Identitätsanbieter für die Snowflake-Integration bereitgestellt wird.
--oauth-authorization-url TEXT
Endpunkt des Identitätsanbieters, der den Autorisierungscode an den Treiber liefert.
--oauth-token-request-url TEXT
Endpunkt des Identitätsanbieters, der die Zugriffstoken für den Treiber bereitstellt.
--oauth-redirect-uri TEXT
Für die Umleitung des Autorisierungscodes zu verwendende URI.
--oauth-scope TEXT
Bereich, der in der Autorisierungsanfrage des Identitätsanbieters angefordert wird.
--oauth-disable-pkce
Deaktiviert den Proof Key For Code Exchange (PKCE). Standard:
False
.--oauth-enable-refresh-tokens
Ermöglicht eine stille Neuauthentifizierung, wenn das aktuelle Zugriffstoken veraltet ist. Standard:
False
.--oauth-enable-single-use-refresh-tokens
Ob Sie sich für die Semantik des einmaligen Aktualisierungs-Tokens entscheiden. Standard:
False
.--client-store-temporary-credential
Speichern der temporären Anmeldeinformationen.
--format [TABLE|JSON|JSON_EXT|CSV]
Gibt das Ausgabeformat an. Standard: TABLE.
--verbose, -v
Zeigt Protokolleinträge für die Protokolliergrade
info
und höher an. Standard: false--debug
Zeigt Protokolleinträge für die Protokollebenen
debug
und höher an; Debug-Protokolle enthalten zusätzliche Informationen. Standard: false--silent
Schaltet Zwischenausgaben auf der Konsole aus. Standard: false
--enhanced-exit-codes
Exit-Fehlercodes nach Art des Fehlers unterscheiden. Standard: false
--help
Zeigt den Hilfetext für diesen Befehl an.
Nutzungshinweise¶
Mit dem Befehl snow dbt deploy
werden lokale Dateien in einen temporären Stagingbereich hochgeladen. Außerdem wird ein neues Objekt erstellt oder ein vorhandenes dbt-Projektobjekt aktualisiert, indem eine neue Version erstellt wird. Ein gültiges dbt-Projektobjekt muss zwei Dateien enthalten:
dbt_project.yml
: Standard-dbt-Konfigurationsdatei, die das zu verwendende Profil angeben muss.profiles.yml
: Eine Definition des dbt-Verbindungsprofils, auf die indbt_project.yml
verwiesen wird. Inprofiles.yaml
müssen die Datenbank, die Rolle, das Warehouse und das Schema definiert werden. Sie können die restlichen Werte leer lassen, wie im folgenden Beispiel:<profile_name>: outputs: dev: account: '' database: <database_name> role: <role_name> schema: <schema_name> type: snowflake user: '' warehouse: <warehouse_name> target: dev
Beispiele¶
Stellen Sie das dbt-Projekt
jaffle_shop
bereit:snow dbt deploy jaffle_shop
Stellen Sie das Projekt
jaffle_shop
aus einem bestimmten Verzeichnis bereit und überschreiben Sie ein eventuell bereits vorhandenes dbt-Projektobjekt:snow dbt deploy jaffle_shop --force --source /path/to/dbt/directory --profiles-dir ~/.dbt/