انتقل إلى المحتوى

إعداد مجموعات البيانات في wis2box

نتائج التعلم

بنهاية هذه الجلسة العملية، ستكون قادرًا على:

  • استخدام محرر مجموعات البيانات في wis2box-webapp
  • إنشاء مجموعات بيانات جديدة باستخدام القالب=weather/surface-based-observations/synop والقالب=other
  • تحديد بيانات الاكتشاف الوصفية الخاصة بك
  • مراجعة تعيينات البيانات الخاصة بك
  • نشر إشعار WIS2 لبيانات الاكتشاف الوصفية الخاصة بك

المقدمة

يستخدم wis2box مفهوم مجموعات البيانات المرتبطة بـ بيانات الاكتشاف الوصفية وتعيينات البيانات.

تُستخدم بيانات الاكتشاف الوصفية لإنشاء سجل WMO Core Metadata Profile (WCMP2) يتم مشاركته باستخدام إشعار WIS2 يتم نشره على وسيط wis2box الخاص بك.

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

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

إعداد مجموعات البيانات بدون استخدام wis2box-webapp

يدعم wis2box أيضًا إعداد مجموعات البيانات باستخدام تنسيق ملف التحكم في البيانات الوصفية (MCF) الذي يحدده أداة pygeometa.

يتيح استخدام MCF مرونة وتحكمًا أكبر ولكنه يتطلب كتابة دقيقة لضمان أن يكون ملف MCF منسقًا ومُزاحًا بشكل صحيح وفقًا للمخطط المطلوب.

يمكن نشر ملفات MCF من سطر الأوامر داخل حاوية wis2box-management. راجع وثائق wis2box لمزيد من المعلومات.

التحضير

اتصل بالوسيط الخاص بك باستخدام MQTT Explorer.

بدلاً من استخدام بيانات اعتماد الوسيط الداخلي الخاص بك، استخدم بيانات الاعتماد العامة everyone/everyone:

MQTT Explorer: الاتصال بالوسيط

Note

لا تحتاج أبدًا إلى مشاركة بيانات اعتماد الوسيط الداخلي الخاص بك مع المستخدمين الخارجيين. المستخدم 'everyone' هو مستخدم عام لتمكين مشاركة إشعارات WIS2.

بيانات الاعتماد everyone/everyone لديها صلاحيات قراءة فقط على الموضوع 'origin/a/wis2/#'. هذا هو الموضوع الذي يتم نشر إشعارات WIS2 عليه. يمكن للوسيط العالمي الاشتراك باستخدام بيانات الاعتماد العامة هذه لتلقي الإشعارات.

لن يتمكن المستخدم 'everyone' من رؤية المواضيع الداخلية أو نشر الرسائل.

افتح متصفحًا وانتقل إلى http://YOUR-HOST/wis2box-webapp. تأكد من تسجيل الدخول وأنك تستطيع الوصول إلى صفحة 'محرر مجموعات البيانات'.

راجع القسم الخاص بـ تهيئة wis2box إذا كنت بحاجة إلى تذكر كيفية الاتصال بالوسيط أو الوصول إلى wis2box-webapp.

إنشاء رمز تفويض لـ processes/wis2box

ستحتاج إلى رمز تفويض لنقطة النهاية 'processes/wis2box' لنشر مجموعة البيانات الخاصة بك.

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

cd ~/wis2box
python3 wis2box-ctl.py login

ثم قم بتشغيل الأمر التالي لإنشاء رمز تفويض عشوائي لنقطة النهاية 'processes/wis2box':

wis2box auth add-token --path processes/wis2box

يمكنك أيضًا إنشاء رمز بقيمة محددة عن طريق تقديم الرمز كوسيطة للأمر:

wis2box auth add-token --path processes/wis2box MyS3cretToken

تأكد من نسخ قيمة الرمز وتخزينها على جهازك المحلي، حيث ستحتاج إليها لاحقًا.

بمجرد حصولك على الرمز الخاص بك، يمكنك الخروج من حاوية wis2box-management:

exit

محرر مجموعات البيانات في wis2box-webapp

انتقل إلى صفحة 'محرر مجموعات البيانات' في wis2box-webapp الخاصة بمثيل wis2box الخاص بك عن طريق الذهاب إلى http://YOUR-HOST/wis2box-webapp واختيار 'محرر مجموعات البيانات' من القائمة الموجودة على الجانب الأيسر.

