2017-09-07 1 views
2

J'ai créé une vue dans la ruche et c'est une requête complexe (avec des jointures, des unions, etc.). Lorsque j'exécute la requête sur un DF, le Catalyst & Tungsten fonctionne-t-il ou est-il 100% ruche? Ce que j'essaie de demander est - puis-je obtenir la requête que la vue est en cours d'exécution et ensuite utiliser le SQL spark pour exécuter la requête - avec Catalyst & Améliorations de tungstène?La requête SQL Spark est-elle active sur le DF?

Exemple:

sqlContext.sql("select * from view") 

la requête de vue est en cours d'exécution sur la ruche (contexte ruche) et à cet effet pas si efficace.

vs

val str = getQuery... 
sqlContext.sql("*actual query*").. 

Il est un ensemble de données, donc je ne suis pas sûr que ce sera plus efficace, mais je trynig pour savoir comment faire ..

Je vous remercie beaucoup!

Répondre

2

Quand je l'exécution de la requête sur un DF, ce que le catalyseur & travail de tungstène ou est-il ruche 100%?

  • tungstène est devenu la valeur par défaut dans Spark 1.5 et peut être activée dans les versions antérieures en définissant spark.sql.tungsten.enabled = true (ou désactivé dans les versions ultérieures de ce paramètre à false). Même sans Tungsten, Spark SQL utilise un format de stockage en colonnes avec sérialisation Kryo pour minimiser les coûts de stockage.

  • La requête Hive et Spark Dataframe utilisent tous deux l'optimiseur de catalogue.

vous voyez activé tungstène ou non par cette propriété spark.sql.tungsten.enabled

Ce que je suis en train de poser est - puis-je obtenir la requête de la vue est en cours d'exécution puis utilisez la sql étincelle pour exécuter la requête - avec Catalyst & Améliorations du tungstène?

  • A partir du code: voir l'exécution par df.explain pour voir les entrailles de celui-ci.

  • De l'interface utilisateur Spark:

Spark 1.5 ajoute la visualisation des plans SQL et de requête de trame de données dans l'interface utilisateur Web, avec la mise à jour dynamique des paramètres opérationnels tels que la sélectivité d'un opérateur de filtre et le moteur d'exécution utilisation de la mémoire des agrégations et des jointures. Voici un exemple de visualisation de plan à partir de l'interface Web. (source) enter image description here