Невозможно запустить Spark Thriftserver (hive-site.xml для Spark не перезаписал значение по умолчанию)

Фон:

  1. CentOS7
  2. hadoop-2.7.3
  3. искра-2.0.1-бен-hadoop2.7
  4. apache-hive-2.1.0-bin (используется только для запуска службы хранилища метаданных с помощью улья - хранилище метаданных службы)
  5. Настроены ли HADOOP_HOME, SPARK_HOME, HIVE_HOME и т. Д.
  6. MySQL 5.7.16
  7. Поместите mysql-connector-java-5.1.40-bin.jar как в hive / lib /, так и в spark / jars /

hive-site.xml:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
    <property>
        <name>javax.jdo.option.ConnectionURL</name>
        <value>jdbc:mysql://www.test.com:3306/metastore</value>
    </property>
    <property>
        <name>javax.jdo.option.ConnectionDriverName</name>
        <value>com.mysql.jdbc.Driver</value>
    </property>
    <property>
        <name>javax.jdo.option.ConnectionUserName</name>
        <value>hive</value>
    </property>
    <property>
        <name>javax.jdo.option.ConnectionPassword</name>
        <value>password</value>
    </property>
    <property>
        <name>hive.metastore.uris</name>
        <value>thrift://www.test.com:9083</value>
    </property>
    <property>
        <name>hive.metastore.schema.verification</name>
        <value>true</value>
    </property>
</configuration>

Я помещаю hive-site.xml как в hive / conf /, так и в spark / conf /

Но запустив start-thriftserver.sh, я получил логи ошибок (в spark_home / logs / spark- -HiveThriftServer2 .out):

......
INFO HiveUtils: Initializing HiveMetastoreConnection version 1.2.1 using Spark classes.
INFO metastore: Trying to connect to metastore with URI thrift://www.test.com:9083
INFO metastore: Connected to metastore.
......
DEBUG ObjectStore: Overriding javax.jdo.option.ConnectionURL value null from  jpox.properties with jdbc:derby:memory:;databaseName=/tmp/spark-37dcab7f-655a-4506-abd7-492a8620a33e/metastore;create=true
......
INFO MetaStoreDirectSql: Using direct SQL, underlying DB is DERBY
......
org.apache.hadoop.hive.ql.metadata.HiveException: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient

В журнале мы видим, что свойство hive.metastore.uris действительно сработало.

Но, похоже, другие относительные свойства mysql не работали, метастор по-прежнему использует дерби базы данных по умолчанию.

Любая помощь приветствуется! Спасибо.

Решено:

Я удалил hive.metastore.uris, потому что я просто использовал hive локально.

<property>
  <name>hive.metastore.uris</name>
  <value>thrift://www.test.com:9083</value>
</property>
    	

Установите для hive.metasotre.schema.verification значение false. Спасибо за помощь Нирмала.


person Furyegg    schedule 18.11.2016    source источник


Ответы (1)


нашел этот журнал ошибок

Caused by: MetaException(message:Version information not found in metastore

установите значение hive.metastore.schema.verification в false в hive-site.xml как в hive, так и в Spark conf, перезапустите службы и повторите попытку

person Nirmal Ram    schedule 18.11.2016
comment
Нирмал, спасибо за помощь, я устал, как вы сказали, но все та же ошибка. Я думаю, что эти свойства установлены по умолчанию, даже если они не перечислены в hive-site.xml. - person Furyegg; 18.11.2016
comment
Нирмал, у меня нет hive-metastore.log. Я просто получаю журнал после запуска spark_home / sbin / start-thriftserver.sh в spark_home / logs. И можно получить hive.log после запуска hive cli в / tmp / {user} /. Я просто редактирую свой вопрос, проверьте. - person Furyegg; 18.11.2016
comment
Можете ли вы поделиться мне полными журналами из spark_home // logs - person Nirmal Ram; 18.11.2016
comment
проверьте эту ссылку issues.apache.org/jira/browse/SPARK-15118 метастор может использовать mysql - person Nirmal Ram; 18.11.2016
comment
Nirmal, добавил полный лог своим ответом. Еще раз спасибо за помощь. - person Furyegg; 18.11.2016
comment
Можете ли вы перейти к приглашению улья и выполнить там любой запрос? Работает - person Nirmal Ram; 18.11.2016
comment
Нирмал, большое спасибо! Это работает! Для hive.metastore.schema.verification всегда необходимо установить значение false, иначе он сообщит об этой ошибке. - person Furyegg; 21.11.2016
comment
добро пожаловать @Furyegg. Вы можете принять это как Ответ / голосование. Может быть полезен другим - person Nirmal Ram; 21.11.2016