المعالجة الدفعية
في مجال الحوسبة ، تُعرف المعالجة الدفعية بتشغيل مهمة برمجية بطريقة آلية وغير مراقبة. يقوم المستخدم بجدولة المهمة لتشغيلها ثم ينتظر نظام المعالجة لتنفيذها. عادةً ما تُجدول المهمة لتشغيلها في وقت محدد من اليوم ، أو عند وقوع حدث معين ، أو عند توفر موارد الحاسوب .
تاريخ
ينشأ مصطلح "المعالجة الدفعية" من التصنيف التقليدي لأساليب الإنتاج على أنها إنتاج حسب الطلب (إنتاج لمرة واحدة)، وإنتاج دفعي (إنتاج "دفعة" من عناصر متعددة في وقت واحد، مرحلة واحدة في كل مرة)، وإنتاج تدفقي (إنتاج ضخم، جميع المراحل قيد المعالجة في وقت واحد).
التاريخ المبكر
كانت الحواسيب الأولى قادرة على تشغيل برنامج واحد فقط في كل مرة. وكان لكل مستخدم تحكم كامل بالجهاز لفترة زمنية محددة. وكانوا يصلون إلى الحاسوب ومعهم البرنامج والبيانات، غالباً على بطاقات ورقية مثقبة وشريط مغناطيسي أو ورقي، ثم يقومون بتحميل برنامجهم وتشغيله وتصحيح أخطائه، ويحفظون مخرجاته عند الانتهاء.
مع ازدياد سرعة الحواسيب، أصبحت مدة الإعداد والإيقاف تشكل نسبة أكبر من وقت تشغيل الحاسوب المتاح. ولذلك، طُوّرت برامج تُسمى " المراقبات "، وهي النواة الأولى لأنظمة التشغيل ، والتي كانت قادرة على معالجة سلسلة من البرامج، أو "مجموعة"، غالبًا من شريط مغناطيسي مُعدّ مسبقًا . يتم تحميل برنامج المراقبة في الحاسوب وتشغيل المهمة الأولى من المجموعة. وعند انتهاء المهمة، يستعيد البرنامج التحكم ويُحمّل ويُشغّل المهمة التالية حتى تكتمل المجموعة. في كثير من الأحيان، تُكتب مخرجات المجموعة على شريط مغناطيسي وتُطبع أو تُثقب لاحقًا. من أمثلة برامج المراقبة: نظام مراقبة فورتران من شركة IBM ، ونظام التشغيل SOS (نظام التشغيل المشترك)، وأخيرًا نظام IBSYS لأنظمة IBM 709x في عام 1960. [ 1 ] [ 2 ]
أنظمة الجيل الثالث
بدأت حواسيب الجيل الثالث [ 3 ] القادرة على تعدد البرامج بالظهور في ستينيات القرن العشرين. فبدلاً من تشغيل مهمة دفعية واحدة في كل مرة، يمكن لهذه الأنظمة تشغيل عدة برامج دفعية في الوقت نفسه للحفاظ على انشغال النظام قدر الإمكان. قد ينتظر برنامج واحد أو أكثر إدخال البيانات، بينما يعمل برنامج آخر بنشاط على وحدة المعالجة المركزية، وتُنتج البرامج الأخرى مخرجات. وبدلاً من الإدخال والإخراج غير المتصلين بالإنترنت، تقرأ برامج تُسمى "برامج التخزين المؤقت " المهام من البطاقات أو الأقراص أو المحطات الطرفية البعيدة، وتضعها في قائمة انتظار لتنفيذها. ولمنع حدوث حالات التعطل، يحتاج مُجدول المهام إلى معرفة متطلبات موارد كل مهمة - الذاكرة، والأشرطة المغناطيسية، والأقراص القابلة للتركيب ، وما إلى ذلك - لذلك طُوّرت لغات برمجة نصية متنوعة لتوفير هذه المعلومات بطريقة منظمة. ولعل أشهرها لغة التحكم في المهام (JCL) من شركة IBM. يختار مُجدولو المهام المهام المراد تشغيلها وفقًا لمعايير متنوعة، بما في ذلك الأولوية وحجم الذاكرة، وما إلى ذلك. أما الدفعة البعيدة فهي إجراء لإرسال مهام الدفعات من محطات طرفية بعيدة، غالبًا ما تكون مُجهزة بقارئ بطاقات مثقبة وطابعة خطية . [ 4 ] في بعض الأحيان، تُستخدم المعالجة المتعددة غير المتماثلة لتخزين المدخلات والمخرجات المجمعة لجهاز كمبيوتر واحد أو أكثر من أجهزة الكمبيوتر الكبيرة باستخدام نظام أصغر وأقل تكلفة متصل، كما هو الحال في معالج الدعم المرفق IBM System/360 . [ أ ]
التاريخ اللاحق

