2017-07-20 3 views
1

Y at-il une propriété de configuration que nous pouvons définir pour désactiver/activer le support de Hive à travers spark-shell explicitement dans spark 1.6. J'ai essayé d'obtenir toutes les propriétés de configuration de SqlContext avecComment activer ou désactiver le support Hive dans spark-shell via la propriété Spark (Spark 1.6)?

sqlContext.getAllConfs.foreach(println) 

Mais, je ne suis pas sûr où la propriété peut réellement nécessaire pour désactiver/activer le support de la ruche. Ou y a-t-il un autre moyen de le faire?

Répondre

2

Compte tenu SPARK-16013 Add option to disable HiveContext in spark-shell/pyspark Je pense que cette propriété Spark est pas disponible dans Spark 1.6. Une manière de contourner ce problème consiste à supprimer les fichiers JAR liés à Hive, ce qui désactive le support Hive dans Spark (comme Spark prend en charge Hive lorsque les classes Hive sont disponibles).

+0

Merci @Jacek Laskowski. La même chose j'ai essayé de recréer l'objet sqlContext sans HiveContext, comme val sqlContext = new SQLContext (sc) qui désactive les propriétés de connexion de la ruche. Merci. –

1

Vous pouvez activer le support ruche juste en créant session d'étincelle, mais seulement dans étincelle> = 2.0:

val spark = SparkSession 
    .builder() 
    .appName("Spark Hive Example") 
    .config("spark.sql.warehouse.dir", warehouseLocation) 
    .enableHiveSupport() 
    .getOrCreate() 

Et vous pouvez lire comment configurer la ruche sur étincelle en changeant la ruche et déclencher des propriétés dans la ruche site .xml, étincelle defaults.conf: https://cwiki.apache.org/confluence/display/Hive/Hive+on+Spark%3A+Getting+Started - il doit travailler avec étincelle 1.6.1

+0

Merci à @kyhor Krivokon. Modifier hive-site.xml ou spark-defaults.conf devrait être requis chaque fois que je veux désactiver ou activer ruche dans saprk 1.6.0, ce qui est un peu la difficulté quand je veux modifier cette ruche activer.C'est ce que j'ai essayé temporairement de servir mon but, recréer sqlContext sans HiveContext comme, val sqlContext = new SQLContext (sc). –

+0

Dans ce cas, je pense qu'il est vraiment préférable d'utiliser spark 2.0+ où SparkSession est –