إتقان Azure Event Hubs: الأقسام ومجموعات المستهلكين والتوسّع
By Mirko Peters ·
مرحبًا بعودتكم إلى استكشافنا المستمر لهندسة السحابة وهندسة البيانات في الوقت الفعلي. في عالم تطبيقات المؤسسات الحديثة، يبلغ حجم البيانات التي يولّدها المستخدمون وأجهزة إنترنت الأشياء والخدمات المصغّرة وأدوات تجميع السجلات حدًّا هائلًا…
Automatically translated with AI from the original post. Read the English original

مرحبًا بعودتكم إلى استكشافنا المستمر لهندسة السحابة وهندسة البيانات في الوقت الفعلي. في عالم تطبيقات المؤسسات الحديثة، يبلغ حجم البيانات التي يولّدها المستخدمون وأجهزة إنترنت الأشياء والخدمات المصغّرة وأدوات تجميع السجلات حدًّا هائلًا. لم تعد المؤسسات تكتفي بتخزين البيانات لمعالجتها دفعةً واحدة during الليل؛ بل تحتاج إلى رؤى قابلة للتنفيذ في اللحظة نفسها. ولتلبية هذا الطلب، يلجأ مهندسو السحابة إلى منصات بث الأحداث القوية. وإذا كنتم تبنون حلولًا ضمن منظومة Microsoft Azure، فإن Azure Event Hubs يبرز بوصفه الخدمة المُدارة بالكامل الرائدة لاستيعاب البيانات على نطاق واسع.
في هذا الدليل الشامل، سنتعمق في المكونات المعمارية الأساسية التي تجعل Azure Event Hubs يعمل بكفاءة. سنوضح كيف تتيح الأقسام المعالجة المتوازية الضخمة، ونستعرض كيف تمكّن مجموعات المستهلكين عدة تطبيقات من قراءة التدفق نفسه دون أن يعيق بعضها بعضًا، ونبحث في استراتيجيات التوسّع مثل وحدات الإنتاجية والتضخيم التلقائي. سواء كنتم تصممون نظامًا لكشف الاحتيال المالي أو خط أنابيب عالميًا لقياس البيانات عن بُعد، فإن فهم هذه المفاهيم الأساسية أمر حاسم لنجاحكم.
إذا كنتم تفضّلون التعمق عبر الاستماع، فلا تفوتوا حلقة البودكاست ذات الصلة بعنوان Azure Event Hubs - Simply Explained، حيث نشرح هذه الأنماط المعمارية بلغة واضحة وعملية.
مقدمة في بنية Azure Event Hubs
في جوهره، صُمّم Azure Event Hubs ليكون محرك استيعاب أحداث قابلًا للتوسّع الهائل. يمكنه استقبال ومعالجة ملايين الأحداث في الثانية بزمن استجابة منخفض للغاية، ليكون بمثابة البوابة الأمامية لخطوط أنابيب البيانات الضخمة في السحابة. فكّروا فيه كمرآب سيارات ضخم ومنظّم للغاية لحزم البيانات. يضع المنتجون، مثل تطبيقات الجوال وسجلات الخوادم أو مستشعرات المصانع، حمولاتهم داخل المركز، ويتولى المستهلكون، مثل Azure Stream Analytics وAzure Functions أو خدمات العمال المخصصة، التقاطها ومعالجتها.
على خلاف قوائم الرسائل التقليدية التي تحتفظ بالرسائل حتى يقرّ مستهلك فردي باستلامها (وعندها تُحذف الرسالة)، يعمل Azure Event Hubs وفق نموذج البث. تُلحق البيانات بسجل غير قابل للتغيير. وهذا يعني أن أنظمة المصب المتعددة يمكنها قراءة تدفق البيانات نفسه بشكل مستقل، وبالوتيرة التي تناسبها، دون إتلاف البيانات للقرّاء الآخرين. وللتعامل مع السرعة الهائلة لأحمال العمل الحديثة، يعتمد Event Hubs على بنية موزّعة مبنية على مفهومين أساسيين: الأقسام ومجموعات المستهلكين.
فهم الأقسام للمعالجة المتوازية
إذا أردتم تحقيق إنتاجية عالية، فلا يمكنكم تمرير كل البيانات الواردة عبر نقطة اختناق واحدة للمعالجة. هنا تأتي أهمية الأقسام. القسم هو ببساطة تسلسل متميز من الأحداث محفوظ داخل مركز الأحداث. وعند إنشاء مركز أحداث، يجب تحديد عدد الأقسام، وعادةً ما يتراوح بين 2 و32 قسمًا في الطبقات القياسية، مع أن الحدود الأعلى متاحة للبيئات المخصصة.
عندما يرسل المنتجون الأحداث، يمكنهم تضمين مفتاح قسم، مثل معرّف الجهاز أو معرّف المستخدم أو منطقة المعاملة. يأخذ Event Hubs تجزئة (Hash) لهذا المفتاح ويوجّه الحدث إلى قسم محدد. وهذا يضمن أن جميع الأحداث التي تشترك في المفتاح نفسه تستقر دائمًا في القسم ذاته، مما يحافظ على الترتيب الصارم للبيانات المرتبطة.
تكمن الفائدة الحقيقية للأقسام في المعالجة المتوازية. فبتقسيم تدفق البيانات الكلي إلى شرائح مستقلة متعددة، يمكن لمثيلات متعددة من المستهلكين القراءة من أقسام مختلفة في وقت واحد. فعلى سبيل المثال، إذا كان لمركز الأحداث لديكم 16 قسمًا، يمكنكم نشر تطبيق مستهلك بـ 16 مثيل قراءة منفصلًا، يُخصَّص كل منها لقسم واحد. يضمن نموذج التوسّع الأفقي هذا أن تنمو قدرة معالجة بياناتكم بشكل خطي مع زيادة حجم أحمال العمل.
الاستفادة من مجموعات المستهلكين لاستهلاك بيانات مستقل
في بيئة مؤسسية معقدة، نادراً ما يستخدم فريق واحد تدفق بيانات واحداً. قد يرغب مركز عمليات الأمان لديكم في فحص السجلات بحثاً عن الحالات الشاذة، وقد يرغب فريق علوم البيانات في إدخال القياسات عن بُعد إلى نموذج تعلم آلي، وقد يرغب قسم الفوترة في تتبع مقاييس الاستخدام، وكل ذلك من تدفق الأحداث الوارد نفسه.
تحل Azure Event Hubs هذا التحدي من خلال مجموعات المستهلكين (Consumer Groups). تمثل مجموعة المستهلكين عرضاً كاملاً لمركز الأحداث بأكمله، وتعمل كمؤشر أو كأداة لحفظ المواضع المرجعية. وبإنشاء عدة مجموعات مستهلكين، يمكن لعدة تطبيقات مستهلكة أن تقرأ تدفق الأحداث في الوقت نفسه، من البداية حتى النهاية، وبشكل مستقل عن بعضها البعض.
لأن كل مجموعة مستهلكين تحتفظ بإزاحة (Offset) خاصة بها، أي المؤشر الذي يحدد الأحداث التي تمت قراءتها، يمكن للتطبيق A معالجة الأحداث في الوقت الفعلي، بينما قد يتأخر التطبيق B عن الركب أو يعيد تشغيل بيانات تاريخية من وقت سابق من اليوم، دون أن يتداخل أي منهما مع الآخر. هذا الفصل بين المنتجين والمستهلكين هو ما يجعل Event Hubs مركز تكامل مرناً لبنى المؤسسات الحديثة.
استراتيجيات التوسع: Throughput Units وProcessing Units وAuto-Inflation
تُعد إدارة السعة بفعالية من أهم مسؤوليات مهندس السحابة. توفر Azure Event Hubs مستويات تسعير مرنة وآليات توسع تضمن بقاء بنيتك عالية الأداء وفعالة من حيث التكلفة تحت أحمال متفاوتة.
بالنسبة لمستوى Standard، تُقاس السعة بوحدات الإنتاجية (Throughput Units أو TUs). توفر وحدة الإنتاجية الواحدة سعة إدخال قدرها 1 ميغابايت/ثانية وسعة إخراج قدرها 2 ميغابايت/ثانية، إلى جانب ما يصل إلى 1,000 حدث وارد في الثانية لكل وحدة. وإذا ارتفعت حركة المرور فجأة، فقد يكون التوسيع اليدوي مرهقاً ومعرضاً للأخطاء البشرية. ولحسن الحظ، تتضمن Event Hubs ميزة توسيع تلقائي أصلية تُعرف باسم Auto-Inflate.
عند تفعيل Auto-Inflate، تقوم Azure تلقائياً بزيادة عدد وحدات الإنتاجية وفقاً لحجم حركة المرور، مما يمنع التقييد ويضمن ألا تفقد قناة الاستيعاب لديكم أي حزم بيانات أثناء الارتفاعات غير المتوقعة. أما المؤسسات التي تتطلب موارد حوسبة مخصصة ومعزولة مع ضمانات أداء متوقعة، فتقدم مستويات Premium وDedicated وحدات المعالجة (Processing Units أو PUs)، التي توفر حدوداً أعلى، ولا تتأثر بتداخل الجيران المزعج (Noisy-Neighbor)، وتوفر عزلاً بمستوى المؤسسات.
موثوقية البيانات والاستبقاء والتعافي من الكوارث
عند التعامل مع القياسات عالية السرعة وسجلات الأعمال الحرجة، يصبح فقدان البيانات أمراً غير مقبول بتاتاً. تتضمن Azure Event Hubs آليات قوية تضمن متانة البيانات وتوافرها العالي.
تُنسخ البيانات المكتوبة إلى Event Hubs عبر عدة نطاقات أخطاء داخل منطقة Azure الواحدة افتراضياً. علاوة على ذلك، يحتفظ مستوى Standard بالبيانات لمدة تصل إلى 7 أيام، بينما تمدد مستويات Premium وDedicated فترة الاستبقاء حتى 90 يوماً. تتيح نافذة الاستبقاء هذه للتطبيقات التعافي من الانقطاعات الممتدة عبر إعادة تشغيل البيانات من نقطة زمنية محددة.
بالنسبة للتطبيقات الحرجة التي تتطلب الحماية من انقطاعات المناطق، توفر Azure ميزتي Geo-Disaster Recovery والنسخ المتماثل الجغرافي. وبإقران مساحة اسم أساسية بمساحة اسم ثانوية في منطقة Azure مقترنة، يمكن للمؤسسات تحويل مسارات بياناتها بسرعة إلى الموقع البديل عند وقوع كارثة، بما يلبي متطلبات صارمة لزمن الاستعادة المستهدف (RTO) ونقطة الاستعادة المستهدفة (RPO).
مقارنة بين Azure Event Hubs وAzure Service Bus وApache Kafka
يجد المهندسون المعماريون في كثير من الأحيان صعوبة في اختيار خدمة المراسلة المناسبة في Azure، لأن المحفظة تتضمن عدة خيارات قوية. ولاتخاذ القرار الصحيح، من المفيد فهم كيفية مقارنة Event Hubs بكل من Azure Service Bus وApache Kafka.
صُممت Azure Service Bus لأنماط المراسلة المؤسسية، وتركز على ضمانات متينة مثل المعاملات، والرسائل غير المسلَّمة (Dead-Lettering)، والجلسات، والتوجيه المعقد من نوع Pub/Sub، وذلك لأحجام بيانات متوسطة نسبياً. في المقابل، صُممت Azure Event Hubs خصيصاً لاستيعاب القياسات عن بُعد بأحجام ضخمة ومعالجة التدفقات عالية الإنتاجية. وإذا كنت بحاجة إلى معالجة ملايين الأحداث الخفيفة في الثانية، فإن Event Hubs أكثر فعالية من حيث التكلفة والأداء بكثير من Service Bus.
مقارنةً بـ Apache Kafka مفتوح المصدر، توفر Azure Event Hubs ميزة تشغيلية واضحة: فهي خدمة مُدارة بالكامل. لا حاجة لإدارة المجموعات، أو إعداد Zookeeper، أو التعامل مع تحديثات نظام التشغيل. كما توفر Event Hubs نقطة نهاية متوافقة مع Kafka، ما يتيح للتطبيقات القائمة على Kafka الاتصال بـ Azure Event Hubs مع تعديلات بسيطة جدًا على الشيفرة، فتحصل على أفضل ما في العالمين.
أفضل الممارسات لتصميم مسارات بث بيانات موثوقة
يتطلب تصميم مسار بث بيانات بمستوى المؤسسات تخطيطًا دقيقًا والالتزام بأفضل الممارسات المعتمدة. وختامًا لاستكشافنا المعماري، احرصوا على الأخذ بهذه التوصيات الرئيسية:
- خطّطوا لعدد الأقسام بعناية: تذكّروا أنه بينما يمكنكم توسيع وحدات الإنتاجية ديناميكيًا، فإن عدد الأقسام يُحدَّد ثابتًا عند إنشاء مركز الأحداث. اختاروا عددًا يستوعب النمو المستقبلي دون أن يُدخل تنسيقًا زائدًا لا حاجة له.
- اختاروا مفاتيح الأقسام المناسبة: استخدموا مفاتيح أقسام ذات معنى لضمان توزيع متوازن للبيانات على الأقسام، وتجنّبوا "الأقسام الساخنة" التي يستحوذ فيها مفتاح واحد على الموارد.
- طبّقوا معالجة أخطاء متينة: ابنوا سياسات إعادة المحاولة وآليات الرسائل الميتة في تطبيقات المستهلكين للتعامل مع الرسائل التالفة وأعطال الشبكة العابرة بسلاسة.
- راقبوا حالات التقييد: استخدموا Azure Monitor لتتبع مقاييس مثل الطلبات الواردة، والطلبات المقيَّدة، وصحة الأقسام، لضمان بقاء تطبيقكم ضمن حدوده المخصصة.
بإتقان الأقسام، ومجموعات المستهلكين، واستراتيجيات التوسيع، يمكنكم بناء مسارات بث بيانات لا تتميز بالسرعة الفائقة فحسب، بل بالمرونة وقابلية التوسع والجاهزية لأي حجم بيانات تواجهه مؤسستكم.
في هذه التدوينة، استعرضنا البنية الأساسية لـ Azure Event Hubs، موضحين كيف تتيح الأقسام التنفيذ المتوازي، وكيف تفصل مجموعات المستهلكين أعباء العمل المستقلة، وكيف تحافظ آليات التوسيع التلقائي على سلاسة عمل تطبيقاتكم تحت الضغط. وللبدء، أنشئوا مساحة أسماء Event Hubs من بوابة Azure، وأعدّوا مجموعة المستهلكين الأولى، ثم ربطوا معالج البث.
لتعميق معرفتكم والاستماع إلى نقاشات واقعية حول هذا الموضوع، لا تفوتوا حلقتنا البودكاست المخصصة: Azure Event Hubs - Simply Explained. تبنّوا قوة بث البيانات في الوقت الفعلي، وحوّلوا سير عمل هندسة البيانات في مؤسستكم اليوم! 🚀
الأسئلة المتداولة
ما هي Azure Event Hubs؟
Azure Event Hubs منصة بث أحداث مُدارة بالكامل وعالية الإنتاجية، قادرة على استيعاب ومعالجة ملايين الأحداث في الثانية بزمن استجابة منخفض، ما يجعلها مثالية لمسارات البيانات الفورية الحديثة.
كيف تعمل الأقسام في Azure Event Hubs؟
تقسّم الأقسام تدفق البيانات الكامل إلى تسلسلات مستقلة. يوجّه المنتجون الأحداث إلى الأقسام باستخدام مفتاح قسم، ما يتيح لعدة نسخ من المستهلكين قراءة البيانات بالتوازي وتعظيم إنتاجية المعالجة.
ما الفرق بين مركز الأحداث ومجموعة المستهلكين؟
مركز الأحداث هو مستودع السجل المركزي للأحداث الواردة، بينما تمثل مجموعة المستهلكين عرضًا مستقلًا لهذا التدفق. تتيح مجموعات المستهلكين المتعددة لتطبيقات مختلفة قراءة البيانات نفسها بشكل مستقل دون التداخل مع بعضها.
هل يمكنني توسيع Azure Event Hubs تلقائيًا؟
نعم. بتفعيل ميزة Auto-Inflate على مساحات الأسماء من فئة Standard، تزيد Azure تلقائيًا وحدات الإنتاجية المخصصة لديك مع نمو حجم الحركة، ما يمنع تقييد الأداء.
كم مدة الاحتفاظ بالبيانات في Azure Event Hubs؟
تعتمد مدة الاحتفاظ بالبيانات على فئة التسعير لديك. تحتفظ فئة Standard بالبيانات لمدة تصل إلى 7 أيام، بينما تتيح فئتا Premium وDedicated الاحتفاظ بالبيانات لمدة تصل إلى 90 يومًا.
هل Azure Event Hubs متوافقة مع Apache Kafka؟
نعم. توفر Azure Event Hubs نقطة نهاية أصلية متوافقة مع Kafka، ما يتيح لتطبيقات عملاء Apache Kafka والأدوات الحالية التواصل مع Event Hubs دون الحاجة إلى إعادة كتابة شيفرتكم البرمجية.
🎧 استمعوا إلى هذه الحلقة
هل تريدون شرحًا عمليًا بالصوت لـ Azure Event Hubs؟ تفصّل هذه الحلقة البنية المعمارية بلغة واضحة، وتوضح لماذا تهم لتطوير السحابة الحديث، وتحليلات المؤسسات، والتطبيقات القابلة للتوسع.
استمعوا إلى هذه الحلقة إذا كنتم تريدون:
- فهم الآليات الأساسية وراء أقسام Azure Event Hubs (Partitions) وقابلية التوسع
- اطّلع على كيفية تناسب بنى البث المباشر ضمن منظومة Microsoft Azure الأوسع
- تعرّف على المواضع التي يحقق فيها بث الأحداث قيمة عملية للأعمال في مؤسستك
قد تستمتع أيضاً بحلقات M365 FM ذات الصلة:
اكتشف المزيد من الحوارات العملية حول السحابة وتقنيات Microsoft على M365 FM.
آخر مراجعة: يوليو 2026.
لمن يُنصح بالاستماع
هذه الحلقة ضرورية لمسؤولي Azure ومهندسي المؤسسات ومطوري البرمجيات وقادة التقنية الذين يحتاجون إلى أساس عملي متين قبل تصميم بنى البث المباشر أو حوكمتها أو تشغيلها.
🎧 استمع أيضاً إلى
- Azure Event Grid — خطوة عملية تالية لاستكشاف مراسلة السحابة التفاعلية.
- Azure Service Bus — تعرّف على متى تستخدم طوابير الرسائل مقابل تدفقات الأحداث.
- Azure Functions — اكتشف كيفية معالجة تدفقات الأحداث بأسلوب بلا خوادم (Serverless).