في صفحة 'محرر مجموعات البيانات'، ضمن علامة التبويب 'Datasets'، انقر على "Create New ...":

إنشاء مجموعة بيانات جديدة

ستظهر نافذة منبثقة تطلب منك تقديم:

  • Centre ID: هذا هو اختصار الوكالة (بحروف صغيرة وبدون مسافات)، كما هو محدد من قبل عضو WMO، الذي يحدد مركز البيانات المسؤول عن نشر البيانات.
  • Template: نوع البيانات التي تقوم بإنشاء بيانات وصفية لها. يمكنك الاختيار بين استخدام قالب محدد مسبقًا أو اختيار other.

نافذة إنشاء مجموعة بيانات جديدة

Centre ID

يجب أن يبدأ Centre ID الخاص بك بـ TLD الخاص ببلدك، متبوعًا بشرطة (-) واسم مختصر لمنظمتك (على سبيل المثال fr-meteofrance). يجب أن يكون Centre ID بحروف صغيرة ويستخدم الأحرف الأبجدية الرقمية فقط. تعرض القائمة المنسدلة جميع Centre IDs المسجلة حاليًا على WIS2 بالإضافة إلى أي Centre ID قمت بإنشائه بالفعل في wis2box. يرجى اختيار Centre ID المناسب لمنظمتك.

Template

يتيح لك حقل Template اختيار قالب من قائمة القوالب المتاحة في محرر مجموعات البيانات في wis2box-webapp. سيقوم القالب بملء النموذج مسبقًا بقيم افتراضية مقترحة مناسبة لنوع البيانات. يتضمن ذلك عنوانًا مقترحًا وكلمات مفتاحية للبيانات الوصفية ومكونات بيانات إضافية مهيأة مسبقًا.

يتم تعيين الموضوع تلقائيًا إلى الموضوع الافتراضي المرتبط بالقالب المحدد ما لم تختر other. إذا اخترت other، يمكن تعريف الموضوع من قائمة منسدلة بناءً على تسلسل موضوعات WIS2.

لغرض التدريب، ستقوم بإنشاء مجموعتي بيانات:

  • مجموعة بيانات باستخدام القالب=weather/surface-based-observations/synop، والتي تتضمن مكونات بيانات إضافية لتحويل البيانات إلى تنسيق BUFR قبل النشر.
  • مجموعة بيانات باستخدام القالب=other، حيث تكون مسؤولاً عن تحديد موضوع WIS2 وستستخدم المكون "Universal" لنشر البيانات دون تحويل.

القالب=weather/surface-based-observations/synop

بالنسبة إلى Template، اختر weather/surface-based-observations/synop:

نموذج إنشاء مجموعة بيانات جديدة: المعلومات الأولية

انقر على continue to form للمتابعة. ستظهر لك الآن نموذج محرر مجموعة البيانات.

نظرًا لأنك اخترت القالب weather/surface-based-observations/synop، سيتم ملء النموذج مسبقًا ببعض القيم الأولية المتعلقة بهذا النوع من البيانات.

إنشاء بيانات الاكتشاف الوصفية

يتيح لك نموذج محرر مجموعة البيانات تقديم بيانات الاكتشاف الوصفية لمجموعة البيانات الخاصة بك، والتي ستستخدمها حاوية wis2box-management لنشر سجل WCMP2.

نظرًا لأنك اخترت القالب 'weather/surface-based-observations/synop'، سيتم ملء النموذج مسبقًا ببعض القيم الافتراضية.

يرجى التأكد من استبدال 'Local ID' الذي تم إنشاؤه تلقائيًا باسم وصفي لمجموعة البيانات الخاصة بك، مثل 'synop-dataset-wis2training':

محرر البيانات الوصفية: العنوان، الوصف، الكلمات المفتاحية

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

لاحظ أنه توجد خيارات لتغيير 'سياسة بيانات WMO' من 'core' إلى 'recommended' أو لتعديل معرف البيانات الوصفية الافتراضي. يرجى الاحتفاظ بسياسة البيانات كـ 'core' واستخدام معرف البيانات الوصفية الافتراضي.

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

محرر البيانات الوصفية: الخصائص الزمنية، الخصائص المكانية

بعد ذلك، املأ القسم الذي يحدد 'معلومات الاتصال بمزود البيانات':

محرر البيانات الوصفية: معلومات الاتصال

