Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Matrix Multiplication in hadoop

I try to build a code for page rank algorithm, and in that the main complexity is to solve matrix multiplication efficiently, but I didn't understand how this task be perform, I read some papers on that, but that is beyond of my range. I didn't understand the concept that he apply. So, can you give me a concept behind mapper and reducer function for matrix multiplication. Thanks in advance.

I read this link

like image 325
devsda Avatar asked Sep 26 '12 07:09

devsda


People also ask

What is matrix multiplication in MapReduce?

Matrix multiplication in MapReduceIf A=[a_{ij}] is an m\times n matrix and B=[b_{ij}] is an n\times p matrix, C=[c_{ij}], the product of AB, is an m\times p matrix where each element c_{ij} is calculated as.

Which algorithm is used for matrix multiplication?

In linear algebra, the Strassen algorithm, named after Volker Strassen, is an algorithm for matrix multiplication. It is faster than the standard matrix multiplication algorithm for large matrices, with a better asymptotic complexity, although the naive algorithm is often better for smaller matrices.

What is matrix multiplication in data structure?

In mathematics, particularly in linear algebra, matrix multiplication is a binary operation that produces a matrix from two matrices. For matrix multiplication, the number of columns in the first matrix must be equal to the number of rows in the second matrix.

What is matrix multiplication in Java?

We can multiply two matrices in java using binary * operator and executing another loop. A matrix is also known as array of arrays. We can add, subtract and multiply matrices. In case of matrix multiplication, one row element of first matrix is multiplied by all columns of second matrix.


2 Answers

The idea is that you can break matrix multiplication into subproblems with something like the Strassen Algorithm and then send those subproblems to a bunch of different computers. Once those subproblems are finished the summing together of the different subproblems into the matrix itsself can also be handled with. The key to using Mapreduce is that all of the subproblems can basically be computed in parallel, which is... what Mapreduce is for.

like image 167
argentage Avatar answered Sep 28 '22 11:09

argentage


Couple of frameworks like Apache Hama have implementation of the PageRank. Apache Giraph also has support for Pagerank.

MapReduce is not well suited for PageRank, so Google published Pregel paper for large scale graph computing.

like image 26
Praveen Sripati Avatar answered Sep 28 '22 11:09

Praveen Sripati