Streamlit in Snowflake: Streamlit in Snowflake 앱에 Git 통합 및 다중 파일 편집 활성화(보류 중)¶
Streamlit in Snowflake 앱은 다음과 같이 작동합니다.
- 변경 전:
Streamlit in Snowflake 앱의 Git 통합 및 다중 파일 편집은 Snowsight 에서 지원되지 않습니다.
- 변경 후:
새로운 Streamlit in Snowflake 앱에서 Git 통합 및 다중 파일 편집이 지원되며 다음 영역의 변경 사항이 포함됩니다.
-
Streamlit in Snowflake 앱을 Git 리포지토리에 연결할 수 있도록 지원합니다.
Git 리포지토리에서 Streamlit in Snowflake 앱 생성을 지원합니다.
Snowsight 자체 내에서 다중 파일 편집을 지원합니다.
참고
ROOT_LOCATION 을 사용하는 기존 Streamlit in Snowflake 앱은 이전과 동일하게 작동하지만 Git 통합 및 다중 파일 편집은 지원되지 않습니다.
-
Snowsight¶
Git 리포지토리의 파일에서 Streamlit in Snowflake 앱 만들기¶
Git 리포지토리에 있는 파일로 Streamlit 앱을 만들려면 다음과 같이 하십시오.
Snowsight 에 로그인합니다.
Projects » Streamlit 를 선택합니다.
+ Streamlit 옆의 드롭다운 메뉴를 열고 Create from repository 을 선택합니다.
File location in repository 의 경우, 리포지토리에서 Streamlit 앱 파일이 들어 있는 리포지토리와 분기를 선택한 다음, 특정
.py
파일을 선택합니다. Snowflake를 Git 리포지토리에 연결하는 방법에 대한 자세한 내용은 Git을 사용하기 위해 Snowflake 설정하기 섹션을 참조하십시오.App location 에서, Streamlit 앱을 포함할 데이터베이스와 스키마를 선택합니다. 앱을 만든 후에는 변경할 수 없습니다.
Query warehouse 및 App warehouse 의 경우 웨어하우스를 선택합니다.
Create 를 선택하여 Git 리포지토리에 있는
.py
파일에서 Streamlit 앱을 만듭니다.
Streamlit in Snowflake 앱과 Git 리포지토리 연결하기¶
기존 Streamlit 앱을 Git 리포지토리에 연결하려면 다음을 수행합니다.
Snowsight 에 로그인합니다.
Projects » Streamlit 을 선택하고 Streamlit 앱을 열거나 만듭니다.
Files 탭의 데이터베이스 오브젝트 탐색기 옆에서 Connect Git Repository 를 선택합니다.
File location in repository 의 경우, 리포지토리에서 Streamlit 앱을 동기화할 리포지토리와 분기를 선택합니다.
Select Folder 를 선택합니다.
앱을 Git 리포지토리에 커밋하고 푸시하라는 메시지가 표시되면 Push to Git 을 선택합니다.
Snowsight 내에서 다중 파일 편집하기¶
Snowsight 내에서 Streamlit in Snowflake 앱의 다중 파일을 편집하려면 다음을 수행하십시오.
Snowsight 에 로그인합니다.
Projects » Streamlit 을 선택하고 Streamlit 앱을 열거나 만듭니다.
Files 탭에서 편집할 파일을 선택합니다.
CREATE STREAMLIT 및 ALTER STREAMLIT 명령 변경 사항¶
이 동작 변경 번들을 활성화하면 CREATE STREAMLIT 및 ALTER STREAMLIT 명령에 다음과 같은 변경 사항이 도입됩니다.
CREATE STREAMLIT¶
Streamlit 앱의 코드에는 더 이상 별도의 스테이지 오브젝트가 필요하지 않으며, Streamlit 오브젝트에 앱 코드가 저장됩니다. FROM 절을 사용하여 코드를 Streamlit 앱으로 복사할 기존 위치를 지정할 수 있습니다.
구문¶
CREATE [ OR REPLACE ] STREAMLIT [ IF NOT EXISTS ] <name>
[ { VERSION <version_alias_name> |
VERSION (COMMENT = <version_comment>) |
VERSION <version_alias_name> (COMMENT = <version_comment>) } ]
[ FROM <source_location>]
MAIN_FILE = '<path_to_main_file_in_root_directory>'
QUERY_WAREHOUSE = <warehouse_name>
[ COMMENT = <create_comment> ]
[ DEFAULT_VERSION = <default_version_name_or_alias> ]
[ TITLE = '<app_title>' ]
[ IMPORTS = ( '<stage_path_and_file_name_to_read>' [ , ... ] ) ]
[ EXTERNAL_ACCESS_INTEGRATIONS = ( <integration_name> [ , ... ] ) ]
필수 매개 변수¶
name
Streamlit 앱의 이름.
path_to_main_file_in_root_directory
Streamlit 앱의 파일 이름을 지정합니다. 이 파일 이름은
ROOT_LOCATION
의 값에 상대적입니다.warehouse_name
Streamlit 앱에서 발급한 SQL 쿼리를 실행할 웨어하우스를 지정합니다.
선택적 매개 변수¶
version_alias_name
사용자가 지정한 버전 별칭 이름입니다.
version_comment
이 버전에 대해 사용자가 제공한 설명입니다.
source_location
원본 파일이 복사본으로 저장되는 위치입니다.
create_comment
Streamlit 오브젝트에 대한 설명을 명시합니다. 기본적으로 값이 없습니다.
default_version_name_or_alias
사용된 기본 버전의 이름입니다.
app_title
Snowsight에 표시할 Streamlit 앱의 제목을 지정합니다.
stage_path_and_file_name_to_read
가져올 파일의 위치(스테이지), 경로, 이름입니다.
integration_name
Streamlit 앱 코드가 외부 네트워크에 액세스하려면 필요한 외부 액세스 통합의 이름입니다.
예¶
스테이지에서 Streamlit 앱을 만들려면 다음 예시와 같이 CREATE STREAMLIT 명령을 실행합니다.
CREATE STREAMLIT app
FROM @streamlit_db.streamlit_schema.streamlit_stage;
MAIN_FILE = 'streamlit_app.py'
QUERY_WAREHOUSE = my_warehouse;
Git 리포지토리에서 Streamlit 앱을 만들려면 다음 예시와 같이 CREATE STREAMLIT 명령을 실행합니다.
CREATE STREAMLIT app
FROM @streamlit_db.streamlit_schema.streamlit_repo/branches/streamlit_branch/;
MAIN_FILE = 'streamlit_app.py'
QUERY_WAREHOUSE = my_warehouse;
ALTER STREAMLIT¶
이 동작 변경 번들을 활성화하면 ALTER STREAMLIT 명령이 다음을 포함하도록 업데이트됩니다.
구문¶
ALTER STREAMLIT <name> ADD VERSION [ [ IF NOT EXISTS] <version_alias_name> ]
FROM <source_location>
[ COMMENT = <add_version_comment> ]
ALTER STREAMLIT <name> ADD VERSION <version_name>
FROM { <snowgit_tag_uri> | <snowgit_commit_uri> }
[ COMMENT = <git_pull_comment> ]
ALTER STREAMLIT <name> ADD LIVE VERSION [ [IF NOT EXISTS] <version_alias_name> ]
[ FROM LAST ]
[ COMMENT = <add_version_comment> ]
ALTER STREAMLIT <name> VERSION <existing_version_name_or_alias>
SET ALIAS = <new_version_name_alias>
ALTER STREAMLIT <name> COMMIT [ VERSION <live_version_alias> ] [COMMENT = <version_comment>]
ALTER STREAMLIT <name> SET DEFAULT_VERSION = <version_name> | <version_name_alias>
ALTER STREAMLIT <name> PUSH [TO <git_branch_uri>] [ { GIT_CREDENTIALS = <snowflake_secret> | USERNAME = <git_username> password = <git_password> } NAME = <git_author_name> EMAIL = <git_author_email> ] [ COMMENT = <git_push_comment>]
ALTER STREAMLIT <name> ABORT [ VERSION <live_version_alias> ]
ALTER STREAMLIT <name> PULL
매개 변수¶
name
Streamlit 앱의 이름.
version_alias_name
사용자가 지정한 버전 별칭 이름입니다.
source_location
원본 파일이 복사본으로 저장되는 위치입니다. OWNERSHIP 권한이 필요합니다.
ALTER STREAMLIT name PUSH
git_branch_uri
를 지정하지 않으면 기본 버전에 저장된 브랜치를 사용하여 최신 커밋된 변경 내용을 Git 리포지토리에 푸시합니다.기본 버전이 Git 브랜치를 기반으로 하지 않으면 오류를 발생시킵니다. OWNERSHIP 권한이 필요합니다.
git-branch-uri
커밋된 변경 내용을 푸시할 대상 브랜치를 설정합니다.
git_author_name
사용할 git 작성자의 이름입니다.
git_author_email
Git 작성자의 이름으로 사용할 유효한 이메일 주소입니다.
git_push_comment
Git 푸시에 포함할 사용자 지정 설명입니다.
ALTER STREAMLIT name ABORT
기존 버전을 제거하고 해당 파일을 삭제합니다. 버전을 지정하지 않으면 기본적으로 live_version을 삭제합니다. OWNERSHIP 권한이 필요합니다.
ALTER STREAMLIT name PULL
원본에서 이 Streamlit의 라이브 버전으로 최신 변경 사항을 가져옵니다. OWNERSHIP 권한이 필요합니다.
DESCRIBE STREAMLIT 출력의 새 열¶
이 동작 변경 번들이 활성화되면 DESCRIBE STREAMLIT 명령의 출력에 다음과 같은 새 열이 포함됩니다.
열 이름 |
설명 |
---|---|
default_version |
향후에 사용할 용도입니다. |
default_version_name |
향후에 사용할 용도입니다. |
default_version_alias |
향후에 사용할 용도입니다. |
default_version_location_uri |
향후에 사용할 용도입니다. |
default_version_source_location_uri |
향후에 사용할 용도입니다. |
default_version_git_commit_hash |
향후에 사용할 용도입니다. |
live_version |
문자열. 이 앱의 라이브 버전을 지정합니다. |
live_version_name |
문자열. 이 앱의 라이브 버전 이름입니다. |
live_version_alias |
문자열. 이 앱의 라이브 버전 별칭입니다. |
live_version_location_uri |
문자열. 라이브 버전의 파일이 저장되는 URI 입니다. |
live_version_source_location_uri |
문자열. Live_version을 복사한 원본의 URI 를 지정합니다. 이 Streamlit이 복제본이 아니라면 null입니다. |
live_version_git_commit_hash |
문자열. Live_version이 가리키는 git 커밋의 16진수 해시입니다. Git 리포지토리가 연결되지 않은 경우 null입니다. |
참조: 1888