以下代码是我尝试通过python将会话参数传递给雪花的尝试。可在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中,我可以找到该参数是与其他选项一起发送的。在雪花中,从未设置参数。
我可以在需要的地方添加更多细节,只是不确定是否需要什么细节。
答案 0 :(得分:0)
事实证明,当您使用Spark连接器时,无需指定给定参数为会话参数。因此,相反:
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",
}
完美运行。
我在Snowflake文档中找到了使用Spark连接器的方法:Here's the section on setting Session Parameters