MapReduce 输入格式 定义多行输入 问题!急,在线等!

时间:2021-02-23 18:23:19
text 内容为个人简历,第一行为个人基本信息,如姓名、年龄、性别等。第二行开始为这个人的工作经历,格式为:XXXX年,XX省,XX单位,XX职位。直到这个人简历完后接第二个人简历。

现问题是,传统的例子是一行对应一个键值对,但这里是多行对应一个键值对。

想了一个办法,一个split包含了多条记录,一条记录对应的是一行,默认的分隔符是回车和换行,能不能把默认的分隔符改成其他的,比如空行。两个空行之间的数据为一条记录。
不知道这个能不能实现,怎么实现。

还有没有其他好方法!~~

求大神啊!!

3 个解决方案

#1


文本的格式为:
姓名,性别,民族,籍贯
XXXX年,XX省,XX单位,XX职位
XXXX年,XX省,XX单位,XX职位
XXXX年,XX省,XX单位,XX职位
XXXX年,XX省,XX单位,XX职位
姓名,性别,民族,籍贯
XXXX年,XX省,XX单位,XX职位
XXXX年,XX省,XX单位,XX职位
XXXX年,XX省,XX单位,XX职位
姓名,性别,民族,籍贯
.
.
.
求大神啊!怎么能每一次map处理一个人的信息!

#2


Map的输出键值对<key, value>,把value的类型变成一个ArrayList<String>,这样可以否?

#3


不要用TextInputFormat,用NLineInputFormat,因为TextInputFormat默认便偏移量就是一行,具体用法google一下咯

#1


文本的格式为:
姓名,性别,民族,籍贯
XXXX年,XX省,XX单位,XX职位
XXXX年,XX省,XX单位,XX职位
XXXX年,XX省,XX单位,XX职位
XXXX年,XX省,XX单位,XX职位
姓名,性别,民族,籍贯
XXXX年,XX省,XX单位,XX职位
XXXX年,XX省,XX单位,XX职位
XXXX年,XX省,XX单位,XX职位
姓名,性别,民族,籍贯
.
.
.
求大神啊!怎么能每一次map处理一个人的信息!

#2


Map的输出键值对<key, value>,把value的类型变成一个ArrayList<String>,这样可以否?

#3


不要用TextInputFormat,用NLineInputFormat,因为TextInputFormat默认便偏移量就是一行,具体用法google一下咯