تصدير بيانات FHIR في واجهة برمجة تطبيقات Azure ل FHIR

هام

سيتم إيقاف Azure API ل FHIR في 30 سبتمبر 2026. اتبع استراتيجيات الترحيل للانتقال إلى خدمة Azure Health Data Services FHIR بحلول ذلك التاريخ. بسبب إيقاف Azure API ل FHIR، لن يسمح بالنشرات الجديدة بدءا من 1 أبريل 2025. خدمة Azure Health Data Services FHIR هي الإصدار المتطور من Azure API ل FHIR الذي يمكن العملاء من إدارة خدمات FHIR وDICOM وMedTech مع عمليات التكامل في خدمات Azure الأخرى.

تسمح ميزة التصدير المجمع بتصدير البيانات من خادم FHIR وفقا لمواصفات FHIR.

قبل استخدام $export، تريد التأكد من تكوين واجهة برمجة تطبيقات Azure ل FHIR لاستخدامها. لتكوين إعدادات التصدير وإنشاء حساب تخزين Azure، راجع صفحة تكوين بيانات التصدير.

إشعار

يسمح فقط بتسجيل حسابات التخزين في نفس الاشتراك الخاص بواجهة برمجة تطبيقات Azure ل FHIR كوجهة لعمليات $export.

استخدام الأمر $export

بعد تكوين واجهة برمجة تطبيقات Azure ل FHIR للتصدير، يمكنك استخدام الأمر $export لتصدير البيانات خارج الخدمة. سيتم تخزين البيانات في حساب التخزين الذي حددته أثناء تكوين التصدير. لمعرفة كيفية استدعاء أمر $export في خادم FHIR، اقرأ الوثائق حول مواصفات $export HL7 FHIR.

الوظائف عالقة في حالة سيئة

في بعض الحالات، هناك احتمال أن تكون الوظيفة عالقة في حالة سيئة. يمكن أن يحدث هذا خاصة إذا لم يتم إعداد أذونات حساب التخزين بشكل صحيح. إحدى طرق التحقق من صحة التصدير هي التحقق من حساب التخزين الخاص بك لمعرفة ما إذا كانت الحاوية المقابلة (أي ndjson) الملفات موجودة. إذا لم تكن موجودة، ولا توجد وظائف تصدير أخرى قيد التشغيل، فهناك احتمال أن تكون المهمة الحالية عالقة في حالة سيئة. يجب إلغاء مهمة التصدير عن طريق إرسال طلب إلغاء ومحاولة إعادة ترتيب المهمة مرة أخرى. وقت التشغيل الافتراضي للتصدير في حالة سيئة هو 10 دقائق قبل أن يتوقف وينتقل إلى مهمة جديدة أو يعيد محاولة التصدير.

تدعم واجهة برمجة تطبيقات Azure ل FHIR $export على المستويات التالية:

  • النظام: GET https://<<FHIR service base URL>>/$export>>
  • المريض: GET https://<<FHIR service base URL>>/Patient/$export>>
  • مجموعة المرضى* - تقوم واجهة برمجة تطبيقات Azure ل FHIR بتصدير جميع الموارد ذات الصلة ولكنها لا تصدر خصائص المجموعة: GET https://<<FHIR service base URL>>/Group/[ID]/$export>>

مع التصدير، يتم تصدير البيانات في ملفات متعددة تحتوي كل منها على موارد من نوع واحد فقط. سيكون عدد الموارد في ملف فردي محدودا. يعتمد الحد الأقصى لعدد الموارد على أداء النظام. تم تعيينه حاليا إلى 5000، ولكن يمكن أن يتغير. والنتيجة هي أنك قد تحصل على ملفات متعددة لنوع مورد. ستتبع أسماء الملفات التنسيق 'resourceName-number-number.ndjson'. ترتيب الملفات غير مضمون ليتوافق مع أي ترتيب للموارد في قاعدة البيانات.

إشعار

Patient/$export وقد يصدر Group/[ID]/$export موارد مكررة إذا كان المورد في حجرة أكثر من مورد واحد، أو كان في مجموعات متعددة.

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

تصدير بيانات FHIR إلى ADLS Gen2

