بدء استخدام بيانات DICOM في أحمال عمل التحليلات

توضح هذه المقالة كيفية البدء باستخدام بيانات DICOM® في أحمال عمل التحليلات مع Azure Data Factory وMicrosoft Fabric.

المتطلبات الأساسية

قبل البدء، أكمل الخطوات التالية:

  • إنشاء حساب تخزين باستخدام قدرات Azure Data Lake Storage Gen2 عن طريق تمكين مساحة اسم هرمية:
    • إنشاء حاوية لتخزين بيانات تعريف DICOM، على سبيل المثال، المسماة dicom.
  • نشر مثيل لخدمة DICOM.
  • إنشاء مثيل Data Factory :
  • إنشاء مستودع في Fabric.
  • أضف تعيينات الأدوار إلى الهوية المدارة المعينة من قبل نظام Data Factory لخدمة DICOM وحساب تخزين Data Lake Storage Gen2:
    • أضف دور DICOM Data Reader لمنح الإذن لخدمة DICOM.
    • أضف دور Storage Blob Data Contributor لمنح الإذن لحساب Data Lake Storage Gen2.

تكوين مسار Data Factory لخدمة DICOM

في هذا المثال، يتم استخدام مسار Data Factory لكتابة سمات DICOM للمثيلات والسلاسل والدراسات في حساب تخزين بتنسيق جدول Delta.

من مدخل Microsoft Azure، افتح مثيل Data Factory وحدد Launch studio للبدء.

Screenshot that shows the Launch studio button in the Azure portal.

إنشاء linked services

تقرأ مسارات Data Factory من مصادر البيانات وتكتب إلى متلقي البيانات، والتي عادة ما تكون خدمات Azure أخرى. تتم إدارة هذه الاتصالات بخدمات أخرى كخدمات مرتبطة.

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

إنشاء خدمة مرتبطة لخدمة DICOM

  1. في Azure Data Factory Studio، حدد Manage من القائمة على اليسار. ضمن الاتصال، حدد الخدمات المرتبطة ثم حدد جديد.

    Screenshot that shows the Linked services screen in Data Factory.

  2. في جزء الخدمة المرتبطة الجديدة، ابحث عن REST. حدد لوحة REST ثم حدد متابعة.

    Screenshot that shows the New linked service pane with the REST tile selected.

  3. أدخل اسما ووصفاللخدمة المرتبطة.

    Screenshot that shows the New linked service pane with DICOM service details.

  4. في حقل Base URL ، أدخل عنوان URL للخدمة لخدمة DICOM. على سبيل المثال، تحتوي خدمة DICOM المسماة contosocliniccontosohealth في مساحة العمل على عنوان URL https://contosohealth-contosoclinic.dicom.azurehealthcareapis.comللخدمة .

  5. بالنسبة لنوع المصادقة، حدد الهوية المدارة المعينة من قبل النظام.

  6. بالنسبة لمورد AAD (دليل Azure النشط)، أدخل https://dicom.healthcareapis.azure.com. عنوان URL هذا هو نفسه لجميع مثيلات خدمة DICOM.

  7. بعد تعبئة الحقول المطلوبة، حدد Test connection للتأكد من تكوين أدوار الهوية بشكل صحيح.

  8. عند نجاح اختبار الاتصال، حدد Create.

إنشاء خدمة مرتبطة ل Azure Data Lake Storage Gen2

  1. في Data Factory Studio، حدد Manage من القائمة على اليسار. ضمن الاتصال، حدد الخدمات المرتبطة ثم حدد جديد.

  2. في جزء الخدمة المرتبطة الجديدة، ابحث عن Azure Data Lake Storage Gen2. حدد لوحة Azure Data Lake Storage Gen2 ثم حدد Continue.

    Screenshot that shows the New linked service pane with the Azure Data Lake Storage Gen2 tile selected.

  3. أدخل اسما ووصفاللخدمة المرتبطة.

    Screenshot that shows the New linked service pane with Data Lake Storage Gen2 details.

  4. بالنسبة لنوع المصادقة، حدد الهوية المدارة المعينة من قبل النظام.

  5. أدخل تفاصيل حساب التخزين عن طريق إدخال عنوان URL إلى حساب التخزين يدويا. أو يمكنك تحديد اشتراك Azure وحساب التخزين من القوائم المنسدلة.

  6. بعد تعبئة الحقول المطلوبة، حدد Test connection للتأكد من تكوين أدوار الهوية بشكل صحيح.

  7. عند نجاح اختبار الاتصال، حدد Create.

