
محرك لخطوط معالجة البيانات يشغّل سير العمل ويوقفه مؤقتًا ويستأنفه
نواة التنسيق في منصة منخفضة الشيفرة (low-code)، تشغّل الخطوات المترابطة بصريًا وفق ترتيب اعتمادها بعضها على بعض، مع نقاط توقف وتشغيل قابل للاستئناف.
- الشريك
- مجموعة استشارات دولية
- المدة
- من أكتوبر 2024 إلى يناير 2026
- نوعًا من الخطوات
- 13
- خطوات القراءة والتحويل والتجميع وتحليل LLM والكتابة
- طرق للتشغيل
- 3
- عند الطلب، أو وفق جدول زمني، أو كنقطة وصول منشورة
- من المخرجات المحفوظة
- استئناف
- إعادة تشغيل جزئية دون تكرار الخطوات السابقة
التحدي
أتاحت المنصة للمستخدمين ربط خطوات البيانات بصريًا. وكان لا بد من محرك يشغّل شبكات الخطوات هذه تشغيلًا صحيحًا، بما فيها من تفرعات ونقاط دمج، ويتيح للمستخدمين فحص أجزاء من التشغيل وتكرارها أثناء البناء.
ما بنيناه
محرك تنسيق يشغّل كل خطوة حالما تجهز جميع مدخلاتها، ويخزّن مدخلات كل خطوة ومخرجاتها مع مخططها، ويدعم نقاط التوقف، ويستطيع إعادة بناء البيانات محددة النوع من تشغيل سابق لاستئناف العمل دون تكرار الخطوات السابقة.
ما تم تسليمه
- التفرع إلى عدة خطوات والتجميع منها (fan-out وfan-in)، مع التشغيل وفق ترتيب الاعتماد
- نقاط توقف، وتحكم لكل خطوة فيما يُسجَّل
- تشغيل يبدأ عند الطلب، أو وفق جدول cron، أو عبر نقطة وصول منشورة
نبذة عن الشريك
شريكنا مجموعة استشارات دولية تتعامل فرقها مع كميات كبيرة من المستندات وجداول البيانات وقواعد البيانات والبريد الإلكتروني. وأراد الشريك منصة داخلية واحدة تبني فيها هذه الفرق خطوط معالجة البيانات والوكلاء الأذكياء بنفسها، بدلًا من التعاقد على تطبيق جديد لكل حاجة. وكان على المنصة أن تعمل داخل بيئة Microsoft 365 وAzure لدى الشريك، وأن تفصل عمل كل فريق عن غيره، وأن تنقل العمل من مرحلة التجربة إلى بيئة الإنتاج عبر بيئات خاضعة للرقابة.
التحدي
شبكات لا قوائم
يربط المستخدمون الخطوات بحرية. فخطوة الربط (join) تنتظر مدخلين، ومخرج واحد قد يغذي عدة خطوات كتابة. وتشغيل الخطوات بالترتيب الذي رُسمت به سيؤدي إلى نتائج خاطئة.
البناء عملية تكرارية
أثناء تصميم خط المعالجة، يحتاج المستخدمون إلى التوقف عند خطوة ما، وفحص البيانات وتغيير شيء فيها، دون أن يتحملوا كلفة تشغيل كل خطوة سابقة من جديد.
بيانات حساسة في السجلات
تتعامل بعض الخطوات مع بيانات لا ينبغي تخزينها في سجلات التشغيل.
الأهداف
- تشغيل أي شبكة خطوات صالحة وفق ترتيب الاعتماد الصحيح
- دعم نقاط التوقف للفحص أثناء التصميم
- استئناف التشغيل من المخرجات المحفوظة
- التحكم في تسجيل المدخلات والمخرجات لكل خطوة
- تشغيل خطوط المعالجة عند الطلب، أو وفق جدول زمني، أو كنقطة وصول
دورنا
تولّت كارسنترك القيادة التقنية والبنية المعمارية ضمن فريق هندسي متعدد التخصصات، وشاركت مباشرة في التنفيذ. بُنيت المنصة على مدى 16 شهرًا، من أكتوبر 2024 إلى يناير 2026، بنظام خلفي يعتمد على Python وFastAPI ويعمل على Azure.
النطاق والجدول الزمني
بُني محرك التنسيق بين أكتوبر 2024 ومايو 2025. وتلته أدوات التحكم في التشغيل والمشغّلات والنشر بين يناير ونوفمبر 2025.