كان أول نظام لتقاسم الوقت للأغراض العامة، وهو نظام تقاسم الوقت المتوافق (CTSS)، متوافقًا مع المعالجة الدفعية. وقد سهّل ذلك الانتقال من المعالجة الدفعية إلى الحوسبة التفاعلية . [ 5 ]
ابتداءً من أواخر الستينيات، شاع استخدام الحوسبة التفاعلية، مثل الحوسبة عبر واجهات طرفية نصية (كما في أنظمة يونكس أو حلقات القراءة والتقييم والطباعة )، ولاحقًا واجهات المستخدم الرسومية . أما الحوسبة غير التفاعلية، سواءً كانت مهامًا فردية مثل الترجمة البرمجية، أو معالجة عناصر متعددة على دفعات، فقد أُطلق عليها لاحقًا اسم المعالجة الدفعية ، وشاع استخدام مصطلح " مهمة دفعية " (أو "مجموعة مهام " في بداياته ). ويُلاحظ هذا الاستخدام المبكر بشكل خاص في جامعة ميشيغان ، وتحديدًا في نظام ميشيغان الطرفي (MTS). [ 6 ]
على الرغم من وجود نظام المشاركة الزمنية، إلا أن استخدامه لم يكن قويًا بما يكفي لمعالجة بيانات الشركات؛ ولم يكن أي من هذا مرتبطًا بمعدات تسجيل الوحدة السابقة ، والتي كانت تعمل بواسطة البشر.
مستمر
لا تزال الحوسبة غير التفاعلية منتشرة على نطاق واسع في مجال الحوسبة، سواءً لمعالجة البيانات العامة أو لمهام صيانة النظام (باستخدام برامج النظام ). يُطلق على البرنامج عالي المستوى (الذي يُشغّل برامج متعددة، مع بعض منطق الربط الإضافي) اليوم اسم "سكربت" ، ويُكتب بلغات البرمجة النصية ، وخاصةً سكربتات الصدفة لمهام النظام؛ في نظامي التشغيل IBM PC DOS و MS-DOS، يُعرف هذا النوع من البرامج باسم " ملف دفعي" . يشمل ذلك أجهزة الكمبيوتر التي تعمل بنظام UNIX ، و Microsoft Windows ، وmacOS (الذي يستند إلى نواة BSD Unix)، وحتى الهواتف الذكية . يُعرف السكربت قيد التشغيل، وخاصةً ذلك الذي يُنفّذ من جلسة تسجيل دخول تفاعلية، باسم " مهمة" ، ولكن هذا المصطلح يُستخدم بشكل غامض.
لا يوجد نظير مباشر لمعالجة الدفعات في نظام التشغيل z/OS على أنظمة الحاسوب الشخصي أو أنظمة يونكس. تُنفذ مهام الدفعات عادةً في وقت مُجدول أو حسب الحاجة. ولعل أقرب مقارنة هي مع العمليات التي تُشغل بواسطة أمر at أو cron في أنظمة يونكس، على الرغم من وجود اختلافات كبيرة. [ 7 ]
الأنظمة الحديثة
لا تزال تطبيقات المعالجة الدفعية بالغة الأهمية في معظم المؤسسات، ويعود ذلك في جزء كبير منه إلى أن العديد من العمليات التجارية الشائعة قابلة للمعالجة الدفعية. ورغم أن الأنظمة الإلكترونية قادرة على العمل عند عدم الرغبة في التدخل اليدوي، إلا أنها عادةً لا تُحسَّن لأداء المهام المتكررة ذات الحجم الكبير. لذا، حتى الأنظمة الحديثة عادةً ما تحتوي على تطبيق أو أكثر من تطبيقات المعالجة الدفعية لتحديث المعلومات في نهاية اليوم، وإنشاء التقارير، وطباعة المستندات، وغيرها من المهام غير التفاعلية التي يجب إنجازها بدقة ضمن مواعيد نهائية محددة.
تُناسب بعض التطبيقات معالجة التدفق، وتحديدًا تلك التي تحتاج إلى بيانات من مُدخل واحد فقط في كل مرة (ليس المجاميع، على سبيل المثال): حيث تبدأ الخطوة التالية لكل مُدخل فور انتهاء الخطوة السابقة. في هذه الحالة، تُقلل معالجة التدفق زمن الاستجابة للمُدخلات الفردية، مما يسمح بإكمالها دون انتظار انتهاء المجموعة بأكملها. مع ذلك، تتطلب العديد من التطبيقات بيانات من جميع السجلات، لا سيما العمليات الحسابية مثل المجاميع. في هذه الحالة، يجب إكمال المجموعة بأكملها قبل الحصول على نتيجة قابلة للاستخدام: فالنتائج الجزئية غير قابلة للاستخدام.
تستفيد تطبيقات المعالجة الدفعية الحديثة من أطر عمل متطورة مثل Jem The Bee و Spring Batch [ 8 ] ، أو تطبيقات JSR 352 [ 9 ] المكتوبة بلغة Java ، بالإضافة إلى أطر عمل أخرى للغات برمجة مختلفة، لتوفير القدرة على تحمل الأعطال وقابلية التوسع اللازمة لمعالجة كميات كبيرة من البيانات. ولضمان سرعة المعالجة، غالبًا ما تُدمج تطبيقات المعالجة الدفعية مع حلول الحوسبة الشبكية لتقسيم مهمة المعالجة الدفعية على عدد كبير من المعالجات، على الرغم من وجود تحديات برمجية كبيرة في ذلك. كما تفرض معالجة كميات كبيرة من البيانات متطلبات عالية على بنية النظام والتطبيق. وتميل البنى التي تتميز بأداء قوي في الإدخال/الإخراج وقابلية التوسع الرأسي ، بما في ذلك الحواسيب المركزية الحديثة ، إلى توفير أداء أفضل في المعالجة الدفعية مقارنةً بالبدائل.
أصبحت لغات البرمجة النصية شائعة مع تطورها بالتوازي مع معالجة البيانات على دفعات. [ 10 ]
نافذة الدفعات
نافذة الدفعة هي "فترة من النشاط عبر الإنترنت الأقل كثافة"، [ 11 ] عندما يكون نظام الكمبيوتر قادرًا على تشغيل مهام الدفعة دون تدخل من أو مع الأنظمة التفاعلية عبر الإنترنت.
تتطلب وظائف نهاية اليوم (EOD) في البنك مفهوم التحويل ، حيث يتم قطع المعاملات والبيانات لنشاط الدفعة ليوم معين ("ستتم معالجة الإيداعات بعد الساعة 3 مساءً في اليوم التالي").
مع توسع متطلبات وقت تشغيل الأنظمة عبر الإنترنت لدعم العولمة والإنترنت واحتياجات الأعمال الأخرى ، تقلصت نافذة الدفعات [ 12 ] [ 13 ] وتم التركيز بشكل متزايد على التقنيات التي تتطلب توفر البيانات عبر الإنترنت لأقصى قدر من الوقت.
حجم الدفعة
يشير حجم الدفعة إلى عدد وحدات العمل التي ستتم معالجتها ضمن عملية دفعة واحدة. ومن الأمثلة على ذلك:
- عدد الأسطر من ملف يتم تحميلها إلى قاعدة البيانات قبل إتمام العملية.
- عدد الرسائل المراد إزالتها من قائمة الانتظار.
- عدد الطلبات التي يتم إرسالها ضمن حمولة واحدة.
الاستخدام الشائع لمعالجة الدفعات
- تتميز هذه التقنية بتحديثات قواعد البيانات المجمعة بكفاءة ومعالجة المعاملات الآلية ، على عكس تطبيقات معالجة المعاملات التفاعلية عبر الإنترنت (OLTP). وتُعدّ عملية استخراج البيانات وتحويلها وتحميلها (ETL) في مستودعات البيانات عملية دفعية في معظم التطبيقات.
- إجراء عمليات جماعية على الصور الرقمية مثل تغيير الحجم، والتحويل، ووضع العلامات المائية، أو تحرير مجموعة من ملفات الصور بطريقة أخرى.
- تحويل ملفات الكمبيوتر من تنسيق إلى آخر. على سبيل المثال، قد تقوم مهمة معالجة الدفعات بتحويل الملفات الخاصة والقديمة إلى تنسيقات قياسية شائعة لاستعلامات المستخدم النهائي وعرضها.
- تدريب نماذج التعلم الآلي . على سبيل المثال، قد يرغب موقع للتجارة الإلكترونية في معالجة معاملات العملاء على دفعات كل ساعة لتحديث النموذج الذي ينتج توصيات المنتجات ذات الصلة ، وذلك لتوفير موارد الحوسبة . [ 14 ]
بيئات جدولة وتنفيذ الدفعات البارزة
يُعتبر نظام التشغيل أو منصة IBM z/OS للحاسوب المركزي من أكثر أنظمة معالجة الدفعات تطورًا ودقةً، وذلك بفضل أصوله وتاريخه العريق وتطوره المستمر. تدعم هذه الأنظمة اليوم عادةً مئات أو حتى آلاف المهام المتزامنة، سواءً كانت معالجة دفعية أو معالجة مباشرة، ضمن صورة نظام تشغيل واحدة . تشمل التقنيات التي تُساعد في المعالجة المتزامنة للدفعات والمعالجة المباشرة: لغة التحكم في المهام (JCL)، ولغات البرمجة النصية مثل REXX ، ونظام إدخال المهام ( JES2 و JES3 )، ومدير أحمال العمل (WLM)، ومدير إعادة التشغيل التلقائي (ARM)، وخدمات استعادة الموارد (RRS)، ومشاركة بيانات IBM Db2 ، و Parallel Sysplex ، وتحسينات الأداء الفريدة مثل HiperDispatch ، وبنية قنوات الإدخال/الإخراج ، وغيرها الكثير.
تتيح برامج يونكس cron، atو batch(التي تُعدّ اليوم batchأحد مشتقات ) جدولة معقدة للمهام. ويحتوي نظام ويندوز على مُجدول مهام . وتستخدم معظم مجموعات الحوسبة عالية الأداء المعالجة الدفعية لزيادة استخدام المجموعة إلى أقصى حد. [ 15 ]at
انظر أيضاً
- عملية الخلفية
- ملف دفعي
- إعادة تسمية الملفات دفعة واحدة – لإعادة تسمية العديد من الملفات تلقائيًا دون تدخل بشري، وذلك لتوفير الوقت والجهد
- BatchPipes – أداة مساعدة تزيد من أداء الدفعات
- أوضاع المعالجة
- دعم الإنتاج – لدعم مهام الدفعات/الجداول الزمنية/التدفقات
- الحوسبة عالية الإنتاجية
ملحوظات
- ↑ بدأ استخدام أجهزة الكمبيوتر التابعة للأقمار الصناعية لهذا الغرض في وقت سابق، على سبيل المثال، في نظام IBM 7094/7044 Direct Coupled System .
مراجع
- ↑ "الزوج المباشر لجهاز IBM 7090" . SoftwarePreservationGroup.org .
كان IBSYS نظام تشغيل لجهاز 7090، وهو نظام متطور من SOS (نظام تشغيل SHARE).
- ↑ "تاريخ أنظمة التشغيل" (ملف PDF) . مؤرشف من النسخة الأصلية (ملف PDF) بتاريخ 2022-10-09.
- ↑ "لماذا لا تموت؟ نظام S/360 من IBM وإرثه بعد 50 عامًا" . ذا ريجستر . 7 أبريل 2014.
- ↑ "دليل مرجعي لأجهزة محطة المستخدم CDC" (ملف PDF) . BitSavers . مؤرشف (ملف PDF) من الأصل بتاريخ 2022-10-09.
- ↑ والدن، ديفيد؛ فان فليك، توم ، محرران. (2011). "نظام المشاركة الزمنية المتوافق (1961-1973): نظرة عامة تذكارية بمناسبة الذكرى الخمسين" (ملف PDF) . جمعية IEEE للحاسبات. مؤرشف (PDF) من الأصل بتاريخ 9 أكتوبر 2022. تم الاطلاع عليه بتاريخ 20 فبراير 2022.
وُصف نظام CTSS بأنه "متوافق" بمعنى أنه يمكن تشغيل
FMS
على النواة B كمستخدم "خلفية"، بكفاءة تقارب كفاءة تشغيله على جهاز أساسي، وأيضًا لأن البرامج المُجمّعة لنظام FMS الدفعي يمكن تحميلها وتنفيذها في بيئة المشاركة الزمنية "الواجهة الأمامية" (مع بعض القيود). ... سمحت هذه الميزة لمركز الحوسبة بالانتقال تدريجيًا من المعالجة الدفعية إلى المشاركة الزمنية.
- ↑ "مركز الحوسبة: فهم نظام IBM System/360 موديل 67". أخبار البحث . 20 (نوفمبر/ديسمبر). جامعة ميشيغان: 10. 1969.
- ↑ شركة آي بي إم. "ما هي المعالجة الدفعية؟" . مفاهيم نظام التشغيل zOS . تم الاطلاع عليه بتاريخ 10 أكتوبر 2019 .
- ^ مينيلا ، مايكل (2011/10/13). دفعة الربيع الموالية . Apress. رقم ISBN 978-1-4302-3453-1.
- ↑ "تطبيقات الدفعات لمنصة جافا" . عملية مجتمع جافا . تم الاسترجاع في 3 أغسطس 2015 .
- ↑ "JSR352 null" . IBM.com. مؤرشف من الأصل بتاريخ 20-10-2018 . تم الاسترجاع بتاريخ 19-10-2018 .
JSR 352، المواصفة القياسية المفتوحة لمعالجة الدفعات في جافا. ... تطورت لغات البرمجة المستخدمة بمرور الوقت بناءً على ما كان متاحًا.
- ↑ "الحواسيب المركزية تعمل بعد ساعات العمل: المعالجة الدفعية" . مفاهيم الحواسيب المركزية . شركة آي بي إم . تم الاطلاع عليه في 20 يونيو 2013 .
- ↑ المعالجة الدفعية: التصميم - البناء - التشغيل: الممارسات والمبادئ التطبيقية . أورايلي. 24 فبراير 2009. ISBN 9780470257630.
- ↑ "كانت المعالجة الدفعية تقليديًا نشاطًا ليليًا، حيث كانت الوظائف تعالج ملايين ... اليوم، تتقلص نافذة المعالجة الدفعية باستمرار مع متطلبات التوافر على مدار الساعة طوال أيام الأسبوع."
- ↑ غوتكوفيتش، بن (10 فبراير 2023). "لماذا سيكون التعلّم الآلي في الوقت الحقيقي هو الكلمة الرائجة لعام 2023" . رابط فائق . مؤرشف من الأصل في 16 أبريل 2023. تم الاسترجاع في 11 أبريل 2023 .
- ↑ "دليل الحوسبة عالية الأداء، مع قائمة مراجعة ونصائح لتحسين الأداء" . 25 يناير 2018.
نظام معالجة دفعية ذكي ومشترك ومتعدد المستخدمين يُحسّن من قابلية التوسع... معظم مجموعات
الحوسبة عالية الأداء
تعمل بنظام لينكس.
- جدولة العمل
