دستهبندی دادههای عظیم فیسبوک چگونه انجام میگیرد؟
وقتی شرکتی به وسعت فیسبوک داشته باشید که بر روی میلیونها سرور آن بالغ بر 2 میلیارد کاربر وجود دارد، انجام هزاران تنظیمات روزانه که شامل تریلیونها پروسه بررسی پیکربندی دادهها میشود، اصلا کار آسانی نیست و بهنظر میرسد این دسته از پیکربندیها کار بسیار دشواری باشند. همانند برخی دیگر از شرکتها، فیسبوک هم گاهی اوقات با محدودیتهایی در بخش ابزارهای کاربردی مواجه میشود.
برای حل این دسته از مسائل، شرکت فیسبوک یک ابزار جدید جهت انجام پیکربندی بهتر دادهها با نام مستعار «LAD» (Location Aware Delivery) طراحی کرده است. قبل از طراحی این ابزار، فیسبوک از یک ابزار اوپن سورس با نام «Zoo Keeper» برای پیکربندی دیتا استفاده میکرد. با اینکه این ابزار خوب عمل میکرد اما در برخی موارد جوابگوی دادههای بیکران شرکت فیسبوک نبود. برای مثال یکی از ایرادهای این ابزار محدود شدن به پیکربندی دیتای حداکثر 2500 کاربر بهطور همزمان و همچنین محدود بودن اپدیتها به 5 مگابایت بود.
بههمین دلیل فیسبوک به دنبال راهی بود که بر این محدودیتها غلبه کند و پیکربندی دیتا را از مکانیزم توزیع دادهها جدا کند. ابزاری که فیسبوک اختراع کرده ظرفیت آن بیش از 10 برابر ابزار قبلی این شرکت یعنی Zoo Keeper است. فیسبوک میخواست دستهبندی اطلاعات میلیونها کاربر از میلیونها سرویس مختلف را در کمترین زمان و بالاترین سرعت ممکن انجام دهد.
محصولی که تیم مهندسی فیسبوک خلق کرد، یعنی LAD، از چند قسمت تشکیل شده است: بخش اول یک پروکسی است که بر روی هر یک از ماشینهای فیسبوک قرار میگیرد و اطلاعات دستهبندی را به هر ماشینی که به آن نیاز دارد سریعا انتقال میدهد. بخش بعدی یک توزیع کننده است و همانطور که از نام آن مشخص است، وظیفه انتقال اطلاعات دستهبندی را برعهده دارد. این کار از طریق چک کردن آپدیتهای جدید انجام میشود و زمانی که آپدیتهای جدید را پیدا میکند، سریعا یک شبکه توزیع برای ماشینهای موجود خلق میکند و از طریق آن آپدیت را برای ماشینهایی که به آن نیاز دارند ارسال میکند.
این ابزار جدید به معنای واقعی محدودیتهایی را که بر سر راه فیسبوک قرار داشت از بین برد و به جای محدودیت 5 مگابایتی که در گذشته برای آپدیت وجود داشت، این ابزار محدودیت آپدیت را به 100 مگابایت افزایش داده و از طرف دیگر به جای پشتیبانی همزمان از 2500 کاربر، این ابزار تا 40 هزار کاربر را بهطور همزمان پشتیبانی میکند.
دستیابی به چنین ابزاری به آسانی هم امکانپذیر نبوده و نیازمند تستهای متعد و طاقت فرسا بوده است. اما بههر حال این ابزار امروزه توسط فیسبوک استفاده میشود و توانسته نیازهای فیسبوک در این دوره را برآورده کند.
منبع: تک کرانچ
منبع : آیتیایران