5 votes

Lequel est le plus rapide ? Spark SQL avec la clause Where ou Utilisation d'un filtre dans le Dataframe après Spark SQL

Lequel est le plus rapide ? Spark SQL avec la clause Where ou Utilisation d'un filtre dans le Dataframe après Spark SQL ?

Comme Select col1, col2 from tab 1 where col1=val ;

Ou

dataframe df=sqlContext.sql(Select col1, col2 from tab 1) ;

df.filter("Col1=Val") ;

16voto

Rockie Yang Points 3137

Utilisation explain pour voir le plan physique est un bon moyen de déterminer la performance.

Par exemple, le carnet de notes Zeppelin Tutorial.

sqlContext.sql("select age, job from bank").filter("age = 30").explain

Et

sqlContext.sql("select age, job from bank where age = 30").explain

A exactement le même plan physique.

== Physical Plan ==
Project [age#5,job#6]
+- Filter (age#5 = 30)
   +- Scan ExistingRDD[age#5,job#6,marital#7,education#8,balance#9]

La performance sera donc la même.

A travers je pense select age, job from bank where age = 30 est plus lisible dans ce cas.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X