CREATE NOTEBOOK

创建新的 Snowflake 笔记本 或替换现有的笔记本。

语法

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> ]
  [ WAREHOUSE = <warehouse_to_run_notebook_python_runtime> ]
Copy

必填参数

name

指定笔记本标识符(即名称)的字符串;在创建笔记本的架构中必须是唯一的。

此外,标识符必须以字母字符开头,且不能包含空格或特殊字符,除非整个标识符字符串放在双引号内(例如,"My object")。放在双引号内的标识符也区分大小写。

有关更多信息,请参阅 标识符要求

可选参数

FROM 'source_location'

指定应从指定暂存区位置的 .ipynb 文件或 私人笔记本 中创建笔记本:

  • 要从暂存区上的文件创建笔记本,请将 source_location 设置为文件的暂存区位置,并将 MAIN_FILE 参数设置为文件名。

  • 要从私人笔记本创建笔记本(例如,将私人笔记本用于共享用途),请将此参数设置为:

    'snow://notebook/USER$username.schema.notebook/versions/version$1/'

    其中:

    • username 是您的用户名。

    • schema 是包含私人笔记本的架构的名称。

    • notebook 是私人笔记本的名称。

如果未指定此参数,则通过模板笔记本创建笔记本对象。

MAIN_FILE = 'main_file_name'

笔记本文件名的用户指定标识符。这与 name 参数中指定的笔记本对象名称是分开的。此文件必须是 ipynb 文件。

QUERY_WAREHOUSE = warehouse_name

指定运行笔记本中 SQL 查询的仓库。此参数是可选的。但是,需要运行 EXECUTE NOTEBOOK 命令。

IDLE_AUTO_SHUTDOWN_TIME_SECONDS = number_of_seconds

笔记本自动关闭前的空闲时间秒数。此参数仅适用于在容器运行时运行的笔记本。值必须是介于 60 和 259200(72 小时)之间的整数。

默认值:3600 秒

WAREHOUSE = warehouse_name

运行笔记本内核和 Python 代码的仓库。

如果创建笔记本时没有指定仓库,Snowflake 会使用由架构沿袭参数 DEFAULT_STREAMLIT_NOTEBOOK_WAREHOUSE 定义的默认仓库。您可以在架构、数据库或账户沿袭级别设置此参数,以定义首选仓库。

访问控制要求

用于执行此操作的 角色 必须至少具有以下 权限

权限

对象

USAGE

数据库

USAGE 或 OWNERSHIP

架构

CREATE NOTEBOOK

架构

要对架构中的任何对象执行操作,需要对父数据库和架构具有 USAGE 权限。

有关创建具有指定权限集的自定义角色的说明,请参阅 创建自定义角色

有关对 安全对象 执行 SQL 操作的相应角色和权限授予的一般信息,请参阅 访问控制概述

使用说明

  • 关于元数据:

    注意

    客户应确保在使用 Snowflake 服务时,不会将个人数据(用户对象除外)、敏感数据、出口管制数据或其他受监管数据作为元数据输入。有关更多信息,请参阅 Snowflake 中的元数据字段

  • OR REPLACEIF NOT EXISTS 子句互斥。它们不能同时用于同一条语句中。

  • CREATE OR REPLACE <object> 语句是原子的。也就是说,当对象被替换时,旧对象将被删除,新对象将在单个事务中创建。

示例

以下示例将创建名为 mynotebook 的笔记本:

CREATE NOTEBOOK mynotebook;
Copy

虽然 QUERY_WAREHOUSE 参数是可选的,但建议在创建新笔记本时指定该参数,以便可以在仓库上运行 EXECUTE NOTEBOOK。

CREATE NOTEBOOK mynotebook
 QUERY_WAREHOUSE = my_warehouse;
Copy

以下示例从暂存区上的 ipynb 文件创建笔记本:

CREATE NOTEBOOK mynotebook
 FROM '@my_db.my_schema.my_stage'
 MAIN_FILE = 'my_notebook_file.ipynb'
 QUERY_WAREHOUSE = my_warehouse;
Copy
语言: 中文