إنشاء مسار لبيانات DICOM

البنية الأساسية لبرنامج ربط العمليات التجارية ل Data Factory هي مجموعة من الأنشطة التي تؤدي مهمة، مثل نسخ بيانات تعريف DICOM إلى جداول Delta. يوضح هذا القسم تفاصيل إنشاء مسار يقوم بمزامنة بيانات DICOM بانتظام مع جداول Delta حيث تتم إضافة البيانات إلى خدمة DICOM وتحديثها وحذفها منها.

  1. حدد Author من القائمة على اليسار. في جزء موارد المصنع، حدد علامة الجمع (+) لإضافة مورد جديد. حدد Pipeline ثم حدد Template gallery من القائمة.

    Screenshot that shows Template gallery selected under Pipeline.

  2. في معرض القوالب، ابحث عن DICOM. حدد تجانب Copy DICOM Metadata Changes to ADLS Gen2 in Delta Format ثم حدد Continue.

    Screenshot that shows the DICOM template selected in the Template gallery.

  3. في قسم Inputs ، حدد الخدمات المرتبطة التي تم إنشاؤها مسبقا لخدمة DICOM وحساب Data Lake Storage Gen2.

    Screenshot that shows the Inputs section with linked services selected.

  4. حدد استخدام هذا القالب لإنشاء البنية الأساسية لبرنامج ربط العمليات التجارية الجديدة.

إنشاء مسار لبيانات DICOM

إذا قمت بإنشاء خدمة DICOM باستخدام Azure Data Lake Storage، فستحتاج إلى استخدام قالب مخصص لتضمين معلمة جديدة fileName في مسار بيانات التعريف. بدلا من استخدام القالب من معرض القوالب، اتبع هذه الخطوات لتكوين البنية الأساسية لبرنامج ربط العمليات التجارية.

  1. قم بتنزيل القالب من GitHub. ملف القالب هو مجلد مضغوط (مضغوط). لا تحتاج إلى استخراج الملفات لأنها تم تحميلها بالفعل في شكل مضغوط.

  2. في Azure Data Factory، حدد Author من القائمة اليسرى. في جزء موارد المصنع، حدد علامة الجمع (+) لإضافة مورد جديد. حدد Pipeline ثم حدد Import from pipeline template.

  3. في النافذة فتح ، حدد القالب الذي قمت بتنزيله. حدد فتح.

  4. في قسم Inputs ، حدد الخدمات المرتبطة التي تم إنشاؤها لخدمة DICOM وحساب Azure Data Lake Storage Gen2.

    Screenshot showing the Inputs section with linked services selected.

  5. حدد استخدام هذا القالب لإنشاء البنية الأساسية لبرنامج ربط العمليات التجارية الجديدة.

جدولة المسار

تتم جدولة المسارات بواسطة المشغلات. هناك أنواع مختلفة من المشغلات. تسمح مشغلات الجدول بتشغيل المسارات على جدول زمني على مدار الساعة، ما يعني أنها تعمل في أوقات محددة من اليوم، مثل كل ساعة أو كل يوم في منتصف الليل. تؤدي المشغلات اليدوية إلى تشغيل البنية الأساسية لبرنامج ربط العمليات التجارية عند الطلب، ما يعني أنها تعمل كلما أردتها.

في هذا المثال، يتم استخدام مشغل نافذة التدوير لتشغيل البنية الأساسية لبرنامج ربط العمليات التجارية بشكل دوري نظرا لنقطة بداية وفاصل زمني منتظم. لمزيد من المعلومات حول المشغلات، راجع تنفيذ البنية الأساسية لبرنامج ربط العمليات التجارية والمشغلات في Azure Data Factory أو Azure Synapse Analytics.

