CREATE WAREHOUSE

Erstellt ein neues virtuelles Warehouse im System.

Die anfängliche Erstellung eines Warehouse kann einige Zeit in Anspruch nehmen, um die Computeressourcen bereitzustellen, es sei denn, das Warehouse wird so eingestellt, dass es zunächst in einem SUSPENDED-Status erstellt wird.

Siehe auch:

ALTER WAREHOUSE, DESCRIBE WAREHOUSE, DROP WAREHOUSE, SHOW WAREHOUSES

Syntax

CREATE [ OR REPLACE ] WAREHOUSE [ IF NOT EXISTS ] <name>
        [ [ WITH ] objectProperties ]
        [ objectParams ]

Wobei:

objectProperties ::=
  WAREHOUSE_TYPE = STANDARD | SNOWPARK-OPTIMIZED
  WAREHOUSE_SIZE = XSMALL | SMALL | MEDIUM | LARGE | XLARGE | XXLARGE | XXXLARGE | X4LARGE | X5LARGE | X6LARGE
  MAX_CLUSTER_COUNT = <num>
  MIN_CLUSTER_COUNT = <num>
  SCALING_POLICY = STANDARD | ECONOMY
  AUTO_SUSPEND = <num> | NULL
  AUTO_RESUME = TRUE | FALSE
  INITIALLY_SUSPENDED = TRUE | FALSE
  RESOURCE_MONITOR = <monitor_name>
  COMMENT = '<string_literal>'
  ENABLE_QUERY_ACCELERATION = TRUE | FALSE
  QUERY_ACCELERATION_MAX_SCALE_FACTOR = <num>
objectParams ::=
  MAX_CONCURRENCY_LEVEL = <num>
  STATEMENT_QUEUED_TIMEOUT_IN_SECONDS = <num>
  STATEMENT_TIMEOUT_IN_SECONDS = <num>
  [ [ WITH ] TAG ( <tag_name> = '<tag_value>' [ , <tag_name> = '<tag_value>' , ... ] ) ]

Erforderliche Parameter

name

Bezeichner für das virtuelle Warehouse. Dieser muss für Ihr Konto eindeutig sein.

Darüber hinaus muss der Bezeichner mit einem Buchstaben beginnen und darf keine Leer- oder Sonderzeichen enthalten, es sei denn, die gesamte Bezeichnerzeichenfolge wird in doppelte Anführungszeichen gesetzt (z. B. "My object"). Bei Bezeichnern, die in doppelte Anführungszeichen eingeschlossen sind, ist auch die Groß-/Kleinschreibung zu beachten.

Weitere Details dazu finden Sie unter Anforderungen an Bezeichner.

Optionale Eigenschaften (objectProperties)

WAREHOUSE_TYPE = STANDARD | SNOWPARK-OPTIMIZED

Gibt den Warehouse-Typ an.

Gültige Werte
  • STANDARD: Virtuelles Standard-Warehouse.

  • SNOWPARK-OPTIMIZED: Snowpark-optimiertes virtuelles Warehouse.

Standard

STANDARD

WAREHOUSE_SIZE = XSMALL | SMALL | MEDIUM | LARGE | XLARGE | XXLARGE | XXXLARGE | X4LARGE | X5LARGE | X6LARGE

Gibt die Größe des virtuellen Warehouses an. Die Größe bestimmt über die Anzahl der Computeressourcen in jedem Cluster des Warehouses und damit über die Anzahl der verbrauchten Credits während des Warehouse-Betriebs.

Gültige Werte

Unterstützte -Werte

Synonyme

XSMALL

'X-SMALL'

SMALL

MEDIUM

LARGE

XLARGE

'X-LARGE'

XXLARGE

X2LARGE, '2X-LARGE'

XXXLARGE

X3LARGE, '3X-LARGE'

X4LARGE

'4X-LARGE'

X5LARGE

'5X-LARGE'

X6LARGE

'6X-LARGE'

Standard

XSMALL

Bemerkung

  • Die Größen XSMALL, SMALL, X5LARGE und X6LARGE unterstützen keine Snowpark-optimierten Warehouses. Die Standardgröße für Snowpark-optimierte Warehouses ist MEDIUM.

  • Um einen Wert zu verwenden, der einen Bindestrich enthält (z. B. '2X-LARGE'), müssen Sie den Wert wie dargestellt in einfache Anführungszeichen setzen.

