更新时间:2023-03-17 GMT+08:00
Spark应用下修改split值时报错
用户问题
在Spark应用下修改split值时报错。
问题现象
客户需要通过修改一个split最大值来实现多个mapper ,从而达到提速的目的, 但是目前执行set $参数命令修改Hive的配置时报错。
0: jdbc:hive2://192.168.1.18:21066/> set mapred.max.split.size=1000000; Error: Error while processing statement: Cannot nodify mapred.max.split.size at runtime. It is not in list of params that are allowed to be modified at runtime( state=42000,code=1)
原因分析
- 在安全模式下配置白名单启停参数hive.security.whitelist.switch时,需要运行的参数必须在hive.security.authorization.sqlstd.confwhitelist 中配置。
- 默认白名单中没有包含mapred.max.split.size参数,所以运行的时候会提示不允许。
处理步骤
- 搜索hive.security.authorization.sqlstd.confwhitelist.append,把mapred.max.split.size加进hive.security.authorization.sqlstd.confwhitelist.append中,详细信息可参考 。
- 修改完成后,保存配置,重启Hive组件。
- 执行set mapred.max.split.size=1000000;,系统不再报错,则表示修改成功。
父主题: 使用Spark