分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 技术分享

Type mismatch in key from map: expected org.apache.hadoop.io.Text, received org.apache.hadoop.io.LongWritable

发布时间:2023-09-06 02:05责任编辑:沈小雨关键词:apache

  今天在写MapReduce时遇到了这个问题,这个问题的解释是:来自map的键类型不匹配:expected org.apache.hadoop.io文本,收到org.apache.hadoop.io.LongWritable,也就是说从map到reduce的输出格式装换错误,或者没有定义,即使在你的map的输出参数写的和reduce的参数一模一样还是会出现这个错误。

  

     那么解决的办法就是既然他自己识别不了,我们就强制给他装换,给他设置类型参数,这样就可以了。

  

 ???????//设置map输出的key类型 ???????job.setMapOutputKeyClass(LongWritable.class); ???????//设置map输出的value类型 ???????job.setMapOutputValueClass(Text.class); ???????//设置输出的key类型 ???????job.setOutputKeyClass(Text.class); ???????//设置输出的value类型 ???????job.setOutputValueClass(NullWritable.class); ???????

  我们自己手动设定map的输出key 和 value 的类型。问题解决。

Type mismatch in key from map: expected org.apache.hadoop.io.Text, received org.apache.hadoop.io.LongWritable

原文地址:https://www.cnblogs.com/zll20153246/p/9351167.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved