Hive

您所在的位置:网站首页 dbeaver导入数据库乱码 Hive

Hive

2023-04-16 07:29| 来源: 网络整理| 查看: 265

FAQ - which exceeds 100000. Killing the job问题描述/异常栈发现版本解决方案问题原因FAQ - which exceeds 100000. Killing the job问题描述/异常栈[Fatal Error] total number of created files now is 100576, which exceeds 100000. Killing the job发现版本HIVE 2.1.1解决方案1、使用 distributed by 分区字段,可以使用 DISTRIBUTE BY rand()将数据随机分配给Reduce(使用示例见下文截图) 2、如果Reduce数量太多,则减少reduce的数量 3、进行一些参数设置 设置 mapper输入参数: set mapred.max.split.size=256000000; #每个Map最大输入大小 set mapred.min.split.size.per.node=100000000; 设置 map、reduce输出参数 hive.merge.mapfiles= true #设置 map输出和reduce输出进行合并的相关参数 hive.merge.mapredfiles= true 设置reduce端输出进行合并,默认为false hive.merge.size.per.task= 256 *1000 * 1000 设置合并文件的大小 hive.merge.smallfiles.avgsize=16000000 输出文件的平均大小小于该值时,启动一个独立的MapReduce任务进行文件merge

问题原因Hive对文件创建的总数是有限制的,这个限制取决于参数:hive.exec.max.created.files,默认值是100000。 这里有情况,就是如果你是往分区表里面插入数据。如果现在你的表有60个分区,然后你总共有2000个map或者reduce,在运行的时候,每一个mapper或者reduce都会创建60个文件,对应着每一个分区,所以60*2000> 120000,就会报错:exceeds 100000.Killing the job

作者:xxx



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3