多进程数据库不适合作为hive的元数据库

简介

“今天发现一个比较奇怪的现象,因为博主不熟悉mysql,所以在安装hive的使用了postgresql作为hive的元数据库,在测试几个连接工具对hive进行链接,后面再测试的时候发现链接不上了,并且报错日志如下:”


SLF4J: Failed toString() invocation on an object of type [org.apache.hadoop.hive.ql.session.OperationLog]
java.lang.OutOfMemoryError: GC overhead limit exceeded
FAILED: command has been interrupted: during query execution: 
null
2024-03-16 15:20:55,302 Log4j2-TF-2-AsyncLogger[AsyncContext@71be98f5]-1 ERROR RandomAccessFileManager (/tmp/hadoop/operation_logs/513aee2e-444c-407e-8e5d-2f8541a9d2f7/hadoop_20240316152052_4af3ebb2-0011-48e8-acc3-46f60e08f82f) java.io.FileNotFoundException: /tmp/hadoop/operation_logs/513aee2e-444c-407e-8e5d-2f8541a9d2f7/hadoop_20240316152052_4af3ebb2-0011-48e8-acc3-46f60e08f82f (No such file or directory) java.io.FileNotFoundException: /tmp/hadoop/operation_logs/513aee2e-444c-407e-8e5d-2f8541a9d2f7/hadoop_20240316152052_4af3ebb2-0011-48e8-acc3-46f60e08f82f (No such file or directory)at java.io.RandomAccessFile.open0(Native Method)at java.io.RandomAccessFile.open(RandomAccessFile.java:316)at java.io.RandomAccessFile.<init>(RandomAccessFile.java:243)at java.io.RandomAccessFile.<init>(RandomAccessFile.java:124)at org.apache.logging.log4j.core.appender.RandomAccessFileManager$RandomAccessFileManagerFactory.createManager(RandomAccessFileManager.java:208)at org.apache.logging.log4j.core.appender.RandomAccessFileManager$RandomAccessFileManagerFactory.createManager(RandomAccessFileManager.java:186)at org.apache.logging.log4j.core.appender.AbstractManager.getManager(AbstractManager.java:114)at org.apache.logging.log4j.core.appender.OutputStreamManager.getManager(OutputStreamManager.java:100)at org.apache.logging.log4j.core.appender.RandomAccessFileManager.getFileManager(RandomAccessFileManager.java:72)at org.apache.hadoop.hive.ql.log.HushableRandomAccessFileAppender.createAppender(HushableRandomAccessFileAppender.java:178)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:498)at org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.build(PluginBuilder.java:136)at org.apache.logging.log4j.core.config.AbstractConfiguration.createPluginObject(AbstractConfiguration.java:1120)at org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:1045)at org.apache.logging.log4j.core.appender.routing.RoutingAppender.createAppender(RoutingAppender.java:299)at org.apache.logging.log4j.core.appender.routing.RoutingAppender.getControl(RoutingAppender.java:271)at org.apache.logging.log4j.core.appender.routing.RoutingAppender.append(RoutingAppender.java:229)at org.apache.logging.log4j.core.config.AppenderControl.tryCallAppender(AppenderControl.java:161)at org.apache.logging.log4j.core.config.AppenderControl.callAppender0(AppenderControl.java:134)at org.apache.logging.log4j.core.config.AppenderControl.callAppenderPreventRecursion(AppenderControl.java:125)at org.apache.logging.log4j.core.config.AppenderControl.callAppender(AppenderControl.java:89)at org.apache.logging.log4j.core.config.LoggerConfig.callAppenders(LoggerConfig.java:542)at org.apache.logging.log4j.core.config.LoggerConfig.processLogEvent(LoggerConfig.java:500)at org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:483)at org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:471)at org.apache.logging.log4j.core.config.AwaitCompletionReliabilityStrategy.log(AwaitCompletionReliabilityStrategy.java:98)at org.apache.logging.log4j.core.async.AsyncLogger.actualAsyncLog(AsyncLogger.java:488)at org.apache.logging.log4j.core.async.RingBufferLogEvent.execute(RingBufferLogEvent.java:156)at org.apache.logging.log4j.core.async.RingBufferLogEventHandler.onEvent(RingBufferLogEventHandler.java:51)at org.apache.logging.log4j.core.async.RingBufferLogEventHandler.onEvent(RingBufferLogEventHandler.java:29)at com.lmax.disruptor.BatchEventProcessor.run(BatchEventProcessor.java:129)at java.lang.Thread.run(Thread.java:750)2024-03-16 15:20:55,433 Log4j2-TF-2-AsyncLogger[AsyncContext@71be98f5]-1 ERROR Unable to invoke factory method in class org.apache.hadoop.hive.ql.log.HushableRandomAccessFileAppender for element HushableMutableRandomAccess: java.lang.IllegalStateException: ManagerFactory [org.apache.logging.log4j.core.appender.RandomAccessFileManager$RandomAccessFileManagerFactory@307957f1] unable to create manager for [/tmp/hadoop/operation_logs/513aee2e-444c-407e-8e5d-2f8541a9d2f7/hadoop_20240316152052_4af3ebb2-0011-48e8-acc3-46f60e08f82f] with data [org.apache.logging.log4j.core.appender.RandomAccessFileManager$FactoryData@57fffa4] java.lang.reflect.InvocationTargetExceptionat sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:498)at org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.build(PluginBuilder.java:136)at org.apache.logging.log4j.core.config.AbstractConfiguration.createPluginObject(AbstractConfiguration.java:1120)at org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:1045)at org.apache.logging.log4j.core.appender.routing.RoutingAppender.createAppender(RoutingAppender.java:299)at org.apache.logging.log4j.core.appender.routing.RoutingAppender.getControl(RoutingAppender.java:271)at org.apache.logging.log4j.core.appender.routing.RoutingAppender.append(RoutingAppender.java:229)at org.apache.logging.log4j.core.config.AppenderControl.tryCallAppender(AppenderControl.java:161)at org.apache.logging.log4j.core.config.AppenderControl.callAppender0(AppenderControl.java:134)at org.apache.logging.log4j.core.config.AppenderControl.callAppenderPreventRecursion(AppenderControl.java:125)at org.apache.logging.log4j.core.config.AppenderControl.callAppender(AppenderControl.java:89)at org.apache.logging.log4j.core.config.LoggerConfig.callAppenders(LoggerConfig.java:542)at org.apache.logging.log4j.core.config.LoggerConfig.processLogEvent(LoggerConfig.java:500)at org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:483)at org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:471)at org.apache.logging.log4j.core.config.AwaitCompletionReliabilityStrategy.log(AwaitCompletionReliabilityStrategy.java:98)at org.apache.logging.log4j.core.async.AsyncLogger.actualAsyncLog(AsyncLogger.java:488)at org.apache.logging.log4j.core.async.RingBufferLogEvent.execute(RingBufferLogEvent.java:156)at org.apache.logging.log4j.core.async.RingBufferLogEventHandler.onEvent(RingBufferLogEventHandler.java:51)at org.apache.logging.log4j.core.async.RingBufferLogEventHandler.onEvent(RingBufferLogEventHandler.java:29)at com.lmax.disruptor.BatchEventProcessor.run(BatchEventProcessor.java:129)at java.lang.Thread.run(Thread.java:750)
Caused by: java.lang.IllegalStateException: ManagerFactory [org.apache.logging.log4j.core.appender.RandomAccessFileManager$RandomAccessFileManagerFactory@307957f1] unable to create manager for [/tmp/hadoop/operation_logs/513aee2e-444c-407e-8e5d-2f8541a9d2f7/hadoop_20240316152052_4af3ebb2-0011-48e8-acc3-46f60e08f82f] with data [org.apache.logging.log4j.core.appender.RandomAccessFileManager$FactoryData@57fffa4]at org.apache.logging.log4j.core.appender.AbstractManager.getManager(AbstractManager.java:116)at org.apache.logging.log4j.core.appender.OutputStreamManager.getManager(OutputStreamManager.java:100)at org.apache.logging.log4j.core.appender.RandomAccessFileManager.getFileManager(RandomAccessFileManager.java:72)at org.apache.hadoop.hive.ql.log.HushableRandomAccessFileAppender.createAppender(HushableRandomAccessFileAppender.java:178)... 25 more2024-03-16 15:20:55,695 Log4j2-TF-2-AsyncLogger[AsyncContext@71be98f5]-1 ERROR Unable to create Appender of type HushableMutableRandomAccess
Exception in thread "HiveServer2-Handler-Pool: Thread-470" java.lang.OutOfMemoryError: GC overhead limit exceeded
WARN: The method class org.apache.commons.logging.impl.SLF4JLogFactory#release() was invoked.
WARN: Please see http://www.slf4j.org/codes.html#release for an explanation.

大概意思就是我JVM的资源不足了,内存溢出了
这个就很奇怪, 我就测试了几个数据库链接工具,还没上强度,也没上job,怎么就内存溢出了呢?
我查看了一下进程(看看是什么事务占用了资源),吓我一跳

b85f83302e592d454b4c800241e0cfa.png
17cf21775c7d5753f846b85c0f4ba51.png
22c507735e2319fdb4f61bca41772df.png每一次在测试的时候,都会产生一个链接会话,且一直没有被回收,且即便是我关闭了会话,这个会话进程依然存在,长此以往会话占用的资源就爆满了。再有新的链接想要链接进来,就会被refused。
这里和postgresql的底层设计有点关联,postgresql是一个多进程多线程类型的一个数据库,对于hive在安装的时候,其实内置的是derby数据库。这里建议采用其默认数据库,其兼容性会更好。目前行业主流仍然使用mysql作为其元数据库管理最多

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/759898.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

从回收站删除的文件如何恢复?图文详解(3个方法)!

“各位大佬&#xff01;从回收站删除了重要的文件后&#xff0c;有什么方法可以恢复文件吗&#xff1f;快帮帮我吧&#xff01;这些被删除的文件都是比较重要的&#xff01;” 回收站作为电脑中的一个重要工具&#xff0c;当我们误删文件后&#xff0c;通过回收站有机会快速恢复…

QT增加线程函数步骤流程

在使用线程的时候&#xff0c;不仅要关注线程开启的时机&#xff0c;同时还要关注线程安全退出&#xff0c;这样才能保证程序的健壮性&#xff0c;如果线程开启的较多&#xff0c;且开启关闭比较频繁&#xff0c;建议使用线程池来处理。开启线程有三种方式&#xff1a;第一种C的…

C语言动态内存管理(重点)

目录 1、为什么要有动态内存分配 2、malloc 和 free 2.1 malloc函数 2.2 free函数 3、calloc 和 realloc 3.1 calloc函数 3.2 realloc 函数 3.3 realloc 和 malloc 区别 3.4 realloc 函数存在的问题 4、常见的动态内存的错误 5、动态内存经典笔试题分析 6、柔…

Vue.js前端开发零基础教学(一)

目录 第一章 初识Vue.js 前言 开发的好处 一.前端技术的发展 什么是单页Web应用&#xff1f; 二. Vue的简介 三. Vue的特性 四. Vue的版本 五.常见的包管理 六.安装node环境 第一章 初识Vue.js 学习目标&#xff1a; 了解前端技术的发展 了解什么是Vue掌握使用方…

Oracle19C图形界面安装教程

文章目录 一、安装前的准备1、安装Linux操作系统2、配置网络源或者本地源3、hosts文件配置 二、Oracle19c安装过程1、安装相关软件&#xff1a;2、用户与组&#xff1a;3、修改内核参数&#xff1a;4、资源限制&#xff1a;5、配置用户环境变量&#xff1a;6、创建相关文件目录…

如何理解 Linux 命令行参数与环境变量7

一、命令行参数 1.1参数介绍 在写C语言程序时&#xff0c;main函数是否可以带参数呢&#xff1f;------ 是可以的 int argc: 命令行参数的个数char *argv[ ]: 字符指针数组&#xff08;指向各个命令行参数的字符指针所构成的数组&#xff09; 我们写一段代码来打印一下看这…

基于单片机的事务管理系统

基于单片机的事务管理系统 摘 要 所谓事务管理系统就是主要用来做提醒&#xff0c;辅助以计时、秒表等的一个小系统。利用MCS51单片机即可完成系统硬件需要&#xff0c;成本低廉&#xff0c;程序简单&#xff0c;功能丰富实用&#xff0c;使用率广。根据题目的设计要求&#…

HW中常见的面试题

1.说说你在工作中或者SRC中挖到的比较典型的漏洞? 2.HW中如果已经发现红方IP地址&#xff0c;该如何溯源? 通过蜜罐系统或者安全设备锁定红方MAC&#xff0c;然后通过IP地址对&#xff0c;whois查询到该IP注册人以及注册邮箱&#xff0c;如果是发现邮箱是某厂商注册则可利…

SpringBoot-03 | SpringBoot自动配置

SpringBoot-03 | SpringBoot自动配置 原理分析代码示例源码剖析SpringBootConfiguration&#xff1a;组合注解&#xff0c;标记当前类为配置类ComponentScanEnableAutoConfigurationImport加载spring.factoriesrun初始化加载spring.factoriesspring.factories中的钩子类 网上盗…

部署DiffSynth-Studio实现视频风格转换

DiffSynth 是一个新的 Diffusion 引擎&#xff0c;可以实现图片和视频的风格转换。 拉取源码 git clone https://github.com/Artiprocher/DiffSynth-Studio/ 创建环境 conda env create -f environment.yml conda activate DiffSynthStudio 下载模型 将Stable Diffusion模…

组织学习的革命:打破常规,引领未来

组织学习的革命&#xff1a;打破常规&#xff0c;引领未来 一、组织学习的重塑&#xff1a;从传统到现代的转变 在知识经济的时代背景下&#xff0c;组织学习已经成为企业持续发展和竞争优势的关键。传统的组织学习方式&#xff0c;如培训、研讨会等&#xff0c;虽然在一定程…

NeRF——基于神经辐射场的三维场景重建和理解

概述 三维重建是一种将物理世界中的实体转换为数字模型的计算机技术。其基本概念是通过对物理世界中的物体或场景进行扫描或拍摄&#xff0c;并使用计算机算法将其转换为三维数字模型。抽象意义上的三维模型指的是&#xff1a;形状和外观的组合&#xff0c;并且可以渲染成不同…

阿里云服务器2核4G服务器收费价格表,1个月和一年报价

阿里云2核4G服务器多少钱一年&#xff1f;2核4G服务器1个月费用多少&#xff1f;2核4G服务器30元3个月、85元一年&#xff0c;轻量应用服务器2核4G4M带宽165元一年&#xff0c;企业用户2核4G5M带宽199元一年。本文阿里云服务器网整理的2核4G参加活动的主机是ECS经济型e实例和u1…

PyTorch学习笔记之激活函数篇(三)

文章目录 3、ReLU3.1 公式3.2 对应的图像3.3 对应的图像的代码3.4 优点与不足3.5 torch.relu()函数 3、ReLU 3.1 公式 ReLU函数的公式&#xff1a; f ( x ) { x , x > 0 0 , x < 0 f(x) \begin{cases} x&,x>0 \\ 0&,x<0 \end{cases} f(x){x0​,x>…

Vue 3响应式系统详解:ref、toRefs、reactive及更多

&#x1f31f; 前言 欢迎来到我的技术小宇宙&#xff01;&#x1f30c; 这里不仅是我记录技术点滴的后花园&#xff0c;也是我分享学习心得和项目经验的乐园。&#x1f4da; 无论你是技术小白还是资深大牛&#xff0c;这里总有一些内容能触动你的好奇心。&#x1f50d; &#x…

为什么延迟删除可以保证MYSQL 与redis的一致性?

看过很多保持MYSQL 与redis保持一致性的文章都提到了延迟删除&#xff0c;其实脱离任何业务场景的设计都是不切实际的&#xff0c;所以我会本着一个通用的读写场景去分析为什么延迟删除大概率可以保证MYSQL与redis的最终一致。 通常的读写场景 通常在使用redis作为读写缓存时…

无人机/飞控--ArduPilot、PX4学习记录(2)

这是一篇碎碎念&#xff0c;零零碎碎的记录了环境配置过程&#xff0c;仅供本人记录学习历程和参考。(记录的挺乱的&#xff0c;但是文章链接里的博客写的是真好) 本章主要完成的目标&#xff1a; 安装PX4 并 成功运行出3D无人机界面。 参考文章&#xff1a; 搭建PX4环境&…

不同的Git仓库单独设置用户名和邮件地址

最近使用公司电脑将自己的一个私人项目推送到远程仓库&#xff0c;仓库显示的公司邮箱地址。因为设置了全局的username和usermail&#xff0c;这样就比较尴尬了。但是又不能频繁来回改用户信息&#xff0c;那么请看下面如何单独设置仓库的用户信息&#xff0c;让不同的仓库展示…

走上管理岗才发现:所谓工作能力强,就一点

走上管理岗才发现&#xff1a;所谓工作能力强&#xff0c;就一点 建立SOP‼️ - 我二本工科&#xff0c;电力专业&#xff0c;从现场工程师到新能源公司核心部门经理&#xff0c;入职公司三个月直接升职加薪。 - 我刚从工程师升至经理带团队的时候&#xff0c;经常靠加班续命&a…

zookeeper底层细节

zk 临时节点和watch机制实现注册中心自动注册和发现&#xff0c;数据都在内存&#xff0c;nio 多线程模型&#xff1b; cp注重一致性&#xff0c;数据不一致时集群不可用 事务请求处理方式 1.all事务由唯一服务器处理 2.将客户端事务请求转成proposal分发follower 3.等待半…