connection - 空闲的 Snowflake 连接是否使用云服务积分?

标签 connection snowflake-cloud-data-platform cloud-storage cost-management

动机 |假设有人想对 Snowflake 数据库执行两个 SQL 查询,间隔大约 20 分钟。

优化问题 |哪个会花费更少的云服务积分:

  1. 重新使用一个连接,并允许该连接在此期间空闲。
  2. 每个查询连接一次。

documentation表示鉴权产生云服务积分,不表示空闲连接是否产生积分。

问题 |有谁知道空闲连接是否会导致云服务积分使用?

最佳答案

雪花连接是无状态的。它们不占用资源,也不需要像其他数据库连接那样保持 TCP/IP 连接。

因此,空闲连接不会消耗任何云服务层信用,除非您启用“CLIENT_SESSION_KEEP_ALIVE”。

https://docs.snowflake.com/en/sql-reference/parameters.html#client-session-keep-alive

当您设置 CLIENT_SESSION_KEEP_ALIVE 时,客户端将更新 session 的 token (默认值为 1 小时)。

https://docs.snowflake.com/en/sql-reference/parameters.html#client-session-keep-alive-heartbeat-frequency

正如 Peter 所提到的,CSL 使用量高达每日仓库使用量的 10% 是免费的,因此在实践中刷新 token 不会花费您任何费用。

关于您的方法:我不知道您计划每天运行多少查询,但为每个查询创建一个新连接可能会成为性能 killer 。从成本的角度来看,空闲连接一天最多执行 24 个授权请求,因此如果您计划一天运行超过 24 个查询,我建议您选择第一种方法。

关于connection - 空闲的 Snowflake 连接是否使用云服务积分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65800984/

相关文章:

Java从现有的ssh连接中打开新的ssh连接

C# MySqlConnection 不会关闭

以非root用户身份运行的Docker容器进程无法写入Docker卷

javascript - ffmpeg 错误 : Can't make thumbnail from video in javascript

java - Hibernate 在线程中检查与数据库的连接(每个时间段)

java - 连接器/J getConnection 有语法错误但没有语法

sql - 如何将嵌套的 json 键/值对展平为单个值数组?

snowflake-cloud-data-platform - 雪花中关于 util_db 的任何好的文档

sql - 有没有更好的方法来查找表中的条件最后值?

Azure blob 存储 : Shared access signature for multiple containers?