작업 공간의 Snowflake Notebooks에 대한 컴퓨팅 설정

컴퓨팅 설정하기

사용자가 노트북을 실행하는 경우 사용자는 노트북 커널을 호스팅하고 코드를 실행하는 Snowflake 관리 노트북 서비스를 생성합니다.

노트북 서비스를 생성할 때 사용자는 Python 버전, Snowflake Container Runtime 버전, 컴퓨팅 풀, 유휴 시간 제한, 외부 액세스 통합을 구성하고 선택적으로 서비스 이름을 사용자 지정할 수 있습니다.

각 노트북 서비스는 단일 사용자로 범위가 지정되며 선택한 컴퓨팅 풀에서 하나의 노드를 차지합니다. 동일한 서비스에 연결된 모든 노트북은 해당 노드의 컴퓨팅 리소스를 공유합니다. 노트북에 전용 컴퓨팅 리소스가 필요한 경우 별도의 노트북 서비스를 생성합니다. 추가 노트북을 연결하는 것은 피하세요.

../../../_images/notebook-compute-diagram1.png

노트북 서비스 관리하기

일시 중단

:ui:`Connected`를 클릭하고, 서비스 이름을 마우스로 가리키고, :ui:`Suspend`(일시 중지 아이콘)를 선택하여 노트북 서비스를 수동으로 일시 중단할 수 있습니다.

또는 서비스가 유휴 시간 제한 설정에 도달할 때까지 기다리면 자동으로 일시 중단됩니다. 유휴 시간 계산 방법에 대한 자세한 내용은 :ref:`유휴 시간 제한<label-nb_in_ws_idle_timeout>`을 참조하세요.

서비스를 일시 중단하면 해당 서비스에 연결된 모든 노트북의 연결이 해제되고, 메모리 내 상태가 지워지며, 모든 패키지와 변수가 제거됩니다. 코드와 명령줄에서 작업 공간 파일 시스템으로 생성된 파일 및 /tmp 디렉터리도 손실됩니다. 파일 시스템 제한 사항에 대한 자세한 내용은 :ref:`파일 시스템 관련 작업하기<label-notebooks_work_with_files>`를 참조하세요.

재개

일시 중단된 서비스를 재개하려면 노트북을 서비스에 연결하거나 이전에 연결된 노트북을 실행합니다.

삭제

서비스를 삭제하려면 다음 단계를 따릅니다.

  1. Snowsight 에 로그인합니다.

  2. Connected 드롭다운을 선택합니다.

  3. Manage service`를 선택하여 :ui:`Services & jobs 페이지로 이동합니다.

  4. 삭제할 서비스의 줄임표를 선택한 후 :ui:`Drop`을 선택합니다.

노트북 서비스 편집하기

노트북 서비스는 생성된 후 업데이트하여 다음을 변경할 수 있습니다.

  1. 외부 액세스 통합.

  2. 런타임 버전.

  3. 유휴 시간 제한.

Changes to (1) or (2) suspend then restart the service. Changing the idle timeout does not restart the service.

유휴 시간 제한

각 노트북 서비스는 자체 유휴 시간 제한을 정의합니다. 유휴 시간에 도달하면 서비스가 일시 중단됩니다. 연결된 모든 노트북에서 실행 중인 모든 셀이 완료되는 즉시 유휴 시간이 시작됩니다. 여러 노트북이 동일한 서비스를 공유하는 경우 유휴 시간은 마지막 노트북이 유휴 상태가 될 때만 시작됩니다(실행 중인 셀 없음).

크레딧 사용

노트북 실행 시 다음 두 가지 소스에서 크레딧이 발생할 수 있습니다.

  • 컴퓨팅 풀: 노트북 커널과 Python 프로세스를 구동합니다.

    노트북 서비스가 RUNNING 상태에 있는 동안 수동으로 일시 중단되거나 유휴 시간 제한으로 인해 일시 중단될 때까지 크레딧이 누적됩니다. 동일한 서비스에 연결된 모든 노트북은 사용된 컴퓨팅 풀 크레딧을 공유합니다.

  • 쿼리 웨어하우스: 노트북에 의해 트리거된 SQL 쿼리 또는 Snowpark 푸시다운 컴퓨팅에 사용됩니다.

    크레딧은 SQL 쿼리 또는 Snowpark 푸시다운 컴퓨팅 작업이 웨어하우스에서 실행되는 경우에만 발생합니다. 비용을 최적화하려면 쿼리 웨어하우스에서 자동 일시 중단을 활성화합니다. SQL 쿼리 또는 Snowpark 푸시다운 컴퓨팅을 호출하지 않는 노트북은 쿼리 웨어하우스 크레딧이 발생하지 않습니다.

비용 최적화 및 가치 극대화에 대한 자세한 내용은 비용 최적화하기 섹션을 참조하세요.