أخيرًا، املأ القسم الذي يحدد 'معلومات جودة البيانات':

بمجرد الانتهاء من ملء جميع الأقسام، انقر على 'VALIDATE FORM' وتحقق من وجود أي أخطاء في النموذج:

محرر البيانات الوصفية: التحقق من صحة النموذج

إذا كانت هناك أي أخطاء، قم بتصحيحها وانقر على 'VALIDATE FORM' مرة أخرى.

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

محرر البيانات الوصفية: نجاح التحقق من الصحة

بعد ذلك، قبل تقديم مجموعة البيانات الخاصة بك، راجع تعيينات البيانات لمجموعة البيانات الخاصة بك.

إعداد تعيينات البيانات

نظرًا لأنك استخدمت قالبًا لإنشاء مجموعة البيانات الخاصة بك، فقد تم ملء تعيينات البيانات مسبقًا بالمكونات الإضافية الافتراضية لقالب 'weather/surface-based-observations/synop'. تُستخدم مكونات البيانات الإضافية في 'wis2box' لتحويل البيانات قبل نشرها باستخدام إشعار WIS2.

Data Mappings: update plugin

لاحظ أنه يمكنك النقر على زر "Update" لتغيير إعدادات المكون الإضافي مثل امتداد الملف ونمط الملف. يمكنك ترك الإعدادات الافتراضية في الوقت الحالي.

حول مربع الاختيار لتخزين البيانات الأساسية مؤقتًا

سترى مربع الاختيار التالي:

Dataset editor: cache-option

إذا قمت بإلغاء تحديد هذا المربع، فسيضيف 'wis2box' الخاصية properties.cache=False مما يشير إلى أنك لا ترغب في أن يقوم 'Global Cache' بتنزيل نسخة من بياناتك وتخزينها. بشكل افتراضي، يتم تحديد هذا المربع، مما يعني أن 'Global Cache' سيخزن بياناتك الأساسية مؤقتًا، وهو الإعداد الموصى به لمعظم مجموعات البيانات.

نشر مجموعة البيانات الخاصة بك

أخيرًا، يمكنك النقر على 'submit' لنشر مجموعة البيانات الخاصة بك.

ستحتاج إلى توفير رمز التفويض الخاص بـ 'processes/wis2box' الذي قمت بإنشائه سابقًا. إذا لم تقم بذلك، يمكنك إنشاء رمز جديد باتباع التعليمات في قسم التحضير.

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

Submit Dataset Success

بعد النقر على 'OK'، سيتم توجيهك إلى الصفحة الرئيسية لمحرر مجموعة البيانات. الآن إذا نقرت على علامة التبويب 'Dataset'، يجب أن ترى مجموعة البيانات الجديدة الخاصة بك مدرجة:

Dataset Editor: new dataset

مراجعة إشعار WIS2 الخاص ببيانات الاكتشاف الوصفية

انتقل إلى 'MQTT Explorer'. إذا كنت متصلًا بالوسيط، يجب أن ترى إشعار WIS2 جديدًا منشورًا على الموضوع origin/a/wis2/<your-centre-id>/metadata:

MQTT Explorer: WIS2 notification

إعادة نشر بيانات الاكتشاف الوصفية يدويًا

يتم نشر إشعار WIS2 بمجرد إرسال بيانات الاكتشاف الوصفية بنجاح. إذا لم ترَ الإشعار، فقد يكون السبب أنك لم تكن متصلًا بالوسيط أثناء النشر.

إذا لم ترَ إشعار WIS2، يمكنك إعادة نشر بيانات الاكتشاف الوصفية يدويًا باستخدام الأمر التالي:

python3 wis2box-ctl.py execute wis2box metadata discovery republish

قم بفحص محتوى إشعار WIS2 الذي نشرته. يجب أن ترى JSON به هيكل يتوافق مع تنسيق رسالة إشعار WIS (WNM).

Question

على أي موضوع يتم نشر إشعار WIS2؟

انقر للكشف عن الإجابة

يتم نشر إشعار WIS2 على الموضوع origin/a/wis2/<your-centre-id>/metadata.

Question

حاول العثور على العنوان والوصف والكلمات المفتاحية التي قدمتها في بيانات الاكتشاف الوصفية في إشعار WIS2. هل يمكنك العثور عليها؟

انقر للكشف عن الإجابة

