當前位置:編程學習大全網 - 編程軟體 - hive on spark僵死問題分析

hive on spark僵死問題分析

背景:

最近大數據平臺為租戶經分系統提供運算及存儲能力,經分的資源需求如下

Memory:?6T

CPU:?1600 c

存儲:600T

文件系統:HDFS

運算組件:?hive on spark

權限管理:sentry

問題描述:

? 為經分系統分配完租戶在運行SPARK作業的時候,會重現任力僵死的情況,後臺hiveserver2登錄,壹直卡在登錄命令行,查看hive日誌發現過多的GC 等待

?通過jstat? 查看FGC記錄( 註,這是更改後的圖,更改前的GC圖未保存,當時FGC 壹分鐘達到200多次,E,O區壹直在100% )。

再通過jmap 查看下heap信息(此圖也是更改後的圖,當時原圖未保留,原MaxHeapSize=512M)。

通過以上分析可以定們到JVM的堆信息太小,但當時部署時更改了hive-env.sh中的JVM信息了

但我們通過jmap查看只分到了512M內存,問題在哪兒呢。

通過jinfo看下加載的命令信息。

看到加載了xmx=512M,但為何是512M呢,經分析,是hive做為hadoop的客戶端加載hadoop的配置文件,hadoop-env.sh,如下圖

[

在hivesiver2加載的時候會先加載hive-env.sh再加載hadoop-env.sh 的客戶端參數HADOOP_CLIENT_OPTS,即然我們知道是加載的HADOOP_CLIENT_OPTS參數。我們只要更改hive-env.sh

增加如下配置。

重啟hiveserver2可以看到hiveserver2的heap大小已變為8192M,前臺作業及hive

on spark作業正常(經15天的運行再未出出僵死的情況。)

  • 上一篇:嵌入式開發qt為什麽在linux平臺
  • 下一篇:從手機向電腦投影屏幕的方法
  • copyright 2024編程學習大全網