CREATE NOTEBOOK PROJECT

Cria um objeto de projeto de notebook. Um objeto de projeto de notebook (NPO) vincula um espaço de trabalho em Snowsight a um banco de dados e esquema. Quando o NPO é criado, todos os arquivos do espaço de trabalho são copiados para o projeto no banco de dados e esquema especificados. O projeto do notebook pode então ser executado usando EXECUTE NOTEBOOK PROJECT. Você pode criar um objeto de projeto de notebook a partir de um estágio ou de um espaço de trabalho privado.

Nota

No momento, não há suporte para a criação de objetos de projeto de notebook a partir de espaços de trabalho compartilhados.

Consulte também:

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

Sintaxe

Crie um objeto de projeto de notebook de um espaço de trabalho privado:

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

Crie um objeto de projeto de notebook de um estágio:

CREATE NOTEBOOK PROJECT [ IF NOT EXISTS ] <database_name>.<schema_name>.<project_name>
  FROM '@<database_name>.<schema_name>.<stage_name>'
  [ COMMENT = '<string_literal>' ];
Copy

Parâmetros obrigatórios

database_name.schema_name.project_name

Identificador totalmente qualificado do projeto de notebook.

O nome do projeto deve ser exclusivo no esquema.

Os identificadores devem começar com um caractere alfabético e não podem conter espaços ou caracteres especiais, a menos que estejam entre aspas duplas (por exemplo, "My Project").

Os identificadores delimitados por aspas duplas diferenciam letras maiúsculas de minúsculas.

FROM 'snow://workspace/{workspace_path' | '@database_name.schema_name.stage_name' }

Especifica a fonte em que este projeto de notebook é executado.

  • Como usar um snow://workspace/... URL para criar o projeto de notebook a partir de uma versão do espaço de trabalho em Snowsight.

  • Use uma referência de estágio (por exemplo, '@my_db.my_schema.my_stage') para criar o projeto de notebook a partir de arquivos de notebook que você implantou em um estágio interno ou temporário.

Ao criar a partir de um espaço de trabalho, o valor deve ser um snow://workspace/... URL que aponta para uma versão de espaço de trabalho.

Normalmente, o caminho inclui:

  • USER$ ou outro proprietário.

  • Esquema.

  • Nome do espaço de trabalho.

  • Version (for example, versions/last).

Por exemplo:

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

Para localizar o caminho do espaço de trabalho, execute o seguinte comando:

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

Parâmetros opcionais

COMMENT = 'string_literal'

Adiciona um comentário ou uma descrição ao objeto de projeto de notebook.

Use os comentários para descrever a finalidade ou o fluxo de trabalho (por exemplo, COMMENT = 'Notebook project for this workflow').

Os comentários são armazenados como metadados de objeto. Evite incluir dados sensíveis nos comentários.

Requisitos de controle de acesso

Para executar CREATE NOTEBOOK PROJECT, uma função deve ter privilégios suficientes para criar objetos no banco de dados e esquema de destino. Os privilégios exigidos incluem:

  • USAGE ou OWNERSHIP no banco de dados.

  • USAGE ou OWNERSHIP no esquema.

  • CREATE NOTEBOOK PROJECT no esquema que permite criar objetos dentro desse esquema.

Para instruções sobre como criar uma função personalizada com um conjunto específico de privilégios, consulte Criação de funções personalizadas.

Para informações gerais sobre concessões de funções e privilégios para executar ações de SQL em objetos protegíveis, consulte Visão geral do controle de acesso.

Notas de uso

  • As cláusulas OR REPLACE e IF NOT EXISTS são mutuamente exclusivas. Os dois não podem ser usados na mesma instrução.

  • Instruções CREATE OR REPLACE <object> são atômicas. Ou seja, quando um objeto é substituído, o objeto antigo é excluído e o novo objeto é criado em uma única transação.

  • A notebook project points to the specified workspace version indicated in the FROM clause. Using versions/last always references the latest workspace version; using a fixed path references a static version.

  • Se você criar o projeto de notebook a partir de um estágio, poderá atualizá-lo adicionando versões do estágio. Para obter mais detalhes, consulte Executar e agendar notebooks no Workspaces.

  • Use nomes de projetos descritivos para simplificar a orquestração do fluxo de trabalho.

  • Substituir um projeto atualiza o caminho e os metadados do espaço de trabalho armazenado.

  • Para executar o comando CREATE NOTEBOOK PROJECT, você deve executá-lo a partir de um arquivo SQL ou planilha SQL no Workspaces, não de dentro de uma célula do notebook.

Exemplos

Criar um projeto de notebook para um espaço de trabalho:

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

Criar um projeto de notebook a partir de um estágio:

CREATE NOTEBOOK PROJECT analytics_db.workflow_schema.workflow_proj
  FROM '@NOTEBOOK_PROJECT_STAGE'
  COMMENT = 'Notebook project created from an internal or temporary stage';
Copy

Criar um projeto de notebook a partir de um estágio usando IF NOT EXISTS:

CREATE NOTEBOOK PROJECT IF NOT EXISTS ML_TRAIN_NOTEBOOK3
  FROM '@NOTEBOOK_PROJECT_STAGE1'
  COMMENT = 'Notebook project created from an internal or temporary stage';
Copy