نظام ملفات جوجل

نظام ملفات جوجل ( GFS أو GoogleFS ، لا ينبغي الخلط بينه وبين نظام ملفات لينكس GFS ) هو نظام ملفات موزّع خاص طوّرته جوجل لتوفير وصول فعّال وموثوق إلى البيانات باستخدام مجموعات كبيرة من الأجهزة القياسية . تم استبدال نظام ملفات جوجل بنظام كولوسوس في عام 2010. [ 1 ]

تصميم

تم تصميم نظام ملفات جوجل للتفاعل بين الأنظمة، وليس للتفاعل بين المستخدم والنظام. تقوم خوادم الأجزاء بنسخ البيانات تلقائيًا.

تم تطوير نظام ملفات جوجل (GFS) خصيصًا لتلبية احتياجات جوجل الأساسية في تخزين البيانات واستخدامها (وخاصةً محرك البحث )، والذي يُنتج كميات هائلة من البيانات التي يجب الاحتفاظ بها. نشأ نظام ملفات جوجل من مشروع سابق لجوجل يُدعى "BigFiles"، والذي طوره لاري بيج وسيرجي برين في بدايات جوجل، عندما كان مقرها في جامعة ستانفورد . تُقسّم الملفات إلى أجزاء ثابتة الحجم تبلغ 64 ميجابايت ، على غرار المجموعات أو القطاعات في أنظمة الملفات التقليدية، ونادرًا ما تُستبدل أو تُقلّص هذه الأجزاء؛ وعادةً ما تُضاف الملفات أو تُقرأ. كما صُمم النظام ووُضع في أفضل صورة ليعمل على مجموعات الحوسبة في جوجل، وهي عبارة عن عُقد كثيفة تتكون من أجهزة كمبيوتر رخيصة الثمن، مما يعني ضرورة اتخاذ الاحتياطات اللازمة لتجنب ارتفاع معدل فشل العُقد الفردية وما يترتب على ذلك من فقدان للبيانات. وتُركز بعض قرارات التصميم الأخرى على تحقيق معدلات نقل بيانات عالية ، حتى لو كان ذلك على حساب زمن الاستجابة .

تتكون مجموعة GFS من عدة عُقد. تُقسم هذه العُقد إلى نوعين: عُقدة رئيسية واحدة وعدة خوادم أجزاء . يُقسّم كل ملف إلى أجزاء ذات حجم ثابت. تخزن خوادم الأجزاء هذه الأجزاء. تُعيّن العُقدة الرئيسية لكل جزء مُعرّفًا فريدًا عالميًا مكونًا من 64 بت عند إنشائه، ويتم الحفاظ على الربط المنطقي بين الملفات والأجزاء المُكوّنة لها. يُنسخ كل جزء عدة مرات عبر الشبكة. افتراضيًا، يُنسخ ثلاث مرات، ولكن هذا قابل للتكوين. [ 2 ] قد يكون للملفات ذات الطلب العالي عامل نسخ أعلى، بينما قد تُنسخ الملفات التي يستخدم عميل التطبيق لها تحسينات تخزين صارمة أقل من ثلاث مرات - وذلك لمواكبة سياسات تنظيف البيانات المهملة السريعة. [ 2 ]

لا يخزن الخادم الرئيسي عادةً الأجزاء الفعلية، بل يخزن جميع البيانات الوصفية المرتبطة بها، مثل الجداول التي تربط تسميات 64 بت بمواقع الأجزاء والملفات التي تتكون منها (ربط الملفات بالأجزاء)، ومواقع نسخ الأجزاء، والعمليات التي تقرأ أو تكتب إلى جزء معين، أو أخذ "لقطة" من الجزء لغرض نسخه (عادةً بمبادرة من الخادم الرئيسي، عندما ينخفض ​​عدد نسخ جزء ما عن العدد المحدد بسبب أعطال في العقد). ويتم تحديث جميع هذه البيانات الوصفية دوريًا من خلال تلقي الخادم الرئيسي تحديثات من كل خادم أجزاء ("رسائل نبضات القلب").

