سنستعرض في مقالنا هذا ما هي هندسة البيانات وما أبرز مهام مهندس البيانات ودوره وأهميته. سنبدأ بنظرة عامة على مهام هذا التخصص، ومن ثم نغوص في تفاصيل المهام المختلفة لمهندسي البيانات وكيف تساهم في عملية التحليل واتخاذ القرار.
ما هي هندسة البيانات Data engineering؟
إن هندسة البيانات Data engineering هي عملية تصميم وتنفيذ حلول لجمع وتخزين وتحليل كميات كبيرة من البيانات ويُطلق على هذه العملية عادةً اسم ETL وهي اختصار لثلاث كلمات هي استخراج Extract وتحويل Transform وتحميل Load البيانات.
- استخراج البيانات Extract: يعني استخراج البيانات من مصادر منوعة مثل قواعد البيانات، وملفات نصية وصفحات ويب …إلخ.
- تحويل البيانات Transform: يشير إلى إجراء عمليات معالجة على البيانات لتحويلها لصيغة صالحة للاستخدام في مجالات مختلفة.
- تحميل البيانات Load: يعني تحميل البيانات التي تمت معالجتها إلى نظام التخزين المعتمد مثل قاعدة بيانات علاقية أو نظام لتخزين البيانات الضخمة Big Data تمهيدًا لعملية تحليلها والاستفادة منها في اتخاذ قرارات مفيدة.
بعد هذه المراحل الثلاثة، تبدأ مرحلة إعداد البيانات وتجهيزها في تنسيقات مختلفة كي يستخدمها المتخصصون في البيانات مثل محللي البيانات وعلماء البيانات حيث يختلف تنسيق البيانات الناتجة حسب الجهة المستهدفة.
لذا يتوجب على مهندس البيانات معرفة كيفية تقديم أفضل طريقة لعرض كميات ضخمة من مجموعات البيانات المختلفة بطريقة يمكن تحليلها والتعامل معها سواء من قبل محلل البيانات أو عالم البيانات أو مدير المنتجات أو غيرها من الجهات التي تعنى بالتعامل مع كميات ضخمة من البيانات.
ما هي مهام مهندس البيانات؟
مهندس البيانات هو المهندس المسؤول عن إنشاء حلول من البيانات الخام أو البيانات الأولية، فهو يتولى أمور تطوير وبناء واختبار وصيانة هياكل البيانات data architectures.
مهام مهندس البيانات من منظور شامل
تشمل مهام مهندسي البيانات بشكل عام التعامل مع البيانات الخام row data. ويتطلب ذلك منهم معرفة جيدة بلغة الاستعلام البنيوية SQL كما يحتاج لامتلاك خبرة جيدة في التعامل مع مختلف أنواع قواعد البيانات، سواء كانت علاقية relational أو غير علاقية non-relational، وفهم صيغ البيانات الشائعة (مثل JSON و CSV و XML) ومعرفة الخيارات المختلفة للتعامل مع البيانات واستدعائها وما هي مزايا وعيوب كل طريقة.
فمهندسو البيانات هم المسؤولون عن تحويل البيانات إلى تنسيق سهل الوصول، وتحديد الاتجاهات أو الأنماط المتبعة في التعامل مع مجموعات البيانات، وإنشاء خوارزميات لجعل البيانات الخام أكثر فائدة لقطاعات الأعمال. كما يتمتع مهندسو البيانات بالقدرة على تحويل البيانات الخام إلى رؤى أو قرارات مفيدة حيث يستفيد علماء البيانات من الجهود التي يبذلها مهندسو البيانات في إعداد البيانات وهذا يمكنهم من تحويلها إلى قرارات مستنيرة بسرعة وسهولة.
على سبيل المثال، يمكن لمهندس البيانات تحديد فترات الذروة في المبيعات أو تحديد المنتجات التي يُفضل العملاء شراءها مع بعضها، وبالتالي اتخاذ قرارات بإصدار عروض ترويجية مناسبة على المبيعات أو تحسين إدارة المخزون أو غيرها من القرارات بناءً على رؤى مستمدة من البيانات.
مهام مهندس البيانات بالتفصيل
يعمل مهندس البيانات على هياكل بيانات تتضمن عدة عناصر ومكونات، ونظرًا لأن هذه البيانات تأتي من مصادر مختلفة سواء من قواعد البيانات العلاقية أو غير العلاقية إلى جانب أنظمة خاصة وأدوات مختلفة لمعالجة البيانات. لهذا يتوجب على مهندس البيانات أن يستخدم عدة خدمات وأدوات للتعامل مع هذه البنى المختلفة وتجهيزها بطريقة مناسبة وإتاحة الوصول لها من قبل علماء البيانات.
نوهنا سابقًا في بداية المقال لمصطلح ETL الذي يشير إلى استخراج وتحويل وتحميل البيانات حيث يستخدم مهندسو البيانات هذه المنهجية على هياكل البيانات التي ينشؤونها، ويتمثل عملهم الأساسي في اتباع هذه الخطوات الثلاثة أي استخراج البيانات الخام، وتحميلها، وتحويلها لصيغة مناسبة.
تحتوي هذه البيانات الخام في الغالب على كثير من الأخطاء والحالات الشاذة مثل تكرار نفس البيانات وعدم التوافق والتطابق في بعض البيانات أو ما يعرف بتضارب البيانات data Inconsistency. لذا تلقى على عاتق مهندس البيانات مسؤولية مراجعة كافة البيانات التي يجمعها واقتراح طرق مناسبة لتحسين جودتها وزيادة صحتها وموثوقيتها.
مثال بسيط على الأدوات التي يستخدمها مهندسو البيانات
هنالك عدة أدوات يمكن لمهندسي البيانات استخدامها للتعامل مع البيانات على سبيل المثال يمكنهم استخدام أداة لاستيراد بيانات تستورد فقط الصفوف التي تفي بمعايير وشروط معينة وتتجاهل أي صفوف لا تفي بهذه المعايير، حيث يمكن أن يشترط استيراد البيانات النصية فقط، أو البيانات الرقمية التي لها طول محدد دون غيرها من مصادر البيانات المتوفرة.
كما يمكنهم استخدام سكريبتات برمجية مكتوبة بلغة مثل لغة البرمجة بايثون لتحويل أو استبدال أحرف محددة ضمن حقول البيانات والتالي يمكن لمهندس البيانات المحترف تحديد أي مشكلات موجودة في البيانات بسرعة وتحديد الأدوات والتقنيات المناسبة التي تحقق له أفضل الحلول لهذه المشكلات.
كيف تصبح مهندس بيانات
كي تصبح مهندس بيانات محترف عليك اتباع مجموعة من الخطوات الأساسية والتي تشمل:
- فهم أساسيات البيانات.
- فهم أساسيات لغة الاستعلام البنيوية SQL.
- معرفة جيدة باستخدام التعابير النظامية RegEx.
- معرفة بالتعامل مع تنسيق جيسون JSON.
- امتلاك أساس نظري وممارسة عملية بتعلم الآلة ML.
- امتلاك خبرة جيدة بإحدى لغات البرمجة.
لنشرح تاليًا كل خطوة من هذه الخطوات بتفصيل أكبر.
الخطوة1: فهم أساسيات البيانات
لابد أن يمتلك أي مهندس بيانات فهمًا جيدًا بطريقة تخزين البيانات وتنظيمها في الحاسوب. ويعرف ما هي أنواع البيانات المختلفة التي يمكن استخدامها، ويعرف مفاهيم أساسية مرتبة بالبيانات مثل:
- variables: وهي تمثل مساحات في الذاكرة مخصصة لتخزين البيانات.
- varchar: نوع بيانات يستخدم لتخزين البيانات النصية ذات حجم متغير.
- char: نوع بيانات يستخدم لتخزين البيانات النصية ذات حجم ثابت من الأحرف
- int: نوع بيانات يستخدم لتخزين الأرقام الصحيحة التي لا تحتوي على أجزاء عشرية.
- prime numbers: الأعداد الأولية، وهي الأعداد الطبيعية الأكبر من الصفر والتي لا يمكن قسمها على أي عدد آخر سوى 1 ونفسها دون باقٍ.
- named pairs: أزواج البيانات المسماة، وهي بنى معطيات تملك عنصرين الأول يمثل الاسم أو المفتاح key والثاني يمثل القيمة المقابلة له value ويعرف كيفية تخزينها في هياكل بيانات تعتمد على SQL.
توفر هذه المفاهيم على بساطتها أساسًا متينًا لمهندس البيانات يساعده على فهم البيانات data ومجموعات البيانات datasets والتعامل معها بالشكل المناسب
الخطوة 2: فهم أساسيات لغة SQL
يعد فهم لغة SQL من الأمور الأساسية المطلوبة لأي مهندس بيانات فهي اللغة الأساسية للتعامل مع قواعد البيانات العلائقية المختلفة وتنفيذ الوظائف على البيانات وكتابة الاستعلامات المناسبة لتحقيق هذه الوظائف.
الخطوة 3: امتلاك معرفة جيدة بالتعابير النظامية RegEx
إن فهم التعابير النظامية regular expressions وطريقة استخدامها للبحث في النصوص أمر أساسي، حيث يستخدمها مهندس البيانات في معالجة وتعديل البيانات المختلفة، وتتميز التعابير النظامية بكونها قابلة للاستخدام مع جميع تنسيقات البيانات ومنصات البيانات الأساسية.
الخطوة 4: امتلاك خبرة في تنسيق جيسون JSON
من الجيد أن يمتلك مهندس البيانات خبرة عملية بتنسيق جيسون JSON الذي يعد جزءًا لا يتجزأ من قواعد البيانات غير العلاقية non-relational وهياكل البيانات data schemas بشكل خاص ويعرف طريقة كتابة استعلامات للاستعلام عن بيانات بتنسيق جيسون.
الخطوة 5: فهم المبادئ النظرية والتطبيق العملي لتعلم الآلة
إن فهم المبادئ النظرية والتطبيقات العملية لمجال تعلم الآلة machine learning أمر مفيد أيضًا لمهندس البيانات فهو يمكنه من تصميم الحلول لعلماء البيانات. وهو يعد أمرًا ضروريًا حتى لو لم يكن العمل باستخدام نماذج تعلم الآلة جزءًا أساسيًا من العمل اليومي لمهندس البيانات.
الخطوة 6: امتلاك خبرة في لغات البرمجة
بالرغم من أن مهندس البيانات قد لا يحتاج بالضرورة لكتابة أكواد برمجية في عمله اليومي لكن من المفيد وجود خبرة جيدة بإحدى لغات البرمجة مثل لغة البرمجة بايثون Python التي تتميز بمرونتها وقدرتها على التعامل مع العديد من أنواع البيانات كما تعد لغات مثل جافا Java وسكالا Scala وجو Go مفيدة في مجال هندسة البيانات.
المهارات الناعمة المفيدة لتخصص هندسة البيانات
يحتاج العمل في تخصص هندسة البيانات لامتلاك مجموعة من المهارات الشخصية أو المهارات الناعمة ومن أبرزها:
- مهارة حل المشكلات باستخدام الأساليب المعتمدة على البيانات فمن الضروري أن يمتلك مهندس البيانات منهجية لحل المشكلات قائمة على البيانات ويعتمد على المعلومات الفعلية لإرشاده ليجد الحل الأمثل.
- القدرة على توصيل المفاهيم المعقدة وتصويرها مرئيًا visualize إذ يحتاج مهندسو البيانات إلى التعاون مع العملاء من جهة والتعاون مع الزملاء والفرق التقنية المختلفة داخل مكان العمل ومشاركة أفكاره مع أشخاص من خلفيات مختلفة لذا يحتاج لامتلاك مهارة التواصل الفعال لشرح ما يريد التعبير عنه بشكل واضح ومفهوم.
- شعور كبير بالمسؤولية، فمهندس البيانات مسؤول عن حل المشكلات المعقدة في مجالات حيوية وحل هذه المشكلات بالشكل الأنسب هو أساس وجوهر وظيفة هندسة البيانات.
الأدوات والمصادر المطلوبة في تخصص هندسة البيانات
يتطلب تخصص هندسة البيانات مجموعة من الأدوات المهمة والتي سنوضحها تاليًا، كما سنوضح أهم المصادر التي تشرح لك هندسة البيانات.
فهم قواعد البيانات العلاقية وغير العلاقية
ففهم أنواع وأنظمة قواعد البيانات المختلفة المستخدمة في العالم الحقيقي أداة أساسية في تخصص هندسة البيانات مثل:
- أنظمة إدارة قواعد البيانات العلائقية المعتمدة على سيكوال SQL مثل MySQL أو Microsoft SQL Server.
- أنظمة إدارة قواعد البيانات غير العلاقية NoSQL كقواعد البيانات المعتمدة على المستندات مثل MongoDB.
معرفة بأساسيات إدارة ومعالجة ونمذجة البيانات
عليك كمهندس بيانات تعلم تنسيقات ومنصات أنظمة قواعد البيانات الشائعة وتعلم طريقة إعدادها وفهم فوائد كل نظام إدارة قاعدة بيانات وطريقة التعامل معه.
تعلم Apache Kafka
تدعم مؤسسة أباتشي Apache للبرمجيات عدّة مشاريع للبيانات الضخمة، التي يمكن لمهندس البيانات تعلم التعامل معها، ومن بين هذه المشاريع المفيدة مشروع أباتشي كافكا Apache Kafka وهو عبارة عن هو منصة بيانات مفتوحة المصدر توفّر آلية تسمح للمستخدمين بالاتصال المستمر مع مصادر البيانات وتمكنهم من استقبالها وتحديثاتها لحظيًا بموثوقية عالية.
كما تتوفر أدوات أخرى للتعامل مع البيانات الضخمة مثل أباتشي سبارك Apache Spark الذي يعد محركًا تحليليًا مفتوح المصدر لمعالجة البيانات. وسيفيدك كمهندس بيانات تعلم طريقة إعداده على مجموعة من الأجهزة لإنشاء محرك حوسبة موزع يمكنه معالجة كميات ضخمة من البيانات بسرعة كبيرة.
كما تُعدّ أباتشي هادوب Apache Hadoop أداة مفيدة كذلك في تحليل البيانات الضخمة فهي تسمح بمعالجة موزعة لمجموعات بيانات كبيرة وهي تتوفر بشكل خدمة مُدارة managed service متوفرة كجزء من خدمة Google Cloud Dataproc والمستخدمة في معالجة البيانات الضخمة وتعلم الآلة.
تعلم لغة البرمجة بايثون أو جافا
سيفيدك تعلم لغة البرمجة بايثون كمهندس بيانات بشكل كبير فبايثون هي لغة برمجة قوية ومرنة يمكنها التعامل مع العديد من أنواع البيانات. كما تعد لغة البرمجة جافا Java لغة قوية وتشكل أساسًا للكثير من أعمال هندسة البيانات. لذا سيفيدك تعلم أساسيات جافا، بما في ذلك الصياغة النحوية والدوال والوحدات ومبادئ البرمجة كائنية التوجه oop وكتابة برامج وتطبيقات باستخدامها في عملك كمهندس بيانات.
شهادات مفيدة لمهندس البيانات
لا شك أن وجودة شهادة في مجال هندسة البيانات يساعدك في إثبات معرفتك لأصحاب العمل وستجد الكثير توفر مسارات التعلم للشهادات التالية طرقًا مُحدثة ومُثبتة ومفصلة لتعلم كل ما تحتاج إليه حول هندسة البيانات.
شهادة AWS Data Engineering
تضمن شهادة AWS Certified Data Analytics Specialty (DAS-01) خدمات تحليل البيانات في أمازون ويب، وهي تشرح توافق خدمات البيانات في أمازون ويب مع دورة حياة البيانات ومراحلها المختلفة مثل التخزين والمعالجة والتمثيل الرسومي للبيانات وغيرها من الوظائف الضرورية التي يجب على أي مهندس بيانات معرفتها.
شهادة Azure Data Engineering
تفيد شهادة DP-900 Exam Preparation: Microsoft Azure Data Fundamentals الأفراد التقنيين وغير التقنيين الراغبين في اكتساب معرفة بالمفاهيم الأساسية للبيانات وكيفية تنفيذها باستخدام خدمات بيانات Azure. ستتعلم من خلال هذه الشهادة أساسيات مفاهيم البيانات، بالإضافة إلى بيانات Azure العلاقية وغير العلاقية، وتتعلم كيفية وصف التحليلات التي تقوم بها على البيانات من خلال Azure analytics.
كما تفيد شهادة DP-203 Exam Preparation: Data Engineering on Microsoft Azure في تعلم كيفية إدارة ونشر مجموعة من حلول بيانات Azure، ومعرفة كيفية تصميم وبناء تخزين البيانات وتصميم وتطوير وإدارة معالجة البيانات وكيفية الحفاظ على أمانها وتحسين طرق تخزينها.
شهادة Google Cloud Data Engineering
تساعد شهادة Google Data Engineer Exam – Professional Certification Preparation في فهم تقنية الاستعلامات الضخمة BigQuery وهو خدمة لتحليل البيانات تقدمها شركة Google Cloud Platform والتعامل مع مستودع البيانات السحابي المُدار من جوجل. كما ستتعلم في هذه الدورة كيفية تحميل واستعلام ومعالجة بياناتك وكيفية استخدام تعلم الآلة في تحليل البيانات، وبناء أنابيب البيانات، واستخدام الجداول الضخمة BigTable لتطبيقات البيانات الضخمة.
ما الفرق بين مهندس البيانات وعالم البيانات؟
قد يقوم نفس الشخص بمهام مهندس البيانات وعالم البيانات في بعض مواقع العمل لكنهما وظيفتان متكاملتان فعلماء البيانات ومهندسو البيانات يدرسون تخصصين مختلفين ويحتاجون لمجموعة مهارات مختلفة ويقومون بمهام مختلفة مرتبطة بكل تخصص.
إذ يهتم مهندسو البيانات بتصميم البيانات واختبارها وصيانتها، بينما يهتم علماء البيانات بتنظيم البيانات ومعالجتها من أجل اكتساب رؤى ومعرفة مفيدة منها. بمعنى آخر مهندسو البيانات هم المسؤولون عن إنشاء وتجهيز البيانات التي يستخدمها علماء البيانات.
يمكن اعتبار مهندس البيانات المتحكم الأساسي في البيانات وبنيتها التحتية فهو من يقوم بإعدادها وتجهيزها، بينما يعد عالم البيانات الشخص المتخصص الذي يستنتج رؤى وقرارات من هذه البيانات التي عالجها مهندس البيانات وأعدها له بالصورة المناسبة، وكلا هذين الدورين مهمان ويحتاجان إلى تعاون وثيق لتحقيق النتائج المرجوة.
ما هي هندسة البيانات الضخمة
إن هندسة البيانات الضخمة Big Data كلمة رائجة اليوم وهي مصطلح شامل يتضمن كل ما يتعلق بعالم هندسة البيانات. ففي تخصص هندسة البيانات الضخمة يتوجب التعامل مع أنظمة معالجة البيانات الضخمة وقواعد بيانات موجودة في بيئات حوسبة سحابية واسعة النطاق والاستفادة من طبيعتها الموزعة وقابليتها للتوسع بالإضافة سهولة تثبيتها وإعدادها السريع الأمر الذي يساهم بشكل كبير في تسريع عملية التطوير والنشر.
أسئلة شائعة حول هندسة البيانات
نختم المقال بمجموعة من الأسئلة الشائعة حول هندسة البيانات ونوفر لك إجابات موجزة عليها.
هل هندسة البيانات مجال سهل؟
لا تعد هندسة البيانات من التخصصات البرمجية السهلة، ولكنها بالتأكيد مهنة مميزة ومجزية ويمكن تعلمها ذاتيًا والتفوق بها في مجال العمل ولاسيما أنها مجال مطلوب بكثرة وهناك نقص في الكفاءات الفعلية في سوق العمل.
هل يحتاج مهندس البيانات لمعرفة بالرياضيات؟
لا تتطلب هندسة البيانات معرفة متعمقة بالرياضيات، لكن من المفيد أن يعرف مهندس البيانات أساسيات الإحصاءات والاحتمالات لفهم ما سيقوم به علماء البيانات في فريق عمله، كما سيحتاج لامتلاك فهم جيد للتفكير المنطقي وحل المشكلات من منظور هندسة البرمجيات وهندسة السحابة لحل المشكلات المختلفة التي قد يواجهها في عمله.
هل هناك طلب على مهندسي البيانات في سوق العمل؟
نعم، هناك طلب كبير على مهندسي البيانات، خاصة مع اهتمام شركات الأعمال مؤخرًا على علم البيانات المعتمدة على عمل مهندسي البيانات. فالطلب كبير على مهندسي البيانات الخبراء القادرين على التعامل مع البيانات بكفاءة واحترافية وإحداث تغيير إيجابي في العمل.
هل يحتاج مهندس البيانات إلى معرفة بالبرمجة؟
نعم، فقد يحتاج مهندسو البيانات لكتابة العديد من الأكواد البرمجية لتنظيم وإدارة خطوط أنابيب البيانات data pipeline والتي تمثل سلسلة من الخطوات يتم خلالها تحميل وتنظيف وتحويل وتحليل البيانات من مصادر مختلفة إلى الوجهة المطلوبة، لذا يحتاج مهندس البيانات لمعرفة جيدبو بلغات البرمجة مثل بايثون وجافا و R ولغات التعامل مع قواعدالبيانات SQL وامتلاك مهارة حل المشكلات وتصحيح الأخطاء البرمجية.
كم يكسب مهندسو البيانات؟
تعد هندسة البيانات مهنة مجزية وتوضح بعض الأرقام الموجودة على مواقع العمل الشهيرة أن متوسط رواتب مهندسي البيانات في الولايات المتحدة (عام 2022) مرتفع مقارنة ببقية المهن حيث يبلغ متوسط رواتب مهندسي البيانات حسب موقع Glassdoor حوالي 112,000 دولار سنويًا، ويبلغ 93.000 دولار سنويًا حسب موقع Payscale.
الخلاصة
بهذا نكون قد وصلنا لختام مقالنا الذي شرحنا فيه أهم المفاهيم المرتبطة بتخصص هندسة البيانات Data engineering وبينا أهميته وطرق دراسته والطلب عليه في سوق العمل، كما وضحنا أبرز مهام مهندس البيانات والأعمال التي يقوم بها جملة وتفصيلًا، ونرجو أن نكون قد أجبناك على أهم الأسئلة المرتبطة بهذا المجال الحيوي. إذا كان لديك أي سؤال حول ما ورد في المقال يمكنك تركه في قسم التعليقات أسفل المقال.
ترجمة وبتصرف للمقال What is Data Engineering? Skills, Tools, and Certifications
أفضل التعليقات
لا توجد أية تعليقات بعد
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.