أنابيب الدفعات

في أجهزة IBM الرئيسية ، يعد BatchPipes أداة لمعالجة مهام الدفعات تعمل تحت نظام التشغيل MVS/ESA والإصدارات اللاحقة - OS/390 و z/OS . [ 1 ]

الوظيفة الأساسية

في المعالجة التقليدية، إذا كُتبت سجلات البيانات إلى مجموعات بيانات متسلسلة ( QSAM و BSAM ) على القرص أو الشريط، فلا يمكن قراءتها في الوقت نفسه بواسطة مهمة أخرى. لا يمكن تشغيل "الكاتب" و"القارئ" في الوقت نفسه. يُطلق على هذا اسم التداخل على مستوى الملف أو التداخل على مستوى مجموعة البيانات .

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

يحتفظ نظام BatchPipes بقائمة انتظار قصيرة للسجلات التي يتم تبادلها بين الكاتب والقارئ. يضيف الكاتب السجلات إلى نهاية قائمة الانتظار، بينما يأخذها القارئ من بدايتها. يُعرف هذا بالتداخل على مستوى السجلات ، مما يسمح للقارئ والكاتب بالعمل في وقت واحد.

تُعدّ عملية الفرز حالةً خاصة: إذ يجب قراءة جميع سجلات الإدخال قبل كتابة أول سجل إخراج. لذا، لا يمكن أن يكون هناك تداخل بين مرحلتي الإدخال والإخراج في عملية الفرز. ولكن يمكن أن تتداخل مرحلة الإدخال مع مرحلة الإخراج في المهمة السابقة. وبالمثل، يمكن أن تتداخل مرحلة الإخراج في عملية الفرز مع مهمة لاحقة تقرأ البيانات المُفرزة.

تصميمات الأنابيب المتقدمة

توجد بنى طوبولوجية أكثر تعقيدًا من "قارئ واحد وكاتب واحد".

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

نقد

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

BatchPipePlex

يمكن لـ BatchPipes استخدام مرفق الربط الخاص بالحاسوب الرئيسي من IBM لتوجيه البيانات بين أعضاء مختلفين من نظام Parallel Sysplex ، باستخدام مرفق BatchPipePlex.

BatchPipeWorks

يتضمن BatchPipes مجموعة من مراحل خط الأنابيب المستندة إلى منتج CMS Pipelines من IBM ، والمطور لنظام التشغيل VM/ESA . توفر هذه المراحل معالجة إضافية، دون الحاجة إلى مهام دفعية إضافية في خط الأنابيب.

تاريخ

طُوِّر الإصدار الأول من BatchPipes في أواخر الثمانينيات وأوائل التسعينيات كتقنية لتسريع معالجة الدفعات في نظام MVS/ESA . وفي عام ١٩٩٧، دُمِجت وظائف BatchPipes في منتج IBM الأكبر SmartBatch (الذي تضمن ميزتين من منتجات شركة BMC : DataAccelerator وBatchAccelerator). إلا أن SmartBatch توقف دعمه في أبريل ٢٠٠٠.

أنتجت شركة APT International، ومقرها موناكو ، منتجًا منافسًا يحمل علامة WARP التجارية . بعد بضعة أشهر من إطلاق هذا المنتج، أعادت IBM تسمية منتجها لنظام التشغيل OS/2 إلى OS/2 Warp 4 ، مما تعارض مع تسويق منتج الأداء الذي كان المنافس الوحيد لـ BatchPipes. وقد نتج عن ذلك سبع سنوات من التقاضي أمام محكمة باريس العليا [ 2 ] [ 3 ].

بعد ذلك، تم إصدار الإصدار الثاني من BatchPipes، والذي تضمن الإصدار الأول من BatchPipes بالإضافة إلى بعض الميزات الإضافية من SmartBatch: BatchPipePlex وBatchPipeWorks. ولا يزال الإصدار الثاني من BatchPipes منتجًا مسوقًا من IBM.

انظر أيضاً

مراجع

  1. "Batchpipes for Os/390 Version 2 Release 1 Shortens Batch Business Cycles" . 18 أبريل 2000.
  2. "العقيدة" .
  3. ^ 1994-2000 [16.5.1997،77 Rev. Droite de propriété Industrielle(1997)،46 - Sté PANEK ضد Sté IBM Corp. http://cyber.law.harvard.edu/ilaw/Jurisdiction/Geller_Full.html