如何将 python 的会话参数传递给雪花?

How to pass session parameters with python to snowflake?

下面的代码是我尝试通过 python 将会话参数传递给 snowflake。在 AWS Glue 中运行的现有代码库的这一部分,以及以下唯一不起作用的部分是 session_parameters.

我正在尝试了解如何从这段代码中添加会话参数。感谢任何帮助理解这里发生的事情。

      sf_credentials = json.loads(CACHE["SNOWFLAKE_CREDENTIALS"])                                                                                                                                                                                           
      CACHE["sf_options"] = {                                                                                                                                                                                                                               
          "sfURL": "{}.snowflakecomputing.com".format(sf_credentials["account"]),                                                                                                                                                                           
          "sfUser": sf_credentials["user"],                                                                                                                                                                                                                 
          "sfPassword": sf_credentials["password"],                                                                                                                                                                                                         
          "sfRole": sf_credentials["role"],                                                                                                                                                                                                                 
          "sfDatabase": sf_credentials["database"],                                                                                                                                                                                                         
          "sfSchema": sf_credentials["schema"],                                                                                                                                                                                                             
          "sfWarehouse": sf_credentials["warehouse"],                                                                                                                                                                                                       
          "session_parameters": {                                                                                                                                                                                                                           
              "QUERY_TAG": "Something",                                                                                                                                                                                                                    
          }                                                                                                                                                                                                                                                 
      }   

在 AWS Cloudwatch 中,我可以找到参数是使用其他选项发送的。在雪花中,从未设置该参数。

我可以在必要时添加更多细节,我只是不确定需要哪些细节。

事实证明,当您使用 Spark Connector 时,无需指定给定参数是会话参数。所以改为:

      sf_credentials = json.loads(CACHE["SNOWFLAKE_CREDENTIALS"])                                                                                                                                                                                           
      CACHE["sf_options"] = {                                                                                                                                                                                                                               
          "sfURL": "{}.snowflakecomputing.com".format(sf_credentials["account"]),                                                                                                                                                                           
          "sfUser": sf_credentials["user"],                                                                                                                                                                                                                 
          "sfPassword": sf_credentials["password"],                                                                                                                                                                                                         
          "sfRole": sf_credentials["role"],                                                                                                                                                                                                                 
          "sfDatabase": sf_credentials["database"],                                                                                                                                                                                                         
          "sfSchema": sf_credentials["schema"],                                                                                                                                                                                                             
          "sfWarehouse": sf_credentials["warehouse"],                                                                                                                                                                                                                                                                                                                                                                                                                                
          "QUERY_TAG": "Something",                                                                                                                                                                                                                                                                                                                                                                                                                                                                     
      }   

完美运行。

我在使用 Spark 连接器的 Snowflake 文档中找到了这个:Here's the section on setting Session Parameters