apache/hama
آپاچی هاما یک فریمورک محاسبات موازی است که بر پایه مدل برنامهنویسی BSP (Bulk Synchronous Parallel) کار میکند و برای پردازش دادههای بزرگ در مقیاس بالا طراحی شده است.
کاربرد:
این پروژه برای اجرای الگوریتمهای پیچیدهی موازی مثل محاسبات گراف، جبر خطی و یادگیری ماشین مناسب است.
برخلاف مدل MapReduce، Hama از ارتباط مستقیم بین تسکها پشتیبانی میکند و زمانهای انتقال داده را بهینه میکند.
در چه شرایطی بهتره استفاده شود؟
وقتی با دادههای بسیار حجیم کار دارید و نیاز به پردازش موازی کارآمد دارید، مثلاً در شبیهسازیهای علمی یا تحلیل شبکههای اجتماعی.
همچنین اگر الگوریتم شما نیاز به تکرار و تبادل داده بین نودها دارد، Hama گزینه بهتری نسبت به MapReduce است.
چند مثال از موارد استفاده:
اجرای الگوریتم PageRank روی گرافهای بزرگ
ضرب ماتریسهای تنک در محاسبات علمی
آموزش مدلهای یادگیری ماشین با دادههای توزیعشده
شبیهسازی فیزیکی با تعاملات موازی
- ##ApacheHama
- ##BSP
- ##BigData
- ##ParallelComputing
- ##GraphProcessing
- ##MachineLearning
- ##DistributedSystems
- ##HPC
- ##DataScience
- ##ScalableComputing
