Loading...

Comparing and Improving the Minimum Spanning Tree Algorithms in MapReduce

Malek Abbasi, Mohammad Reza | 2021

1067 Viewed
  1. Type of Document: M.Sc. Thesis
  2. Language: Farsi
  3. Document No: 54688 (19)
  4. University: Sharif University of Technology
  5. Department: Computer Engineering
  6. Advisor(s): Ghodsi, Mohammad
  7. Abstract:
  8. In recent decades, we have faced the enormous growth of data and graph volumes. This requires modern ways of computation and storage systems and algorithms. MapReduce is a known way of processing Big Data in a Parallel and primarily Distributed setting. Theoretical models (e.g., Massively Parallel Computation) for Algorithms using this paradigm commonly evaluate the number of rounds and needed communication. We study the Minimum Spanning Tree (MST) as a fundamental graph problem. This problem in MapReduce is harder for sparse graphs. We introduce an algorithm that performs well comparing previous studies, especially for sparse graphs.We present an empirical study by implementing some algorithms using MapReduce, Apache Spark, and Scala; and experimenting in a distributed setting that we configured to compare them and find important input parameters. In this experiment, we use various graphs with up to a hundred million edges/vertices. Our algorithm showed improvements in the number of rounds and running time for most of the experiments
  9. Keywords:
  10. Minimum Spanning Tree ; Big Data ; Map-Reduce Algorithm ; Big Data Proccessing ; Parallel Processing ; Undirected Weighted Graph

 Digital Object List

 Bookmark

  • مقدمه
    • تعریف مسئله
    • اهمیت موضوع
    • ادبیات موضوع
    • اهداف تحقیق
    • چالش‌ها
      • چالش‌های پیاده‌سازی
      • چالش‌های عملیاتی
    • ساختار پایان‌نامه
  • مفاهیم اولیه
    • مدل پردازشی نگاشت-کاهش
    • چارچوب‌های مبتنی بر نگاشت-کاهش
      • هدوپ
      • اسپارک
    • مدل MPC
      • هزینه ارتباطات شبکه
    • مدل‌های پردازشی دیگر
      • مدل PRAM
      • مدل BSP
    • مسئله درخت پوشای کمینه
      • الگوریتم برووکا
      • الگوریتم کراسکال
      • الگوریتم پریم
    • پارادایم برنامه‌نویسی تابعی
      • تابع خالص
      • تابع مرتبه بالاتر
      • مثال شمارش عناصر
  • کارهای پیشین
    • پیاده سازی در مدل AMPC
      • جمع‌بندی و ارزیابی
    • پیاده‌سازی پریم موازی
      • جمع‌بندی و ارزیابی
    • مقایسه کارهای پیشین
  • روش پیشنهادی
    • الگوریتم برووکا توزیع‌شده
      • مراحل و حافظه مصرفی
      • تحلیل
    • ساختمان داده‌های مورد استفاده
      • یال
      • مجموعه‌های مجزا به کمک جدول درهم‌ساز توزیع‌شده
      • یال‌های هر مجموعه
    • چالش نبود تضمین برای وزن‌های یکتا
      • اضافه کردن یک عدد تصادفی به وزن هر یال
      • اختصاص یک شناسه سراسری یکتا (UUID) به هر یال
    • چالش ناهمبندی گراف
    • چالش بررسی اضافی یال‌های داخلی
    • جمع‌بندی روش پیشنهادی
  • یافته‌های پژوهش
    • محیط آزمایش و پیاده‌سازی
    • مجموعه‌های داده
      • محاسبه تعداد مؤلفه همبندی
    • ارزیابی تجربی
      • تعداد مراحل
      • زمان اجرا
    • تجارب و چالش‌های پیاده‌سازی
      • بررسی درستی عملکرد الگوریتم‌ها
      • خطایابی در محیط توزیع‌شده
      • مصورسازی گراف‌های بزرگ
      • پیاده‌سازی دشوار برخی الگوریتم‌های ساده
  • نتیجه‌گیری
    • کارهای آتی
...see more