日结

昨天进行了数据导入hive。然后清洗的时候遇到问题,运行大约1分钟之后报错退出。看了报错信息是内存不足,我调大了虚拟机的内存,还是不行。然后今天我看了同学的虚拟机配置,内存只有4g,我意识到可能我给虚拟机分配的太多了,电脑自身剩的太少了,然后调整了一下。在尝试清洗,还是报错,可能内存还是不够。然后我调整清洗limit为100w条,成功。只能这样了,我的电脑只有8g运存,给了虚拟机4g。没法了。

然后昨天下午还遇到一个离谱的问题,中午睡了一觉,下午再启动hive就疯狂不停报错。然后查看了报错

解决:hdfs dfsadmin -safemode forceExit 退出安全模式

然后再启动还是报错,后来排查了好久,发现hive.site.xml有个propertity元素没闭合,加上后没问题了。

 

然后今天下午完成了以下问题

在尝试用sqoop将hive中的表传到mysql也遇到了问题

 主要问题:

Container [pid=29125,containerID=container_1695476393586_0001_01_000003] is running 160897536B beyond the 'VIRTUAL' memory limit. Current usage: 151.0 MB of 1 GB physical memory used; 2.2 GB of 2.1 GB virtual memory used. Killing container.

Caused by: java.lang.RuntimeException: Can't parse input data: '2023-09-12,C19,4080.0,2669576.0'

 一个是内存不足,一个是由于数据格式不符合预期,可能是数据中包含了不正确的值或字段分隔符。

这个暂时不知道是不是建表的问题。

我的解决方法是把hive的表导出为csv文件,再导入mysql,也挺快的

 

没什么问题的话明天进行可视化的部分

posted @ 2023-09-23 22:53  Men!  阅读(11)  评论(0编辑  收藏  举报