CREATE NOTEBOOK PROJECT

Crée un nouveau projet de notebook ou remplace un projet existant. Un objet de projet de notebook lie un espace de travail dans Snowsight (identifié par une URL snow://workspace/...) à une base de données et à un schéma, afin qu’il puisse être exécuté avec EXECUTE NOTEBOOK PROJECT.

Voir aussi :

EXECUTE NOTEBOOK PROJECT, SHOW NOTEBOOK PROJECTS, CREATE NOTEBOOK, EXECUTE NOTEBOOK

Syntaxe

CREATE [ OR REPLACE ] NOTEBOOK PROJECT <database_name>.<schema_name>.<project_name>
  FROM 'snow://workspace/<workspace_path>'
  [ COMMENT = '<string_literal>' ];
Copy

Paramètres requis

database_name.schema_name.project_name

Identificateur pleinement qualifié du projet de notebook.

Le nom du projet doit être unique au sein du schéma.

Les identificateurs doivent commencer par un caractère alphabétique et ne peuvent pas contenir d’espaces ou de caractères spéciaux, sauf si l’identificateur est mis entre guillemets doubles (par exemple, "My Project").

Les identificateurs entre guillemets doubles sont sensibles à la casse.

FROM 'snow://workspace/workspace_path'

Spécifie l’espace de travail dans Snowsight qui soutient ce projet de notebook.

La valeur doit être une URL snow://workspace/... pointant vers une version de l’espace de travail.

Le chemin d’accès comprend généralement :

  • USER$ ou un autre propriétaire.

  • Schéma :

  • Nom de l’espace de travail.

  • Version (par exemple, versions/head).

Par exemple :

  • snow://workspace/USER$.MY_SCHEMA."my_notebook_workspace"/versions/head

Pour localiser le chemin d’accès de l’espace de travail, exécutez la commande suivante :

LIST 'snow://workspace/USER$.PUBLIC.DEFAULT$/versions/live/';
Copy

Paramètres facultatifs

COMMENT = 'string_literal'

Ajoute un commentaire ou une description à l’objet de projet de notebook.

Utilisez des commentaires pour décrire l’objectif ou le workflow (par exemple, COMMENT = 'Notebook project for this workflow').

Les commentaires sont stockés sous forme de métadonnées d’objets. Évitez d’inclure des données sensibles dans les commentaires.

Exigences en matière de contrôle d’accès

Pour exécuter CREATE NOTEBOOK PROJECT, un rôle doit disposer de privilèges suffisants pour créer des objets dans la base de données et le schéma cibles. Les privilèges requis sont les suivants :

  • USAGE ou OWNERSHIP sur la base de données.

  • USAGE ou OWNERSHIP sur le schéma.

  • CREATE NOTEBOOK PROJECT sur le schéma qui permet de créer des objets dans ce schéma.

Pour obtenir des instructions sur la création d’un rôle personnalisé avec un ensemble spécifique de privilèges, voir Création de rôles personnalisés.

Pour des informations générales sur les rôles et les privilèges accordés pour effectuer des actions SQL sur des objets sécurisables, voir Aperçu du contrôle d’accès.

Notes sur l’utilisation

  • Les clauses OR REPLACE et IF NOT EXISTS s’excluent mutuellement. Elles ne peuvent pas être utilisées dans la même instruction.

  • Les instructions CREATE OR REPLACE <objet> sont atomiques. En d’autres termes, lorsqu’un objet est remplacé, l’ancien objet est supprimé et le nouvel objet est créé dans une seule transaction.

  • Un projet de notebook pointe vers la version spécifiée de l’espace de travail indiquée dans la clause FROM. L’utilisation de versions/head fait toujours référence à la dernière version de l’espace de travail. L’utilisation d’un chemin d’accès fixe fait référence à une version statique.

  • Utilisez des noms de projets descriptifs pour simplifier l’orchestration des workflows.

  • Le remplacement d’un projet met à jour le chemin d’accès et les métadonnées de l’espace de travail stocké.

Exemples

Créer un projet de notebook pour un espace de travail :

CREATE NOTEBOOK PROJECT analytics_db.workflow_schema.workflow_proj
  FROM 'snow://workspace/USER$.workflow_schema."etl_workflow"/versions/head'
  COMMENT = 'Notebook project for nightly ETL workflow';
Copy