ندعم حاليا $export لحسابات التخزين الممكنة ل ADLS Gen2، مع القيد التالي:

  • لا يمكن للمستخدم الاستفادة من مساحات الأسماء الهرمية، ومع ذلك لا توجد طريقة لاستهداف التصدير إلى دليل فرعي معين داخل الحاوية. نحن نوفر فقط القدرة على استهداف حاوية معينة (حيث نقوم بإنشاء مجلد جديد لكل تصدير).
  • بمجرد اكتمال التصدير، لا نقوم بتصدير أي شيء إلى هذا المجلد مرة أخرى، نظرا لأن عمليات التصدير اللاحقة إلى نفس الحاوية ستكون داخل مجلد تم إنشاؤه حديثا.

الإعدادات والمعلمات

الرؤوس

هناك معلمتان مطلوبتان للعنوان يجب تعيينهما للوظائف $export. يتم تعريف القيم بواسطة مواصفات $export الحالية.

  • Accept - application/fhir+json
  • الأفضل - الاستجابة غير المتزامنة

معلمات الاستعلام

تدعم واجهة برمجة تطبيقات Azure ل FHIR معلمات الاستعلام التالية. جميع هذه المعلمات اختيارية:

معلمة الاستعلام معرفة بواسطة مواصفات FHIR؟ ‏‏الوصف
_outputFormat ‏‏نعم‬ يدعم حاليا ثلاث قيم لمحاذاة مواصفات FHIR: application/fhir+ndjson أو application/ndjson أو ndjson. ترجع ndjson جميع مهام التصدير ولا تؤثر القيمة التي تم تمريرها على سلوك التعليمات البرمجية.
_منذ ‏‏نعم‬ يسمح لك بتصدير الموارد التي تم تعديلها منذ الوقت المقدم فقط
‎_type ‏‏نعم‬ يسمح لك بتحديد أنواع الموارد التي سيتم تضمينها. على سبيل المثال، _type=المريض سيعيد موارد المريض فقط
_typefilter ‏‏نعم‬ لطلب تصفية دقيقة، يمكنك استخدام _typefilter مع المعلمة _type. قيمة المعلمة _typeFilter هي قائمة مفصولة بفواصل من استعلامات FHIR التي تقيد النتائج بشكل أكبر
_حاويه لا تحديد الحاوية داخل حساب التخزين المكون حيث يجب تصدير البيانات. إذا تم تحديد حاوية، فسيتم تصدير البيانات إلى مجلد في تلك الحاوية. إذا لم يتم تحديد الحاوية، فسيتم تصدير البيانات إلى حاوية جديدة.
_حتي لا يسمح لك بتصدير الموارد التي تم تعديلها حتى الوقت المقدم فقط. تنطبق هذه المعلمة على التصدير على مستوى النظام فقط. في هذه الحالة، إذا لم يتم تعطيل الإصدارات التاريخية أو إزالتها، يضمن التصدير عرض اللقطة الحقيقي، أو بعبارة أخرى، يتيح السفر عبر الزمن.
includeAssociatedData لا يسمح لك بتصدير المحفوظات والموارد المحذوفة مبدئيا. لا يعمل عامل التصفية هذا مع معلمة الاستعلام "_typeFilter". قم بتضمين القيمة ك "_history" لتصدير المحفوظات/ الموارد غير الأحدث التي تم إصدارها. قم بتضمين القيمة ك "_deleted" لتصدير الموارد المحذوفة مبدئيا.
_isparallel لا يمكن إضافة معلمة الاستعلام "_isparallel" إلى عملية التصدير لتحسين معدل النقل الخاص بها. يجب تعيين القيمة إلى true لتمكين التوازي. من المهم ملاحظة أن استخدام هذه المعلمة قد يؤدي إلى زيادة في استهلاك وحدات الطلب على مدى عمر التصدير.

إشعار

هناك مشكلة معروفة في عملية $export قد تؤدي إلى عمليات تصدير غير مكتملة مع نجاح الحالة. تحدث المشكلة عند استخدام علامة is_parallel. تتأثر مهام التصدير المنفذة باستخدام معلمة استعلام _isparallel بدءا من 13 فبراير 2024 بهذه المشكلة.

تصدير آمن إلى Azure Storage

