Streamlit in Snowflake 的管理成本

本主题介绍 Streamlit in Snowflake 的计费注意事项。

Streamlit in Snowflake 的计费注意事项

Streamlit in Snowflake 计费基于应用程序的运行时环境和查询仓库。运行时环境用于执行 Streamlit 应用中的 Python 代码,可以是容器或仓库。查询仓库执行应用程序代码中的所有 SQL 查询。

查询仓库

当您的应用程序代码执行 SQL 查询时,这些查询将使用该应用程序的查询仓库。Snowflake 会根据其自身的 AUTO_RESUME 和 AUTO_SUSPEND 值自动恢复和挂起查询仓库。

容器运行时

如果您的 Streamlit 应用使用容器运行时,您将按底层 Snowpark Container Services 计算池的使用量计费。在这种情况下,Streamlit 应用是一个长期运行的服务。Streamlit 服务器在计算池的节点上持续运行,允许查看者快速访问应用程序。并发查看器连接到单个 Streamlit 服务器。在应用连续三天无活动后,Streamlit 服务器进程将终止,Snowflake 会根据其自身的 AUTO_SUSPEND 值挂起计算池。有关计算池计费的更多信息,请参阅 了解计算成本

仓库运行时

如果应用程序使用仓库运行时,Snowflake 会在有人访问应用程序时恢复应用程序的代码仓库。每次查看者连接到应用时,都会在代码仓库中启动一个新的 Streamlit 服务器进程,并建立一个 WebSocket 连接。每个并发查看者都连接到各自独立的 Streamlit 服务器,这些服务器均运行在同一个代码仓库中。

一个 WebSocket 连接会保持代码仓库处于活动状态,并在关联查看者最后一次活动后约 15 分钟过期。但是,这可能会受到查看者的浏览器设置和活动的影响。在应用上的鼠标移动被视为活动,可保持 WebSocket 连接处于活跃状态。您可以通过联系 Snowflake 支持部门来更改账户的 WebSocket 超时值。

代码仓库按其活动时间计费。要节省 Credit,您可以执行下列操作之一:

  • 从 Snowsight 中手动暂停应用程序。

  • 关闭所有运行该应用的浏览器标签页,或导航离开该应用。这将关闭 WebSocket 连接并允许仓库自动暂停。

  • 为应用程序设置自定义睡眠计时器。这会在指定的非活动时间段后自动暂停仓库。有关更多信息,请参阅 为 Streamlit 应用程序自定义睡眠计时器

有关选择仓库的准则,请参阅 选择 Streamlit in Snowflake 资源的准则

语言: 中文