当前位置: 首页 > 知识库问答 >
问题:

无法启动spark thriftserver(spark的hive-site.xml未覆盖默认值)

万俟嘉珍
2023-03-14

背景:

  1. Centos7
  2. Hadoop-2.7.3
  3. spark-2.0.1-bin-hadoop2.7
  4. apache-hive-2.1.0-bin(仅用于启动由配置单元启动的转移服务--service转移服务)
  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/
<?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.maftore.uris”起作用了。

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

将hive.metasotre.schema.verification设置为false。谢谢Nirmal的帮助。

共有1个答案

姚培
2023-03-14

找到此错误日志

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

在配置单元和spark conf的hive-site.xml中,将hive.m转移.schema.verification的值设置为false,然后重新启动服务,然后重试

 类似资料:
  • 我使用的是spring cloud Consult 1.0.0.m5和spring boot 1.3.2。spring cloud Consult用于连接到Consult代理的默认主机和端口是localhost:8500。我想改变这一点,但迄今为止我尝试的每一种方法都不尊重设置。 我查看了spring cloud Consult的源代码,并且ConsulProperties是在属性前缀spring

  • 我有一个来自https://hub.docker.com/r/jupyter/datascience-notebook/.的jupyter笔记本docker图像 通常我使用这个命令运行笔记本 这工作得很好,我收到了笔记本正在运行的消息。我能够创建笔记本,运行它们等。 现在我想从https://github.com/ipython-contrib/jupyter_contrib_nbextensio

  • 问题内容: 我已经能够覆盖所有名称以“ android:”为前缀的主题,但是Android themes.xml还定义了似乎无法被覆盖的属性。例如: colorTheground是在Theme.Light xml中定义的,但是在此处添加它可以使我 错误。如何为整个应用程序覆盖该样式? 问题答案: 您可以用修改属性(如)的方式覆盖标准属性,只是不要忘记添加如下前缀:

  • 问题内容: 我想覆盖Java外观。我只想显示不同的按钮。 我想要Windows Look and Feel的所有功能,但仅按钮有所不同。希望你明白我的意思。 还告诉我如何制作圆形的JtabbedPane ??? 问题答案: 自定义GUI类 调用您的自定义GUI类

  • 问题内容: 我有一个模板与此: Django自动将此翻译为Terminarsesión西班牙语。但是,我想将其翻译为Cerrarsesión。 我试图将此文字添加到.po文件中,但是在编译消息时出现错误,指出该文字重复。 有没有一种方法可以更改/覆盖默认的Django翻译? 谢谢。 问题答案: 最简单的方法是收集在django.contrib.admin语言环境文件夹中找到的.po文件,然后重新编

  • 我试图将Spring应用程序(大部分)转换为Spring Boot应用程序。在应用程序中,我有一个HTTP基本过滤器,收集用户名和密码,然后在DataSource实现中作为变量传递。 在这个数据源中,getConnection()方法是这样的: (由于StackOverflow格式问题,\n作为新行) 在Spring中,我可以毫无问题地实现@autowiledPrivate DataSource