#问题背景 在开启了Hive表 ORC+SNAPPY后,生产问题收到如下异常 Caused by: java.io.EOFException: Read past end of RLE integer from compressed stream Stream for column 1 kind S Read More
posted @ 2022-08-30 17:45 George_sz Views(933) Comments(0) Diggs(1) Edit
一、 问题现象 查看yarn 日志确认是在 shuffle 阶段 发生了异常 二、 初步分析 MR 流程总览 从异常栈来看,发生了shuffle的OOM,在shuffle阶段,会将map的output数据给取下来,然后根据相关参数值确认昂前shuffle可使用内存,决定是放进内存中,还是存储到磁盘里 Read More
posted @ 2022-08-28 21:20 George_sz Views(384) Comments(0) Diggs(0) Edit
一、 问题现象 生产环境开启默认压缩后,Hive任务在触发MapJoin优化时会偶发OOM,如下图 二、 初步分析 从报错日志上面可以明显看出,maplocaltask 总共的分配内存2092433408处理行数:200000 哈希表大小:199999 内存使用量:1089164624 比例:0.5 Read More
posted @ 2022-08-28 20:37 George_sz Views(433) Comments(0) Diggs(0) Edit
最近预研一个新项目,需要装一个mysql,因为以前装过,原本以为很简单,大概半小时搞定,但是没想到搞了一晚上,记录一下完整步骤和遇到的问题。 1、软件版本和安装包准备 centos7 mysql5.7 官网下载地址:https://dev.mysql.com/downloads/mysql/5.7. Read More
posted @ 2020-02-29 13:58 George_sz Views(2399) Comments(0) Diggs(0) Edit
1、首先打开 hive DEBUG日志,执行以下命令,直接将日志输出到控制台 2、我们知道HIVE启动过程中,首先会先连接hive metastore,然后在连接HDFS namenode,我们可以根据日志时间点来判断和排查哪一步执行时间过长导致。 3、如果是hive metastore 连接过慢, Read More
posted @ 2020-01-29 21:39 George_sz Views(3610) Comments(0) Diggs(0) Edit
背景: 一次线上问题的综合排查排查,两个相同的系统的某个模块,数据量更少的系统查询更慢。 先说下整体思路: 1. 查看系统整理负载,网络有100左右毫秒的延迟,看起来影响不大 1. 查看正序运行整体情况,一次查询会经历3次FGC,有问题,解决后虽然会快一些但是还是有点慢 1. 跟踪调用栈,发现有点在 Read More
posted @ 2019-03-14 21:35 George_sz Views(53528) Comments(0) Diggs(5) Edit
若在Hive中执行INSERT OVERWRITE重写同一个表的数据时,有可能会造成数据丢失。 如 INSERT OVERWRITE TABLE table_name SELECT FROM table_name 一、新建一张分区表 二、插入一条记录 三、确认表数据及结构 四、在表中间新增字段 五、 Read More
posted @ 2019-01-06 17:23 George_sz Views(3648) Comments(0) Diggs(0) Edit
问题1:namenode进程故障 Namenode挂掉,Namenode gc日志里面YGC报错promotion failed 现象描述 NameNode进程挂掉,Namenode gc日志里面YGC报错promotion failed。 可能原因 Young gc的时候,需要复制eden区和fr Read More
posted @ 2018-09-30 20:10 George_sz Views(1278) Comments(0) Diggs(0) Edit
数据丢失是一件非常严重的事情事,针对数据丢失的问题我们需要有明确的思路来确定问题所在,针对这段时间的总结,我个人面对kafka 数据丢失问题的解决思路如下: 是否真正的存在数据丢失问题,比如有很多时候可能是其他同事操作了测试环境,所以首先确保数据没有第三方干扰。 理清你的业务流程,数据流向,数据到底 Read More
posted @ 2018-06-26 17:13 George_sz Views(39387) Comments(0) Diggs(2) Edit
分为几个部分: 开发调优、资源调优、数据倾斜调优、shuffle调优 开发调优: 主要包括这几个方面 RDD lineage设计、算子的合理使用、特殊操作的优化等 避免创建重复的RDD,尽可能复用同一个RDD 一个RDD包含另外一个RDD,对多次使用的RDD进行持久化 内存(序列化),磁盘(序列化) Read More
posted @ 2018-05-04 11:00 George_sz Views(598) Comments(0) Diggs(0) Edit