深耕测试圈5年,结合京东、阿里、美团、字节、拼多多、顺丰、滴滴等大厂真实面经,筛选出TOP30必考题目,每题都带 标准答案+大厂真实业务案例,数据测试、数仓测试、ETL测试直接套用,不用自己瞎整理!
全程无废话、无偏题,都是面试官高频追问的考点,复制到备忘录就能直接背诵,帮大家省去整理时间,高效备战面试✅
重点说明:本文专为数据测试岗设计,区别于普通测试Linux题,所有案例均来自大厂真实数据场景(ETL同步、数据对账、日志排查等),贴合岗位实际工作,面试说出来直接加分!
一、日志排查类(所有大厂必考,数据测试核心)
数据测试日常最多的工作就是排查日志、核对数据,这部分题目占比最高,务必熟练掌握!
1. 如何实时查看日志并过滤异常信息?
标准答案:
tail -f etl.log | grep -iE 'error|fail|timeout'
2. 查看大日志文件用什么命令?cat和less的区别?
标准答案:大文件优先用 less(分页加载,不占内存,支持翻页、搜索);cat一次性加载全部内容,适合小文件,大文件(GB/TB级)用cat易卡死。
3. 如何统计日志中某个关键字的出现次数?(数据对账常用)
标准答案:
grep "insert into" etl.log | wc -l
统计订单数据入库行数,对比源文件与目标表行数,完成数据全量同步对账,确保数据不缺失。
4. 如何过滤无用日志,只保留有效信息?(grep取反)
标准答案:
排查用户埋点数据日志时,过滤掉调试(DEBUG)信息,只聚焦数据上传失败、格式异常等有效日志,减少干扰。
5. grep多条件过滤,同时筛查多个异常关键字?
标准答案:
grep -E 'user_id|order_id|fail' data.log
排查用户下单数据落库失败问题,同时筛选用户ID、订单ID和失败标识,快速定位异常订单。
6. 如何用awk截取日志中的指定列?(高频必考)
标准答案:
awk '{print $3,$5}' log.txt
从物流轨迹同步日志中,截取同步耗时(第3列)和状态码(第5列),分析同步效率和异常原因。
7. 如何统计文件行数?(数据一致性校验必用)
标准答案:
核对源数据文件(data.csv)与Hive目标表的行数,确认数据全量同步无遗漏、无重复。
8. 如何排序去重,统计重复数据?
标准答案:
sort user_id.txt | uniq -c
排查车辆轨迹点重复上传、用户订单ID重复问题,统计重复次数,定位数据重复根源。
9. 如何用sed批量替换文件内容?(配置/数据修改)
标准答案:
sed -i 's/192.168.1.1/10.0.0.1/g' config.ini
批量修改数据同步脚本(config.ini)中的数据库地址,避免逐个修改出错,提升效率。
10. 如何查看文件中的异常字符?(排查乱码问题)
标准答案:
数据入库失败,排查发现是文件中存在不可见特殊字符,用cat -v查看并清理,解决Hive解析异常问题。
二、文件与磁盘类(数据测试高频场景)
数据测试常涉及大量数据文件(落地文件、压缩文件),磁盘满、文件定位是高频问题,大厂面试官必问!
11. 如何查看系统磁盘空间?(排查数据落盘失败)
标准答案:
ETL任务数据落盘失败,用df -h排查发现/data目录磁盘占用100%,清理过期数据后恢复正常。
12. 如何查看哪个目录占用空间最大?(定位大文件)
标准答案:
服务器磁盘告警,用该命令定位到/var/log目录下的历史埋点日志占用100G,清理后释放空间。
13. 如何查找大于100M的大文件?(清理无用数据)
标准答案:
find /data -type f -size +100M
定期清理/data目录下大于100M的过期离线包、数据快照,避免磁盘空间不足。
14. 如何查找指定类型的数据文件?(定位源文件)
标准答案:
分拣系统数据同步异常,用该命令快速定位分拣数据落地文件(.dat格式),排查文件缺失问题。
15. 如何不解压查看.gz压缩数据文件?(大数据场景常用)
标准答案:
快速查看压缩数据文件的格式、表头是否正确,无需解压,提升工作效率。
16. 如何清空大文件?(避免进程句柄异常)
标准答案:
ETL日志文件达到50G,直接用rm删除会导致任务句柄异常、任务挂住,用>清空文件,不影响任务运行。
17. 如何查看文件编码和格式?(排查乱码)
标准答案:
数据入库后出现乱码,用file命令查看发现源文件是GBK编码,而目标表是UTF-8编码,转换编码后解决问题。
18. 如何按修改时间查找文件?(定位近期异常文件)
标准答案:
find /data -mtime -1 -name "*.log"
数据同步异常,查找近1天修改的日志文件,快速定位异常发生的时间和场景。
三、进程 & ETL任务类(数据测试核心场景)
ETL任务调度、进程排查是数据测试日常工作,大厂面试官会重点考察实操能力,尤其是任务卡死、慢任务排查。
19. 如何查看ETL任务进程?(DataX/Sqoop)
标准答案:
日常巡检时,查看DataX数据同步任务是否正常运行,排查任务卡死、未启动等问题。
20. 如何查看数据库/接口端口占用?(排查连接失败)
标准答案:
ss -tunlp | grep 3306 # 查看MySQL端口lsof -i:8080 # 查看接口端口
ETL任务连接MySQL失败,用ss命令排查发现3306端口被其他进程占用,杀死占用进程后恢复连接。
21. 如何强制杀死卡死的数据任务?
标准答案:
物流数据同步任务进入死循环,占用大量CPU,用kill -9强制杀死进程,重新启动任务。
22. 如何后台运行长时间数据脚本?(避免中断)
标准答案:
nohup python compare.py > result.log 2>&1
执行全量数据对比脚本(需运行3-5小时),用nohup后台运行,避免关闭终端导致脚本中断,输出日志到result.log便于后续排查。
23. 如何查看定时调度任务?(crontab)
标准答案:
核对日终数据对账脚本、离线同步脚本的调度时间,确保任务按预期执行,避免漏跑、错跑。
24. 如何查看后台任务的输出日志?
标准答案:
后台运行的离线数据脚本异常,用tail -f查看nohup.out日志,实时排查报错原因。
25. 如何查看系统负载?(判断ETL任务慢的原因)
标准答案:
top # 实时查看CPU、内存、负载uptime # 查看系统平均负载
大促期间,ETL任务执行极慢,用top查看发现系统负载过高(load average > 10),多任务并发导致资源不足,调整任务执行顺序后恢复正常。
四、权限 & 环境类(大厂面试必坑点)
数据测试中,权限不足、环境变量错误是常见问题,也是面试官考察的细节点,避免踩坑!
26. 如何修改文件权限?(解决同步失败)
标准答案:
chmod 755 etl.sh # 脚本可执行权限chmod 644 data.csv # 数据文件读写权限
DataX脚本无法执行,排查发现脚本无执行权限,用chmod 755修改后,脚本正常运行。
27. 如何修改文件所属用户组?(解决Hive写入失败)
标准答案:
chown hadoop:hadoop data.csv
Hive表写入数据失败,原因是数据文件所属用户组不是hadoop,修改后解决权限问题。
28. 如何查看当前用户与环境变量?(排查脚本执行失败)
标准答案:
whoami # 查看当前用户echo $JAVA_HOME # 查看Java环境变量echo $PATH # 查看系统环境变量
Python数据脚本执行失败,排查发现环境变量中没有Python路径,添加路径后恢复正常。
29. 如何切换用户执行数据脚本?(HDFS操作常用)
标准答案:
su - hdfs -c "hadoop fs -ls /data"
普通用户无权限操作HDFS文件,切换到hdfs用户,执行HDFS文件查看、删除等操作。
五、系统排查压轴题(大厂面试必问,拉开差距)
这两道题是大厂数据测试面试的压轴题,考察问题排查能力,答出完整步骤+案例,直接碾压其他候选人!
30. 磁盘满了如何排查?(京东/阿里/美团高频)
标准答案(完整步骤):
用 df -h查看系统所有磁盘占用情况,定位到满的目录(如/data);
用 du -sh /*逐层排查,定位占用空间最大的目录/文件;
清理无用文件(过期日志、过期数据、临时文件),释放磁盘空间;
若清理后磁盘仍满,排查是否有“已删除但未释放”的文件,用命令 lsof | grep deleted查看,杀死对应进程释放空间。
大促期间,物流数据日志暴增,导致/data目录磁盘满,数据同步中断。按上述步骤排查,清理30G历史日志,同时杀死deleted状态的日志进程,快速恢复数据同步。
31. ETL任务极慢,如何排查?(阿里/字节/顺丰高频)
标准答案(完整步骤):
用 top查看系统CPU、内存、负载,判断是否是资源不足;
用 iostat查看磁盘I/O使用率,判断是否是磁盘I/O瓶颈(如大量小文件读写);
查看数据库,排查是否存在慢SQL、锁等待,优化SQL语句;
查看网络带宽、跨机房延迟,排查是否是网络问题导致数据传输慢;
查看ETL任务配置,优化任务并行度、数据分片,减少任务耗时。
分拣数据同步任务执行时间从1小时延长到5小时,按步骤排查发现,是磁盘I/O过高(大量小文件同步)+ 慢SQL导致,优化数据分片和SQL后,任务耗时恢复正常。