العنوان والوصف والكلمات المفتاحية التي قدمتها في بيانات الاكتشاف الوصفية غير موجودة في محتوى إشعار WIS2!

بدلاً من ذلك، حاول البحث عن الرابط الأساسي في قسم "links" في إشعار WIS2:

WIS2 notification for metadata, links sections

يحتوي إشعار WIS2 على رابط أساسي إلى سجل WCMP2 الذي تم نشره.

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

ستجد العنوان والوصف والكلمات المفتاحية التي قدمتها داخل سجل WCMP2.

يوفر 'wis2box' عددًا محدودًا فقط من القوالب المحددة مسبقًا. تم تصميم هذه القوالب لأنواع شائعة من مجموعات البيانات، لكنها قد لا تتطابق دائمًا مع البيانات المتخصصة. بالنسبة لجميع أنواع البيانات الأخرى، يمكنك إنشاء مجموعة البيانات الخاصة بك عن طريق اختيار Template=other.

Template=other

بعد ذلك، سنقوم بإنشاء مجموعة بيانات ثانية باستخدام Template=other.

انقر على "Create New ..." مرة أخرى لإنشاء مجموعة بيانات جديدة. استخدم نفس 'centre-id' الذي استخدمته من قبل، ويجب أن يكون متاحًا في القائمة المنسدلة. بالنسبة لـ Template، اختر other:

Create New Dataset Form: Initial information

انقر على continue to form للمتابعة، وستظهر لك الآن نموذج محرر مجموعة البيانات مرة أخرى.

إنشاء بيانات الاكتشاف الوصفية

قم بتوفير القيم الخاصة بك لحقول 'Title' و 'Description' وتأكد من استبدال 'Local ID' الذي تم إنشاؤه تلقائيًا باسم وصفي لمجموعة البيانات الخاصة بك:

Metadata Editor: title, description, keywords

لاحظ أنه نظرًا لأنك اخترت Template=other، فإن الأمر متروك لك لتحديد تسلسل موضوع WIS2 باستخدام القوائم المنسدلة لـ 'Discipline' و 'Sub-Discipline'.

بالنسبة لهذا التمرين، يرجى اختيار موضوع Sub-Discipline "prediction/analysis/medium-range/deterministic/global":

Metadata Editor: title, description, keywords

نظرًا لأنك اخترت Template=other، لم يتم تحديد كلمات مفتاحية مسبقًا. تأكد من إضافة 3 كلمات مفتاحية على الأقل من اختيارك:

Metadata Editor: title, description, keywords

بعد ملء الحقول المطلوبة، املأ الأقسام المتبقية من النموذج، بما في ذلك 'Temporal Properties' و 'Spatial Properties' و 'Contact Information of the Data Provider' وتأكد من التحقق من صحة النموذج.

تكوين تعيينات البيانات

عند استخدام Template=other، لا يتم توفير تعيينات بيانات افتراضية. نتيجة لذلك، سيكون محرر تعيينات البيانات فارغًا ويجب على المستخدمين تكوين التعيينات وفقًا لمتطلباتهم الخاصة.

Data Mappings: update plugin

انقر على "ADD A PLUGIN +" لإضافة مكون إضافي للبيانات إلى مجموعة البيانات الخاصة بك.

اختر المكون الإضافي باسم "Universal data without conversion". تم تصميم هذا المكون لنشر البيانات دون تطبيق أي تحويل.

عند إضافة هذا المكون، ستحتاج إلى تحديد امتداد الملف و نمط الملف (يُعرّف بواسطة تعبير منتظم) الذي يتطابق مع نمط تسمية ملفات البيانات الخاصة بك. في حالة المكون "Universal"، يُستخدم نمط الملف أيضًا لتحديد خاصية "datetime" للبيانات.

تحليل datetime من اسم الملف

يفترض المكون "Universal" أن المجموعة الأولى في التعبير المنتظم تتوافق مع datetime للبيانات.

نمط الملف الافتراضي هو ^.*?_(\d{8}).*?\..*$ الذي يتطابق مع 8 أرقام مسبوقة بشرطة سفلية ومتبوعة بأي أحرف ونقطة قبل امتداد الملف. على سبيل المثال:

  • mydata_20250101.txt سيتطابق ويستخرج 25 يناير 2025 كخاصية datetime للبيانات
  • mydata_2025010112.txt لن يتطابق، حيث يوجد 10 أرقام بدلاً من 8
  • mydata-20250101.txt لن يتطابق، حيث توجد شرطة بدلاً من الشرطة السفلية قبل التاريخ

