عملية ETL (الاستخراج والتحويل والتحميل) في مستودع البيانات
ما هو ETL؟
ETL هي عملية تستخرج البيانات من أنظمة مصدر مختلفة، ثم تقوم بتحويل البيانات (مثل تطبيق العمليات الحسابية والتسلسلات وما إلى ذلك) وأخيرًا تحميل البيانات إلى نظام مستودع البيانات. الشكل الكامل لـ ETL هو الاستخراج والتحويل والتحميل.
من المغري أن نعتقد أن إنشاء مستودع بيانات هو ببساطة استخراج البيانات من مصادر متعددة وتحميلها في قاعدة بيانات مستودع البيانات. هذا بعيد كل البعد عن الحقيقة ويتطلب عملية ETL معقدة. تتطلب عملية ETL مدخلات نشطة من أصحاب المصلحة المختلفين بما في ذلك المطورين والمحللين والمختبرين وكبار المديرين التنفيذيين وهي صعبة من الناحية الفنية.
من أجل الحفاظ على قيمته كأداة لصانعي القرار، يحتاج نظام مستودع البيانات إلى التغيير مع تغييرات الأعمال. يعد ETL نشاطًا متكررًا (يوميًا وأسبوعيًا وشهريًا) لنظام مستودع البيانات ويجب أن يكون مرنًا وآليًا وموثقًا جيدًا.
لماذا تحتاج ETL؟
هناك العديد من الأسباب لاعتماد ETL في المنظمة:
- فهو يساعد الشركات على تحليل بيانات أعمالها لاتخاذ قرارات العمل الحاسمة.
- لا تستطيع قواعد البيانات المعاملاتية الإجابة على أسئلة الأعمال المعقدة التي يمكن الإجابة عليها من خلال مثال ETL.
- يوفر مستودع البيانات مستودعًا مشتركًا للبيانات
- يوفر ETL طريقة لنقل البيانات من مصادر مختلفة إلى مستودع البيانات.
- مع تغير مصادر البيانات، سيتم تحديث مستودع البيانات تلقائيًا.
- يعد نظام ETL المصمم جيدًا والموثق أمرًا ضروريًا تقريبًا لنجاح مشروع مستودع البيانات.
- السماح بالتحقق من قواعد تحويل البيانات وتجميعها وحساباتها.
- تسمح عملية ETL بمقارنة بيانات العينة بين المصدر والنظام المستهدف.
- يمكن لعملية ETL إجراء تحويلات معقدة وتتطلب مساحة إضافية لتخزين البيانات.
- يساعد ETL على ترحيل البيانات إلى مستودع البيانات. التحويل إلى التنسيقات والأنواع المختلفة للالتزام بنظام واحد ثابت.
- ETL هي عملية محددة مسبقًا للوصول إلى بيانات المصدر ومعالجتها في قاعدة البيانات الهدف.
- يوفر ETL في مستودع البيانات سياقًا تاريخيًا عميقًا للأعمال.
- يساعد على تحسين الإنتاجية لأنه يقنن ويعيد الاستخدام دون الحاجة إلى مهارات تقنية.
عملية ETL في مستودعات البيانات
ETL هي عملية من 3 خطوات
الخطوة 1) الاستخراج
في هذه الخطوة من هندسة ETL، يتم استخراج البيانات من نظام المصدر إلى منطقة التجهيز. يتم إجراء التحويلات، إن وجدت، في منطقة التجهيز حتى لا يتدهور أداء نظام المصدر. أيضًا، إذا تم نسخ البيانات التالفة مباشرة من المصدر إلى قاعدة بيانات مستودع البيانات، فإن التراجع سيكون تحديًا. تتيح منطقة التجهيز فرصة للتحقق من صحة البيانات المستخرجة قبل نقلها إلى مستودع البيانات.
يحتاج مستودع البيانات إلى دمج الأنظمة المختلفة
نظم إدارة قواعد البيانات، الأجهزة، Operaأنظمة وبروتوكولات الاتصالات. يمكن أن تشمل المصادر التطبيقات القديمة مثل الحواسيب المركزية والتطبيقات المخصصة وأجهزة نقطة الاتصال مثل أجهزة الصراف الآلي ومفاتيح الاتصال والملفات النصية وجداول البيانات وتخطيط موارد المؤسسات (ERP) والبيانات من البائعين والشركاء وغيرهم.
ومن ثم يحتاج المرء إلى خريطة بيانات منطقية قبل استخراج البيانات وتحميلها فعليا. تصف خريطة البيانات هذه العلاقة بين المصادر والبيانات المستهدفة.
ثلاث طرق لاستخراج البيانات:
- استخراج كامل
- الاستخراج الجزئي - بدون إشعار التحديث.
- استخراج جزئي - مع إشعار التحديث
وبغض النظر عن الطريقة المستخدمة، يجب ألا يؤثر الاستخراج على الأداء وزمن الاستجابة للأنظمة المصدر. أنظمة المصدر هذه هي قواعد بيانات الإنتاج المباشر. أي تباطؤ أو قفل يمكن أن يؤثر على النتيجة النهائية للشركة.
تتم بعض عمليات التحقق من الصحة أثناء الاستخراج:
- التوفيق بين السجلات والبيانات المصدر
- تأكد من عدم تحميل أي بيانات غير مرغوب فيها/غير مرغوب فيها
- فحص نوع البيانات
- إزالة جميع أنواع البيانات المكررة/المجزأة
- تحقق مما إذا كانت جميع المفاتيح في مكانها أم لا
الخطوة 2) التحول
البيانات المستخرجة من الخادم المصدر هي بيانات أولية وغير قابلة للاستخدام في شكلها الأصلي. لذلك يجب تطهيرها ورسم خرائطها وتحويلها. في الواقع، هذه هي الخطوة الأساسية حيث تضيف عملية ETL قيمة وتغير البيانات بحيث يمكن إنشاء تقارير ذكاء الأعمال (BI) الثاقبة.
إنه أحد مفاهيم ETL المهمة حيث يمكنك تطبيق مجموعة من الوظائف على البيانات المستخرجة. البيانات التي لا تتطلب أي تحويل تسمى التحرك المباشر or تمر عبر البيانات.
في خطوة التحويل، يمكنك إجراء عمليات مخصصة على البيانات. على سبيل المثال، إذا كان المستخدم يريد الحصول على إجمالي إيرادات المبيعات التي لا توجد في قاعدة البيانات. أو إذا كان الاسم الأول واسم العائلة في جدول موجودين في أعمدة مختلفة، فمن الممكن ربطهما قبل التحميل.
فيما يلي البيانات Integrity المشاكل:
- تهجئة مختلفة لنفس الشخص مثل جون وجون وما إلى ذلك.
- هناك طرق متعددة للإشارة إلى اسم الشركة مثل Google وGoogle Inc.
- استخدام أسماء مختلفة مثل كليفلاند، كليفلاند.
- قد تكون هناك حالة يتم فيها إنشاء أرقام حسابات مختلفة بواسطة تطبيقات مختلفة لنفس العميل.
- في بعض البيانات تبقى الملفات المطلوبة فارغة
- يمكن أن يؤدي المنتج غير الصالح الذي تم جمعه في نقطة البيع كإدخال يدوي إلى حدوث أخطاء.
تتم عمليات التحقق خلال هذه المرحلة
- التصفية - حدد أعمدة معينة فقط للتحميل
- استخدام القواعد وجداول البحث لتوحيد البيانات
- تحويل مجموعة الأحرف والتعامل مع الترميز
- تحويل وحدات القياس مثل تحويل التاريخ والوقت، وتحويلات العملة، والتحويلات الرقمية، وما إلى ذلك.
- التحقق من صحة عتبة البيانات. على سبيل المثال، لا يمكن أن يكون العمر أكثر من رقمين.
- التحقق من صحة تدفق البيانات من منطقة التدريج إلى الجداول المتوسطة.
- لا ينبغي ترك الحقول المطلوبة فارغة.
- التنظيف (على سبيل المثال، تعيين NULL إلى 0 أو الجنس ذكر إلى "M" وأنثى إلى "F" وما إلى ذلك)
- تقسيم عمود إلى مضاعفات ودمج أعمدة متعددة في عمود واحد.
- نقل الصفوف والأعمدة،
- استخدم عمليات البحث لدمج البيانات
- استخدام أي عملية تحقق معقدة للبيانات (على سبيل المثال، إذا كان العمودان الأولان في الصف فارغين، فسيتم رفض الصف تلقائيًا من المعالجة)
الخطوة 3) التحميل
يعد تحميل البيانات في قاعدة بيانات مستودع البيانات الهدف الخطوة الأخيرة في عملية ETL. في مستودع البيانات النموذجي، يلزم تحميل حجم ضخم من البيانات في فترة قصيرة نسبيًا (ليالي). ومن ثم، ينبغي تحسين عملية التحميل للأداء.
في حالة فشل التحميل، يجب تكوين آليات الاسترداد لإعادة التشغيل من نقطة الفشل دون فقدان سلامة البيانات. يحتاج مسؤولو مستودع البيانات إلى مراقبة الأحمال واستئنافها وإلغائها وفقًا لأداء الخادم السائد.
أنواع التحميل:
- التحميل الأولي — ملء جميع جداول مستودع البيانات
- الحمل الإضافي - تطبيق التغييرات المستمرة عند الحاجة بشكل دوري.
- تحديث كامل - مسح محتويات جدول واحد أو أكثر وإعادة التحميل ببيانات جديدة.
التحقق من التحميل
- تأكد من أن بيانات الحقل الرئيسية ليست مفقودة أو فارغة.
- اختبار طرق عرض النمذجة بناءً على الجداول المستهدفة.
- تحقق من القيم المجمعة والمقاييس المحسوبة.
- التحقق من البيانات في جدول الأبعاد وكذلك جدول التاريخ.
- تحقق من تقارير BI في جدول الحقائق والأبعاد الذي تم تحميله.
أدوات ETL
هناك العديد أدوات ETL متوفرة في السوق. وإليكم بعض أبرزها:
1. مارك لوجيك:
MarkLogic هو أحد حلول تخزين البيانات التي تجعل تكامل البيانات أسهل وأسرع باستخدام مجموعة من ميزات المؤسسة. يمكنه الاستعلام عن أنواع مختلفة من البيانات مثل المستندات والعلاقات والبيانات التعريفية.
https://www.marklogic.com/product/getting-started/
2. Oracle:
Oracle تُعد قاعدة البيانات الرائدة في الصناعة. فهي توفر مجموعة واسعة من خيارات حلول مستودعات البيانات سواءً في الموقع أو في السحابة. وهي تساعد في تحسين تجارب العملاء من خلال زيادة الكفاءة التشغيلية.
https://www.oracle.com/index.html
3. Amazon أحمرShift:
Amazon Redshift هي أداة مستودع بيانات. إنها أداة بسيطة وفعالة من حيث التكلفة لتحليل جميع أنواع البيانات باستخدام المعايير SQL وأدوات BI الموجودة. كما يسمح أيضًا بتشغيل استعلامات معقدة على بايتات من البيانات المنظمة.
https://aws.amazon.com/redshift/?nc2=h_m1
هنا قائمة كاملة من مفيدة أدوات مستودع البيانات.
أفضل ممارسات عملية ETL
فيما يلي أفضل الممارسات لخطوات عملية ETL:
لا تحاول مطلقًا تنظيف جميع البيانات:
ترغب كل مؤسسة في تنظيف كافة البيانات، ولكن معظمها غير مستعد للدفع مقابل الانتظار أو غير مستعد للانتظار. قد يستغرق تنظيف كل شيء وقتًا طويلاً، لذا من الأفضل عدم محاولة تنظيف جميع البيانات.
لا تنظف أي شيء أبدًا:
خطط دائمًا لتنظيف شيء ما لأن السبب الأكبر لبناء مستودع البيانات هو تقديم بيانات أكثر نظافة وأكثر موثوقية.
تحديد تكلفة تنقية البيانات:
قبل تنظيف جميع البيانات القذرة، من المهم بالنسبة لك تحديد تكلفة التنظيف لكل عنصر من عناصر البيانات القذرة.
لتسريع معالجة الاستعلام، احصل على طرق عرض وفهارس مساعدة:
لتقليل تكاليف التخزين، قم بتخزين البيانات المختصرة على أشرطة الأقراص. كما أن هناك حاجة إلى التوفيق بين حجم البيانات المراد تخزينها واستخدامها التفصيلي. التوفيق بين مستوى تفصيل البيانات لتقليل تكاليف التخزين.
الملخص
- ETL لتقف على الاستخراج والتحويل والتحميل.
- يوفر ETL طريقة لنقل البيانات من مصادر مختلفة إلى ملف مستودع البيانات.
- في عملية الاستخراج الأولى، يتم استخراج البيانات من النظام المصدر إلى منطقة التدريج.
- في خطوة التحويل، يتم تنظيف البيانات المستخرجة من المصدر وتحويلها.
- يعد تحميل البيانات في مستودع البيانات المستهدف الخطوة الأخيرة في عملية ETL.