إليك كيفية عمل هذه التقنيات معًا:
هندسة خطوط البيانات:
-
MySQL: المصدر الأساسي للبيانات المنظمة.
-
TiDB: قاعدة بيانات SQL موزعة متوافقة مع MySQL، تُستخدم لقابلية التوسع والتوافر العالي.
-
كافكا: نظام المراسلة لتدفق البيانات في الوقت الحقيقي.
-
Logstash: أداة خط أنابيب معالجة البيانات التي تستوعب البيانات من مصادر مختلفة وترسلها إلى وجهات مختلفة.
-
Redis: طبقة التخزين المؤقت للوصول السريع إلى البيانات التي يتم الوصول إليها بشكل متكرر.
-
Elasticsearch: محرك بحث وتحليل للاستعلام عن كميات كبيرة من البيانات.
-
CloudCanal: أداة تكامل البيانات تستخدم لمزامنة البيانات من مصادر مختلفة مثل MySQL إلى TiDB، وKafka، وRedis، وElasticsearch.
تفاصيل سير العمل:
1. إدخال البيانات:
- تقوم التطبيقات بحفظ البيانات في MySQL.
- يتم استخدام CloudCanal لمزامنة البيانات من MySQL إلى TiDB وKafka.
2. تدفق البيانات ومعالجتها:
كافكا:
- يستوعب كافكا البيانات من MySQL عبر CloudCanal ويبثها إلى مواضيع مختلفة.
- تحتوي المواضيع على تدفقات من أحداث البيانات التي يمكن معالجتها بواسطة العديد من المستهلكين.
سجل السجل:
- يعمل Logstash كمستهلك لـ Kafka، ويعالج البيانات من Kafka، ويرسلها إلى مخرجات مختلفة مثل Elasticsearch وRedis.
3. تخزين البيانات واسترجاعها:
TiDB:
- يعمل TiDB كحل قاعدة بيانات قابل للتطوير ومتوفر للغاية ويمكنه التعامل مع كميات كبيرة من البيانات.
- TiDB متوافق مع MySQL، مما يجعل التكامل والانتقال من MySQL أمرًا سهلاً.
ريديس:
- يتم استخدام Redis كطبقة تخزين مؤقت للبيانات التي يتم الوصول إليها بشكل متكرر من MySQL أو الأحداث المعالجة من Kafka.
- يمكن للتطبيقات الاستعلام عن Redis أولاً قبل الاستعلام عن MySQL لتسريع عملية استرجاع البيانات.
البحث المرن:
- يمكن لـ Logstash استيعاب البيانات من Kafka وإرسالها إلى Elasticsearch.
- يقوم Elasticsearch بفهرسة البيانات للبحث والتحليلات السريعة.
- يمكن للتطبيقات الاستعلام عن Elasticsearch للحصول على إمكانات البحث المتقدمة والتحليلات في الوقت الفعلي.
مثال لتدفق البيانات:
إدخال البيانات في MySQL:
- يقوم المستخدم بإدخال سجل جديد في قاعدة بيانات MySQL.
- يراقب CloudCanal التغييرات في MySQL ويرسل الأحداث إلى موضوعات TiDB وKafka.
المعالجة في الوقت الفعلي:
- كافكا يبث الحدث إلى موضوع ما.
- يعمل Logstash كمستهلك لـ Kafka، ويعالج الحدث، ويرسل البيانات التي تم تحليلها إلى Elasticsearch للفهرسة.
- في الوقت نفسه، يتم تحديث Redis لتخزين البيانات الجديدة مؤقتًا.
الدخول الى البيانات:
- يقوم التطبيق بفحص ذاكرة التخزين المؤقت لـ Redis بحثًا عن البيانات.
- إذا لم تكن البيانات موجودة في ذاكرة التخزين المؤقت، فسيتم الاستعلام عن MySQL أو TiDB.
- بالنسبة للاستعلامات والتحليلات المعقدة، يستعلم التطبيق Elasticsearch.
هذا فقط لملاحظاتي. منظمة معاهدة الأمن الجماعي