عكا مقابل شرارة


الاجابه 1:

في الواقع ، (لحسن الحظ!) اعتبارًا من 1.6 Spark لم يعد يعتمد على Akka واستخدم فقط Akka للتواصل بين العقد. نرى

أباتشي سبارك ضد عكا

. أظن أنهم أزالوا التبعية لأن Akka هو إطار عمل ضخم كانوا يستخدمونه فقط في الحد الأدنى وتسبب الاعتماد في العديد من الصراعات مع مطوري التطبيقات الذين كانوا بحاجة أيضًا إلى الاعتماد على إصدارات أخرى من Akka. لقد كان الأمر مزعجًا بالفعل في بعض الأحيان.

ولكن في رأيي هذا سؤال جيد جدا! يجب أن يساعد العثور على إجابة في توضيح ماهية هذه التقنيات حقًا.

عكا هو إطار ممثل ل jvm. إنه يقوم على إرلانج ويدعم التزامن الموزع القائم على الممثل.

Spark هو إطار عمل للحوسبة العنقودية يوفر موازاة البيانات وتسامح مع الخطأ.

دعونا نقسم هذا أكثر قليلاً

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

الآن منذ أن طلبت 40 إسبريسو ، (على افتراض أنهم لا يرفضون خدمتي) ، فمن المحتمل أنهم سيقسمون المهمة بين 4 أشخاص يعملون في آلات الإسبريسو. قل مجموعات من 10 إسبرسو لكل منها. لاحظ ، يتم إنتاجها بالتوازي.

في هذه الأثناء (بشكل متزامن) أحاول بشكل مزعج أن أقرر ما إذا كان يجب أن ألغي الطلب بالكامل بعد أن سألني شخص الطلب الأمامي عما إذا كانت 40 إسبريسو ستكون "هنا أم للذهاب؟" من على وجه الأرض يقدم قهوة اسبريسو في كوب ورقي ؟؟؟ Yuuuuuk!

لذلك هناك لديك. التواصل المتزامن ، مع أخذ الأمر ، شكوى ، الأسئلة غير اللائقة ، والأهم من ذلك الرسالة التي تم تمريرها إلى النهاية الخلفية لإنتاج 40 إسبريسو موجودة في عالم عكا النموذجي. الجزء الذي ينقسم فيه النظام عبر baristas الذين يتعاملون مع 10 لكل منهم ويبدأون في نفس الوقت هو موازاة البيانات (مع كون الإسبريسو هو البيانات) وهو المجال النموذجي للشرارة.

نعم ، يمكنك استخدام Akka لتحقيق موازاة البيانات الموزعة. ولكن هل تتذكر الجزء المرن المتسامح مع الخطأ؟ هذا جزء كبير من عرض سباركس. عندما ينخفض ​​العامل في الشرارة ، يتم استرداد مجموعة البيانات للقراءة فقط من نسب التحويل التي تتم إدارتها كرسم بياني مباشر غير دوري أو DAG. لن يكون هذا تافهًا للبناء من عكا!

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