ما المقصود بالبيانات المتدفقة؟

بيانات التدفق هي البيانات التي يتم إصدارها بكميات كبيرة بطريقة مستمرة وتدريجية بهدف المعالجة بزمن انتقال منخفض. تمتلك المؤسسات الآلاف من مصادر البيانات التي عادةً ما ترسل في الوقت نفسه رسائل أو سجلات أو بيانات يتراوح حجمها من بضع بايتات إلى عدة ميجابايت (MB). تتضمن بيانات التدفق بيانات الموقع الجغرافي والحدث والمستشعرات التي تستخدمها الشركات لإجراء التحليلات في الوقت الفعلي والاطلاع على تفاصيل جوانب عدة من أعمالها. على سبيل المثال، يمكن للشركات تتبع التغييرات في مدى توافق الآراء عامةً بشأن علاماتها التجارية ومنتجاتها من خلال إجراء التحليل المستمر لتدفق النقرات ومشاركات العملاء من تدفقات وسائل التواصل الاجتماعي ثم الاستجابة على الفور حسب الحاجة.

ما هي خصائص بيانات التدفق؟

يتسم تدفق البيانات بالخصائص المحددة التالية التي تميّزه.

أهمية زمنية

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

يتدفق باستمرار

تدفق البيانات ليس له بداية أو نهاية. يجمع البيانات بشكل مستمر طالما كان ذلك مطلوبًا. على سبيل المثال، تتراكم سجلات نشاط الخادم طالما يعمل الخادم.

فريد

يعد النقل المتكرر لتدفق البيانات أمرًا صعبًا بسبب الحساسية للوقت. ومن ثم، فإن معالجة البيانات الدقيقة في الوقت الفعلي أمر بالغ الأهمية. للأسف، فإن أحكام إعادة الإرسال محدودة في معظم مصادر البيانات المتدفقة.

غير متجانس

قد تقوم بعض المصادر بتدفق البيانات بتنسيقات متعددة موجودة في تنسيقات منظمة، مثل JSON وAvro والقيم المفصولة بفواصل (CSV)، مع أنواع البيانات التي تتضمن سلاسل وأرقام وتواريخ وأنواع ثنائية. يجب أن تتمتع أنظمة معالجة التدفق بالقدرات اللازمة للتعامل مع مثل هذه الاختلافات في البيانات.

غير مثالي

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

ما أهمية البيانات المتدفقة؟

تسجِّل أنظمة معالجة البيانات التقليدية البيانات في مستودع بيانات مركزي وتعالجها في مجموعات أو دفعات. تم إنشاء هذه الأنظمة لاستيعاب البيانات وهيكلتها قبل إجراء التحليلات. ومع ذلك، في السنوات الأخيرة، تغيرت طبيعة بيانات المؤسسة وأنظمة معالجة البيانات الأساسية بشكل كبير.

حجم البيانات غير المحدود

يمكن أن تكون أحجام البيانات المُنشأة من مصادر التدفق كبيرة جدًا، ما يجعل من الصعب على التحليلات في الوقت الفعلي تنظيم سلامة البيانات المتدفقة (التحقق من صحتها) أو بنيتها (التطور) أو سرعتها (معدل النقل ووقت الاستجابة).

أنظمة معالجة البيانات المتقدمة

في الوقت نفسه، أضافت البنية الأساسية السحابية المرونة في حجم موارد الحوسبة وفي استخدامها. أنت تستخدم بالضبط ما تحتاجه وتدفع فقط مقابل ما تستخدمه. لديك خيارات الفلترة أو التجميع في الوقت الفعلي قبل تخزين البيانات المتدفقة وبعد ذلك. تستخدم بنية تدفق البيانات تقنيات السحابة لاستهلاك البيانات المتدفقة وإثرائها وتحليلها وتخزينها بشكل دائم كما هو مطلوب.

ما حالات استخدام البيانات المتدفقة؟

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

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

في ما يلي بعض الأمثلة على البيانات المتدفقة.

