Hadoop Streaming原理

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_32642039/article/details/81221401

1.MapReduce和HDFS采用Java实现,默认提供Java编程接口
2.Streaming框架允许任何程序语言实现的程序在Hadoop MapReduce中使用
3.Streaming方便已有程序向Hadoop平台移植

4.开发效率高
    – 方便移植Hadoop平台,只需按照一定的格式从标准输入读取数据、向标准输出写数据就可以
    – 原有的单机程序稍加改动就可以在Hadoop平台进行分布式处理
    – 容易单机调试
    cat input | mapper | sort | reducer > output
    
5.程序运行效率高
    – 对于CPU密集的计算,有些语言如C/C++编写的程序可能比用Java编写的程序效率更高一些
    
6.便于平台进行资源控制
    – Streaming框架中通过limit等方式可以灵活地限制应用程序使用的内存等资源
    
7.Streaming默认只能处理文本数据,如果要对二进制数据进行处理,比较好的方法是将二进制的key和value进行base64的编码转化成文本即可

8.两次数据拷贝和解析(分割),带来一定的开销

猜你喜欢

转载自blog.csdn.net/qq_32642039/article/details/81221401