我只是尝试从雪花表加载数据,如下所示(在databricks env中使用spark/scala):
def loadDataFromSnowFlake(SfOptions: Map[String, String], query: String): DataFrame =
spark.read
.format("net.snowflake.spark.snowflake")
.options(SfOptions)
.option("query", query)
.load()
}
val SfOptions = ???
val query = "SELECT * FROM databaseName.public.tableName LIMIT 10"
val testDf = loadDataFromSnowFlake(SfOptions, query)
testDf.show()
testDf.show()
问题是,脚本末尾的两个show()返回了两个不同的结果,我不明白当dataframe testdf声明为不可变时怎么可能。
我希望对此作出澄清。谢谢。干杯
2条答案
按热度按时间kjthegm61#
show()不能保证返回相同的输出。它只打印了20行。如果您下次调用show,可能会得到不同的输出。
我运行了几个测试用例,发现
show()
在同一Dataframe上打印相同的输出。0lvr5msh2#
让我们尝试在雪花侧排序数据:
这可能是个问题。作为替代,您可以使用
display(testDf)
功能。python支持它,但我不确定scala。