Comment accéder diffusé DataFrame Spark

J'ai créé deux dataframes qui sont de la Ruche tables(PC_ITM et ITEM_SELL) et de grande taille et je suis en utilisant ces
souvent dans la requête SQL en vous inscrivant en tant que tableau.Mais comme ce sont de gros, c'est prendre beaucoup de temps
pour obtenir le résultat de la requête.J'ai donc enregistré comme parquet fichier puis de les lire et enregistrés en tant que table temporaire.Mais encore, je ne suis pas d'obtenir de bonnes performances donc, j'ai diffusé ces données-cadres et alors enregistré comme les tableaux ci-dessous.

PC_ITM_DF=sqlContext.parquetFile("path")
val PC_ITM_BC=sc.broadcast(PC_ITM_DF)
val PC_ITM_DF1=PC_ITM_BC
PC_ITM_DF1.registerAsTempTable("PC_ITM")

ITM_SELL_DF=sqlContext.parquetFile("path")
val ITM_SELL_BC=sc.broadcast(ITM_SELL_DF)
val ITM_SELL_DF1=ITM_SELL_BC.value
ITM_SELL_DF1.registerAsTempTable(ITM_SELL)


sqlContext.sql("JOIN Query").show

Mais encore je ne peux pas atteindre la performance elle est prise en même temps que lors de ces blocs de données ne sont pas diffusés.

Si quelqu'un peut dire si c'est la bonne approche de la radiodiffusion et de l'utiliser?`

OriginalL'auteur Raghavendra Kulkarni | 2016-01-21