تدعم واجهة برمجة تطبيقات Azure ل FHIR عملية تصدير آمنة. اختر أحد الخيارين أدناه:

  • السماح لواجهة برمجة تطبيقات Azure ل FHIR كخدمة موثوق بها من Microsoft بالوصول إلى حساب تخزين Azure.

  • السماح لعناوين IP معينة مقترنة بواجهة برمجة تطبيقات Azure ل FHIR بالوصول إلى حساب تخزين Azure. يوفر هذا الخيار تكوينين مختلفين اعتمادا على ما إذا كان حساب التخزين في نفس موقع أو في موقع مختلف عن موقع واجهة برمجة تطبيقات Azure ل FHIR.

السماح لواجهة برمجة تطبيقات Azure ل FHIR كخدمة موثوق بها من Microsoft

حدد حساب تخزين من مدخل Microsoft Azure، ثم حدد جزء Networking . حدد Selected networks ضمن علامة التبويب Firewalls and virtual networks .

هام

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

Azure Storage Networking Settings.

ضمن قسم Exceptions، حدد المربع Allow trusted خدمات Microsoft للوصول إلى حساب التخزين هذا وحفظ الإعداد.

Allow trusted Microsoft services to access this storage account.

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

هام

سيتم تحديث واجهة المستخدم لاحقا للسماح لك بتحديد نوع المورد لواجهة برمجة تطبيقات Azure ل FHIR ومثيل خدمة معين.

السماح لعناوين IP محددة بالوصول إلى حساب تخزين Azure من مناطق Azure الأخرى

  1. في مدخل Microsoft Azure، انتقل إلى حساب Azure Data Lake Storage Gen2.

  2. في القائمة اليسرى، حدد Networking.

  3. حدد Enabled من الشبكات الظاهرية المحددة وعناوين IP.

  4. في قسم جدار الحماية، في المربع نطاق العنوان، حدد عنوان IP. أضف نطاقات IP للسماح بالوصول من الإنترنت أو الشبكات المحلية. يمكنك العثور على عنوان IP في الجدول التالي لمنطقة Azure حيث يتم توفير خدمة FHIR.

    منطقة Azure عنوان IP العام
    شرق أستراليا 20.53.44.80
    وسط كندا 20.48.192.84
    Central US 52.182.208.31
    شرق الولايات المتحدة 20.62.128.148
    East US 2 20.49.102.228
    شرق الولايات المتحدة 2 EUAP 20.39.26.254
    منطقة شمال ألمانيا 51.116.51.33
    وسط غرب ألمانيا 51.116.146.216
    شرق اليابان 20.191.160.26
    وسط كوريا 20.41.69.51
    وسط شمال الولايات المتحدة 20.49.114.188
    أوروبا الشمالية 52.146.131.52
    جنوب أفريقيا 102.133.220.197
    South Central US 13.73.254.220
    جنوب شرق آسيا 23.98.108.42
    شمال سويسرا 51.107.60.95
    جنوب المملكة المتحدة 51.104.30.170
    غرب المملكة المتحدة 51.137.164.94
    غرب وسط الولايات المتحدة 52.150.156.44
    أوروبا الغربية 20.61.98.66
    West US 2 40.64.135.77

السماح لعناوين IP محددة بالوصول إلى حساب تخزين Azure في نفس المنطقة

تشبه عملية التكوين لعناوين IP في نفس المنطقة الإجراء السابق، باستثناء أنك تستخدم نطاق عناوين IP محددا بتنسيق التوجيه بين المجالات (CIDR) بدون فئة (CIDR) بدلا من ذلك (أي 100.64.0.0/10). يجب تحديد نطاق عناوين IP (100.64.0.0 إلى 100.127.255.255) لأنه يتم تخصيص عنوان IP لخدمة FHIR في كل مرة تقوم فيها بإجراء طلب عملية.

إشعار

من الممكن استخدام عنوان IP خاص ضمن نطاق 10.0.2.0/24، ولكن ليس هناك ما يضمن نجاح العملية في مثل هذه الحالة. يمكنك إعادة المحاولة إذا فشل طلب العملية، ولكن حتى تستخدم عنوان IP ضمن نطاق 100.64.0.0/10، لن ينجح الطلب.

سلوك الشبكة هذا لنطاقات عناوين IP حسب التصميم. البديل هو تكوين حساب التخزين في منطقة مختلفة.

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

في هذه المقالة، تعلمت كيفية تصدير موارد FHIR باستخدام الأمر $export. بعد ذلك، لمعرفة كيفية تصدير بيانات غير محددة الهوية، راجع

FHIR® هي علامة تجارية مسجلة ل HL7 وتستخدم بإذن من HL7.