了解不同类型的 Streamlit 对象

Snowflake 中的 Streamlit 对象有两个重要差异,这会影响它们的功能、限制和管理:

  • 如何指定源位置:使用 ROOT_LOCATION 参数(旧版)或 FROM 参数(推荐)。

  • 运行时环境:仓库运行时或容器运行时(预览版)。

本页介绍了源位置规范之间的差异,这些差异反过来又会影响可以使用的运行时环境。

有关运行时环境的更多信息,请参阅 Streamlit 应用程序的运行时环境。有关从仓库迁移到容器运行时的清单,请参阅 在运行时环境之间迁移

源位置

在 Snowflake 中创建 Streamlit 应用程序时,可以使用两个不同的参数来指定源文件的位置:ROOT_LOCATION 或 FROM。ROOT_LOCATION 是一个有若干限制的旧参数。目前,FROM 是新应用程序的推荐参数,也是访问最新 Streamlit in Snowflake 功能(包括容器运行时)所必需的。本页介绍如何区分这两类应用程序。要启用最新的 Streamlit in Snowflake 功能,您必须升级旧版 Streamlit。有关更多信息,请参阅 在运行时环境之间迁移

ROOT_LOCATION 参数(旧版)

ROOT_LOCATION 参数创建一个引用内部暂存区作为其源的应用程序。这是一种传统方法,存在若干限制。如果您使用旧版本的 Snowsight 创建应用程序,应用程序的根位置可能是 snow URL (snow://) 而不是命名暂存区。

限制:

  • 仅支持仓库运行时(无法使用容器运行时)。

  • 在 Snowsight 中不支持多文件编辑。

  • 无法使用 Git 集成功能。

  • 需要持续访问内部暂存区。

语法:

CREATE STREAMLIT my_app
ROOT_LOCATION = '@my_stage/app_folder'
MAIN_FILE = '/streamlit_app.py';
Copy

确定应用程序的源位置类型

您可以通过检查 DESCRIBE STREAMLIT 的输出来确定创建应用程序时使用的参数:

DESCRIBE STREAMLIT my_app;
Copy
  • 基于 ROOT_LOCATION 的应用程序返回较少的列,并包含一个 root_location 列。

  • 基于 FROM 的应用程序返回较多的列,并包含一个 live_version_location_uri 列。

当您在 Snowsight 中编辑应用程序时,您会根据应用程序类型将更新推送到 root_locationlive_version_location_uri。您可以使用 SQL 命令通过 PUT 或 COPY FILES 到这些位置来更新这两类应用程序。

语言: 中文