【甘道夫】MapReduce实现矩阵乘法--实现代码

本文提供了使用MapReduce实现矩阵乘法的详细代码,包括MMDriver、MMMapper和MMReducer三个关键类。编程环境基于Java 1.7、Eclipse Kepler、Hadoop 2.2.0等,代码适用于分布式计算,适合学习和参考。
摘要由CSDN通过智能技术生成
之前写了一篇分析MapReduce实现矩阵乘法算法的文章: 【甘道夫】Mapreduce实现矩阵乘法的算法思路

为了让大家更直观的了解程序执行,今天编写了实现代码供大家参考。


编程环境:

java version "1.7.0_40"

Eclipse Kepler

Windows7 x64

Ubuntu 12.04 LTS

Hadoop2.2.0

Vmware 9.0.0 build-812388


输入数据:

A矩阵存放地址:hdfs://singlehadoop:8020/wordspace/dataguru/hadoopdev/week09/matrixmultiply/matrixA/matrixa

A矩阵内容:
3 4 6
4 0 8

B矩阵存放地址:hdfs://singlehadoop:8020/wordspace/dataguru/hadoopdev/week09/matrixmultiply/matrixB/matrixb

B矩阵内容:
2 3
3 0
4 1


实现代码:

一共三个类:

  • 驱动类MMDriver
  • Map类MMMapper
  • Reduce类MMReducer

大家可根据个人习惯合并成一个类使用。


  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
            
            
            
package dataguru . matrixmultiply ;
import org.apache.hadoop.conf.Configuration ;
import org.apache.hadoop.fs.FileSystem ;
import org.apache.hadoop.fs.Path ;
import org.apache.hadoop.io.Text ;
import org.apache.hadoop.mapreduce.Job ;
import org.apache.hadoop.mapreduce.lib.input.FileInputFormat ;
import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat ;
public class MMDriver {
public static void main ( String [] args ) throws Exception {
// set configuration
Configuration conf = new Configuration ();
// create job
Job job = new Job ( conf , "MatrixMultiply" );
job . setJarByClass ( dataguru . matrixmultiply . MMDriver . class );
// specify Mapper & Reducer
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值