다양한 유형의 Streamlit 오브젝트 이해하기¶
Snowflake의 Streamlit 오브젝트에는 기능, 제한 사항 및 관리에 영향을 미치는 두 가지 중요한 차이점이 있습니다.
소스 위치 지정 방법: ROOT_LOCATION 매개 변수(레거시) 또는 FROM 매개 변수(권장) 사용.
런타임 환경: Warehouse Runtime 또는 Container Runtime(미리 보기).
이 페이지에서는 소스 위치 사양 간의 차이점을 설명하며, 이는 사용할 수 있는 런타임 환경에 영향을 줍니다.
런타임 환경에 대한 자세한 내용은 Streamlit 앱을 위한 런타임 환경 섹션을 참조하세요. Warehouse Runtime에서 Container Runtime으로 마이그레이션하기 위한 체크리스트는 런타임 환경 간 마이그레이션 섹션을 참조하세요.
원본 위치¶
Snowflake에서 Streamlit 앱을 만들 때 두 개의 서로 다른 매개 변수를 사용하여 소스 파일 ROOT_LOCATION 또는 FROM의 위치를 지정할 수 있습니다. ROOT_LOCATION은 몇 가지 제한 사항이 있는 레거시 매개 변수입니다. 현재, FROM은 새 앱에 권장되는 매개 변수이며, 컨테이너 런타임을 포함하여 최신 Streamlit in Snowflake 에 액세스하는 데 필요합니다. 이 페이지에서는 두 가지 유형의 앱을 구분하는 방법을 설명합니다. 최신 Streamlit in Snowflake 기능을 활성화하려면 레거시 Streamlits를 업그레이드해야 합니다. 자세한 내용은 런타임 환경 간 마이그레이션 섹션을 참조하십시오.
FROM 매개 변수(권장)¶
FROM 매개 변수는 지정된 위치에서 Streamlit 오브젝트 내의 포함된 스테이지로 파일을 복사합니다. 이는 Streamlit 앱을 만들 때 현재 권장되는 접근 방식입니다.
이점:
Warehouse Runtime 및 Container Runtime을 모두 지원합니다.
Snowsight 에서 다중 파일 편집을 활성화합니다.
Git 통합 기능과 호환됩니다.
Streamlit 오브젝트 내에 포함되고 버전이 지정된 스테이지를 사용합니다.
구문:
CREATE STREAMLIT my_app
FROM '@my_stage/app_folder'
MAIN_FILE = 'streamlit_app.py';
ROOT_LOCATION 매개 변수(레거시)¶
ROOT_LOCATION 매개 변수는 내부 스테이지를 해당 소스로 참조하는 앱을 생성합니다. 이는 몇 가지 제한 사항이 있는 레거시 접근 방식입니다. Snowsight 의 이전 버전을 사용하여 앱을 만든 경우, 앱의 루트 위치는 명명된 스테이지 대신 snow URL(snow://)일 수 있습니다.
제한 사항:
Warehouse Runtime만 지원합니다(Container Runtime은 사용할 수 없음).
Snowsight 에서 다중 파일 편집을 지원하지 않습니다.
Git 통합 기능을 사용할 수 없습니다.
내부 스테이지에 대한 지속적인 액세스가 필요합니다.
구문:
CREATE STREAMLIT my_app
ROOT_LOCATION = '@my_stage/app_folder'
MAIN_FILE = '/streamlit_app.py';
앱의 소스 위치 유형 식별하기¶
DESCRIBE STREAMLIT 출력을 검사하여 앱을 만드는 데 사용된 매개 변수를 확인할 수 있습니다.
DESCRIBE STREAMLIT my_app;
ROOT_LOCATION 기반 앱은 더 적은 수의 열을 반환하고
root_location열을 포함합니다.FROM 기반 앱은 더 많은 열을 반환하고
live_version_location_uri열을 포함합니다.
Snowsight 에서 앱을 편집할 때, 앱 유형에 따라 root_location 또는 ``live_version_location_uri``에 업데이트를 푸시합니다. 두 가지 유형의 앱을 SQL 명령을 사용하여 PUT 또는 COPY FILES를 해당 위치로 업데이트할 수 있습니다.