30+ أسئلة وأجوبة مقابلة Hadoop
نشرت: 2022-12-01حسنًا ، تشير الإحصائيات من Forbes إلى أن ما يصل إلى 90٪ من المؤسسات العالمية تستخدم تحليلات البيانات الضخمة لإنشاء تقارير الاستثمار الخاصة بهم.
مع تزايد شعبية البيانات الضخمة ، هناك زيادة في فرص عمل Hadoop أكثر من ذي قبل.
لذلك ، لمساعدتك في الحصول على دور خبير Hadoop ، يمكنك استخدام أسئلة وأجوبة المقابلة التي قمنا بتجميعها لك في هذه المقالة لمساعدتك في اجتياز مقابلتك.
ربما ستحفزك معرفة الحقائق مثل نطاق الراتب الذي يجعل أدوار Hadoop والبيانات الضخمة مربحة لك على اجتياز تلك المقابلة ، أليس كذلك؟
- وفقًا لموقع fact.com ، يتقاضى مطور Big Data Hadoop ومقره الولايات المتحدة متوسط راتب قدره 144 ألف دولار.
- وفقًا لـ itjobswatch.co.uk ، يبلغ متوسط راتب مطور Big Data Hadoop 66750 جنيهًا إسترلينيًا.
- في الهند ، ينص المصدر الحقيقي لموقعك على الإنترنت على أنهم سيحصلون على راتب متوسط قدره 16،00،000 يورو.
مربحة ، ألا تعتقد ذلك؟ الآن ، دعنا نقفز للتعرف على Hadoop.
ما هو Hadoop؟
Hadoop هو إطار عمل شائع مكتوب بلغة Java يستخدم نماذج البرمجة لمعالجة مجموعات كبيرة من البيانات وتخزينها وتحليلها.
بشكل افتراضي ، يسمح تصميمه بالتوسع من خوادم فردية إلى أجهزة متعددة توفر عمليات الحوسبة والتخزين المحلية. بالإضافة إلى ذلك ، فإن قدرته على اكتشاف حالات فشل طبقة التطبيق ومعالجتها مما يؤدي إلى توفير خدمات عالية تجعل Hadoop موثوقًا به تمامًا.
دعنا ننتقل مباشرة إلى أسئلة مقابلة Hadoop الشائعة وإجاباتها الصحيحة.
أسئلة وأجوبة مقابلة Hadoop

ما هي وحدة التخزين في Hadoop؟
الإجابة : تسمى وحدة تخزين Hadoop نظام الملفات الموزعة Hadoop (HDFS).
كيف يختلف التخزين المتصل بالشبكة عن نظام الملفات الموزعة Hadoop؟
الإجابة : HDFS ، وهو التخزين الأساسي لـ Hadoop ، هو نظام ملفات موزع يخزن ملفات ضخمة باستخدام أجهزة سلعة. من ناحية أخرى ، NAS هو خادم تخزين بيانات كمبيوتر على مستوى الملف يوفر لمجموعات العملاء غير المتجانسة إمكانية الوصول إلى البيانات.
أثناء تخزين البيانات في NAS على أجهزة مخصصة ، يقوم HDFS بتوزيع كتل البيانات عبر جميع الأجهزة داخل مجموعة Hadoop.
يستخدم NAS أجهزة تخزين متطورة ، وهو أمر مكلف إلى حد ما ، في حين أن الأجهزة الأساسية المستخدمة في HDFS فعالة من حيث التكلفة.
يقوم NAS بتخزين البيانات من العمليات الحسابية بشكل منفصل وبالتالي يجعلها غير مناسبة لـ MapReduce. على العكس من ذلك ، فإن تصميم HDFS يسمح لها بالعمل مع إطار عمل MapReduce. تنتقل الحسابات إلى البيانات في إطار عمل MapReduce بدلاً من البيانات إلى العمليات الحسابية.
اشرح MapReduce في Hadoop و Shuffling
الإجابة : يشير MapReduce إلى مهمتين متميزتين تؤديهما برامج Hadoop لتمكين قابلية التوسع الكبيرة عبر مئات إلى آلاف الخوادم داخل مجموعة Hadoop. من ناحية أخرى ، يعمل التبديل العشوائي على نقل إخراج الخريطة من مصممي الخرائط إلى المخفض الضروري في MapReduce.
إلقاء نظرة خاطفة على معمارية خنزير أباتشي