تحليل البيانات

تعالج التطبيقات تدفقات البيانات لإنتاج تقارير وتنفيذ إجراءات كاستجابة، مثل إصدار أصوات إنذار عندما تتجاوز الإجراءات الرئيسية حدودًا معينة. تستخلص تطبيقات معالجة التدفق الأكثر تعقيدًا رؤى أعمق من خلال تطبيق خوارزميات تعلّم الآلة على بيانات نشاط العملاء والعمل.

تطبيقات إنترنت الأشياء

تعد أجهزة إنترنت الأشياء (IoT) حالة استخدام أخرى للبيانات المتدفقة. ترسل المستشعرات في المركبات والمعدات الصناعية والأجهزة الزراعية البيانات إلى تطبيق تدفق. يراقب التطبيق الأداء ويكتشف أي عيوب محتملة مسبقًا ويضع طلب قطعة الغيار تلقائيًا، ما يمنع حدوث وقت تعطل المعدات.

تحليل مالي

تستخدم المؤسسات المالية بيانات التدفق لتتبع التغييرات في الوقت الفعلي في سوق الأسهم، ويحسب القيمة المعرضة للخطر ويعيد تلقائيًا موازنة الحقائب الاستثمارية بناء على التقلبات في أسعار السوق. هناك حالة استخدام مالي أخرى وهي الكشف عن عمليات الاحتيال في معاملات بطاقات الائتمان باستخدام الاستدلال الفوري على بيانات المعاملات المتدفقة.

توصيات في الوقت الحقيقي

تتعقب تطبيقات العقارات بيانات تحديد الموقع الجغرافي من أجهزة المستهلكين المحمولة، وتقدم توصيات في الوقت الفعلي للعقارات المراد زيارتها. وبالمثل، يمكن أن تدمج تطبيقات الإعلانات والأطعمة والبيع بالتجزئة والمستهلكين توصيات في الوقت الفعلي لإعطاء قيمة أكبر للعملاء.

ضمانات الخدمة

يمكنك تنفيذ معالجة تدفق البيانات لتتبع مستويات الخدمة والحفاظ عليها في التطبيقات والمعدات. على سبيل المثال، يجب أن تحافظ شركة الطاقة الشمسية على معدل إنتاجية الطاقة لعملائها وإلّا تدفع غرامات. فتنفّذ تطبيق البيانات المتدفقة يعمل على مراقبة جميع اللوحات في الميدان وجدولة الخدمة في الوقت الفعلي. وبالتالي، يمكن أن تقلل فترات الإنتاجية المنخفضة لكل لوحة والغرامات المترتبة عليها.

الوسائط والألعاب

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

التحكم في المخاطر

يسجّل التدفق المباشر ومنصات التواصل الاجتماعي بيانات سلوك المستخدم في الوقت الفعلي للتحكم في المخاطر على النشاط المالي لدى المستخدمين، مثل إعادة الشحن واسترداد الأموال والمكافآت. وهم يشاهدون لوحات المعلومات في الوقت الفعلي لتعديل إستراتيجيات المخاطر بمرونة.

ما الفرق بين البيانات الدفعية والبيانات المتدفقة؟

المعالجة الدفعية هي الطريقة التي تستخدمها أجهزة الكمبيوتر في إكمال مهام البيانات المتكررة ذات الحجم الكبير بصفة دورية. يمكنك استخدامها في حوسبة استعلامات عشوائية عبر مجموعات مختلفة من البيانات. وهي تستخلص عادةَ نتائج الحوسبة من كل البيانات التي تحتوي عليها وتتيح إمكانية إجراء تحليل عميق لمجموعات البيانات الكبيرة. النظم القائمة على MapReduce، مثل Amazon EMR، عبارة عن أمثلة لنظم أساسية تدعم المهام المجمعة.

