2016-08-17 2 views
0

Я пытаюсь вызвать куст на искру, используя интерфейс оттенка. Работа отлично работает при запуске из командной строки, но когда я пытаюсь запустить из оттенка, он генерирует исключения. В оттенке, я попробовал в основном две вещи:Улей на искру не работает в оттенке

1), когда я даю все свойства в .hql файла с помощью набора команд

set spark.home=/usr/lib/spark; 
set hive.execution.engine=spark; 
set spark.eventLog.enabled=true; 
add jar /usr/lib/spark/assembly/lib/spark-assembly-1.5.0-cdh5.5.1-hadoop2.6.0-cdh5.5.1.jar; 
set spark.eventLog.dir=hdfs://10.11.50.81:8020/tmp/; 
set spark.executor.memory=2899102923; 

Я получаю ошибку

ERROR : Failed to execute spark task, with exception 'org.apache.hadoop.hive.ql.metadata.HiveException(Unsupported execution engine: Spark. Please set hive.execution.engine=mr)' 
org.apache.hadoop.hive.ql.metadata.HiveException: Unsupported execution engine: Spark. Please set hive.execution.engine=mr 

2), когда я дают свойства в свойствах оттенков, он просто работает с двигателем mr, но не с искровым движком.

Любая помощь будет оценена

+0

Есть ли у вас какие-либо веские причины, чтобы использовать, что 'oozie' тег?!? –

+0

Я создаю рабочий процесс oozie, и в этом причина тега oozie – Pratik

ответ

0

Я решил эту проблему с помощью действия оболочки в oozie. Это действие оболочки вызывает действие pyspark с моим sql-файлом.

Несмотря на то, что работа показывает как MR в рабочем состоянии, сервер истории искры распознает как искровое действие, и выход получается.

оболочки файла:

#!/bin/bash 
export PYTHONPATH=`pwd` 
spark-submit --master local testabc.py 

питон файл:

from pyspark.sql import HiveContext 
from pyspark import SparkContext 
sc = SparkContext(); 
sqlContext = HiveContext(sc) 
result = sqlContext.sql("insert into table testing_oozie.table2 select * from testing_oozie.table1 "); 
result.show() 
Смежные вопросы