سامرا
سامرا
خواندن ۴ دقیقه·۶ سال پیش

هدوپ به زبان خیلی ساده

اول از همه بزارید بگم که من برای پروژه پایانی کارشناسی دارم روی بیگ دیتا کار می‌کنم و با توجه به این موضوع که خودم ابتدا نمی‌توانستم نحوه کارکرد هدوپ و دیگر ابزارها را درک کنم دنبال ی منبع برای این کار می‌گشتم تا اینکه ی روز در یوتیوب ی ویدیو پیدا کردم که دید من را نسبت به بیگ دیتا عوض کرد. من ترجمه و درک خودم را از ویدیو در اینجا قرار میدم امیدوارم که مورد توجه دوستان قرار بگیره‌‌ :)‌

یکی بود، یکی نبود،

در زمان‌های قدیم یک دهکده‌ی کوچک به نام ناچ وجود داشت. در کنار این دهکده یک رودخانه‌ی کوچک جاری بود که آب بسیار زلالی داشت و برای کشاورزی و نوشیدن آب بسیار سالمی بود. بیشتر درآمد مردم این روستا از ماهی‌‌هایی بود که از رودخانه می‌گرفتند. روزگار گذشت تا اینکه خشکسالی‌های متمادی گریبان منطقه شد و چون دیگر باران و برف نمی‌بارید و همچنین فاصله‌ی روستا از اقیانوس زیاد بود، آب روستا خشک شد.

تنها راه این بود که از اقیانوس آب بیاورند. اما به دلیل دوری از اقیانوس این راه خیلی خسته‌کننده بود و نیاز مردم روستا را هم برآورده نمی‌کرد. این روال ادامه داشت تا اینکه مردم روستا با یک شرکت بزرگ قرارداد بستند تا برای آن‌ها یک پمپ آبی راه‌اندازی کند. پمپ آبی راه‌اندازی شد و دوباره زندگی در روستا جان گرفت.

بعد از چندین سال جمعیت روستا به شدت در حال افزایش بود و پمپ آب هم دیگر پاسخگو نبود. با وجود اینکه چندین بار آن را بهبود دادند نمی‌توانست نیاز مردم را رفع کند. مشکل دیگه‌ای که وجود داشت پمپ زمانی که خراب می‌شد، چندین روز طول می‌کشید تا آن را تعمیر کنند و در این مدت مردم روستا بی‌آب بودند.

در این دهکده یک اتحادیه کوچک به اسم آپاچی وجود داشت که افراد حاضر در آن به محصولات تجاری اعتقادی نداشتند و می‌گفتند باید از منابع طبیعی و رایگان برای رفع مشکلات بهره برد. مشکل بی‌آبی روستا به یک مشکل اساسی بدل شده بود و این ریش سفیدان روستا را بر آن داشت تا کار را به بنیاد آپاچی بسپارند و برای رفع این مشکل از آن‌ها کمک بگیرند.

بنیاد آپاچی برای رفع این مشکل شروع به تحقیق کرد و فهمید که یکی از روستا‌های کناری آن‌ها به نام گوگل این مشکل را حل کرده است. اما به دلیل بسته بودن گوگل و عدم اجازه به افراد غیره نمی‌دانستند چگونه این مشکل را حل کرده‌اند. تا اینکه گوگل در یک نشریه نحوه حل مشکل را به صورت خیلی کلی بیان کرد و همین مبنای کار بنیاد آپاچی قرار گرفت.

برای رفع این مشکل به جای استفاده از یک سیستم بزرگ تخیلی،‌ شروع به ساخت تعداد زیادی حوضچه‌های کوچک کردند. اندازه حوضچه‌ها در حدی بود که یک نفر بتواند آن را مدیریت کند. حوضچه‌ها در پارک آپاچی در محلی به نام هدوپ ساخته‌ شدند. هر یک از حوضچه‌ها توسط یک نفر مدیریت می‌شد که به آن Mapper می‌گفتند.

مردم روستا سه نیاز اساسی داشتند که عبارت بودند از:‌ آب نوشیدنی،‌ ماهی و نمک. پس Mapper باید آب را به سه بخش تقسیم می‌کرد و هر یک را در سطل مرتبط می‌ریخت. در محل کار هدوپ به هر یک از حوضچه‌ها water node گفته می‌شد.

بعد از این کار بنیاد تصمیم‌گیری،‌ تصمیم گرفت که یک بخش جدا برای ریختن هر یک از اقلام تعیین کند،‌ آن بخش را حوضچه‌های جداسازی نامیدند و در آن‌ها افرادی را به کار گرفتند که دارای قدرت بیشتر و ماهیچه‌های قوی‌تر بودند و آن‌ها را Reducer خطاب می‌کردند. برای این روستا سه Reducer منتسب شد و نحوه کار آن‌ها به این ترتیب بود که Reducer پیش Mapper‌ها می‌رفت و اگر سطل مرتبط با حوضچه‌اش پر بود آن را به داخل حوضچه انتقال می‌داد.

چون حوضچه‌ها از مواد طبیعی و رایگان ساخته می‌شدند، بعد از گذشت چند سال این سیستم بسیار مشهور شد و بسیاری از روستاهایی که با مشکل کم آبی دست و پنجه نرم می‌کردند، مشکل خود را به کمک این روش حل کردند و در بسیاری موارد قسمت‌هایی را هم به آن اضافه کردند. مثلاً در یکی از روستا‌ها مکانیزمی برای تشخیص حوضچه‌های فرسوده و جایگزینی آن با حوضچه جدید پیشنهاد گردید.

بنیاد آپاچی کشف کرد که می‌تواند عمل‌کرد سیستم را با استفاده از نظارت بر میزان آب وارد شده و تولید روزانه بهبود بخشد به همین جهت شروع به راه‌اندازی ناظرینی در این زمینه کرد. در در ورودی هدوپ خانه‌های بزرگی برای نگهداری سوابق و میزان آب وارد شده و … راه‌اندازی شدند که آن‌ها را Name Node می‌نامیدند. برای عمل‌کرد بهتر سیستم هم سرکارگرهایی به نام Job Tracker ایجاد شدند که وظیفه نظارت و انتساب کار به افراد کارگر حوضچه برعهده داشتند.

این دهکده همیشه در حال بهبود سیستم خود می‌باشد و روز به روز به تعداد روش‌های کار افزوده می‌شود. امروز این دهکده به یک دهکده‌ی جهانی تبدیل شده است و در تمام دنیا فراگیر شده است.

در شکل زیر تصویری از گستردگی دنیای کلان داده‌ها یا همان بیگ دیتا را مشاهده می‌فرمایید.



امیدوارم براتون مفید واقع بشه :)‌





بیگ دیتاهدوپhadoop
open source
شاید از این پست‌ها خوشتان بیاید