Spark Hbase批量加载生成超过15倍的数据

问题描述

我的Spark数据框只有2列,如{ Key| Value}。这个数据框有1000万条记录。我使用Spark的批量加载方法将其插入到HBase表(具有10个预分割区域)中。这样可以很好地工作并成功加载数据。当我检查大小表时,它的大小约为151GB(453 GB,3x hadoop复制)。我对该表进行了大幅度压缩,并将表大小减小到35GB(105gb,3倍复制)。

我正在尝试在不同的集群中运行相同的代码和相同的数据。但是在这里,我对名称间的配额限制为2TB。将HFiles加载到HBase时,我的过程失败,说它的配额限制已结束。

我想知道在批量加载期间,Spark是否创建了比所需的151GB更多的数据文件?如果是这样,如何避免呢?还是有更好的方法来加载相同的内容

问题是,如果实际数据约为151gb(在major_compact之前),那么为什么2TB大小不够?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)