CREATE INTERACTIVE WAREHOUSE¶
Erstellt ein neues interaktives virtuelles Warehouse, das für niedrige Latenz- und hohe Parallelitätsworkloads mit interaktiven Tabellen optimiert ist.
Interaktive Data Warehouses sind so konzipiert, dass sie bei der Arbeit mit interaktiven Tabellen eine optimale Abfrageleistung bieten. Sie ermöglichen schnelle Abfrageantworten für häufig abgerufene Daten durch intelligentes Caching und Optimierung.
- Siehe auch:
CREATE WAREHOUSE , ALTER WAREHOUSE , DESCRIBE WAREHOUSE , DROP WAREHOUSE , SHOW WAREHOUSES , CREATE INTERACTIVE TABLE
Syntax¶
CREATE [ OR REPLACE ] INTERACTIVE WAREHOUSE [ IF NOT EXISTS ] <name>
[ TABLES ( <table_name> [ , <table_name> ... ] ) ]
[ [ WITH ] objectProperties ]
[ [ WITH ] TAG ( <tag_name> = '<tag_value>' [ , <tag_name> = '<tag_value>' , ... ] ) ]
[ objectParams ]
Wobei:
objectProperties ::= WAREHOUSE_SIZE = { XSMALL | SMALL | MEDIUM | LARGE | XLARGE | XXLARGE | XXXLARGE | X4LARGE | X5LARGE | X6LARGE } MAX_CLUSTER_COUNT = <num> MIN_CLUSTER_COUNT = <num> 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>
Parameter¶
nameGibt den Bezeichner des interaktiven Warehouses an. Der Bezeichner muss innerhalb Ihres Kontos eindeutig sein.
Weitere Details dazu finden Sie unter Anforderungen an Bezeichner.
TABLES ( ... )Gibt optional eine durch Kommas getrennte Liste der Namen interaktiver Tabellen an, die sofort mit dem interaktiven Warehouse verknüpft werden sollen. Die Verwendung dieser Klausel startet den Cache-Wartungsprozess für die angegebenen Tabellen, wenn das Warehouse erstellt wird.
table_nameGibt den Bezeichner für eine interaktive Tabelle an, die mit dem Warehouse verknüpft werden soll. Sie können mehrere durch Kommas getrennte Tabellennamen angeben.
Bemerkung
Alle angegebenen Tabellen müssen interaktive Tabellen sein, die mit dem Schlüsselwort
INTERACTIVEerstellt wurden.Wenn diese Klausel weggelassen wird, können Sie interaktive Tabellen später mit ALTER WAREHOUSE der
ADD TABLES-Klausel zuordnen.Das Vorbereiten des Cache kann je nach Größe der Daten einige Zeit in Anspruch nehmen.
WAREHOUSE_SIZE = string_constantGibt die Größe des interaktiven Warehouses an. Interaktive Warehouses unterstützen bestimmte Größen, die für interaktive Workloads optimiert sind.
- Gültige Werte:
XSMALL,'X-SMALL'SMALLMEDIUMLARGEXLARGE,'X-LARGE'XXLARGE,X2LARGE,'2X-LARGE'XXXLARGE,X3LARGE,'3X-LARGE'
- Standard:
XSMALL
Bemerkung
Um einen Wert zu verwenden, der einen Bindestrich enthält (
'2X-LARGE'), müssen Sie den Wert wie dargestellt in einfache Anführungszeichen setzen.Wählen Sie eine Warehouse-Größe, die Ihren Workload-Anforderungen entspricht. Sie können den Wert der Eigenschaften
MIN_CLUSTER_COUNTundMAX_CLUSTER_COUNTzur Optimierung der Parallelität anpassen.
MAX_CLUSTER_COUNT = numGibt die maximale Anzahl von Clustern für ein interaktives Multi-Cluster-Warehouse an.
- Gültige Werte:
1zu10(abhängig von der Warehouse-Größe)- Standard:
1(Einzelcluster-Warehouse)
Bei einem interaktiven Warehouse verwenden Sie denselben Wert für
MIN_CLUSTER_COUNTundMAX_CLUSTER_COUNT. Ein interaktives Multi-Cluster-Warehouse wird nicht automatisch nach oben oder unten skaliert.MIN_CLUSTER_COUNT = numGibt die Mindestanzahl von Clustern für ein interaktives Multi-Cluster-Warehouse an.
- Gültige Werte:
1für den Wert von MAX_CLUSTER_COUNT- Standard:
1
Bei einem interaktiven Warehouse verwenden Sie denselben Wert für
MIN_CLUSTER_COUNTundMAX_CLUSTER_COUNT. Ein interaktives Multi-Cluster-Warehouse wird nicht automatisch nach oben oder unten skaliert.AUTO_RESUME = { TRUE | FALSE }Gibt an, ob das interaktive Warehouse automatisch fortgesetzt werden soll, wenn eine Abfrage gesendet wird.
- Gültige Werte:
TRUE: Das Warehouse wird automatisch fortgesetzt, wenn eine SQL-Anweisung übermittelt wird.FALSE: Das Warehouse startet erst wieder, wenn es mit ALTER WAREHOUSE explizit fortgesetzt wird.
- Standard:
TRUE
INITIALLY_SUSPENDED = { TRUE | FALSE }Gibt an, ob das interaktive Warehouse im Status „Suspended“ erstellt wird.
- Gültige Werte:
TRUE: Das Warehouse wird im Status „Suspended“ erstellt und muss vor der Verwendung fortgesetzt werden.FALSE: Das Warehouse wird im Status „Active“ erstellt (wennAUTO_RESUMETRUEist)
- Standard:
TRUE
RESOURCE_MONITOR = monitor_nameGibt den Bezeichner eines Ressourcenmonitors an, der dem interaktiven Warehouse zur Kontrolle der Credit-Nutzung zugewiesen werden soll.
- Gültige Werte:
Beliebiger vorhandener Ressourcenmonitor.
- Standard:
Kein Wert (kein Ressourcenmonitor zugeordnet).
COMMENT = 'string_literal'Gibt einen Kommentar für das interaktive Warehouse an.
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 quotas.
MAX_CONCURRENCY_LEVEL = numGibt den Parallelitätsgrad für SQL-Anweisungen an, die vom interaktiven Warehouse-Cluster ausgeführt werden.
STATEMENT_QUEUED_TIMEOUT_IN_SECONDS = numGibt die Zeit in Sekunden an, die eine SQL-Anweisung in der Warteschlange sein kann, bevor sie abgebrochen wird.
STATEMENT_TIMEOUT_IN_SECONDS = numGibt die Zeit in Sekunden an, nach der eine laufende SQL-Anweisung abgebrochen wird. Interaktive Warehouses haben ein maximales Timeout-Intervall von fünf Sekunden. Höhere Werte werden ignoriert.
Anforderungen an die Zugriffssteuerung¶
Eine Rolle, die zur Ausführung dieses SQL-Befehls verwendet wird, muss mindestens eine der folgenden Berechtigungen haben:
Berechtigung |
Objekt |
Anmerkungen |
|---|---|---|
CREATE WAREHOUSE |
Konto |
Erforderlich für das Erstellen eines beliebigen Warehouse, einschließlich interaktiver Warehouses. |
USAGE |
Interaktive Tabelle |
Erforderlich für jede interaktive Tabelle, die in der |
Eine Anleitung zum Erstellen einer kundenspezifischen Rolle mit einer bestimmten Gruppe 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 Übersicht zur Zugriffssteuerung.
Nutzungshinweise¶
Interaktive Warehouses werden im Status
SUSPENDEDerstellt. Verwenden Sie ALTER WAREHOUSE mit der RESUME-Klausel zum Starten des Warehouses.Wenn Sie die TABLES-Klausel angeben, beginnt die Cache-Aufbereitung für die angegebenen interaktiven Tabellen sofort. Dieser Prozess kann je nach Datengröße sehr viel Zeit in Anspruch nehmen.
Interaktive Warehouses können nur interaktive Tabellen abfragen. Um Standardtabellen abzufragen, verwenden Sie ein Standard-Warehouse, das mit CREATE WAREHOUSE erstellt wurde.
Interaktive Warehouses unterstützen die Multi-Cluster-Konfiguration zur Bewältigung von Workloads mit hoher Parallelität.
Wenn Sie die
TABLES-Klausel nicht angeben, können Sie interaktive Tabellen später mit ALTER WAREHOUSE der ADD TABLES-Klausel zuordnen.
Beispiele¶
Erstellen Sie ein interaktives Warehouse, das mit bestimmten interaktiven Tabellen verbunden ist:
CREATE OR REPLACE INTERACTIVE WAREHOUSE sales_interactive_wh
TABLES (orders, customers, products)
WAREHOUSE_SIZE = 'MEDIUM'
COMMENT = 'Interactive warehouse for sales team analytics';
Erstellen Sie ein interaktives Warehouse ohne zugehörige Tabellen (die später hinzugefügt werden sollen):
CREATE INTERACTIVE WAREHOUSE analytics_interactive_wh
WAREHOUSE_SIZE = 'LARGE'
MAX_CLUSTER_COUNT = 3
MIN_CLUSTER_COUNT = 3;
Erstellen Sie ein interaktives Warehouse mit Ressourcenmonitoring:
CREATE INTERACTIVE WAREHOUSE dev_interactive_wh
WAREHOUSE_SIZE = 'XSMALL'
RESOURCE_MONITOR = dev_resource_monitor
COMMENT = 'Development interactive warehouse';
Setzen Sie ein interaktives Warehouse wieder fort und verknüpfen Sie es mit Tabellen:
-- Resume the warehouse
ALTER WAREHOUSE sales_interactive_wh RESUME;
-- Add additional tables if needed
ALTER WAREHOUSE sales_interactive_wh ADD TABLES (inventory);