الإجابة : تحتوي بنية Apache Pig على مترجم Pig Latin الذي يعالج ويحلل مجموعات البيانات الكبيرة باستخدام نصوص Pig Latin.
يتكون Apache pig أيضًا من مجموعات من مجموعات البيانات التي يتم فيها تنفيذ عمليات البيانات مثل الانضمام والتحميل والتصفية والفرز والمجموعة.
تستخدم لغة Pig Latin آليات تنفيذ مثل Grant shells و UDFs ومدمجة لكتابة نصوص Pig النصية التي تؤدي المهام المطلوبة.
يجعل Pig عمل المبرمجين أسهل من خلال تحويل هذه البرامج النصية المكتوبة إلى سلسلة مهام Map-Reduce.
تشمل مكونات بنية Apache Pig ما يلي:
- المحلل اللغوي - يتعامل مع نصوص الخنازير عن طريق التحقق من بناء جملة البرنامج النصي وإجراء فحص النوع. يمثل إخراج المحلل عبارات Pig Latin والعوامل المنطقية ويسمى DAG (الرسم البياني غير الدوري الموجه).
- المُحسِّن - يقوم المُحسِّن بتنفيذ تحسينات منطقية مثل الإسقاط والضغط لأسفل على DAG.
- المترجم - يجمع الخطة المنطقية المحسنة من المحسن إلى سلسلة من وظائف MapReduce.
- محرك التنفيذ - هذا هو المكان الذي يحدث فيه التنفيذ النهائي لوظائف MapReduce إلى الإخراج المطلوب.
- وضع التنفيذ - تتضمن أوضاع التنفيذ في خنزير Apache بشكل أساسي تقليل المحلي وخريطة.
سرد الفرق بين Metastore المحلي و Metastore البعيد
الإجابة : تعمل خدمة Metastore في Local Metastore في نفس JVM مثل Hive ولكنها تتصل بقاعدة بيانات تعمل في عملية منفصلة على نفس الجهاز أو على جهاز بعيد. من ناحية أخرى ، يعمل Metastore في Remote Metastore في JVM بشكل منفصل عن خدمة Hive JVM.
ما هي القيم الخمسة للبيانات الضخمة؟
الإجابة : تمثل هذه القيم الخمسة الخصائص الرئيسية للبيانات الضخمة. يشملوا:
- القيمة : تسعى البيانات الضخمة إلى توفير فوائد كبيرة من العائد المرتفع على الاستثمار (ROI) لمؤسسة تستخدم البيانات الضخمة في عمليات البيانات الخاصة بها. تجلب البيانات الضخمة هذه القيمة من اكتشاف البصيرة والتعرف على الأنماط ، مما يؤدي إلى علاقات أقوى مع العملاء وعمليات أكثر فاعلية ، من بين مزايا أخرى.
- التنوع : يمثل عدم تجانس نوع أنواع البيانات التي تم جمعها. تتضمن التنسيقات المختلفة CSV ومقاطع الفيديو والصوت وما إلى ذلك.
- الحجم : يحدد مقدار وحجم البيانات التي تديرها وتحللها المنظمة. هذه البيانات تصور النمو الأسي.
- السرعة : هذا هو معدل السرعة الأسي لنمو البيانات.
- الصدق : تشير الصدق إلى مدى توفر البيانات "غير المؤكدة" أو "غير الدقيقة" نتيجة لكون البيانات غير كاملة أو غير متسقة.
اشرح أنواع بيانات مختلفة من Pig Latin.
الإجابة : تتضمن أنواع البيانات في Pig Latin أنواع البيانات الذرية وأنواع البيانات المعقدة.
أنواع البيانات الذرية هي أنواع البيانات الأساسية المستخدمة في كل لغة أخرى. وهي تشمل ما يلي:
- كثافة العمليات - يعرّف نوع البيانات هذا عددًا صحيحًا ذا إشارة 32 بت. مثال: 13
- طويل - يحدد Long عددًا صحيحًا من 64 بت. مثال: 10 لتر
- عائم - يحدد نقطة عائمة 32 بت موقعة. مثال: 2.5F
- مزدوج - يحدد نقطة عائمة 64 بت موقعة. مثال: 23.4
- قيمة منطقية - تحدد قيمة منطقية. وهي تشمل: صح / خطأ
- التاريخ والوقت - يحدد قيمة التاريخ والوقت. مثال: 1980-01-01T00: 00.00.000 + 00: 00
تشمل أنواع البيانات المعقدة ما يلي:
- الخريطة- تشير الخريطة إلى مجموعة أزواج ذات قيمة مفتاح. مثال: ['color' # 'yellow'، 'number' # 3]
- الحقيبة - هي مجموعة من المجموعات ، وتستخدم الرمز "{}". مثال: {(Henry، 32)، (Kiti، 47)}
- Tuple - تحدد المجموعة مجموعة مرتبة من الحقول. مثال: (العمر ، 33)
ما هي Apache Oozie و Apache ZooKeeper؟
الإجابة : Apache Oozie هو برنامج جدولة Hadoop مسؤول عن جدولة وظائف Hadoop وربطها معًا كعمل منطقي واحد.
من ناحية أخرى ، ينسق Apache Zookeeper مع الخدمات المختلفة في بيئة موزعة. إنه يوفر وقت المطورين من خلال عرض خدمات بسيطة مثل المزامنة والتجميع وصيانة التكوين والتسمية. يوفر Apache Zookeeper أيضًا دعمًا جاهزًا للاصطفاف وانتخاب الزعيم.
ما هو دور الموّحد وقارئ التسجيل والقسم في عملية MapReduce؟
الإجابة : تعمل أداة التجميع مثل المخفض الصغير. يستقبل البيانات من مهام الخريطة ويعمل عليها ، ثم يمرر إخراج البيانات إلى مرحلة المخفض.
يتواصل RecordHeader مع InputSplit ويحول البيانات إلى أزواج ذات قيمة مفتاح ليقرأها مصمم الخرائط بشكل مناسب.
يعتبر Partitioner مسؤولاً عن تحديد عدد المهام المخفّضة المطلوبة لتلخيص البيانات وتأكيد كيفية إرسال مخرجات المجمّع إلى المخفض. يتحكم التقسيم أيضًا في التقسيم الرئيسي لمخرجات الخريطة الوسيطة.
اذكر التوزيعات المختلفة الخاصة بالبائع من Hadoop.
الإجابة : تشمل البائعين المختلفين الذين يوسعون إمكانات Hadoop ما يلي:
- منصة IBM Open.
- Cloudera CDH Hadoop التوزيع
- توزيع MapR Hadoop
- Amazon Elastic MapReduce
- منصة بيانات Hortonworks (HDP)
- مجموعة البيانات الضخمة المحورية
- تحليلات Datastax Enterprise
- HDInsight من Microsoft Azure - توزيع Hadoop المستند إلى السحابة.
لماذا HDFS متسامح مع خطأ؟
الإجابة : يقوم HDFS بتكرار البيانات على DataNodes المختلفة ، مما يجعلها تتسامح مع الأخطاء. يسمح تخزين البيانات في عقد مختلفة بالاسترجاع من العقد الأخرى عند تعطل أحد الأوضاع.
التفريق بين الاتحاد والتوافر العالي.
الإجابة : يوفر اتحاد HDFS التسامح مع الخطأ الذي يسمح بالتدفق المستمر للبيانات في عقدة واحدة عند تعطل أخرى. من ناحية أخرى ، سيتطلب التوافر العالي جهازين منفصلين يقومان بتكوين NameNode النشطة و NameNode الثانوي على الجهازين الأول والثاني بشكل منفصل.

يمكن أن يحتوي الاتحاد على عدد غير محدود من NameNodes غير ذات الصلة ، بينما في حالة التوافر العالي ، لا يتوفر سوى اثنين من NameNodes ذات الصلة ، النشطة والاستعدادية ، والتي تعمل بشكل مستمر.
تشترك NameNodes في الاتحاد في تجمع بيانات التعريف ، مع وجود تجمع مخصص لكل NameNode. ومع ذلك ، في High Availability ، يتم تشغيل NameNodes النشطة كل واحدة في وقت واحد بينما تظل NameNodes الاحتياطية خامدة وتقوم فقط بتحديث البيانات الوصفية الخاصة بها من حين لآخر.
كيفية البحث عن حالة الكتل وصحة نظام الملفات؟
الإجابة : يمكنك استخدام الأمر hdfs fsck /
على مستوى المستخدم الجذر والدليل الفردي للتحقق من الحالة الصحية لنظام ملفات HDFS.
أمر HDFS fsck قيد الاستخدام:
hdfs fsck / -files --blocks –locations> dfs-fsck.log
وصف الأمر:
- -الملفات: اطبع الملفات التي تقوم بفحصها.
- - المواقع: يطبع جميع مواقع الكتل أثناء التحقق.
أمر للتحقق من حالة الكتل:
hdfs fsck <path> -files -blocks
- <path>: يبدأ عمليات التحقق من المسار الذي تم تمريره هنا.
- - الكتل: يقوم بطباعة كتل الملف أثناء الفحص
متى تستخدم الأمرين rmadmin-RefreshNodes و dfsadmin-RefreshNodes؟
الإجابة : هذان الأمران مفيدان في تحديث معلومات العقدة إما أثناء التكليف أو عند اكتمال تشغيل العقدة.
يقوم الأمر dfsadmin-refreshNodes
بتشغيل عميل HDFS وتحديث تكوين عقدة NameNode. من ناحية أخرى ، يقوم الأمر rmadmin-refreshNodes
بتنفيذ المهام الإدارية لـ ResourceManager.
ما هي نقطة التفتيش؟
الإجابة : Checkpoint هي عملية تدمج التغييرات الأخيرة لنظام الملفات مع أحدث FSImage بحيث تظل ملفات سجل التحرير صغيرة بما يكفي لتسريع عملية بدء NameNode. يحدث Checkpoint في الثانوية NameNode.
لماذا نستخدم HDFS للتطبيقات التي تحتوي على مجموعات بيانات كبيرة؟
الإجابة : يوفر HDFS بنية DataNode و NameNode التي تنفذ نظام ملفات موزع.
توفر هاتان البُنيتان وصولاً عالي الأداء إلى البيانات عبر مجموعات Hadoop عالية التحجيم. يقوم NameNode بتخزين البيانات الوصفية لنظام الملفات في ذاكرة الوصول العشوائي ، مما ينتج عنه مقدار الذاكرة الذي يحد من عدد ملفات نظام ملفات HDFS.
ماذا تفعل قيادة 'jps'؟
الإجابة : يتحقق الأمر Java Virtual Machine Process Status (JPS) مما إذا كانت برامج Hadoop معينة تعمل أم لا ، بما في ذلك NodeManager و DataNode و NameNode و ResourceManager. هذا الأمر مطلوب للتشغيل من الجذر للتحقق من عقد التشغيل في المضيف.
ما هو "التنفيذ التخميني" في Hadoop؟
الإجابة : هذه عملية حيث تقوم العقدة الرئيسية في Hadoop ، بدلاً من إصلاح المهام البطيئة المكتشفة ، بتشغيل مثيل مختلف لنفس المهمة مثل مهمة النسخ الاحتياطي (مهمة مضاربة) على عقدة أخرى. يوفر التنفيذ المضارب الكثير من الوقت ، خاصة في بيئة العمل المكثف.
قم بتسمية الأوضاع الثلاثة التي يمكن لـ Hadoop تشغيلها.
الإجابة : تشمل العقد الثلاثة الأساسية التي يعمل عليها Hadoop ما يلي:
- العقدة المستقلة هي الوضع الافتراضي الذي يقوم بتشغيل خدمات Hadoop باستخدام نظام الملفات المحلي وعملية Java واحدة.
- تنفذ العقدة الموزعة الزائفة جميع خدمات Hadoop باستخدام نشر Hadoop واحد.
- تدير Node الموزعة بالكامل خدمات Hadoop الرئيسية والخدمات التابعة باستخدام عقد منفصلة.
ما هو UDF؟
الإجابة : يتيح لك UDF (وظائف محددة من قبل المستخدم) ترميز وظائفك المخصصة التي يمكنك استخدامها لمعالجة قيم الأعمدة أثناء استعلام إمبالا.
ما هو DistCp؟
الإجابة : يعد DistCp أو Distributed Copy ، باختصار ، أداة مفيدة لنسخ البيانات الكبيرة بين أو داخل المجموعات. باستخدام MapReduce ، ينفذ DistCp بشكل فعال النسخة الموزعة لكمية كبيرة من البيانات ، من بين مهام أخرى مثل معالجة الأخطاء والاسترداد وإعداد التقارير.
اشرح Metastore في الخلية.
الإجابة : Hive metastore هي خدمة تخزن بيانات Apache Hive الوصفية لجداول Hive في قاعدة بيانات علائقية مثل MySQL. يوفر واجهة برمجة تطبيقات خدمة metastore التي تسمح بالوصول إلى البيانات الوصفية.
تحديد RDD.
الإجابة : RDD ، التي تعني مجموعات البيانات الموزعة المرنة ، هي بنية بيانات Spark ومجموعة موزعة غير قابلة للتغيير لعناصر البيانات الخاصة بك والتي تحسب على العقد العنقودية المختلفة.
كيف يمكن تضمين المكتبات الأصلية في وظائف YARN؟
الإجابة : يمكنك تنفيذ ذلك إما باستخدام -Djava.library. path
-Djava.library. path
الخيار على الأمر أو عن طريق تعيين LD+LIBRARY_PATH
في ملف .bashrc باستخدام التنسيق التالي:
<property> <name>mapreduce.map.env</name> <value>LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/path/to/my/libs</value> </property>
اشرح "WAL" في HBase.
الإجابة : سجل الكتابة المسبقة (WAL) هو بروتوكول استرداد يسجل تغييرات بيانات MemStore في HBase إلى التخزين المستند إلى الملفات. يسترد WAL هذه البيانات في حالة تعطل RegionalServer أو قبل مسح MemStore.
هل الغزل بديل لـ Hadoop MapReduce؟
الإجابة : لا ، YARN ليس بديلاً لـ Hadoop MapReduce. بدلاً من ذلك ، تدعم تقنية قوية تسمى Hadoop 2.0 أو MapReduce 2 MapReduce.
ما هو الفرق بين "ترتيب حسب" و "ترتيب حسب" في فيروس نقص المناعة البشرية؟
الإجابة : بينما يجلب كلا الأمرين البيانات بطريقة مرتبة في الخلية ، قد يتم ترتيب النتائج من استخدام SORT BY
جزئيًا فقط.
بالإضافة إلى ذلك ، يتطلب SORT BY
مخفضًا لترتيب الصفوف. قد تكون هذه المخفضات المطلوبة للإخراج النهائي متعددة أيضًا. في هذه الحالة ، قد يتم طلب الإخراج النهائي جزئيًا.
من ناحية أخرى ، يتطلب ORDER BY
فقط مخفضًا واحدًا لترتيب إجمالي في الإخراج. يمكنك أيضًا استخدام الكلمة الأساسية LIMIT
التي تقلل من إجمالي وقت الفرز.
ما هو الفرق بين Spark و Hadoop؟
الإجابة : في حين أن كلا من Hadoop و Spark هما إطار عمل معالجة موزعة ، فإن الاختلاف الرئيسي بينهما هو معالجتهما. عندما يكون Hadoop فعالاً في معالجة الدُفعات ، فإن Spark فعالة في معالجة البيانات في الوقت الفعلي.
بالإضافة إلى ذلك ، يقوم Hadoop بشكل أساسي بقراءة الملفات وكتابتها إلى HDFS ، بينما يستخدم Spark مفهوم مجموعة البيانات الموزعة المرنة لمعالجة البيانات في ذاكرة الوصول العشوائي.
استنادًا إلى زمن الوصول ، Hadoop هو إطار عمل للحوسبة عالية الكمون بدون وضع تفاعلي لمعالجة البيانات ، بينما Spark هو إطار عمل للحوسبة منخفضة الكمون يعالج البيانات بشكل تفاعلي.
قارن Sqoop و Flume.
الإجابة : Sqoop و Flume هما من أدوات Hadoop التي تجمع البيانات التي تم جمعها من مصادر مختلفة وتحميل البيانات في HDFS.
- يستخرج Sqoop (SQL-to-Hadoop) البيانات المنظمة من قواعد البيانات ، بما في ذلك Teradata و MySQL و Oracle وما إلى ذلك ، بينما يعد Flume مفيدًا لاستخراج البيانات غير المنظمة من مصادر قاعدة البيانات وتحميلها إلى HDFS.
- فيما يتعلق بالأحداث المدفوعة ، فإن Flume مدفوعة بالأحداث ، في حين أن Sqoop لا تحركه الأحداث.
- يستخدم Sqoop بنية قائمة على الموصل حيث تعرف الموصلات كيفية الاتصال بمصدر بيانات مختلف. يستخدم Flume بنية قائمة على الوكيل ، حيث يكون الكود المكتوب هو الوكيل المسؤول عن جلب البيانات.
- نظرًا لطبيعة Flume الموزعة ، يمكنه بسهولة جمع البيانات وتجميعها. يعتبر Sqoop مفيدًا في نقل البيانات المتوازي ، مما يؤدي إلى وجود الإخراج في ملفات متعددة.
اشرح ملف BloomMap.
الإجابة : إن BloomMapFile عبارة عن فئة تمتد لفئة MapFile وتستخدم مرشحات bloom الديناميكية التي توفر اختبار عضوية سريعًا للمفاتيح.
اكتب الفرق بين HiveQL و PigLatin.
الإجابة : في حين أن HiveQL هي لغة تعريفية مشابهة لـ SQL ، فإن PigLatin هي لغة إجرائية عالية المستوى لتدفق البيانات.
ما هو تطهير البيانات؟
الإجابة : يعد تنظيف البيانات عملية حاسمة للتخلص من أخطاء البيانات المحددة أو إصلاحها والتي تتضمن بيانات غير صحيحة وغير كاملة وفاسدة ومكررة ومنسقة بشكل خاطئ ضمن مجموعة بيانات.
تهدف هذه العملية إلى تحسين جودة البيانات وتوفير معلومات أكثر دقة واتساقًا وموثوقية ضرورية لاتخاذ قرارات فعالة داخل المنظمة.
استنتاج
مع زيادة فرص العمل الحالية في البيانات الضخمة و Hadoop ، قد ترغب في تحسين فرصك في الدخول. ستساعدك أسئلة وأجوبة مقابلة Hadoop في هذه المقالة على الحصول على تلك المقابلة القادمة.
بعد ذلك ، يمكنك التحقق من الموارد الجيدة لتعلم البيانات الضخمة و Hadoop.
حظا سعيدا!