Kategorien:

DDL für Warehouses und Ressourcenmonitore

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, SHOW WAREHOUSES

Syntax

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

Wobei:

objectProperties ::=
  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>'
objectParams ::=
  MAX_CONCURRENCY_LEVEL = <num>
  STATEMENT_QUEUED_TIMEOUT_IN_SECONDS = <num>
  STATEMENT_TIMEOUT_IN_SECONDS = <num>

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_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 im Warehouse 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

  • 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.

  • Die größeren Warehouse-Größen 5X-Large und 6X-Large sind derzeit in der Vorschau und nur auf Amazon Web Services (AWS) verfügbar. In der Vorschau kann die Bereitstellung dieser größeren Warehouses etwas länger dauern.

MAX_CLUSTER_COUNT = Zahl

Gibt die maximale Anzahl von Warehouses für ein Multi-Cluster-Warehouse an. Für ein einzelnes 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 (einzelnes 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 für den unwahrscheinlichen Fall sicherzustellen, dass ein einzelnes Warehouse ausfällt.

MIN_CLUSTER_COUNT = Zahl

Gibt die minimale Anzahl von Warehouses 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

Gibt die Richtlinie für das automatische Starten und Beenden von Warehouses in einem Multi-Cluster-Warehouse im Modus „Automatische Skalierung“ an.

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

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

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

Standard

STANDARD

AUTO_SUSPEND = Zahl | NULL

Gibt die Anzahl der Sekunden von 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 = Zeichenfolge

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 = 'Zeichenfolgenliteral'

Gibt einen Kommentar für das Warehouse an.

Optionale Parameter (objectParams)

MAX_CONCURRENCY_LEVEL = Zahl

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

Eine detaillierte Beschreibung dieses Parameters finden Sie unter MAX_CONCURRENCY_LEVEL.

STATEMENT_QUEUED_TIMEOUT_IN_SECONDS = Zahl

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 = Zahl

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.

Nutzungshinweise

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

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;