노트북 서비스에 대한 거버넌스

노트북 서비스는 각 사용자에게 개인용으로 제공되고, 노트북 실행에만 사용되며, 사용자의 개인 데이터베이스(PDB) 내에 위치합니다.

권한

소유권

Snowflake가 해당 서비스를 관리하기 때문에 OWNER_ROLE은 NULL입니다.

사용자 권한

생성하는 사용자에게는 다음 권한이 부여됩니다.

  • USAGE

  • OPERATE

  • DROP

  • MONITOR

관리자 권한

ACCOUNTADMIN에게 부여되는 권한:

  • USAGE

  • OPERATE

  • DROP

이를 통해 모든 노트북 서비스를 완벽하게 관리하고 감독할 수 있습니다.

컴퓨팅 풀에 대한 관리자 제어 및 비용 모니터링

관리자는 주로 노트북 서비스와 연결된 컴퓨팅 풀을 통해 사용자 액세스 및 비용을 관리합니다.

사용자의 역할에는 노트북 서비스를 생성하고 노트북을 실행하기 위해 컴퓨팅 풀에 대한 USAGE 권한이 있어야 합니다. 또한 컴퓨팅 풀은 ALLOWED_SPCS_WORKLOAD_TYPES 매개 변수를 통해 NOTEBOOK 워크로드 유형을 허용해야 합니다. 이 매개 변수의 기본값은 :code:`ALL`이며, 여기에는 :code:`NOTEBOOK`이 포함됩니다.

컴퓨팅 풀 워크로드에 대해 자세히 알아보려면 Snowpark Container Services: 컴퓨팅 풀 작업하기 섹션을 참조하세요.

노트북 실행 비활성화

관리자는 다음과 같은 여러 가지 방법으로 작업 공간에서 노트북 실행을 제한할 수 있습니다.

컴퓨팅 풀에 대한 USAGE 권한 제거

컴퓨팅 풀에 대한 역할의 USAGE 권한을 제거하면 해당 역할이 노트북 실행을 포함하여 해당 컴퓨팅 풀을 사용할 수 없게 됩니다.

모든 컴퓨팅 풀에서 워크로드 유형 제한

관리자는 두 개의 계정 수준 매개 변수를 사용하여 다른 워크로드를 계속 허용하면서 노트북 실행을 제한할 수 있습니다. 이는 계정의 모든 역할에 영향을 미칩니다.

  • ALLOWED_SPCS_WORKLOAD_TYPES 매개 변수에서 :code:`NOTEBOOK`을 제외합니다.

  • NOTEBOOK`을 :code:`DISALLOWED_SPCS_WORKLOAD_TYPES 매개 변수로 설정합니다.

컴퓨팅 풀에 대한 USAGE 권한이 있는 역할은 매개 변수로 지정된 다른 허용 유형의 워크로드를 계속 실행할 수 있습니다.

비용 모니터링

관리자는 컴퓨팅 풀당 사용량을 모니터링할 수 있습니다. 역할 수준 사용량을 보려면 각 역할에 고유한 컴퓨팅 풀을 프로비저닝하는 것이 좋습니다. 지출을 관리하기 위해 관리자는 특정 컴퓨팅 풀에 예산을 적용할 수 있습니다.

노트북 관리 서비스 보기

SHOW SERVICES 명령을 사용합니다.

SHOW SERVICES OF TYPE NOTEBOOK;
Copy

노트북 서비스 삭제

관리자는 SQL을 통해 노트북 서비스를 삭제할 수 있습니다.

DROP USER$DB_NAME.PUBLIC.[SERVICE_NAME];
Copy

또는 관리자는 |sf-web-interface|를 사용할 수 있습니다.

  1. Snowsight 에 로그인합니다.

  2. 탐색 메뉴에서 Monitoring » Services & jobs 를 선택합니다.

  3. 줄임표를 선택한 후 :ui:`Drop`을 선택합니다.

서비스 유지 관리

노트북 서비스는 |spcs|의 유형으로, 보안과 최신 상태를 유지하려면 정기적인 유지 관리가 필요합니다. 유지 관리는 일반적으로 약 5분 정도 걸리며 노트북 서비스를 일시 중단했다가 다시 시작합니다. 워크로드 영향에 대한 자세한 내용은 :ref:`노트북 서비스 관리하기<label-nb_in_ws_manage_notebook_service>`를 참조하세요.

노트북 서비스가 RUNNING 상태(새로 생성되거나 SUSPENDED 상태 후 재개된 경우)로 전환된 후 서비스 유지 관리로 인해 7일(168시간) 동안 중단되지 않도록 보장합니다. 생성 후 7일이 지나면 필수 유지 관리를 위해 서비스가 일시 중단될 수 있습니다.