web-dev-qa-db-fra.com

Différence entre createOrReplaceTempView et registerTempTable

Je suis nouveau sur spark et j'essayais quelques commandes dans sparkSql en utilisant python quand je suis tombé sur ces deux commandes:

createOrReplaceTempView () et registerTempTable ().

Quelle est la différence entre les deux commandes?. Ils semblent avoir le même ensemble de fonctionnalités.

15
Amogh Huilgol

registerTempTable fait partie de l'API 1.x et est déconseillé dans Spark 2.0.

createOrReplaceTempView et createTempView ont été introduits dans Spark 2.0, en remplacement de registerTempTable.

Autre que cela registerTempTable et createOrReplaceTempView fonctionnellement équivalents et le premier appelle le dernier.

20
user6910411

Aucune différence entre createOrReplaceTempView et registerTempTable n'effectue les mêmes fonctionnalités et si vous ouvrez le lien ci-dessous et recherchez registerTempTable, vous pouvez voir que cette fonction est déconseillée dans 2.0.

Il y a une note comme ci-dessous: Obsolète dans la version 2.0, utilisez plutôt createOrReplaceTempView.

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

8
Ankit Kumar Namdeo

Les fonctions entre createOrReplaceTempView et registerTempTable sont identiques et ont les mêmes fonctionnalités.

Cependant registerTempTable est privé de spark 2.0.0

Au lieu de registerTempTable, createOrReplaceTempView est utilisé

@deprecated("Use createOrReplaceTempView(viewName) instead.", "2.0.0")
  def registerTempTable(tableName: String): Unit = {
    createOrReplaceTempView(tableName)
  }
5
Shankar Koirala