MAX_CLUSTER_COUNT = num

Gibt die maximale Anzahl von Clustern für ein Multi-Cluster-Warehouse an. Für ein Einzel-Cluster-Warehouse ist dieser Wert immer 1.

Gültige Werte

1 bis 10

Wenn Sie einen Wert größer als 1 angeben, handelt es sich bei dem Warehouse um ein Multi-Cluster-Warehouse. Der Wert kann jedoch nur in der Snowflake Enterprise Edition (oder höher) auf einen höheren Wert gesetzt werden.

Weitere Informationen dazu finden Sie unter Multi-Cluster-Warehouses.

Standard

1 (Einzelcluster-Warehouse)

Tipp

Bei der Snowflake Enterprise Edition (oder höher) empfehlen wir, stets einen Wert größer als 1 festzulegen, um die Hochverfügbarkeit und optimale Leistung eines Multi-Cluster-Warehouses zu erhalten. Dies trägt auch dazu bei, die Kontinuität im unwahrscheinlichen Fall eines Clusterausfalls sicherzustellen.

MIN_CLUSTER_COUNT = num

Gibt die minimale Anzahl von Clustern für ein Multi-Cluster-Warehouse an (gilt nur für Multi-Cluster-Warehouses).

Gültige Werte

1 bis 10

Beachten Sie jedoch, dass MIN_CLUSTER_COUNT gleich oder kleiner sein muss als MAX_CLUSTER_COUNT:

  • Wenn beide Parameter gleich sind, wird das Warehouse im Modus Maximiert ausgeführt.

  • Wenn MIN_CLUSTER_COUNT kleiner als MAX_CLUSTER_COUNT ist, wird das Warehouse im Modus Automatische Skalierung ausgeführt.

Weitere Informationen dazu finden Sie unter Multi-Cluster-Warehouses.

Standard

1

SCALING_POLICY = STANDARD | ECONOMY

Legt die Richtlinie für das automatische Starten und Herunterfahren von Clustern in einem Multi-Cluster-Warehouse fest, das im Modus „Automatische Skalierung“ ausgeführt wird.

Gültige Werte
  • STANDARD: Minimiert Warteschlangen durch Starten von Clustern.

  • ECONOMY: Spart Credits, indem vorzugsweise dafür gesorgt wird, dass aktive Cluster voll ausgelastet bleiben.

Eine ausführlichere Beschreibung finden Sie unter Einstellen der Skalierungsrichtlinie für ein Multi-Cluster-Warehouse.

Standard

STANDARD

AUTO_SUSPEND = num | NULL

Gibt die Anzahl der Sekunden der Inaktivität an, nach der ein Warehouse automatisch angehalten wird.

Gültige Werte

Beliebige Ganzzahl 0 oder größer, oder NULL:

  • Das Festlegen eines Wertes kleiner als 60 ist erlaubt, führt aber oftmals nicht zu dem erwünschten/erwarteten Verhalten, weil der Hintergrundprozess, der ein Warehouse anhält, etwa alle 60 Sekunden ausgeführt wird und daher nicht dazu gedacht ist, eine genaue Kontrolle über das Anhalten des Warehouses zu ermöglichen.

  • Wenn Sie einen Wert von 0 oder NULL festlegen, wird das Warehouse niemals angehalten.

Standard

600 (das Warehouse wird nach 10 Minuten Inaktivität automatisch angehalten)

Wichtig

Das Einstellen von AUTO_SUSPEND auf 0 oder NULL wird nicht empfohlen, es sei denn, für Ihre Abfrageworkloads ist ein kontinuierlich ausgeführtes Warehouse erforderlich. Beachten Sie, dass dies zu einem erheblichen Verbrauch von Credits (und entsprechenden Gebühren) führen kann, insbesondere bei größeren Warehouses.

AUTO_RESUME = TRUE | FALSE

Gibt an, ob ein Warehouse automatisch fortgesetzt werden soll, wenn ihm eine SQL-Anweisung (z. B. Abfrage) übermittelt wird.

