Spark onYarn

Ambari集成的Hive,通过一个外置的Spark以on Yarn的模式连接Hive,使用SparkSQL执行语句,查询时一直很正常,但是执行插入语句时,一直报错说连不到元数据服务,然后一直重试

该回答通过自己思路及引用到GPTᴼᴾᴱᴺᴬᴵ搜索,得到内容具体如下:
这个问题可能是由于Spark on Yarn无法连接到Hive元数据服务造成的。在Spark on Yarn模式下,Spark使用Hive Metastore来获取Hive表的元数据信息。如果Spark无法连接到Hive Metastore,就会出现无法插入数据的问题。

以下是一些可能的解决方案:

  1. 确认Hive Metastore服务是否正常运行。您可以使用以下命令检查:

    $ ps -ef | grep metastore
    

    您还可以查看Hive Metastore的日志,以查看是否有任何异常。

  2. 确认Spark on Yarn的配置是否正确。您应该检查Spark配置文件中的以下配置项:

    spark.sql.catalogImplementation=hive
    spark.hadoop.hive.metastore.uris=thrift://<metastore_host>:9083
    

    这些配置项应该指向正确的Hive Metastore服务地址。

  3. 确认Spark on Yarn是否具有足够的权限来访问Hive Metastore。您可能需要为Spark on Yarn分配适当的权限,以便它可以连接到Hive Metastore。

  4. 确认Hive Metastore是否允许外部访问。如果Hive Metastore只允许本地访问,那么Spark on Yarn将无法连接到它。您可以查看Hive Metastore的配置文件,以查看是否允许外部访问。

如果以上解决方案无法解决您的问题,您可以查看Spark on Yarn和Hive Metastore的日志,以查找更多错误信息。您还可以尝试使用Spark on Standalone模式或Spark on Mesos模式进行插入操作,以确定问题是否与Spark on Yarn有关。


如果以上回答对您有所帮助,点击一下采纳该答案~谢谢