35

I am new to spark and was trying out a few commands in sparkSql using python when I came across these two commands:

createOrReplaceTempView() and registerTempTable().

What is the difference between the two commands?. They seem to have same set of functionalities.

ZygD
  • 22,092
  • 39
  • 79
  • 102
Amogh Huilgol
  • 1,252
  • 3
  • 18
  • 25

3 Answers3

34

registerTempTable is a part of the 1.x API and has been deprecated in Spark 2.0.

createOrReplaceTempView and createTempView have been introduced in Spark 2.0, as a replacement for registerTempTable.

Other than that registerTempTable and createOrReplaceTempView functionally equivalent and the former one calls the latter one.

zero323
  • 322,348
  • 103
  • 959
  • 935
13

No difference at all between createOrReplaceTempView and registerTempTable both performs the same functionality and if you open the below link and search for registerTempTable you can see that this function is deprecated in 2.0.

There is a note like below: Deprecated in 2.0 use createOrReplaceTempView instead.

https://spark.apache.org/docs/2.0.0/api/python/pyspark.sql.html

Ankit Kumar Namdeo
  • 1,426
  • 1
  • 12
  • 24
6

Both the function between createOrReplaceTempView and registerTempTable are same and have same functionalities.

However registerTempTable is depricated from spark 2.0.0

Instead of registerTempTable, createOrReplaceTempView is used

@deprecated("Use createOrReplaceTempView(viewName) instead.", "2.0.0")
  def registerTempTable(tableName: String): Unit = {
    createOrReplaceTempView(tableName)
  }
koiralo
  • 22,594
  • 6
  • 51
  • 72