المنهجية
عدّ المدخلات والإطلاق عند الجاهزية
يعدّ المحرك الاتصالات الواردة إلى كل خطوة، فتبدأ أولًا الخطوات التي لا اتصالات واردة إليها. وفي كل مرة تنتهي فيها خطوة، تُمرَّر مخرجاتها، وينقص عدد ما تنتظره كل خطوة مستهدفة. وتعمل الخطوة حين يصل عدّادها إلى صفر.
تخزين البيانات مع بنيتها
يُخزَّن كل مخرج من مخرجات الخطوات مع JSON Schema يصف بياناته. وعند استئناف التشغيل، يعيد المحرك بناء نماذج البيانات محددة النوع من المخطط المخزّن، فتتلقى الخطوات المستأنفة أنواع البيانات نفسها التي تلقتها في التشغيل الأصلي.
واجهة واحدة لكل الخطوات
تشترك جميع الخطوات في واجهة واحدة، ويُنشئها مصنع برمجي (factory). ويولّد أمر لإنشاء الهيكل الأولي الصنفَ ونموذجَ المدخلات والحالةَ وقيدَ التسجيل لأي خطوة جديدة.
التنفيذ

مكتبة الخطوات
ثلاثة عشر نوعًا من الخطوات في خمس فئات: خطوات قراءة لواجهات API وملفات CSV وقواعد بيانات SQL والمستندات وOutlook وSharePoint؛ وخطوة تحويل بشيفرة Python؛ وخطوتا تجميع للربط (join) والإلحاق (append)؛ وخطوة تحليل LLM؛ وخطوات كتابة لقواعد بيانات SQL وOutlook وSharePoint.
التحكم في التشغيل
توقف نقاط التوقف التنفيذ عند خطوات محددة. ويمكن تعطيل تسجيل المدخلات والمخرجات لكل خطوة. ويمكن إلغاء التشغيل أثناء تنفيذه.
المشغّلات
تعمل خطوط المعالجة عند الطلب، أو وفق جداول cron تُدار على دفعات لكل خط معالجة، أو عبر نقاط وصول منشورة مرتبطة ببيئة محددة.

الأدوات والتقنيات
| الأداة | الغرض |
|---|---|
| Python وasyncio | محرك التنسيق |
| Pydantic | بيانات محددة النوع بين الخطوات |
| PostgreSQL | سجلات التشغيل ومخرجات الخطوات المخزّنة |
| Redis | تخزين المشغّلات |
| FastAPI | نقاط الوصول للاستدعاء والإدارة |
ما تم تسليمه
- نوعًا من الخطوات
- 13
- فئات للخطوات
- 5
- طرق لبدء التشغيل
- 3
- البيانات المستأنفة
- محددة النوع
- محرك تنسيق لشبكات خطوات بأي تكوين
- نقاط توقف، وتحكم في التسجيل لكل خطوة، وإمكانية الإلغاء
- تشغيل قابل للاستئناف مع إعادة بناء البيانات محددة النوع من المخططات المخزّنة
- تنفيذ مجدول وتنفيذ يبدأ عبر نقاط الوصول
لماذا يهم ذلك
لا تتجاوز موثوقية أداة البناء المرئية موثوقية المحرك الذي يعمل خلفها. وإتقان الترتيب والأنواع والاستئناف هو ما يتيح لغير المتخصصين بناء خطوط المعالجة بثقة.
إذا كانت مؤسستكم تخطط لمنصة من هذا النوع، أو تحتاج إلى تصميم جزء محدد منها وتسليمه، يسعدنا أن نناقش ذلك معكم.