Gültige Werte
  • TRUE: Das Warehouse wird fortgesetzt, wenn eine neue Abfrage gesendet wird.

  • FALSE: Das Warehouse startet erst wieder, wenn es mit ALTER WAREHOUSE oder über die Snowflake-Weboberfläche explizit fortgesetzt wird.

Standard

TRUE (das Warehouse wird automatisch fortgesetzt, wenn eine SQL-Anweisung an das Warehouse übermittelt wird)

INITIALLY_SUSPENDED = TRUE | FALSE

Gibt an, ob das Warehouse anfangs im Status „Angehalten“ erstellt wird.

Gültige Werte
  • TRUE: Das Warehouse wird erstellt, aber angehalten.

  • FALSE: Das Warehouse wird ausgeführt, nachdem es erstellt wird.

Standard

FALSE

RESOURCE_MONITOR = string

Gibt den Namen eines Ressourcenmonitors an, der dem Warehouse explizit zugeordnet ist. Wenn ein Ressourcenmonitor explizit einem Warehouse zugeordnet ist, steuert der Monitor die monatlichen Credits, die vom Warehouse (und allen anderen Warehouses, denen der Monitor zugeordnet ist) verbraucht werden.

Gültige Werte

Beliebiger vorhandener Ressourcenmonitor.

Weitere Details dazu finden Sie unter Verwenden von Ressourcenmonitoren.

Standard

Kein Wert (dem Warehouse ist kein Ressourcenmonitor zugeordnet)

Tipp

Verwenden Sie den Befehl SHOW RESOURCE MONITORS, um alle Ressourcenmonitore und ihre Bezeichner anzuzeigen.

COMMENT = 'string_literal'

Gibt einen Kommentar für das Warehouse an.

Query Acceleration-Eigenschaften

ENABLE_QUERY_ACCELERATION = TRUE | FALSE

Gibt an, ob der Abfragebeschleunigungsdienst für Abfragen aktiviert werden soll, die auf dieses Warehouse für Computeressourcen angewiesen sind.

Gültige Werte
  • TRUE aktiviert Query Acceleration

  • FALSE deaktiviert Query Acceleration

Standard

FALSE: Query Acceleration ist deaktiviert

QUERY_ACCELERATION_MAX_SCALE_FACTOR = num

Gibt den maximalen Skalierungsfaktor für das Mieten von Computeressourcen für die Abfragebeschleunigung an. Der Skalierungsfaktor wird als Multiplikator auf Basis der Warehouse-Größe verwendet. Wenn für ein Warehouse beispielsweise QUERY_ACCELERATION_MAX_SCALE_FACTOR = 2 ist, dann kann dieses Warehouse bis zum 2-fachen der Menge an Computeressourcen seiner Größe für die Abfragebeschleunigung mieten. Da der Abfragebeschleunigungsdienst den Credit-Verbrauch eines Warehouses erhöhen kann, kann der maximale Skalierungsfaktor dazu beitragen, den Verbrauch zu begrenzen.

Wenn QUERY_ACCELERATION_MAX_SCALE_FACTOR auf 0 gesetzt wird, entfällt dieses Limit und die Abfragen können so viele Ressourcen mieten, wie nötig und verfügbar sind, um die Abfrage zu bedienen.

Unabhängig vom Wert für QUERY_ACCELERATION_MAX_SCALE_FACTOR ist die Menge der verfügbaren Computeressourcen für die Abfragebeschleunigung durch die verfügbaren Ressourcen des Dienstes und die Anzahl der von weiteren gleichzeitigen Anforderungen begrenzt. Der Umfang der für den Dienst angeforderten Ressourcen hängt davon ab, wie viel von der Abfrage für eine Beschleunigung in Frage kommt und wie viele Daten zur Beantwortung der Abfrage verarbeitet werden müssen.

Gültige Werte

0 bis 100

Standard

8

Optionale Parameter (objectParams)

MAX_CONCURRENCY_LEVEL = num

Objektparameter, der den Parallelitätsgrad für SQL-Anweisungen (d. h. Abfragen und DML) angibt, die von einem Warehouse-Cluster ausgeführt werden.

Eine detaillierte Beschreibung dieses Parameters finden Sie unter MAX_CONCURRENCY_LEVEL.