في المقابل، تتطلب معالجة التدفق استيعاب تسلسل بيانات، وتحديث القياسات والتقارير والإحصاءات الموجزة بشكل متزايد كاستجابة لكل سجل بيانات وارد. وهي أكثر ملاءمة لوظائف التحليل والاستجابة في الوقت الفعلي.

  المعالجة الدفعية

المعالجة المتدفقة

نطاق البيانات

الاستعلامات أو المعالجة عبر كل البيانات في مجموعة البيانات أو أغلبها.

الاستعلامات أو المعالجة عبر البيانات في إطار زمني متغير أو في سجل البيانات الأحدث فقط.

حجم البيانات


الدفعات الكبيرة من البيانات.

السجلات الفردية أو الدفعات الصغيرة التي تتألف من سجلات قليلة.

الأداء

  تمتد أزمنة الاستجابة من دقائق إلى ساعات.

تتطلب زمن استجابة في حدود وحدات من الثانية أو المللي ثانية.

التحليل

تحليلات معقدة. وظائف استجابة بسيطة وعمليات تجميع وقياسات متغيرة.

تنشئ مؤسسات كثيرة نموذجًا هجينًا عن طريق الجمع بين الأسلوبين للحفاظ على الأداء في الوقت الفعلي وعلى دفعات. على سبيل المثال، يمكنك أولاً معالجة البيانات في منصة تدفق البيانات، مثل Amazon Kinesis لاستخلاص رؤى في الوقت الفعلي. بعد ذلك، يمكنك الاحتفاظ بها في مخزن، مثل خدمة التخزين البسيطة في Amazon (‏Amazon S3). هناك، يمكن تحويلها وتحميلها للعديد من حالات استخدام معالجة الدُفعات.

يتيح Amazon Redshift Streaming Ingestion للمستخدمين استيعاب البيانات مباشرةً من تدفق بيانات Amazon Kinesis بدون الحاجة إلى عرضها في Amazon S3. يمكن للخدمة أيضًا استيعاب البيانات من Amazon Managed Streaming for Apache Kafka (‏Amazon MSK) إلى Amazon Redshift.

كيف يمكنك معالجة البيانات المتدفقة؟

تحتوي بنية البيانات المتدفقة على نوعين رئيسيين من المكونات.

منتِجو التدفق

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

مستهلكو التدفق

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

تنفيذ البنية

لتنفيذ هندسة البيانات المتدفقة، فإنك تحتاج إلى طبقات تخزين ومعالجة. يجب أن تدعم طبقة التخزين ترتيب السجلات والاتساق القوي لتمكين عمليات القراءة والكتابة السريعة وغير المكلفة والقابلة لإعادة التشغيل لتدفقات البيانات الكبيرة. طبقة المعالجة مسؤولة عن استخدام البيانات الواردة من طبقة التخزين، وتشغيل عمليات الحوسبة على البيانات، ثم إبلاغ طبقة التخزين بأن تحذف البيانات التي لم تعد مطلوبة.

ما هي صعوبات العمل باستخدام بيانات التدفق؟

تتطلب بنية البيانات المتدفقة اعتبارات خاصة بسبب طبيعة البيانات وحجمها.

التوفر

تتطلب تطبيقات تدفق البيانات الاتساق، وزمن انتقال منخفض، وتوافرًا عاليًا. يأخذ المستهلكون باستمرار بيانات جديدة من التدفق لمعالجتها. قد يؤدي التأخير من جانب المنتج إلى نسخ النظام احتياطيًا والتسبب في حدوث أخطاء.

قابلية التوسع

يمكن أن تزداد تدفقات البيانات الخام بسرعة وبشكل غير متوقع. على سبيل المثال، تزداد منشورات وسائل التواصل الاجتماعي خلال حدث رياضي كبير. لذلك، يجب أن يعطي النظام الأولوية لتسلسل البيانات المناسب، والتوافر، والاتساق، حتى أثناء ذروة الأعباء.

قوة التحمل

بسبب حساسية الوقت للبيانات، يجب أن يكون نظام معالجة التدفق متسامحًا مع الأخطاء. وإلّا ستفقد البيانات إلى الأبد في حالة انقطاع التيار أو التعطّل.

