HiveContext в Bluemix Spark

В bluemix spark я хочу использовать HiveContext

HqlContext = HiveContext(sc)
//some code
 df = HqlContext.read.parquet("swift://notebook.spark/file.parquet")

Я получаю следующую ошибку

Py4JJavaError: Произошла ошибка при вызове o45.parquet. : java.lang.RuntimeException: java.lang.RuntimeException: невозможно создать экземпляр org.apache.hadoop.hive.metastore.HiveMetaStoreClient


person Yakov    schedule 21.12.2015    source источник


Ответы (1)


HiveContext по умолчанию не включен в предложение Bluemix Spark.

Чтобы включить его в свой блокнот, вы должны иметь возможность использовать %AddJar для его загрузки с общедоступного сервера, например:

%AddJar http://my.server.com/jars/spark-hive_2.10-1.5.2.jar

Вы также можете указать это по ссылке на репозиторий Maven:

%AddJar http://repo1.maven.org/maven2/org/apache/spark/spark-hive_2.10/1.5.2/spark-hive_2.10-1.5.2.jar
val hiveContext = new org.apache.spark.sql.hive.HiveContext(sc)

Это работает, чтобы включить Hive Context для меня.

Теперь стоит отметить, что последние доступные версии Maven, вероятно, не совпадают с текущей версией Spark, работающей в Bluemix, поэтому я предлагаю проверить версию Spark в Bluemix, используя:

sc.version

Затем сопоставьте версию этого JAR с этой версией Spark.

person Chris Shepherd    schedule 23.12.2015