在Spark1.6中向数据表注册数据帧时如何指定数据库

时间:2017-08-29 01:00:48

标签: apache-spark pyspark spark-dataframe

我正在研究一个简单的Spark脚本,并遇到将数据放到我想要的问题,并使工作正常工作的问题。具体来说,我需要在将数据帧注册到临时表时指定表的数据库。

hex_str=d02b2b00

上面的代码运行没有错误,但不会产生任何结果。删除数据库会产生结果,但是在生产中不能工作,其中必须存储临时表的数据库不是Spark正在使用的默认值。如何在Spark 1.6中将临时表注册到临时表时,临时表需要指定哪个数据库?

1 个答案:

答案 0 :(得分:5)

registerTempTablecreateOrReplaceTempView创建的临时表/视图与任何数据库无关。它只是根据数据框的创建方式创建一个包含查询计划的数据框视图。

来自Apache Spark's Dataset.scala

  

本地临时视图是会话范围的。它的生命周期是创建它的会话的生命周期,即它会在会话终止时自动删除。它与任何数据库无关,即我们无法使用db1.view1来引用本地临时视图

强调了我。