عند إدخال البيانات باستخدام المكون "Universal"، إما أن تعيد تسمية ملفاتك لتتطابق مع الافتراضي أو تحدّث نمط الملف مع التأكد من أن المجموعة الأولى في التعبير المنتظم تتوافق مع datetime.

احتفظ بالقيم الافتراضية لـ "File Name" في الوقت الحالي حيث إنها تتطابق مع البيانات التي ستدخلها في الجلسة العملية التالية:

Data Mappings: update plugin

انقر على "SAVE" لحفظ إعدادات المكون وتحقق من أنك ترى الآن المكون مدرجًا في محرر تعيينات البيانات:

Data Mappings: update plugin

لاحظ أنه عند إدخال البيانات، يجب أن يتطابق امتداد الملف ونمط الملف مع الإعدادات التي قدمتها هنا، وإلا فلن تتم معالجة البيانات وسيسجل حاوية 'wis2box-management' رسائل خطأ.

إرسال ومراجعة النتيجة

أخيرًا، قم بتوفير رمز التفويض الخاص بـ 'processes/wis2box' الذي قمت بإنشائه سابقًا وانقر على 'submit' لنشر مجموعة البيانات الخاصة بك.

بعد الإرسال الناجح، ستظهر مجموعة البيانات الجديدة الخاصة بك في علامة تبويب Dataset:

Dataset Editor: new dataset

انتقل إلى 'MQTT Explorer'، إذا كنت متصلًا بالوسيط الخاص بك، يجب أن ترى إشعار WIS2 جديدًا منشورًا على الموضوع origin/a/wis2/<your-centre-id>/metadata.

Question

قم بزيارة واجهة المستخدم الخاصة بـ http://YOUR-HOST.

كم عدد مجموعات البيانات التي تراها مدرجة؟ كيف يمكنك عرض تسلسل موضوعات WIS2 المستخدم لكل مجموعة بيانات وكيف يمكنك رؤية وصف كل مجموعة بيانات؟

اضغط لعرض الإجابة

عند فتح واجهة المستخدم الخاصة بـ wis2box على http://YOUR-HOST، يجب أن ترى مجموعتي بيانات مدرجتين مع تسلسل موضوعات WIS2 الخاص بهما. لرؤية وصف كل مجموعة بيانات، يمكنك النقر على "metadata"، والذي سيعيد التوجيه إلى عنصر 'discovery-metadata' المقابل كما يتم تقديمه بواسطة wis2box-api.

Question

حاول تحديث وصف آخر مجموعة بيانات قمت بإنشائها. بعد تحديث الوصف، هل ترى إشعار WIS2 جديدًا منشورًا على الموضوع origin/a/wis2/<your-centre-id>/metadata؟ ما الفرق بين الإشعار الجديد والسابق؟

اضغط لعرض الإجابة

يجب أن ترى رسالة إشعار بيانات جديدة يتم إرسالها بعد تحديث مجموعة البيانات الخاصة بك على الموضوع origin/a/wis2/<your-centre-id>/metadata.

في الرسالة، ستتغير قيمة "rel": "canonical" إلى "rel": "update"، مما يشير إلى أن البيانات المنشورة سابقًا قد تم تعديلها. لعرض الوصف المحدث، قم بنسخ رابط URL ولصقه في متصفحك، ويجب أن ترى الوصف المحدث.

Question

حاول تحديث تسلسل الموضوعات (Topic Hierarchy) لآخر مجموعة بيانات قمت بإنشائها عن طريق تغيير الاختيار في "Sub-Discipline Topics". هل ترى إشعار WIS2 جديدًا منشورًا على الموضوع origin/a/wis2/<your-centre-id>/metadata؟

اضغط لعرض الإجابة

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

الخاتمة

تهانينا!

في هذه الجلسة العملية، تعلمت كيفية:

  • استخدام محرر مجموعات البيانات الخاص بـ wis2box-webapp
  • إنشاء مجموعات بيانات جديدة باستخدام القوالب Template=weather/surface-based-observations/synop و Template=other
  • تعريف بيانات الاكتشاف الوصفية الخاصة بك
  • مراجعة تعيينات البيانات الخاصة بك
  • نشر بيانات الاكتشاف الوصفية ومراجعة إشعار WIS2