CREATE NOTEBOOK¶
Erstellt ein neues Snowflake Notebook oder ersetzt ein vorhandenes Notebook.
Syntax¶
CREATE [ OR REPLACE ] NOTEBOOK [ IF NOT EXISTS ] <name>
[ FROM '<source_location>' ]
[ MAIN_FILE = '<main_file_name>' ]
[ COMMENT = '<string_literal>' ]
[ QUERY_WAREHOUSE = <warehouse_to_run_nb_and_sql_queries_in> ]
[ IDLE_AUTO_SHUTDOWN_TIME_SECONDS = <number_of_seconds> ]
[ RUNTIME_NAME = '<runtime_name>' ]
[ COMPUTE_POOL = '<compute_pool_name>' ]
[ WAREHOUSE = <warehouse_to_run_notebook_python_runtime> ]
Erforderliche Parameter¶
nameZeichenfolge, die den Bezeichner (d. h. den Namen) für das Notebook angibt. Der Wert muss für das Schema, in dem das Notebook erstellt wird, 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 Informationen dazu finden Sie unter Anforderungen an Bezeichner.
Optionale Parameter¶
FROM 'source_location'Gibt an, dass das Notebook aus einer
.ipynb-Datei im angegebenen Stagingbereich erstellt werden soll. Um das Notebook aus einer Datei in einem Stagingbereich zu erstellen, legen Siesource_locationfür den Stagingbereich-Speicherort der Datei und den Parameter MAIN_FILE für den Namen der Datei fest.Wenn dieser Parameter nicht angegeben wird, wird das Notebook-Objekt aus einer Notebook-Vorlage erstellt.
MAIN_FILE = 'main_file_name'Vom Benutzer festgelegter Bezeichner für den Notebook-Dateinamen. Dieser Name ist unabhängig vom Namen des Notebook-Objekts, der im Parameter
nameangegeben wird. Diese Datei muss eineipynb-Datei sein.QUERY_WAREHOUSE = warehouse_nameGibt das Warehouse an, in dem SQL-Abfragen aus dem Notebook ausgeführt werden. Dieser Parameter ist optional. Er ist jedoch erforderlich, um den Befehl EXECUTE NOTEBOOK auszuführen.
IDLE_AUTO_SHUTDOWN_TIME_SECONDS = number_of_secondsAnzahl der Sekunden Leerlaufzeit, bevor das Notebook automatisch heruntergefahren wird. Dieser Parameter ist nur für Notebooks verfügbar, die auf der Container Runtime ausgeführt werden. Der Wert muss eine Ganzzahl zwischen 60 und 259.200 (72 Stunden) sein.
Standard: 3.600 Sekunden.
RUNTIME_NAME = runtime_name'SYSTEM$WAREHOUSE_RUNTIME'(Standard): Führt das Notebook in einem Snowflake-Warehouse aus (nur Warehouse Runtime).'SYSTEM$BASIC_RUNTIME': Führt das Notebook in einem Snowpark Container Services (SPCS) Container mit einer CPU Runtime (nur Container Runtime) aus.'SYSTEM$GPU_RUNTIME': Führt das Notebook in einem Snowpark Container Services (SPCS) Container mit einer GPU Runtime (nur Container Runtime) aus.
Bei Angabe einer Container Runtime (
SYSTEM$BASIC_RUNTIMEoderSYSTEM$GPU_RUNTIME) müssen Sie auch dieCOMPUTE_POOL-Parameter angeben.SYSTEM$WAREHOUSE_RUNTIMEgilt nur für die Warehouse Runtime.COMPUTE_POOL = compute_pool_name(nur Container Runtime) Gibt den Computepool an, der das Notebook hostet, wenn Sie eine Container Runtime verwenden. Dieser Parameter ist erforderlich, wenn
RUNTIME_NAMEaufSYSTEM$BASIC_RUNTIMEoderSYSTEM$GPU_RUNTIMEgesetzt ist.Weitere Informationen zu Computepools finden Sie unter Snowpark Container Services: Verwenden von Computepools.
WAREHOUSE = warehouse_nameDas Warehouse wird verwendet, um Folgendes auszuführen:
Für Warehouse Runtime: Sowohl der Notebook-Kernel als auch SQL-Abfragen (einschließlich Snowpark Pushdown Compute).
Für Container Runtime: Nur SQL-Abfragen (einschließlich Snowpark Pushdown Compute). Der Notebook-Kernel läuft auf dem Computepool.
If you don’t specify a warehouse when you create a notebook, Snowflake uses the default warehouse defined by the schema lineage parameter
DEFAULT_STREAMLIT_NOTEBOOK_WAREHOUSE. You can set this parameter at the schema, database, or account lineage level to define a preferred warehouse.
Anforderungen an die Zugriffssteuerung¶
Eine Rolle, die zur Ausführung dieser Operation verwendet wird, muss mindestens die folgenden Berechtigungen haben:
Berechtigung |
Objekt |
|---|---|
USAGE |
Datenbank |
USAGE oder OWNERSHIP |
Schema |
CREATE NOTEBOOK |
Schema |
Für das Ausführen von Operationen für ein Objekt in einem Schema ist mindestens eine Berechtigung für die übergeordnete Datenbank und mindestens eine Berechtigung für das übergeordnete Schema erforderlich.
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¶
Wenn Sie ein Notebook erstellen, das eine Container Runtime verwendet, wird das Notebook innerhalb einer Snowpark Container Services-Umgebung ausgeführt. Container Runtime-Notebooks müssen sowohl den Parameter
RUNTIME_NAMEals auchCOMPUTE_POOLangeben.Metadaten:
Achtung
Kunden müssen sicherstellen, dass bei der Nutzung des Snowflake-Dienstes keine personenbezogenen Daten (außer für ein Objekt „User“), sensible Daten, exportkontrollierte Daten oder andere regulierte Daten als Metadaten eingegeben werden. Weitere Informationen dazu finden Sie unter Metadatenfelder in Snowflake.
Die Klauseln OR REPLACE und IF NOT EXISTS schließen sich gegenseitig aus. Sie können nicht beide in der gleichen Anweisung verwendet werden.
CREATE OR REPLACE <Objekt>-Anweisungen sind atomar. Das heißt, wenn ein Objekt ersetzt wird, erfolgt das Löschen des alten Objekts und das Erstellen des neuen Objekts in einer einzigen Transaktion.
Beispiele¶
Im Folgenden wird ein Notebook mit dem Namen mynotebook erstellt:
CREATE NOTEBOOK mynotebook;
Der Parameter QUERY_WAREHOUSE ist zwar optional, aber es wird empfohlen, ihn beim Erstellen eines neuen Notebooks anzugeben, damit EXECUTE NOTEBOOK auf dem Warehouse ausgeführt werden kann.
CREATE NOTEBOOK mynotebook
QUERY_WAREHOUSE = my_warehouse;
Das folgende Beispiel erstellt ein Notebook aus einer ipynb-Datei im Stagingbereich:
CREATE NOTEBOOK mynotebook
FROM '@my_db.my_schema.my_stage'
MAIN_FILE = 'my_notebook_file.ipynb'
QUERY_WAREHOUSE = my_warehouse;
The following example creates a notebook using Container Runtime (CPU):
CREATE NOTEBOOK my_cpu_notebook
RUNTIME_NAME = 'SYSTEM$BASIC_RUNTIME'
COMPUTE_POOL = 'my_compute_pool';
The following example creates a notebook using Container Runtime (GPU):
CREATE NOTEBOOK my_gpu_notebook
RUNTIME_NAME = 'SYSTEM$GPU_RUNTIME'
COMPUTE_POOL = 'gpu_pool_1';