pyspark 使用名称中的变量将数据帧保存到配置单元 table

pyspark save dataframe to hive table using variable in the name

我正在使用 databrick pyspark 进行编码 想知道如何将 变量值 传递给我想保存在 Azure

中的 table 的名称

如果这是修复程序,我可以使用它 table 名称

result.write.format("parquet").mode("overwrite").saveAsTable("result0911")

但我希望这样做

有一个变量:time = datetime.today() 其值为“2019-09-11 12:10:48.969602”

我想先把"time"格式化成"20190911121048",这对table的名字有好处(我也需要时间,因为人们可能保存的记录超过每天一次)

然后使用我要保存的值 "20190911121048" table 名称 table 名称应为 "result_20190911121048"

有什么建议吗?谢谢 以下不起作用

result.write.format("parquet").mode("overwrite").saveAsTable("result_%s time")

假设您有 2 个具有值

的变量
time = "20190911121048"
table_name = 'result'

然后你可以将 table 命名为 :

final_table_name = '{}_{}'.format(table_name, time)

result.write.format("parquet").mode("overwrite").saveAsTable(final_table_name)

感谢您的意见。我可以使用这个:

time = datetime.today()
t=time.strftime("%Y%m%d%H%M")
result_name ="recommendation_%s" % (t)
final_recon.write.format("parquet").mode("overwrite").saveAsTable(result_name)