كيف يمكن لـ AWS دعم متطلبات بيانات البث الخاصة بك؟

توفر AWS خيارات عديدة للعمل باستخدام البيانات المتدفقة. 

Amazon Kinesis

Kinesis عبارة عن منصة لتدفق البيانات على AWS. إنه يوفر خدمات فعّالة تجعل من السهل تحميل البيانات المتدفقة وتحليلها، ويسمح لك أيضًا بإنشاء تطبيقات بيانات متدفقة مخصصة لتلبية الاحتياجات المتخصصة.

يوفر Kinesis ثلاث خدمات: Amazon Kinesis Data Firehose، وتدفق بيانات Amazon Kinesis، وAmazon Managed Streaming for Apache Kafka (‏Amazon MSK).

Kinesis Data Firehose

بإمكان Kinesis Data Firehose تسجيل البيانات المتدفقة وتحميلها تلقائيًا إلى خدمة التخزين البسيطة في Amazon (‏Amazon S3) وAmazon Redshift. يتيح لك ذلك إجراء تحليلات في الوقت الفعلي باستخدام لوحات المعلومات وأدوات المعلومات التجارية الحالية التي تستخدمها بالفعل اليوم.

Kinesis Data Streams

تستطيع Kinesis Data Streams أن ترصد باستمرار وتخزن بيانات بالتيرابايت كل ساعة من مئات الآلاف من المصادر. وهي تدعم اختيارك من إطار عمل معالجة التدفق، بما في ذلك Amazon Kinesis Client Library (‏KCL) وApache Storm وApache Spark Streaming.

Amazon MSK

Amazon MSK هي خدمة مُدارة بالكامل تسهِّل لك تصميم التطبيقات وتشغيلها باستخدام Apache Kafka لمعالجة تدفق البيانات. Apache Kafka هي منصة مفتوحة المصادر لإنشاء تطبيقات ومسارات تدفق البيانات في الوقت الفعلي. 

Amazon Redshift

يسمح Amazon Redshift Streaming Ingestion للمستخدمين باستيعاب البيانات المتدفقة إلى مستودع بياناتهم للحصول على تحليلات في الوقت الفعلي من عدة تدفقات بيانات Kinesis. يمكنك إجراء تحليلات غنية باستخدام لغة SQL المألوفة، وإنشاء مسارات الاستخراج والانتقال والتحميل (ELT) وإدارتها بسهولة. يتيح لك أيضًا معالجة كميات كبيرة من البيانات المتدفقة بزمن انتقال منخفض وإنتاجية عالية لاستخراج رؤى في ثوانٍ.

حلول التدفق الأخرى على Amazon EC2

يمكنك تثبيت أنظمة تدفق البيانات الأساسية التي تختارها على سحابة الحوسبة المرنة لـ Amazon (‏Amazon EC2) وAmazon EMR وإنشاء تخزين التدفق وطبقات المعالجة المخصصة. نتيجة لذلك، يمكنك تجنّب تعقيد توفير البنية الأساسية، بالإضافة إلى الوصول إلى العديد من أطر عمل تخزين ومعالجة التدفق. تتضمن خيارات طبقة تخزين البيانات Amazon MSK وApache Flume. تتضمن خيارات طبقة معالجة التدفق Apache Spark Streaming وApache Storm.

ابدأ بدفق البيانات على AWS من خلال إنشاء حساب AWS مجاني اليوم!

الخطوات التالية لتدفق البيانات في AWS

التحقق من الموارد الإضافية المتعلقة بالمنتج
الاطلاع على عروض مجانية خاصة بخدمات التحليلات في السحابة 
تسجيل الاشتراك للحصول على حساب مجاني

تمتع بالوصول الفوري إلى الطبقة المجانية من AWS. 

تسجيل الاشتراك 
بدء إنشاء وحدة تحكم

البدء في بناء وحدة التحكم في إدارة AWS.

تسجيل الدخول