我正在开发一个同样使用SparkSQL并使用dataframe.write.saveAsTable(tbl)保存数据的Spark2.1应用程序。我的理解是内存中的Derby DB用于Hive元存储(对吗?)。这意味着我在第一次执行时创建的表在任何后续执行中都不可用。在许多情况下,这可能是预期的行为-但我希望在执行过程中保持metastore (因为这也是我的生产系统中的行为)。
因此,有一个简单的问题:如何更改配置以在磁盘上持久化元存储?
需要注意的是:我并不是使用spark-shell或spark-submit来启动Spark作业,而是将其作为一个独立的Scala应用程序。
发布于 2017-07-27 00:36:09
它已经持久化在磁盘上。只要两个会话使用相同的工作目录或特定的元存储配置,永久表就会在会话之间保持不变。
https://stackoverflow.com/questions/45331969
复制相似问题