HiveContext и SQLContext в локальном режиме

Я занимаюсь разработкой заданий Spark на моей локальной машине, а затем внедряю их в кластер для полного запуска. Я создал общую библиотеку, которую другие люди используют в своем коде. В этом коде я должен использовать HiveContext для выполнения Spark SQL, который, как многие предлагали, предлагает лучший анализатор SQL. У меня нет доступа администратора к моей машине, поэтому я не могу создать HiveContext в локальном режиме. Общий код используется совместно с помощью jar, поэтому мы не можем вручную переключаться между HiveContext и SQLContext для целей тестирования. Есть ли в любом случае, я могу создать общий контекст, который будет работать как SQLContext в локальном режиме и HiveContext в режиме кластера на основе некоторых параметров.

Это ошибка, которую я получаю при попытке создать HiveContext в локальном режиме.

17/03/16 13:11:53 INFO ObjectStore: настройка классов контактов объекта MetaStore с помощью hive.metastore.cache.pinobjtypes="Таблица,StorageDescriptor,SerDeInfo, Раздел, База данных, Тип,FieldSchema, Порядок" 17/03/16 13:11:54 INFO Хранилище данных: класс "org.apache.hadoop.hive.metastore.model.MFieldSchema" помечен как "внедренный только", поэтому не имеет своей собственной таблицы хранилища данных. 17/03/16 13:11:54 ИНФОРМАЦИЯ Хранилище данных: класс "org.apache.hadoop.hive.metastore.model.MOrder" помечен как "внедренный только", поэтому не имеет своей собственной таблицы хранилища данных. 17/03/16 13:11:55 ИНФОРМАЦИЯ Хранилище данных: класс "org.apache.hadoop.hive.metastore.model.MFieldSchema" помечен как "внедренный только", поэтому не имеет своей собственной таблицы хранилища данных. 17/03/16 13:11:55 ИНФОРМАЦИЯ Хранилище данных: класс "org.apache.hadoop.hive.metastore.model.MOrder" помечен как "внедренный только", поэтому не имеет своей собственной таблицы хранилища данных. 17/03/16 13:11:55 INFO MetaStoreDirectSql: при использовании прямого SQL базовая БД является DERBY 17/03/16 13:11:55 INFO ObjectStore: инициализированный ObjectStore 17/03/16 13:11:55 WARN ObjectStore: Version информация не найдена в метастаре. hive.metastore.schema.verification не включен, поэтому запись схемы версии 1.2.0 17/03/16 13:11:56 WARN ObjectStore: не удалось получить базу данных по умолчанию, возвращая NoSuchObjectException 17/03/16 13:11:56 INFO HiveMetaStore: добавлена ​​роль администратора в metastore 17/03/16 13:11:56 INFO HiveMetaStore: добавлена ​​общедоступная роль в metastore 17.03.16 13:11:56 INFO HiveMetaStore: пользователь не добавлен в роль администратора, поскольку config пуст 17/03/16 13:11:56 INFO HiveMetaStore: 0: get_all_databases 17/03/16 13:11:56 INFO аудит: ugi= ip=unknown-ip-addr cmd=get_all_databases 17/03/16 13:11:56 INFO HiveMetaStore: 0: get_functions: db= стандартное pat=* 17/03/16 13:11:56 ИНФОРМАЦИОННЫЙ аудит: ugi= ip=unknown-ip-addr cmd=get_functions: db= стандартное pat = * 17/03 / 16 13:11:56 ИНФОРМАЦИЯ Хранилище данных: класс "org.apache.hadoop.hive.metastore.model.MResourceUri" помечен как "внедренный только", поэтому не имеет своей собственной таблицы хранилища данных. Исключение в потоке "main" java.lang.RuntimeException: java.lang.RuntimeException: корневая директория царапин: /tmp/hive на HDFS должна быть доступна для записи. Текущие разрешения: rw-rw-rw- at org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:522) в org.apache.spark.sql.hive.client.ClientWrapper.(ClientWrapper.scala:204) в org.apache.spark.sql.hive.client.IsolatedClientLoader.createClient(IsolatedClientLoader.scala:238) в org.apache.spark.sql.hive.HiveContext.executionHive$lzycompute(HiveContext.) в org.apache.spark.sql.hive.HiveContext.executionHive(HiveContext.scala:208) в org.apache.spark.sql.hive.HiveContext.functionRegistry$lzycompute(HiveContext.scala:462) в org.apache.spark.sql.hive.HiveContext.functionRegistry(HiveContext.scala:461) в org.apache.spark.sql.UDFRegistration.(UDFRegistration.scala:40) в org.apache.spark.sql.SQLContext.(SQLContext.scala:330) в org.apache.spark.sql.hive.HiveContext.(HiveContext.scala:90) в org.apache.spark.sql.hive.HiveContext.(HiveContext.scala:101) в SparkTest$.main(SparkTest.scala:11) в SparkTest.main(SparkTest.scala) в sun.reflect.NativeMethodAccessorImpl.invoke0(нативный метод) в sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) в sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43g.ref.java.j.ref.j.j.ref. 498) at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144). Вызывается: java.lang.RuntimeException: Корневой каталог-каталог: /tmp/hive в HDFS должен быть доступен для записи. Текущие разрешения: rw-rw-rw- at org.apache.hadoop.hive.ql.session.SessionState.createRootHDFSDir(SessionState.java:612) в org.apache.hadoop.hive.ql.session.SessionState.createSessionDirs(SessionState.java:554) at org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:508) ... еще 17

0 ответов

Другие вопросы по тегам