STATEMENT_QUEUED_TIMEOUT_IN_SECONDS = num

Objektparameter, der die Zeit in Sekunden angibt, die eine SQL-Anweisung (Abfrage, DDL, DML usw.) in der Warteschlange eines Warehouses verbleiben kann, bevor sie vom System abgebrochen wird.

Eine detaillierte Beschreibung dieses Parameters finden Sie unter STATEMENT_QUEUED_TIMEOUT_IN_SECONDS.

STATEMENT_TIMEOUT_IN_SECONDS = num

Objektparameter, der die Zeit in Sekunden angibt, nach der eine aktive SQL-Anweisung (Abfrage, DDL, DML usw.) vom System abgebrochen wird.

Eine detaillierte Beschreibung dieses Parameters finden Sie unter STATEMENT_TIMEOUT_IN_SECONDS.

TAG tag_name = 'tag_value' [ , tag_name = 'tag_value' , ... ]

Gibt den Namen des Tags und den Wert der Tag-Zeichenfolge an.

Der Tag-Wert ist immer eine Zeichenfolge, die maximale 256 Zeichen lang sein kann.

Weitere Informationen zur Angabe von Tags in einer Anweisung finden Sie unter Tag-Kontingente für Objekte und Spalten.

Anforderungen an die Zugriffssteuerung

Eine Rolle, die zur Ausführung dieses SQL-Befehls verwendet wird, muss mindestens die folgenden Berechtigungen haben:

Berechtigung

Objekt

Anmerkungen

CREATE WAREHOUSE

Konto

Only the SYSADMIN role, or a higher role, has this privilege by default. The privilege can be granted to additional roles as needed.

Eine Anleitung zum Erstellen einer kundenspezifischen Rolle mit einem bestimmten Satz von Berechtigungen finden Sie unter Erstellen von kundenspezifischen Rollen.

Allgemeine Informationen zu Rollen und Berechtigungen zur Durchführung von SQL-Aktionen auf sicherungsfähigen Objekten finden Sie unter Zugriffssteuerung in Snowflake.

Nutzungshinweise

  • Durch das Erstellen eines virtuellen Warehouses wird es automatisch als aktives/aktuelles Warehouse für die aktuelle Sitzung festgelegt (entspricht der Verwendung des Befehls USE WAREHOUSE für das Warehouse).

  • Metadaten:

    Achtung

    Kunden müssen sicherstellen, dass bei der Nutzung des Snowflake-Dienstes keine personenbezogenen Daten (außer für ein Objekt „Benutzer“), sensible Daten, exportkontrollierte Daten oder andere regulierte Daten als Metadaten eingegeben werden. Weitere Informationen dazu finden Sie unter Metadatenfelder in Snowflake.

  • Die Verwendung von OR REPLACE ist gleichbedeutend mit der Verwendung von DROP WAREHOUSE auf dem vorhandenen Warehouse und dem anschließenden Erstellen eines neuen Warehouses mit demselben Namen.

    CREATE OR REPLACE <Objekt>-Anweisungen sind atomar. Das heißt, wenn das Objekt ersetzt wird, werden die Löschung des alten Objekts und die Erstellung des neuen Objekts in einer einzigen Transaktion verarbeitet.

    Alle Abfragen, die gerade auf dem gelöschten Warehouse ausgeführt werden, werden abgebrochen.

  • Das erstmalige Erstellen und das Fortsetzen eines Snowpark-optimierten virtuellen Warehouses können länger dauern als bei Standard-Warehouses.

  • Snowpark-optimierte Warehouses unterstützen keine Abfragebeschleunigung (Query Acceleration).

  • Snowpark-optimierte Warehouses werden bei den Warehouse-Größen XSMall, SMALL, X5LARGE und X6LARGE nicht unterstützt.

Beispiele

Erstellen Sie ein extra großes Warehouse:

CREATE OR REPLACE WAREHOUSE my_wh WITH WAREHOUSE_SIZE='X-LARGE';

Erstellen Sie ein großes Warehouse im angehaltenen Status:

CREATE OR REPLACE WAREHOUSE my_wh WAREHOUSE_SIZE=LARGE INITIALLY_SUSPENDED=TRUE;
Zurück zum Anfang