Snowflake Notebooks 의 세션 컨텍스트¶
노트북의 세션 컨텍스트는 노트북이 실행되는 역할, 웨어하우스, 데이터베이스 및 스키마에 의해 정의됩니다. 노트북을 만들면 노트북에 사용할 역할, 웨어하우스, 데이터베이스, 스키마를 정의합니다. 노트북을 실행하면 노트북에 정의된 웨어하우스를 사용하여 해당 역할로 실행되고, 노트북이 포함된 데이터베이스 및 스키마의 컨텍스트에서 실행됩니다.
이 항목에서는 노트북의 세션 컨텍스트에 액세스하거나 변경하는 방법을 설명합니다.
노트북의 세션 컨텍스트에 액세스하기¶
Python 및 SQL을 모두 사용하여 세션 컨텍스트에 액세스할 수 있습니다.
Snowpark Python 라이브러리 또는 Snowflake Python APIs 을 사용하는 경우 get_active_session() 메서드를 사용하여 활성 세션 컨텍스트를 가져옵니다.
from snowflake.snowpark.context import get_active_session
session = get_active_session()
SQL의 경우 컨텍스트 함수 SQL 함수를 사용할 수 있습니다.
SELECT CURRENT_WAREHOUSE(), CURRENT_DATABASE(), CURRENT_SCHEMA();
노트북의 세션 컨텍스트 변경하기¶
노트북의 세션 컨텍스트를 변경하여 다른 역할, 데이터베이스 및 스키마 및/또는 웨어하우스를 사용할 수 있습니다.
USE ROLE SQL 명령과 함께 사용할 다른 역할을 지정합니다.
노트북에서 사용 중인 역할을 확인하려면 CURRENT_ROLE 함수를 호출합니다.
노트북 웨어하우스, 데이터베이스 또는 스키마를 사용할 수 있는 권한이 없는 역할로 변경하면 웨어하우스나 노트북 데이터베이스 또는 스키마에 대한 액세스가 필요한 쿼리가 실행되지 않습니다. 하지만 노트북 웨어하우스, 데이터베이스, 스키마를 사용하지 않는 쿼리도 실행할 수 있습니다.
USE ROLE SQL 명령으로 지정한 역할은 노트북 세션 간에 지속되지 않습니다.
현재 활성 역할에 액세스할 권한이 없는 데이터베이스나 스키마를 지정하면 해당 데이터베이스와 스키마를 사용하는 쿼리는 실행되지 않습니다.
SQL 명령 USE SECONDARY ROLES 를 실행해 보조 역할을 ALL로 설정하면 사용자와 연결된 보조 역할이 노트북 셀의 결과 세트를 생성하는 데 사용됩니다.
SQL 명령 USE WAREHOUSE 를 사용하여 다른 웨어하우스를 지정합니다.
노트북이 사용 중인 웨어하우스를 확인하려면 CURRENT_WAREHOUSE 함수를 호출합니다.
다른 데이터베이스 또는 스키마를 지정하려면 USE DATABASE 또는 USE SCHEMA SQL 명령을 사용합니다.
노트북에서 사용 중인 데이터베이스를 확인하려면 CURRENT_DATABASE 함수를 호출합니다.
노트북 데이터베이스 또는 이전 노트북 셀에 지정된 데이터베이스에서 오브젝트를 참조하는 경우, SQL 문을 단순화해 오브젝트에 대한 정규화된 경로 대신 참조할 스키마와 오브젝트만 포함할 수 있습니다.
다음 단계¶
노트북을 사용해 결과를 저장하고 공유 하는 방법에 대해 알아보십시오.