تاريخ النشر: 30 إبريل 2024
المساهمون: Chrystal R. China, Michael Goodwin
إن بث الأحداث هو ممارسة التقاط البيانات في الوقت الفعلي من التطبيقات وقواعد البيانات وأجهزة إنترنت الأشياء (IOT) ونقلها إلى وجهات مختلفة للمعالجة الفورية والتخزين أو للتحليل في الوقت الفعلي وإعداد التقارير التحليلية.
من الوظائف الرئيسية في معالجة تدفق الأحداث (ESP)، هو أن بث الأحداث يمكِّن البنى التحتية لتكنولوجيا المعلومات من التعامل مع تدفقات كبيرة ومستمرة من الأحداث من خلال معالجة البيانات عند وقوع الحدث أو التغيير.
غالبًا ما يكون بث الأحداث مكملاً لمعالجة الدفعات التي تعمل على مجموعات البيانات الكبيرة والثابتة (أو "البيانات في حالة السكون"). ومع ذلك، فبدلاً من معالجة البيانات على دفعات، يعالج بث الأحداث نقاط البيانات المفردة عند ظهورها حتى تتمكن البرامج داخل البنية من تفسير تدفقات البيانات ("البيانات المتحركة") والاستجابة لها في الوقت الفعلي.
يمكن لخدمات بث الأحداث عالية الأداء تشغيل مجموعة من المهام البسيطة والمعقدة، بدءًا من إرسال الإشعارات عند تغير أسعار المخزون أو المنتجات وصولاً إلى إنشاء نماذج التعلم الآلي في الوقت الفعلي التي تكشف عن نشاط المستخدم المشبوه. حتى في حالة المعالجة المجمّعة، يمكن أن يضيف بث الأحداث عمقًا إلى تحليلات البيانات من خلال ربط الأحداث بالطوابع الزمنية الخاصة بها وتحديد الاتجاهات التاريخية.
تعرّف كيف يمكن أن يساعدك IBM Event Automation في الاستفادة من الأحداث بشكل عملي من خلال تمكين مستخدمي الأعمال وتكنولوجيا المعلومات من كشف المواقف والتصرف في الوقت الفعلي وأتمتة القرارات وزيادة الإيرادات المحتملة.
يدور بث الأحداث حول التدفق غير المحدود والمتسلسل والآني لسجلات البيانات التي تسمى "الأحداث"، وهي هياكل البيانات التأسيسية التي تسجل أي حدث في النظام أو البيئة. إنه مصطلح يشير في الأساس إلى كل نقطة بيانات في النظام. لذلك، فإن "التدفق" (الذي يدعى أيضًا تدفق البيانات) هو التسليم المستمر لتلك الأحداث.
يتألف كل حدث عادةً من مفتاح يعرّف الحدث أو الكيان الذي يتعلق به، وقيمة تحتوي على البيانات الفعلية للحدث، وطابع زمني يشير إلى وقت وقوع الحدث أو تسجيله، وأحيانًا بيانات وصفية حول مصدر البيانات أو إصدار المخطط أو سمة أخرى.
وبمساعدة محركات معالجة التدفق المتخصصة، يمكن أن تخضع الأحداث لعدة عمليات مختلفة داخل التدفق. تُجري "التجميعات" عمليات لحساب البيانات، مثل الوسائل والمجاميع والانحراف المعياري. يضيف "الاستيعاب" تدفق البيانات إلى قواعد البيانات. تستخدم معالجة التحليلات أنماطًا في تدفق البيانات للتنبؤ بالأحداث المستقبلية، وتجمع معالجة الإثراء نقاط البيانات مع مصادر البيانات الأخرى لتوفير سياق وإنشاء معنى.
وغالبًا ما تكون الأحداث مرتبطة بعمليات الأعمال التجارية أو عمليات تنقل المستخدم وعادةً ما تؤدي إلى إجراء أو عملية أو سلسلة أخرى من الأحداث. ومن أحد الأمثلة على ذلك الخدمة المصرفية عبر الإنترنت.
عندما ينقر المستخدم على "تحويل" لإرسال الأموال من حساب مصرفي إلى آخر، تُسحب الأموال من حساب المرسل وتُضاف إلى الحساب المصرفي الخاص بالمتلقي، وتُرسَل إشعارات البريد الإلكتروني أو الرسائل النصية القصيرة إلى أي من الطرفين (أو كليهما)، وإذا لزم الأمر، تُنشَر بروتوكولات الأمان ومنع الاحتيال.
إن الأحداث، بالطبع، هي العنصر الأساسي في بث الأحداث؛ ومع ذلك، تمكّن سلسلة من العناصر الأخرى خدمات البث من معالجة الأحداث بالسرعة والفعالية التي تقوم بها. تتضمن بعض العناصر الحيوية الأخرى ما يلي:
إن الوسطاء، أو وسطاء الرسائل، هم الخوادم التي تقوم بتشغيل منصات بث الأحداث. يمكِّن وسطاء الرسائل التطبيقات والأنظمة والخدمات من التواصل وتبادل المعلومات، من خلال تحويل الرسائل بين بروتوكولات المراسلة الرسمية. يتيح ذلك للخدمات المترابطة "التحدث" مع بعضها بشكل مباشر، حتى لو كانت مكتوبة بلغات مختلفة (مثل Java أو Python) أو إذا نُفِّذت على منصات مختلفة. ويسهل هذا من فصل العمليات والخدمات داخل الأنظمة.
يمكن للوسطاء التحقق من صحة الرسائل وتخزينها وتوجيهها وتسليمها إلى الوجهات المناسبة. يضمن الوسطاء في أنظمة بث الأحداث الموزعة تحقيق زمن انتقال قصير وتوافر عالٍ من خلال تكرار الأحداث عبر العديد من العقد. كما يمكن للوسطاء تشكيل مجموعات—وهي مجموعات من الوسطاء الذين يعملون معًا لتحقيق موازنة تحميل وقابلية توسع أسهل.
إن المواضيع عبارة عن تصنيفات أو أسماء موجزات تُنشر عليها الأحداث، ما يوفر طريقة لتنظيم الأحداث وتصفيتها داخل المنصة. وهي تعمل بوصفها "موضوعًا" للأحداث، ما يسمح للمستهلكين بالاشتراك في الموضوعات وتلقي الأحداث ذات الصلة فقط.
كما يمكن تقسيم الموضوعات إلى أقسام، ما يسمح لعدة مستهلكين بالقراءة في موضوع ما في وقت واحد دون الإخلال بترتيب كل قسم.
إن التعويضات مُعرِّف فريد لكل حدث داخل القسم، حيث تشير إلى موضع الحدث داخل التسلسل. يستخدم المستهلكون التعويضات لتنظيم الأحداث التي عالجوها. على سبيل المثال، إذا قطع المستهلك الاتصال بحدث ما ثم أعاد الاتصال لاحقًا، فيمكنه استئناف المعالجة من آخر تعويض معروف.
نظرًا لانتشار البيانات—وما ينتج عنه من زيادة في حركة البيانات—فإن عمليات بث الأحداث هي عنصر أساسي في البنى الحديثة للبيانات، خاصة في البيئات التي تتطلب القدرة على اتخاذ القرارات بسرعة البرق أو في المؤسسات التي تتطلع إلى أتمتة مسؤوليات اتخاذ القرار.
إليك كيفية إدارة خدمات بث الأحداث لبيانات الأحداث:
بالإضافة إلى البث والمعالجة القياسيين، تسهّل منصات بث الأحداث (مثل Amazon Kinesis وGoogle Pub/Sub وAzure Event Hubs وIBM Event Automation، التي تستخدم قوة المعالجة لمنصة المصدر المفتوح Apache Kafka) مجموعة من ممارسات البث التي تعزز الوظائف.
تضمن دلالات التسليم مرة واحدة بالضبط أن يُعالج كل حدث في التدفق مرة واحدة فقط، وهي ميزة أساسية لمنع تكرار أحداث التدفق وضياعها. تشتمل معظم أنظمة بث الأحداث على آليات لتوفير دلالات لمرة واحدة فقط، بغض النظر عن أي إخفاقات أخرى في النظام.
عندما تعجز العناصر النهائية عن مواكبة معدل الأحداث الواردة، فإن الضغط الخلفي يمنع التدفقات من إرباك النظام. وباستخدام الضغط الخلفي -وهو آلية للتحكم في تدفق البيانات- يمكن للمستهلكين إرسال إشارات إلى المنتجين لكبح أو إيقاف إنتاج البيانات عندما يكونون مشغولين بمعالجة البيانات أو غير قادرين على مواكبة الأحداث الواردة.
تسمح هذه العملية للأنظمة بالتعامل بأمان مع أحمال التشغيل عن طريق تخزين الأحداث الواردة مؤقتًا أو إسقاطها—بدلاً من تعطيل النظام بأكمله—بحيث تظل معالجة الأحداث مستقرة مع تقلّب أحمال التشغيل.
غالبًا ما يعمل مستهلكو الأحداث كجزء من مجموعة مستهلكين لتسريع استهلاك الأحداث. يُخصَّص لكل مستهلك في مجموعة المستهلكين مجموعة فرعية من الأجزاء لمعالجتها، بالموازاة مع الاستهلاك لتحقيق كفاءة أكبر. وفي حال فشل أحد المستهلكين داخل المجموعة أو الحاجة إلى إضافته أو إزالته، يمكن للمنصة إعادة تعيين الأقسام ديناميكيًا للحفاظ على التوازن وتحمل الأخطاء.
عادة ما يعني بث الأحداث معالجة الأحداث بطريقة تراعي عامل الوقت. تمكّن العلامة المائية من تتبع التقدم (باستخدام وقت الأحداث) في أنظمة معالجة التدفق؛ فهي تفرض عتبة اكتمال تشير إلى الوقت الذي قد يستغرقه النظام لاعتبار بيانات الحدث معالجة بالكامل. كما يمكن الاستفادة من العلامات المائية لضمان الدقة في المعالجة المستندة إلى الوقت وللتوفيق بين الأحداث الخارجة عن الترتيب.
تقدم معظم منصات بث الأحداث سياسات احتفاظ بالبيانات قابلة للتخصيص، والتي تسمح للمطورين بالتحكم في مدة إتاحة الأحداث للاستهلاك. ولكن عملية ضغط البيانات هي عملية تزيل البيانات الزائدة أو المتقادمة من الموضوعات، ما يحافظ على الحد الأدنى من المساحة التخزينية مع الحفاظ على البيانات الأساسية.
ومن الجدير بالذكر مرة أخرى أن بنى التدفق القياسية عادةً ما تفصل بين منتجي الأحداث ووسطاء الأحداث والمستهلكين، حتى يتسنى توسيع نطاق العناصر وصيانتها بشكل مستقل.
يعد بث الأحداث مفهومًا قويًا يسمح للمؤسسات باستخدام البيانات عند إنشائها، ما يؤدي إلى إنشاء أنظمة أكثر استجابة وذكاءً. مع ظهور اتخاذ القرارات القائمة على البيانات، أصبح بث الأحداث عنصرًا متزايد الأهمية في بنى البرمجيات الحديثة.
وعلى هذا النحو، فإن تقنيات بث الأحداث تحتوي على مجموعة من حالات الاستخدام في مختلف قطاعات الأعمال، بما في ذلك:
يمكن للمؤسسات المالية استخدام خدمات بث الأحداث لمعالجة بيانات السوق في الوقت الفعلي، ما يمكّن أنظمة التداول الخوارزمية من اتخاذ قرارات في جزء من الثانية بناءً على ظروف السوق المُحدثة في كل دقيقة. كما تساعد قدرات المراقبة في الوقت الفعلي التي يوفرها بث الأحداث المؤسسات على تحديد مخاطر الاحتيال والمخاطر الأمنية بسرعة ومواجهتها.
يمكن أن يسهل بث الأحداث تحسين سلسلة التوريد من خلال السماح للمصنعين بتتبع المواد والمنتجات أثناء مرورها عبر سلسلة التوريد لتحديد العوائق وأوجه القصور في العمليات. وعلاوة على ذلك، فمن خلال تدفق البيانات من مستشعرات إنترنت الأشياء (IOT)/ مستشعرات إنترنت الأشياء الصناعية (IIoT) على الآلات، يمكن للمديرين التنبؤ بموعد تعطل المعدات وسببه وإجراء الصيانة الوقائية أو الصيانة التنبؤية لتجنب فترات التعطل غير المخطط لها.
يمكن أن تستخدم منصات الألعاب عبر الإنترنت خدمات بث الأحداث لتتبع تصرفات اللاعبين وتغييرات حالة اللعبة، والتي يمكن استخدامها لتشغيل تحليلات اللعبة وفرض سياسات مكافحة الغش وزيادة مشاركة اللاعبين. يمكن لمنصات البث الاستفادة من بيانات الأحداث لتقديم توصيات محتوى مخصصة للمستخدمين وإنشاء تجربة مصممة خصوصًا للعملاء.
يمكن استخدام بث الأحداث لتتبع موقع المركبة وحالتها، ما يتيح إمكانية التوجيه في الوقت الفعلي استنادًا إلى ظروف حركة المرور وجداول التسليم وأداء المركبة. وعلى نحو مماثل، يمكن لشركات الخدمات اللوجستية استخدام بيانات الأحداث من أجهزة المسح وأجهزة التتبع بالنظام العالمي لتحديد المواقع (GPS) لتزويد العملاء بتحديثات في الوقت الفعلي عن حالة عمليات التسليم بالتجارة الإلكترونية الخاصة بهم.
إلى جانب الصناعات المحددة، يمكن لبثّ الأحداث أن يكون مفيدًا أيضًا عندما ينشر بالتنسيق مع التقنيات والبنى الأخرى. على سبيل المثال، يرتبط بث الأحداث في بعض الأحيان بأنماط مثل توفير مصادر الأحداث وفصل مسؤوليات الأوامر والاستعلام (CQRS).
إن توفير مصادر الأحداث هو نمط بُنيوي تُخزن فيه التغييرات التي تطرأ على حالة التطبيق كسلسلة من الأحداث. عند استخدامه إلى جانب تدفقات الأحداث، يتيح توفير مصادر الأحداث لنظام التدفق إعادة تشغيل هذه الأحداث لإعادة بناء حالة الكيان في أي وقت أو لتشغيل عناصر أخرى من النظام.
في النمط البُنيوي CQRS، ينقسم النظام إلى نموذجين مختلفين: أحدهما يتعامل مع الأوامر (الكتابة) والآخر يتعامل مع الاستعلامات (القراءة). يمكن استخدام بث الأحداث في CQRS لنشر التغييرات من نموذج الكتابة إلى نموذج القراءة في الوقت الفعلي، ما يتيح التكامل غير المتزامن بين الاثنين.
يعد بث الأحداث أيضًا تقنية تأسيسية لبناء البنى القائمة على الأحداث.
تمكّن البنية القائمة على الأحداث العناصر المقترنة بشكل غير محكم من التواصل من خلال الأحداث، ولكن بدلاً من نشر تدفقات الأحداث إلى وسيط، فإنها تنشر حدثًا أحادي الغرض يمكن أن يستخدمه تطبيق أو خدمة أخرى لتنفيذ إجراءات بدورها. يمكن لقوة المعالجة ضمن البث المباشر التي توفرها البنى القائمة على الأحداث—المستخدمة مع قدرات بث الأحداث—أن تمكّن الشركات من الاستجابة للبيانات أثناء الحركة واتخاذ قرارات سريعة بناءً على جميع البيانات الحالية والتاريخية.
في السنوات الأخيرة، بدأ مزودو السحابة (بما في ذلك IBM Cloud) تقديم مبادئ بث الأحداث كخدمات. يسهّل بث الأحداث كخدمة على الشركات اعتماد بث الأحداث دون إدارة البنية التحتية الأساسية بالكامل، ما يزيد من توسيع حالات استخدام بث الأحداث.
إن IBM Event Automation هو حل قابل للتكوين بالكامل يُمكِّن الشركات من تكثيف جهودها القائمة على الأحداث، أينما كانت في رحلتها. يساعد بث الأحداث وإدارة نقطة النهاية للأحداث وقدرات معالجة الأحداث على وضع الأساس لبنية قائمة على الأحداث من أجل الكشف عن قيمة الأحداث.
يستخدم IBM Cloud Pak for Integration المصدر المفتوح المتمثل في منصة بث الأحداث المبنية من Kafka Apache وهي IBM Event Streams من شركة IBM لمساعدتك في بناء التطبيقات الذكية التي يمكنها التفاعل مع الأحداث فور وقوعها. تعامل مع أحمال التشغيل ذات المهام الحرجة من خلال تعزيز الاتصال بالنظام، والانتشار والعمليات الغنية والخبرة في البنية القائمة على الأحداث.
نظِّم إجراءات المتابعة للتفاعل الفوري مع الأحداث الجديدة. يدعم App Connect البنى القائمة على الأحداث ويمكنه الاستفادة من آليات الاستطلاع للعمل مع البنى غير القائمة على الأحداث. كوِّن تدفقات لأتمتة المهام وطبق المنطق الشرطي لتبسيط القرارات والاستجابة لمتطلبات العملاء المتغيرة.
ما الفرق، وكيف يمكن أن يفيداك وأيهما هو الخيار المناسب لعملك؟
معالجة التدفق هي جوهر بيانات الوقت الفعلي. فهي تتيح لشركتك أن تستوعب تدفقات البيانات المستمرة فور حدوثها وتضعها في المقدمة لتحليلها، ما يتيح لك مواكبة التغيرات المستمرة.
إن المؤسسات التي تصبح أكثر اعتمادًا على الأحداث تكون قادرة على تمييز نفسها بشكل أفضل عن المنافسين والتأثير في نهاية المطاف على أرباحها الإجمالية والحد الأدنى للأرباح.
تعلّم كيف يمكن لمواصفات AsyncAPI وصف وتوثيق موضوعات Kafka.
من خلال الاستفادة من الذكاء الاصطناعي لمعالجة الأحداث في الوقت الفعلي، يمكن للشركات الربط بين الأحداث المتباينة لكشف الاتجاهات والتهديدات والفرص الجديدة والاستجابة لها.
إن إدارة البيانات هي ممارسة تستند إلى استيعاب بيانات المؤسسة ومعالجتها وتأمينها وتخزينها، حيث تُستخدم بعد ذلك في اتخاذ القرارات الإستراتيجية لتحسين نتائج الأعمال.