إنشاء مشغل نافذة متقلبة جديدة

  1. حدد Author من القائمة على اليسار. حدد البنية الأساسية لبرنامج ربط العمليات التجارية لخدمة DICOM وحدد إضافة مشغل وجديد /تحرير من شريط القوائم.

    Screenshot that shows the pipeline view of Data Factory Studio with the Add trigger button on the menu bar selected.

  2. في جزء Add triggers ، حدد القائمة المنسدلة Choose trigger ثم حدد New.

  3. أدخل اسما ووصفاللمشغل.

    Screenshot that shows the New trigger pane with the Name, Description, Type, Date, and Recurrence fields.

  4. حدد نافذة التدوير كنوع.

  5. لتكوين مسار يعمل كل ساعة، قم بتعيين التكرار إلى ساعة واحدة.

  6. قم بتوسيع قسم Advanced وأدخل Delay لمدة 15 دقيقة. يسمح هذا الإعداد بإكمال أي عمليات معلقة في نهاية ساعة قبل المعالجة.

  7. قم بتعيين الحد الأقصى للتزامن إلى 1 لضمان التناسق عبر الجداول.

  8. حدد OK لمتابعة تكوين معلمات تشغيل المشغل.

تكوين معلمات تشغيل المشغل

تحدد المشغلات وقت تشغيل البنية الأساسية لبرنامج ربط العمليات التجارية. كما أنها تتضمن المعلمات التي يتم تمريرها إلى تنفيذ البنية الأساسية لبرنامج ربط العمليات التجارية. يحدد قالب Copy DICOM Metadata Changes to Delta بعض المعلمات الموضحة في الجدول التالي. إذا لم يتم توفير أي قيمة أثناء التكوين، يتم استخدام القيمة الافتراضية المدرجة لكل معلمة.

اسم المعلمة ‏‏الوصف‬ القيمة الافتراضية
BatchSize الحد الأقصى لعدد التغييرات التي سيتم استردادها في كل مرة من موجز التغيير (200 كحد أقصى) 200
ApiVersion إصدار واجهة برمجة التطبيقات لخدمة Azure DICOM (الحد الأدنى 2) 2
StartTime وقت البدء الشامل لتغييرات DICOM 0001-01-01T00:00:00Z
EndTime وقت الانتهاء الحصري لتغييرات DICOM 9999-12-31T23:59:59Z
ContainerName اسم الحاوية لجداول دلتا الناتجة dicom
مسار InstanceTable المسار الذي يحتوي على جدول Delta لمثيلات DICOM SOP داخل الحاوية instance
SeriesTablePath المسار الذي يحتوي على جدول Delta لسلسلة DICOM داخل الحاوية series
StudyTablePath المسار الذي يحتوي على جدول Delta لدراسات DICOM داخل الحاوية study
ساعات الاستبقاء الحد الأقصى للاحتفاظ بالساعات للبيانات في جداول Delta 720
  1. في جزء Trigger Run Parameters ، أدخل قيمة ContainerName التي تطابق اسم حاوية التخزين التي تم إنشاؤها في المتطلبات الأساسية.

    Screenshot that shows the Trigger Run Parameters pane, with StartTime and EndTime values entered.

  2. بالنسبة إلى StartTime، استخدم متغير @formatDateTime(trigger().outputs.windowStartTime)النظام .

  3. بالنسبة إلى EndTime، استخدم متغير @formatDateTime(trigger().outputs.windowEndTime)النظام .

    إشعار

    تدعم مشغلات النافذة الهابطة فقط متغيرات النظام:

    • @trigger().outputs.windowStartTime و
    • @trigger().outputs.windowEndTime

    تستخدم مشغلات الجدولة متغيرات نظام مختلفة:

    • @trigger().scheduledTime و
    • @trigger().startTime

    تعرف على المزيد حول أنواع المشغلات.

  4. حدد Save لإنشاء المشغل الجديد. حدد نشر لبدء تشغيل المشغل وفقا للجدول المحدد.

    Screenshot that shows the Publish button on the main menu bar.

بعد نشر المشغل، يمكن تشغيله يدويا باستخدام الخيار Trigger now . إذا تم تعيين وقت البدء لقيمة في الماضي، يبدأ المسار على الفور.

مراقبة تشغيل المسار

يمكنك مراقبة عمليات تشغيل المشغل وتشغيل البنية الأساسية لبرنامج ربط العمليات التجارية المرتبطة بها على علامة التبويب Monitor . هنا، يمكنك الاستعراض عند تشغيل كل مسار والمدة التي استغرقها التشغيل. يمكنك أيضا تصحيح أي مشاكل نشأت.

Screenshot that shows the Monitor view with a list of pipeline runs.

Microsoft Fabric

Fabric هو حل تحليلي متكامل يقع فوق Microsoft OneLake. باستخدام مخزن بحيرة Fabric، يمكنك إدارة البيانات وبنيتها وتحليلها في OneLake في موقع واحد. يمكن توصيل أي بيانات خارج OneLake، مكتوبة إلى Data Lake Storage Gen2، ب OneLake كاختصارات للاستفادة من مجموعة أدوات Fabric.

إنشاء اختصارات لجداول بيانات التعريف

  1. انتقل إلى البحيرة التي تم إنشاؤها في المتطلبات الأساسية. في طريقة عرض المستكشف ، حدد قائمة علامات الحذف (...) بجوار مجلد الجداول .

  2. حدد اختصار جديد لإنشاء اختصار جديد لحساب التخزين الذي يحتوي على بيانات تحليلات DICOM.

    Screenshot that shows the New shortcut option in the Explorer view.

  3. حدد Azure Data Lake Storage Gen2 كمصدر للاختصار.

    Screenshot that shows the New shortcut view with the Azure Data Lake Storage Gen2 tile.

  4. ضمن إعدادات الاتصال، أدخل عنوان URL الذي استخدمته في قسم الخدمات المرتبطة.

    Screenshot that shows the connection settings for the Azure Data Lake Storage Gen2 account.

  5. حدد اتصالا موجودا أو أنشئ اتصالا جديدا عن طريق تحديد نوع المصادقة الذي تريد استخدامه.

    إشعار

    هناك بعض الخيارات للمصادقة بين Data Lake Storage Gen2 و Fabric. يمكنك استخدام حساب مؤسسة أو كيان خدمة. لا نوصي باستخدام مفاتيح الحساب أو الرموز المميزة لتوقيع الوصول المشترك.

  6. حدد التالي.

  7. أدخل اسم اختصار يمثل البيانات التي تم إنشاؤها بواسطة مسار Data Factory. على سبيل المثال، بالنسبة لجدول instance Delta، من المحتمل أن يكون اسم الاختصار مثيلا.

  8. أدخل المسار الفرعي الذي يطابق المعلمة ContainerName من تكوين معلمات التشغيل واسم الجدول للاختصار. على سبيل المثال، استخدم /dicom/instance لجدول Delta مع المسار instance في الحاوية dicom .

  9. حدد إنشاء لإنشاء الاختصار.

  10. كرر الخطوتين من 2 إلى 9 لإضافة الاختصارات المتبقية إلى جداول Delta الأخرى في حساب التخزين (على سبيل المثال، series و study).

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

Screenshot that shows the table columns listed in the Explorer view.

إنشاء اختصارات للملفات

إذا كنت تستخدم خدمة DICOM مع Data Lake Storage، يمكنك بالإضافة إلى ذلك إنشاء اختصار لبيانات ملف DICOM المخزنة في مستودع البيانات.

  1. انتقل إلى البحيرة التي تم إنشاؤها في المتطلبات الأساسية. في طريقة عرض المستكشف، حدد قائمة القطع الناقص (...) بجوار مجلد الملفات.

  2. حدد اختصار جديد لإنشاء اختصار جديد لحساب التخزين الذي يحتوي على بيانات DICOM.

    Screenshot that shows the New shortcut option of the Files menu in the Explorer view.

  3. حدد Azure Data Lake Storage Gen2 كمصدر للاختصار.

    Screenshot that shows the New shortcut view with the Azure Data Lake Storage Gen2 tile.

  4. ضمن إعدادات الاتصال، أدخل عنوان URL الذي استخدمته في قسم الخدمات المرتبطة.

    Screenshot that shows the connection settings for the Azure Data Lake Storage Gen2 account.

  5. حدد اتصالا موجودا أو أنشئ اتصالا جديدا عن طريق تحديد نوع المصادقة الذي تريد استخدامه.

  6. حدد التالي.

  7. أدخل اسم اختصار يصف بيانات DICOM. على سبيل المثال، contoso-dicom-files.

  8. أدخل المسار الفرعي الذي يطابق اسم حاوية التخزين والمجلد المستخدم من قبل خدمة DICOM. على سبيل المثال، إذا كنت تريد الارتباط بالمجلد الجذر، فسيكون المسار الفرعي /dicom/AHDS. لاحظ أن المجلد الجذر هو دائما AHDS، ولكن يمكنك إنشاء ارتباط اختياريا إلى مجلد تابع لمساحة عمل معينة أو مثيل خدمة DICOM.

  9. حدد إنشاء لإنشاء الاختصار.

Screenshot that shows the shortcut to the DICOM files.

قم بتشغيل دفاتر الملاحظات

بعد إنشاء الجداول في lakehouse، يمكنك الاستعلام عنها من دفاتر ملاحظات Fabric. يمكنك إنشاء دفاتر الملاحظات مباشرة من lakehouse عن طريق تحديد Open Notebook من شريط القوائم.

في صفحة دفتر الملاحظات، لا يزال من الممكن عرض محتويات lakehouse على الجانب الأيسر، بما في ذلك الجداول المضافة حديثا. في أعلى الصفحة، حدد لغة دفتر الملاحظات. يمكن أيضا تكوين اللغة للخلايا الفردية. يستخدم المثال التالي Spark SQL.

الاستعلام عن الجداول باستخدام Spark SQL

في محرر الخلية، أدخل استعلام Spark SQL مثل عبارة SELECT .

SELECT * from instance

يحدد هذا الاستعلام كافة المحتويات من instance الجدول. عندما تصبح جاهزا، حدد تشغيل الخلية لتشغيل الاستعلام.

Screenshot that shows a notebook with a sample Spark SQL query.

بعد بضع ثوان، تظهر نتائج الاستعلام في جدول أسفل الخلية مثل المثال الموضح هنا. قد يكون مقدار الوقت أطول إذا كان استعلام Spark هذا هو الأول في جلسة العمل لأن سياق Spark يحتاج إلى تهيئة.

Screenshot that shows a notebook with a sample Spark SQL query and results.

الوصول إلى بيانات ملف DICOM في دفاتر الملاحظات

إذا استخدمت القالب لإنشاء البنية الأساسية لبرنامج ربط العمليات التجارية وأنشأت اختصارا لبيانات ملف DICOM، يمكنك استخدام filePath العمود في instance الجدول لربط بيانات تعريف المثيل ببيانات الملف.

SELECT sopInstanceUid, filePath from instance

Screenshot that shows a notebook with a sample Spark SQL query and results that includes the filePath.

الملخص

في هذا المقال، ستتعلم كيفية إجراء ما يلي:

  • استخدم قوالب Data Factory لإنشاء مسار من خدمة DICOM إلى حساب Data Lake Storage Gen2.
  • تكوين مشغل لاستخراج بيانات تعريف DICOM على جدول زمني كل ساعة.
  • استخدم الاختصارات لتوصيل بيانات DICOM في حساب تخزين ب Fabric lakehouse.
  • استخدم دفاتر الملاحظات للاستعلام عن بيانات DICOM في lakehouse.

الخطوات التالية

إشعار

DICOM® هي العلامة التجارية المسجلة للجمعية الوطنية لمصنعي الكهرباء لمنشورات المعايير المتعلقة بالاتصالات الرقمية للمعلومات الطبية.