تُدار أذونات التعديلات عبر نظام "تأجير" محدود المدة، حيث يمنح الخادم الرئيسي إذنًا لعملية ما لفترة زمنية محددة، لا تُمنح خلالها أي عملية أخرى إذنًا من الخادم الرئيسي لتعديل الجزء. يقوم خادم التعديل، وهو دائمًا مالك الجزء الأساسي، بنشر التغييرات إلى خوادم الأجزاء الأخرى التي تحتوي على نسخ احتياطية. لا تُحفظ التغييرات إلا بعد تأكيد جميع خوادم الأجزاء، مما يضمن اكتمال العملية ودقتها .

تصل البرامج إلى الأجزاء عن طريق الاستعلام أولاً من الخادم الرئيسي عن مواقع الأجزاء المطلوبة؛ إذا لم يتم تشغيل الأجزاء (أي لا توجد عقود إيجار معلقة)، فإن الخادم الرئيسي يرد بالمواقع، ثم يتصل البرنامج ويتلقى البيانات من خادم الأجزاء مباشرة (على غرار Kazaa وعقدها الفائقة ).

على عكس معظم أنظمة الملفات الأخرى، لا يتم تنفيذ نظام الملفات GFS في نواة نظام التشغيل ، ولكنه يتم توفيره بدلاً من ذلك كمكتبة في مساحة المستخدم . [ 3 ]

واجهة المستخدم

لا يوفر نظام ملفات جوجل واجهة POSIX . [ 4 ] تُنظَّم الملفات هرميًا في مجلدات وتُعرَّف بمساراتها. يدعم النظام عمليات الملفات مثل الإنشاء والحذف والفتح والإغلاق والقراءة والكتابة. كما يدعم خاصية إلحاق السجلات التي تسمح لعدة عملاء بإلحاق البيانات بنفس الملف في وقت واحد، مع ضمان ذرية العملية.

أداء

استنادًا إلى نتائج الاختبارات المعيارية [ 2 ] ، عند استخدام نظام الملفات مع عدد قليل نسبيًا من الخوادم (15 خادمًا)، يحقق أداء قراءة مماثلًا لأداء قرص واحد (80-100 ميجابايت/ثانية)، ولكنه يعاني من انخفاض في أداء الكتابة (30 ميجابايت/ثانية)، وبطء نسبي (5 ميجابايت/ثانية) في إضافة البيانات إلى الملفات الموجودة. لم يقدم الباحثون أي نتائج حول زمن البحث العشوائي. ولأن العقدة الرئيسية لا تشارك مباشرةً في قراءة البيانات (إذ تُمرر البيانات من خادم الأجزاء مباشرةً إلى عميل القراءة)، يزداد معدل القراءة بشكل ملحوظ مع زيادة عدد خوادم الأجزاء، ليصل إلى 583 ميجابايت/ثانية لـ 342 عقدة. كما يتيح تجميع عدة خوادم سعة تخزين كبيرة، مع انخفاض طفيف في هذه السعة نتيجة تخزين البيانات في ثلاثة مواقع مستقلة (لتوفير التكرار).

انظر أيضاً

مراجع

  1. ما، إريك (29 نوفمبر 2012). "كولوسوس: خليفة نظام ملفات جوجل (GFS)" . SysTutorials. مؤرشف من الأصل في 12 أبريل 2019. تم الاطلاع عليه في 10 مايو 2016 .
  2. 1 2 3 غيماوات، غوبيووف وليونغ 2003 .
  3. كيريازيس، ديموستينيس (2013). خدمات تخزين البيانات المكثفة لبيئات الحوسبة السحابية . آي جي آي جلوبال. ص 13. ISBN  9781466639355.
  4. مارشال كيرك ماكوسيك؛ شون كوينلان (أغسطس 2009). "GFS: التطور على نحو سريع" . ACM Queue . 7 (7): 10–20 . doi : 10.1145/1594204.1594206 .

للمزيد من القراءة