MapReduce的类型与格式教案资料.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
输入格式 KeyValueTextInputFormat 输入格式 NLineInputFormat 输入格式 XML 大多数XML解析器会处理整个XML文档,所以如果一个大型XML文档由多个输入分片组成,那么单独处理每个分片就有挑战了 把整个文件作为一条记录来处理 StreamXmlRecordReader类 输入格式 二进制输入 SequenceFileInputFormat Hadoop的顺序文件格式存储二进制的键/值对的序列 SequenceFileAsTextInputFormat SequenceFileAsBinaryInputFormat 变体 二进制对象 SequenceFile.Reader的appendRaw()方法 输入格式 多种输入 数据格式往往会随着时间演变 对不同的数据集进行连接(join,也称“联接”)操作 MultipleInputs 允许为每条输入路径指定InputFormat和Mapper 输入格式 数据库输入(和输出) DBInputFormat 用于使用JDBC从关系数据库中读取数据 最好用于加载小量的数据集,如果需要与来自HDFS的大数据集连接,要使用MultipleInputs DBOutputFormat 适用于将作业输出数据(中等规模的数据)转储到数据库 输出格式 文本输出 默认的输出格式是TextOutputFormat 键和值可以是任意类型,因为TextOutputFormat调用toString()方法把它们转换为字符串 每个键和值由制表符进行分割 与TextOutputFormat对应的输入格式是KeyValueTextInputFormat NullWritable 输出格式 二进制输出 SequenceFileOutputFormat SequenceFileAsBinaryOutputFormat MapFileOutputFormat 输出格式 多个输出 输出格式 多个输出 MultipleOutputFormat 可以将数据写到多个文件,这些文件的名称源于输出的键和值 抽象类,两个实体子类:MultipleTextOutputFormat和MultipleSequenceFileOutputFormat 输出格式 多个输出 MultipleOutput 可以为不同的输出产生不同的类型,也意味着无法控制输出的命名 输出格式 延迟输出 FileOutputFormat的子类会产生输出文件,即使文件是空的。有些应用倾向于不创建空文件,此时的LazyOutputFormat就有用了 数据库输出 Page ? * Page ? * MapReduce的类型与格式 MapReduce数据处理模型非常简单:map和reduce函数的输入和输出是键/值对(key/value pair)。 本章深入讨论MapReduce模型,重点介绍各种类型的数据(从简单文本到结构化的二进制对象)如何在MapReduce中使用 引言 目录 MapReduce的类型 默认的MapReduce作业 输入格式 输入分片与记录 文本输入 二进制输入 多种输入 数据库输入(和输出) 输出格式 文本输出 二进制输出 多个输出 延迟输出 数据库输出 MapReduce的类型 map:(K1,V1) list(K2,V2) reduce:(K2,list(V2)) list(K3,V3) 一般来说,map函数输入的键/值的类型(K1和V1)不同于输出类型(K2和V2) reduce函数的输入类型必须与map函数的输出类型相同,但reduce函数的输出类型可以不同于输入类型 MapReduce的类型 partition:(K2,V2) integer partition函数将中间的键/值对(K2和V2)进行处理,并且返回一个分区索引。实际上分区单独由键决定 MapReduce的类型 为什么不能结合mapper和reducer导出类型呢? 默认的MapReduce作业 默认的输入格式是TextInputFormat,它产生的键类型是LongWritable,值类型是Text(文本行) 默认的mapper是IdentityMapper,它将输入的键和值原封不动地写到输出中 IdentityMapper是一个泛型类型,它可以接受任

文档评论(0)

sunfuliang7808 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档