班级网站建设php上海市企业服务云网站
班级网站建设php,上海市企业服务云网站,网页搜索框设计,西安市发布最新消息一、Hive 小文件概述
在Hive中#xff0c;所谓的小文件是指文件大小远小于HDFS块大小的文件#xff0c;通常小于128 MB#xff0c;甚至更少。这些小文件可能是Hive表的一部分#xff0c;每个小文件都包含一个或几个表的记录#xff0c;它们以文本格式存储。
Hive通常用于…一、Hive 小文件概述
在Hive中所谓的小文件是指文件大小远小于HDFS块大小的文件通常小于128 MB甚至更少。这些小文件可能是Hive表的一部分每个小文件都包含一个或几个表的记录它们以文本格式存储。
Hive通常用于分析大量数据但它在处理小文件方面表现不佳Hive中存在大量小文件会引起以下问题 存储空间占用过多在Hadoop生态系统中每个小文件都将占用一定的存储空间而且每个小文件也需要一个块来存储。如果存在大量的小文件将浪费大量的存储空间。 处理延迟小文件数量过多会引起大量IO操作导致处理延迟。 查询性能下降小文件用于分区和表划分可能导致查询延迟并降低查询性能。此外小文件还会增加元数据的数量使得Hive在查询元数据时变得更加缓慢。 数据倾斜如果数据分布不均匀会导致一些Reduce任务处理了完全不同的分区这会使某些Reduce任务的运行速度与其他Reduce任务相比非常慢。
因此为了避免这些问题我们需要对Hive中小文件的处理进行优化减少小文件数量和大小以提高数据处理效率和准确性。 二、如何排查小文件
1获取fsimage信息
hdfs dfsadmin -fetchImage ./ 2格式化fsimage为可读文本 hdfs oiv -i ./fsimage_0000000007979236585 -t ./tmp/ -o ./fsimage.csv -p Delimited -delimiter , 注意需要创建tmp临时目录缓存中间结果,缓解内存的压力,否则将oom 3建立存储fsimage的表
CREATE TABLE tmp.fsimage_info_csv(path string, replication int, modificationtime string, accesstime string, preferredblocksize bigint, blockscount int, filesize bigint, nsquota string, dsquota string, permission string, username string, groupname string)
ROW FORMAT SERDE org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
WITH SERDEPROPERTIES ( field.delim,, serialization.format,)
STORED AS INPUTFORMAT org.apache.hadoop.mapred.TextInputFormat
OUTPUTFORMAT org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
LOCATIONhdfs://nameservice1/user/hive/warehouse/fsimage_info_csv; 4上传数据到hdfs
hdfs dfs -put /data/fsimage.csv /user/hive/warehouse/fsimage_info_csv/ 5) 逐级目录统计文件数量
以查找三级目录下的小文件数量为例如下
SELECTdir_path ,COUNT(*) AS small_file_num
FROM( SELECTrelative_size,dir_path FROM( SELECT(CASE filesize 4194304 WHEN TRUE THEN small ELSE large END) AS relative_size,concat(/,split(PATH,\/)[1], /,split(PATH,\/)[2], /,split(PATH,\/)[3], /,split(PATH,\/)[4], /, split(PATH,\/)[5], split(PATH,\/)[6]) AS dir_path FROMtmp.fsimage_info_csv WHEREreplication 0 and path like /hive/warehouse/%) t1WHERErelative_sizesmall) t2
GROUP BYdir_path
ORDER BYsmall_file_num desc 6 ) 小文件处理
根据涉及目录反向找到涉及程序尝试优化避免小文件的产生及时合并归档小文件及时清理历史小文件
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/89930.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!