博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[大牛翻译系列]Hadoop(16)MapReduce 性能调优:优化数据序列化
阅读量:5204 次
发布时间:2019-06-13

本文共 678 字,大约阅读时间需要 2 分钟。

6.4.6 优化数据序列化

如何存储和传输数据对性能有很大的影响。在这部分将介绍数据序列化的最佳实践,从Hadoop中榨出最大的性能。

 

压缩

压缩是Hadoop优化的重要部分。通过压缩可以减少作业输出数据的储存足迹,加速MapReduce作业下游接收数据。另外,在map和reduce之间的数据需要被压缩以减轻网络IO的压力。压缩技术的具体内容在第5章中介绍。

 

二进制文件格式

使用二进制文件格式,如Avro和SequenceFile,可以使数据的表达更为紧凑,并提高编组(marshalling)和逆编组的效率,相比文本格式要更为高效。在第3章中详细介绍了这些文件格式。

即便MapReduce的最终输出结果不是二进制文件,在处理的中间步骤应用二进制文件格式也可以提高性能。例如,如果有一系的MapReduce作业需要执行,那么每个作业的输出结果应当保存为Avro或SequenceFile格式,再在最后的作业中将这些二进制格式转换为目标格式。

 

6.5 章节小结

在这章中介绍了MapReduce作业性能调优的三个必备要素:

  1. 确保精确的度量,理解如何获得MapReduce和系统的性能指标
  2. 使用性能指标来减少潜在的性能问题
  3. 通过检查MapRecue/HDFS配置,优化MapReduce洗牌/排序阶段,优化用户JAVA代码,来修复常见的性能问题。

在第4部分中,将介绍如何在数据科学中应用Hadoop,如何建立复杂数据结构的模型,如何进行数据挖掘。

转载于:https://www.cnblogs.com/datacloud/p/3608591.html

你可能感兴趣的文章
20190716NOIP模拟赛T2 通讯(tarjan缩点+贪心)
查看>>
退出shell 脚本
查看>>
Lua 字符串
查看>>
markdown简单语法总结
查看>>
一些基础的定义及事实集合
查看>>
linux查看端口占用
查看>>
计算机基本概念
查看>>
float
查看>>
hdu - 1226 超级密码 (bfs)
查看>>
Cron 表达式
查看>>
泊松方程与拉普拉斯方程数值解
查看>>
Distel = Emacs erlang-mode++
查看>>
worksheets 和 sheets 的不同
查看>>
eclipse修改主题配色
查看>>
多线程
查看>>
WebForms UnobtrusiveValidationMode 需要“jquery”ScriptResourceMapping
查看>>
Activity class {com.../com....MainActivity} does not exist.
查看>>
Qt重写paintEvent方法遇到的问题
查看>>
Sql常见面试题 受用了
查看>>
关闭进程&关闭消息队列
查看>>