首页 > 解决方案 > Hive 太慢了,如何对小文件进行分组?

问题描述

我需要在hadoop上保存来自kafka的流,并且我使用了hive。流式批处理每 5 分钟获取一次 kafka 的内容并将其保存在 hive 表上,每次保存时都会生成一个小文件(70KB),这会减慢读取速度。您可以将配置单元配置为每次写入时将文件压缩到 128MB 大小?还是我需要手动执行 HDFS 命令?

我尝试如下设置蜂巢,但问题没有解决:

SET hive.merge.mapfiles=true;
SET hive.merge.mapredfiles=true;
SET hive.merge.size.per.task=128000000;
SET hive.merge.smallfiles.avgsize=128000000;

标签: javahadoophiveapache-spark-sqlspark-streaming

解决方案


推荐阅读