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> ]
[ RUNTIME_NAME = '<runtime_name>' ]
[ COMPUTE_POOL = '<compute_pool_name>' ]
[ WAREHOUSE = <warehouse_to_run_notebook_python_runtime> ]
필수 매개 변수¶
name노트북의 식별자(즉, 이름)를 지정하는 문자열로, 노트북이 생성되는 스키마에 대해 고유해야 합니다.
또한, 식별자는 알파벳 문자로 시작해야 하며 전체 식별자 문자열을 큰따옴표(예:
"My object")로 묶지 않는 한 공백이나 특수 문자를 포함할 수 없습니다. 큰따옴표로 묶인 식별자도 대/소문자를 구분합니다.자세한 내용은 식별자 요구 사항 섹션을 참조하십시오.
선택적 매개 변수¶
FROM 'source_location'지정된 스테이지 위치에 있는
.ipynb파일에서 노트북을 만들도록 지정합니다. 스테이지에 있는 파일로 노트북을 생성하려면source_location을 파일의 스테이지 위치로 설정하고 MAIN_FILE 매개 변수를 파일 이름으로 설정합니다.이 매개 변수를 지정하지 않으면 템플릿 노트북에서 노트북 오브젝트가 만들어집니다.
MAIN_FILE = 'main_file_name'노트북 파일 이름을 위한 사용자 지정 식별자. 이 이름은
name매개 변수에 지정된 노트북 오브젝트 이름과 별개입니다. 이 파일은ipynb파일이어야 합니다.QUERY_WAREHOUSE = warehouse_name노트북의 SQL 쿼리가 실행되는 웨어하우스를 지정합니다. 이 매개 변수는 선택 사항입니다. 하지만 EXECUTE NOTEBOOK 명령을 실행해야 합니다.
IDLE_AUTO_SHUTDOWN_TIME_SECONDS = number_of_seconds노트북이 자동으로 종료되기 전의 유휴 시간(초)입니다. 이 매개 변수는 Container Runtime에서 실행되는 노트북에서만 사용할 수 있습니다. 값은 60~259200(72시간) 사이의 정수여야 합니다.
기본값: 3,600초
RUNTIME_NAME = runtime_name'SYSTEM$WAREHOUSE_RUNTIME'(default): Runs the notebook in a Snowflake warehouse (Warehouse Runtime only).'SYSTEM$BASIC_RUNTIME': Runs the notebook in a Snowpark Container Services (SPCS) container using a CPU runtime (Container Runtime only).'SYSTEM$GPU_RUNTIME': Runs the notebook in a Snowpark Container Services (SPCS) container using a GPU runtime (Container Runtime only).
When specifying a Container Runtime (
SYSTEM$BASIC_RUNTIMEorSYSTEM$GPU_RUNTIME), you must also include theCOMPUTE_POOLparameter.SYSTEM$WAREHOUSE_RUNTIMEis for Warehouse Runtime only.COMPUTE_POOL = compute_pool_name(Container Runtime only) Specifies the compute pool that hosts the notebook when using a Container Runtime. This parameter is required when
RUNTIME_NAMEis set toSYSTEM$BASIC_RUNTIMEorSYSTEM$GPU_RUNTIME.For more information about compute pools, see Snowpark Container Services: 컴퓨팅 풀 작업하기.
WAREHOUSE = warehouse_nameThe warehouse is used to run:
For Warehouse Runtime: Both the notebook kernel and SQL queries (including Snowpark pushdown compute).
For Container Runtime: Only SQL queries (including Snowpark pushdown compute). The notebook kernel runs on the compute pool.
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.
액세스 제어 요구 사항¶
이 작업을 실행하는 데 사용되는 역할 에는 최소한 다음 권한 이 있어야 합니다.
권한 |
오브젝트 |
|---|---|
USAGE |
데이터베이스 |
USAGE 또는 OWNERSHIP |
스키마 |
CREATE NOTEBOOK |
스키마 |
Operating on an object in a schema requires at least one privilege on the parent database and at least one privilege on the parent schema.
지정된 권한 세트로 사용자 지정 역할을 만드는 방법에 대한 지침은 사용자 지정 역할 만들기 섹션을 참조하십시오.
보안 오브젝트 에 대해 SQL 작업을 수행하기 위한 역할과 권한 부여에 대한 일반적인 정보는 액세스 제어의 개요 섹션을 참조하십시오.
사용법 노트¶
When creating a notebook that uses a Container Runtime, the notebook runs inside a Snowpark Container Services environment. Container runtime notebooks must specify both the
RUNTIME_NAMEandCOMPUTE_POOLparameters.메타데이터 관련:
주의
고객은 Snowflake 서비스를 사용할 때 개인 데이터(사용자 오브젝트 제외), 민감한 데이터, 수출 통제 대상 데이터 또는 기타 규제 데이터가 메타데이터로 입력되지 않도록 해야 합니다. 자세한 내용은 Snowflake의 메타데이터 필드 섹션을 참조하십시오.
OR REPLACE 및 IF NOT EXISTS 절은 상호 배타적입니다. 두 절을 같은 문에 함께 사용할 수 없습니다.
CREATE OR REPLACE <오브젝트> 문은 원자성입니다. 즉, 오브젝트가 바뀔 때 단일 트랜잭션으로 이전 오브젝트가 삭제되고 새 오브젝트가 생성됩니다.
예¶
다음은 이름이 mynotebook 인 노트북을 생성합니다.
CREATE NOTEBOOK mynotebook;
QUERY_WAREHOUSE 매개 변수는 선택 사항이지만, 새 노트북을 생성할 때 지정해 두면 웨어하우스에서 EXECUTE NOTEBOOK 을 실행할 수 있습니다.
CREATE NOTEBOOK mynotebook
QUERY_WAREHOUSE = my_warehouse;
다음 예제는 스테이지의 ipynb 파일에서 노트북을 만드는 예제입니다.
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';