Private Notebooks¶
Einführung¶
Unter Snowsight können Sie ein privates, benutzereigenes Notebook erstellen. Dieses private Notebook wird in Ihrer persönlichen Datenbank gespeichert: ein spezieller Arbeitsbereich, in dem Sie Ihre privaten Notebooks erstellen, ändern und verwalten können. Anders als bei der rollenbasierten Eigentümerschaft sind Objekte in einer persönlichen Datenbank Eigentum eines einzelnen Benutzers. Der Lebenszyklus der persönlichen Datenbank eines Benutzers ist an den Benutzer gebunden. Wenn zum Beispiel ein Benutzer im Snowflake-Konto gelöscht wird, wird auch seine persönliche Datenbank gelöscht. Sie können private Notebooks in einer persönlichen Datenbank anlegen, ohne darauf warten zu müssen, dass Ihnen jemand die entsprechenden Berechtigungen erteilt.
Ihre persönliche Datenbank wird nach Ihrem Benutzernamen in der Form USER$username
benannt (zum Beispiel USER$JOHNDOE
). Sie können ihn auch mit dem Präfix USER$
referenzieren. Sie können die Details zu Ihrer persönlichen Datenbank unter Data » Databases einsehen.
Mit einem privaten Notebook können Sie die folgenden Aufgaben erledigen:
Entwickeln Sie privat interaktiv Code, und experimentieren Sie mit Daten und Modellen.
Stellen Sie diese Projekte bereit, indem Sie Notebooks aus persönlichen Datenbanken in reguläre, nicht-persönliche Datenbanken duplizieren.
Einzelheiten zu den Voraussetzungen für private Notebooks finden Sie unter Voraussetzungen für die Verwendung privater Notebooks.
Einzelheiten zum Erstellen eines privaten Notebooks finden Sie unter Neues Notebook erstellen.
Aktivieren aller sekundären Rollen für private Benutzer von Notebooks¶
Bevor Sie ein privates Notebook erstellen, müssen die sekundären Rollen aktiviert werden. Das liegt daran, dass private Notebooks dem Benutzer gehören und nicht seiner Hauptrolle.
Das Bundle 2024_07 BCR (standardmäßig aktiviert) hat alle sekundären Rollen aktiviert, aber wenn der Kontoadministrator das Bundle deaktiviert hat, müssen Sie entweder Folgendes tun:
Aktivieren Sie das Bundle 2024_07 oder 2024_08 BCR.
Stellen Sie das Objekt DEFAULT_SECONDARY_ROLES auf
('ALL')
für den Benutzer ein.
Um alle Nebenrollen eines Benutzers standardmäßig zu aktivieren, kann der Benutzer oder ein Administrator den Befehl ALTER USER verwenden, um die Objekteigenschaft DEFAULT_SECONDARY_ROLES für den Benutzer auf ('ALL')
zu setzen.
Administratoren können zum Beispiel die folgende SQL-Anweisung ausführen, um alle sekundären Rollen eines Benutzers standardmäßig zu aktivieren:
ALTER USER my_user SET DEFAULT_SECONDARY_ROLES = ('ALL');
Nachdem ein Administrator die obige SQL-Anweisung ausgeführt hat, kann der Benutzer Projekte » Notebooks in Snowsight wählen oder SQL-Befehle in einem neuen Arbeitsblatt ausführen, um ein privates Notebook zu erstellen.
Ein Benutzer, der SQL-Befehle in einem bestehenden Arbeitsblatt ausführen möchte, muss die folgende SQL-Anweisung ausführen, bevor er ein privates Notebook erstellt:
USE SECONDARY ROLES ALL;
Einschränkungen für private Notebooks¶
Private Notebooks können nicht geplant werden.
Beschränkungen für persönliche Datenbanken¶
Benutzer können private Notebooks und Schemas nur innerhalb einer persönlichen Datenbank erstellen. Zum Beispiel können Tabellen nicht erstellt und geladen werden.
Benutzer können ihre persönliche Datenbank nicht ändern, klonen oder replizieren.
Benutzer können keine Schemas zwischen persönlichen und nicht-persönlichen Datenbanken verschieben.
Administratoren können einer Replikationsgruppe keine persönliche Datenbank zum Zweck der Replikation hinzufügen.
Benutzer können keine persönliche Datenbank zu nativen Apps (App-Paket) hinzufügen.
Benutzer und Administratoren können das Schema
USER$.PUBLIC
nicht löschen und/oder umbenennen.Einschränkungen bei der Zusammenarbeit:
Administratoren können keine Datenbankrollen erstellen.
Benutzer und Administratoren können keine
CREATE <Objekt>
-Berechtigungen für ihre Schemas an andere vergeben.Benutzer können für ihre Objekte keine Berechtigungen für Freigaben oder Anwendungspakete erteilen.
Benutzer können die Berechtigung
REFERENCE_USAGE
ihrer persönlichen Datenbank nicht für Freigaben oder Pakete vergeben.Benutzer können keine persönliche Datenbank zu einer Freigabe hinzufügen (zum Zwecke der gemeinsamen Nutzung über Konten hinweg).
Organisieren Ihrer privaten Notebooks¶
Sie können Schemas erstellen und verwenden, um Ihre privaten Notebooks zu organisieren. Persönliche Datenbanken enthalten standardmäßig die Standardschemas PUBLIC und INFORMATION_SCHEMA.
Erstellen und verwenden Sie neue Schemas auf die übliche Weise, aber stellen Sie sicher, dass Sie Ihre persönliche Datenbank verwenden, wenn Sie Schemas erstellen. Beispiel:
USE DATABASE USER$bobr;
CREATE SCHEMA bobr_schema;
USE SCHEMA bobr_schema;
Sie können den Befehl ALTER SCHEMA auch für Schemas in persönlichen Datenbanken verwenden, und Sie können den Befehl SHOW SCHEMAS verwenden, um die Schemas anzuzeigen, die zu persönlichen Datenbanken gehören. Beispiel:
ALTER SCHEMA bobr_schema RENAME TO bobr_personal_schema;
SHOW TERSE SCHEMAS;
+-------------------------------+----------------------+------+---------------+-------------+
| created_on | name | kind | database_name | schema_name |
|-------------------------------+----------------------+------+---------------+-------------|
| 2024-10-28 19:33:18.437 -0700 | BOBR_PERSONAL_SCHEMA | NULL | USER$BOBR | NULL |
| 2024-10-29 14:11:33.267 -0700 | INFORMATION_SCHEMA | NULL | USER$BOBR | NULL |
| 2024-10-28 12:47:21.502 -0700 | PUBLIC | NULL | USER$BOBR | NULL |
+-------------------------------+----------------------+------+---------------+-------------+
Ein privates Notebook für den allgemeinen Gebrauch zur Verfügung stellen¶
An einem bestimmten Punkt der Entwicklung möchten Sie Ihr Notebook vielleicht außerhalb Ihrer persönlichen Datenbank neu erstellen. Um diese Änderung vorzunehmen, duplizieren Sie das ursprüngliche Notebook mit dem Befehl CREATE NOTEBOOK. Wenn Sie dies tun, wird das Notebook für andere Benutzer sichtbar.
Beispiel:
CREATE NOTEBOOK bobr_prod_notebook
FROM 'snow://notebook/USER$BOBR.PUBLIC.bobr_private_notebook/versions/version$1/'
QUERY_WAREHOUSE = 'PUBLIC_WH'
MAIN_FILE = 'notebook_app.ipynb'
COMMENT = 'Duplicated from personal database';
Notebook BOBR_PROD_NOTEBOOK successfully created.
Sie können ein privates Notebook auch aus einem Notebook erstellen, das in einer Produktionsdatenbank angelegt wurde.
Bemerkung
Sie können diese Aufgabe nicht über die Snowsight Weboberfläche erledigen. Sie müssen einen expliziten SQL-Befehl verwenden (z. B. in einer SQL-Zelle eines Notebooks oder in einem Arbeitsblatt).
Informationen über private Notebooks und persönliche Datenbanken anzeigen¶
Einzelne Benutzer können Snowsight verwenden, um Informationen über Notebooks anzuzeigen. Rufen Sie Projects » Notebooks auf. Der Eigentümer des Notebooks wird als Benutzer aufgeführt.
Informationen über Datenbanken, einschließlich persönlicher Datenbanken, finden Sie unter Data » Databases. Sie können leicht erkennen, welche Datenbanken persönliche Datenbanken sind, da sie das Präfix USER$
tragen.
Sie können auch die folgenden Befehle SHOW und DESCRIBE verwenden, um Informationen über private Notebooks, persönliche Datenbanken und Schemas innerhalb dieser persönlichen Datenbanken anzuzeigen:
Bemerkung
Derzeit können Administratoren keine privaten Notebookobjekte sehen, die anderen Benutzern gehören.
Beschreiben Sie zum Beispiel ein privates Notebook:
DESCRIBE NOTEBOOK USER$.PUBLIC.bobr_private_notebook;
Zeigen Sie zum Beispiel Informationen über ein oder mehrere private Notebooks an:
SHOW NOTEBOOKS;
SHOW NOTEBOOKS LIKE 'bobr_private_notebook';
Zeigen Sie zum Beispiel die persönliche Datenbank des aktuellen Benutzers an:
SHOW DATABASES LIKE 'USER$BOBR';
Für persönliche Datenbanken lautet der Wert in der kind
-Spalte PERSONAL DATABASE
.