Scalable Scientific Computing Algorithms Using MapReduce

dc.comment.hiddenMy thesis includes two works. One work has been published in IEEE International Conference on Data Engineering 2013 (ICDE 2013) and the other is submitted to ICDE 2014. This publisher does not require written permission.en
dc.contributor.authorXiang, Jingen
dc.date.accessioned2013-09-03T15:50:37Z
dc.date.available2013-09-03T15:50:37Z
dc.date.issued2013-09-03T15:50:37Z
dc.date.submitted2013
dc.description.abstractCloud computing systems, like MapReduce and Pregel, provide a scalable and fault tolerant environment for running computations at massive scale. However, these systems are designed primarily for data intensive computational tasks, while a large class of problems in scientific computing and business analytics are computationally intensive (i.e., they require a lot of CPU in addition to I/O). In this thesis, we investigate the use of cloud computing systems, in particular MapReduce, for computationally intensive problems, focusing on two classic problems that arise in scienti c computing and also in analytics: maximum clique and matrix inversion. The key contribution that enables us to e ectively use MapReduce to solve the maximum clique problem on dense graphs is a recursive partitioning method that partitions the graph into several subgraphs of similar size and running time complexity. After partitioning, the maximum cliques of the di erent partitions can be computed independently, and the computation is sped up using a branch and bound method. Our experiments show that our approach leads to good scalability, which is unachievable by other partitioning methods since they result in partitions of di erent sizes and hence lead to load imbalance. Our method is more scalable than an MPI algorithm, and is simpler and more fault tolerant. For the matrix inversion problem, we show that a recursive block LU decomposition allows us to e ectively compute in parallel both the lower triangular (L) and upper triangular (U) matrices using MapReduce. After computing the L and U matrices, their inverses are computed using MapReduce. The inverse of the original matrix, which is the product of the inverses of the L and U matrices, is also obtained using MapReduce. Our technique is the rst matrix inversion technique that uses MapReduce. We show experimentally that our technique has good scalability, and it is simpler and more fault tolerant than MPI implementations such as ScaLAPACK.en
dc.identifier.urihttp://hdl.handle.net/10012/7830
dc.language.isoenen
dc.pendingfalseen
dc.publisherUniversity of Waterlooen
dc.subjectScientific Computingen
dc.subjectCloud Computingen
dc.subjectMapReduceen
dc.subjectHadoopen
dc.subjectMatrix Inversionen
dc.subjectMaximum Cliqueen
dc.subject.programComputer Scienceen
dc.titleScalable Scientific Computing Algorithms Using MapReduceen
dc.typeMaster Thesisen
uws-etd.degreeMaster of Mathematicsen
uws-etd.degree.departmentSchool of Computer Scienceen
uws.peerReviewStatusUnrevieweden
uws.scholarLevelGraduateen
uws.typeOfResourceTexten

Files

Original bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
Xiang_Jingen.pdf
Size:
879.59 KB
Format:
Adobe Portable Document Format

License bundle

Now showing 1 - 1 of 1
No Thumbnail Available
Name:
license.txt
Size:
247 B
Format:
Item-specific license agreed upon to submission
Description: