Marvel: Infinity War أو كيفية جمع البيانات لمشروعك في بضع دقائق



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

تعريف من buduguru.org/profession/39 .

متخصص عالمي ، حسنا. إذا حكمنا من خلال وصف شيء بين الدكتور مانهاتن وستيفن هوكينج.


ومع ذلك ، لن أخوض في دلالات هذا التعريف ، أريد أن أتحدث عن الموضوع المؤلم لمحللي البيانات (لا ، ليس الموضوع الذي يتحدث فيه المزعج عن نقص البيانات). وماذا لو كانت البيانات؟

وهنا نذهب إلى المشاكل التالية:

  • ما الأدوات التي يمكنني استخدامها لدراسة هذه البيانات؟
  • كيفية تحويل صفائف البيانات هذه؟
  • كيفية تخزينها؟ هل أحتاج إلى تخزينها؟
  • ماذا لو كان هناك الكثير من المصادر ، وكلها غير متجانسة؟

حسنًا شكلنا مجموعة من المشاكل ، ولكن ماذا نفعل بعد ذلك؟ في هذه المقالة ، سأتحدث عن الأداة التي نفذها فريق التطوير لدينا ، وهي نظام السحابة الإلكترونية iDVP.Data SaaS .

ما هذا

iDVP.Data SaaS هي أداة متعددة الوظائف للعمل مع البيانات في السحابة ، والتي تسمح لك بتوصيل البيانات المختلفة وتحويلها وإرسالها إلى أنظمة خارجية ، مثل خدمات الويب.

حرب لا نهاية


هنا نتقاطع لا إراديًا مع المجال الثاني من الاهتمامات: كمثال ، قررت ربط بيانات Marvel المفتوحة بـ iDVP.Data SaaS . هل شاهد الجميع فيلمًا جديدًا عن Infinity War؟ بعد مشاهدة الفيلم ، لا يسعني إلا أن أتذكر صراعات أخرى واسعة النطاق في عالم Marvel ، والتي خضعت لتغييرات عالمية في الامتياز. أصبح من المثير للاهتمام بالنسبة لي أن أتذكر عدد الشخصيات من الخط الهزلي الذي شارك في Infinity War ، وكم مات منهم؟ للإجابة على هذه الأسئلة ، انتقلت إلى المصدر الأكثر موثوقية - موقع Marvel الرسمي.



بادئ ذي بدء ، دعنا نذهب إلى موقع iDVP.Data SaaS والتسجيل.

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



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

  • خدمة REST التي تُرجع معلومات حول جميع الشخصيات في عالم Marvel ؛
  • خدمة REST التي تُرجع معلومات حول جميع أحداث عالم Marvel ؛
  • ملف بتنسيق CSV ، مما يشير إلى المشاركين الرئيسيين في الحرب الأهلية.

الخطوة 1. الاتصال

نقوم بتوصيل البيانات واحدة تلو الأخرى:



ونتيجة لذلك ، نحصل على ثلاثة مصادر بيانات متصلة:



  • المشاركين_marvel_raw - الخدمة ؛
  • character_marvel_raw - خدمة ؛
  • events_marvel_raw - ملف بتنسيق CSV.

الخطوة 2. التحويل

بعد توصيل البيانات ، نقوم بإنشاء مجموعات بيانات (مجموعات البيانات) ، حيث نقوم بالتحويلات اللازمة (تنظيف البيانات ، العمليات الحسابية ، أو على سبيل المثال ، تحليل البيانات من JSON) باستخدام البرامج النصية لـ SQL.

select k.id, k.name, k.com.name as comics_name, k.ser.name as series_name, k.stor.name as stories_name, k.event.name as events_name from ( select a.id, a.name, flatten(a.comics) as com, flatten(a.series) as ser, flatten(a.stories) as stor, flatten(a.events) as event from ( select c.`data`.id as id, c.`data`.name as name, c.`data`.comics.`items` as comics, c.`data`.series.`items` as series, c.`data`.stories.`items` as stories, c.`data`.events.`items` as events from ( select t.res.`data`.`results` as `data` from ( select convert_from(a.content, 'JSON') res from `characters_marvel_raw` a ) t ) c ) a ) k 

ونتيجة لذلك ، نحصل على بيانات تحليل:



وهذه السلسلة من تدفقات البيانات:



بعد توصيل البيانات وتحويلها ، يمكن أن تظل سرعة الوصول إلى المعلومات المستلمة منخفضة (بسبب الاستجابة الطويلة للمصدر أو بسبب الكمية الكبيرة من البيانات). هنا يتم تشغيل آلية "تجسيد" (تخزين) البيانات في iDVP.Data SaaS نفسها. يعد الوصول إلى البيانات المخزنة سريعًا للغاية ، حتى عند العمل مع كميات كبيرة من المعلومات من خلال استخدام تقنيات BigData. يمكن تحديث البيانات المحفوظة في أي وقت (كليًا أو جزئيًا) ، وكذلك تعديل الجدول الزمني الذي سيقوم النظام بتحديثها تلقائيًا.

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



الخطوة 3. نشر

نقوم بإنشاء عرض بيانات (خدمة ويب) ، والتي تمثل أيضًا استعلام SQL. في عرض البيانات ، يمكنك تحديد معلمات الإدخال والإخراج.



بمجرد إنشاء مخططات البيانات ، يمكن نشرها في المجال العام واستخدامها في أنظمتها الخارجية.




يمكن استخدام الخدمة الناتجة لبناء تقارير وتطبيقات ثلاثية الأبعاد ، على سبيل المثال ، قمنا بذلك لتصور بيانات انتخابات 2018 .

استنتاجات PS




الاستنتاج الأول

تذكرنا خط الرسوم الهزلية حيث تم ذكر Infinity War ، وإليك ما حصلنا عليه:

  • شارك 57 شخصية ؛
  • 5 غير مؤكد ؛
  • توفي 15.

الاستنتاج الثاني

إذا كنت بحاجة إلى التعامل مع البيانات بسرعة وسهولة ، يمكنك استخدام نظام iDVP.Data SaaS ، الذي هو حاليًا قيد الاختبار التجريبي. يأمل فريقنا في أن يكون من بينك الذين قرأوا هذه القصة حتى النهاية ، هناك من سيكونون المختبرين الأوائل لأداتنا الجديدة.

مع ذلك ، يمكنك بشكل مستقل:

  • الاتصال بمصادر مختلفة ؛
  • استقبال البيانات بشكل موحد من أي مصادر ؛
  • تنفيذ تحويلات بيانات ETL باستخدام SQL
  • زيادة سرعة معالجة البيانات باستخدام تقنيات BigData ؛
  • تحليل البيانات ؛
  • توفير البيانات للأنظمة الخارجية ؛
  • تنفيذ هذه العمليات في واجهة مريحة وبسيطة.

نشكرك مقدمًا على تعليقاتك!

مثال للاستخدام على التعليقات على المنشور:

إحصائيات عن التعليقات .

Source: https://habr.com/ru/post/ar412579/


All Articles