إنشاء دالة مشغلة بواسطة Azure Cosmos DB

تعرف على كيفية إنشاء دالة في مدخل Microsoft Azure التي يتم تشغيلها عند إضافة البيانات إلى Azure Cosmos DB أو تغييرها. لمعرفة المزيد حول Azure Cosmos DB، راجع Azure Cosmos DB: الحوسبة قاعدة بيانات بلا خادم باستخدام وظائف Azure.

إشعار

يتم دعم التحرير في المدخل فقط لوظائف JavaScript وPowerShell وC# Script. يتم دعم تحرير Python في المدخل فقط عند التشغيل في خطة الاستهلاك. لإنشاء تطبيق برنامج نصي C# يدعم التحرير في المدخل، يجب عليك اختيار إصدار وقت التشغيل الذي يدعم النموذج قيد المعالجة.

عندما يكون ذلك ممكنا، يجب عليك تطوير وظائفك محليا.

لمعرفة المزيد حول القيود المفروضة على تحرير التعليمات البرمجية للدالة في مدخل Microsoft Azure، راجع قيود التطوير في مدخل Microsoft Azure.

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

لإكمال هذا البرنامج التعليمي:

إشعار

يتم دعم روابط Azure Cosmos DB فقط للاستخدام مع Azure Cosmos DB ل NoSQL. يتم توفير دعم Azure Cosmos DB للجدول باستخدام روابط تخزين الجدول، بدءا من الملحق 5.x. بالنسبة لجميع واجهات برمجة تطبيقات Azure Cosmos DB الأخرى، يجب عليك الوصول إلى قاعدة البيانات من دالتك باستخدام العميل الثابت لواجهة برمجة التطبيقات الخاصة بك، بما في ذلك Azure Cosmos DB ل MongoDB وAzure Cosmos DB ل Cassandra وAzure Cosmos DB ل Apache Gremlin.

تسجيل الدخول إلى Azure

سجل الدخول إلى مدخل Microsoft Azure باستخدام حساب Azure الخاص بك.

إنشاء حساب Azure Cosmos DB

يجب أن يكون لديك حساب AZURE Cosmos DB يستخدم واجهة برمجة تطبيق SQL قبل إنشاء ربط الإخراج.

  1. من قائمة مدخل Azure أو الصفحة الرئيسية، حدد Create a resource.

  2. ابحث عن Azure Cosmos DB. حدد Create>Azure Cosmos DB.

  3. في صفحة Create an Azure Cosmos DB account ، حدد الخيار Create ضمن قسم Azure Cosmos DB for NoSQL .

    يوفر Azure Cosmos DB العديد من واجهات برمجة التطبيقات:

    • NoSQL، لبيانات المستند
    • PostgreSQL
    • MongoDB، لبيانات المستند
    • Apache Cassandra
    • جدول
    • Apache Gremlin، لبيانات الرسم البياني

    لمعرفة المزيد حول واجهة برمجة التطبيقات ل NoSQL، راجع مرحبا بك في Azure Cosmos DB.

  4. في صفحة إنشاء حساب Azure Cosmos DB، أدخل الإعدادات الأساسية لحساب Azure Cosmos DB الجديد.

    الإعداد قيمة ‏‏الوصف
    الاشتراك اسم الاشتراك حدد اشتراك Azure الذي تريد استخدامه لحساب Azure Cosmos DB هذا.
    مجموعة الموارد اسم مجموعة الموارد حدد مجموعة موارد، أو حدد إنشاء جديد، ثم أدخل اسمًا فريدًا لمجموعة الموارد الجديدة.
    اسم الحساب اسم فريد أدخل اسما لتعريف حساب Azure Cosmos DB الخاص بك. لأنه يتم إلحاق documents.azure.com إلى الاسم الذي تقوم بتوفيره لإنشاء URI الخاص بك، استخدم اسمًا فريدًا. يمكن أن يحتوي الاسم على أحرف صغيرة وأرقام وحرف الواصلة (-) فقط. يجب أن يكون من 3 إلى 44 حرفا.
    الموقع المنطقة الأقرب إلى مستخدميك حدد موقعًا جغرافيًّا لاستضافة حساب Azure Cosmos DB. استخدم الموقع الأقرب إلى المستخدمين لمنحهم أسرع وصول إلى البيانات.
    وضع السعة معدل النقل المقدم أو بلا خادم حدد "Provisioned throughput" لإنشاء حساب في وضع معدل النقل المتوفر. حدد Serverless لإنشاء حساب في وضع دون خادم.
    تطبيق خصم طبقة Azure Cosmos DB المجاني تطبيق أو عدم تطبيق مع الطبقة المجانية لـ Azure Cosmos DB، ستحصل على أول 1000 RU/ثانية و25 غيغابايت من التخزين مجاناً في الحساب. تعرف على المزيد حول الطبقة المجانية.
    ضع حدُا لمعدل نقل الحساب محدد أم لا حدد إجمالي مقدار معدل النقل الذي يمكن توفيره على هذا الحساب. يمنع هذا الحد الرسوم غير المتوقعة المتعلقة بمعدل النقل المقدم. يمكنك تحديث هذا الحد أو إزالته بعد إنشاء حسابك.

    يمكن أن يكون لديك ما يصل إلى حساب Azure Cosmos DB مجاني واحد لكل اشتراك Azure ويجب عليك الاشتراك عند إنشاء الحساب. إذا كنت لا ترى خيار تطبيق خصم الطبقة المجانية، فهذا يعني تمكين حساب آخر بالفعل في الاشتراك مع الطبقة المجانية.

    تظهر لقطة الشاشة صفحة إنشاء حساب Azure Cosmos DB.

    إشعار

    الخيارات التالية غير متوفرة إذا قمت بتحديد دون خادمباعتبارهاوضع السعة:

    • تطبيق خصم من الدرجة المجانية
    • ضع حدُا لمعدل نقل الحساب
  5. في علامة تبويب Global Distributionكوّن التفاصيل التالية. يمكنك ترك القيم الافتراضية لهذه البداية السريعة:

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

    إشعار

    لا تتوفر الخيارات التالية إذا قمت بتحديد Serverless كوضع Capacity في صفحة Basics السابقة:

    • Geo-redundancy
    • كتابات متعددة المناطق
  6. اختياريا، يمكنك تكوين مزيد من التفاصيل في علامات التبويب التالية:

    • الشبكات. تكوين الوصول من شبكة ظاهرية.
    • نهج النسخ الاحتياطي. تكوين نهج النسخ الاحتياطي الدوري أو المستمر .
    • التشفير. استخدم إما مفتاحا مدارا بواسطة الخدمة أو مفتاحا يديره العميل.
    • العلامات. العلامات هي أزواج أسماء/قيم تمكنك من تصنيف الموارد وعرض الفوترة الموحدة من خلال تطبيق العلامة نفسها على موارد ومجموعات موارد متعددة.
  7. حدد "Review + create".

  8. راجع الإعدادات، ثم حدد Create. يستغرق إنشاء جهاز ظاهر بضع دقائق. انتظر حتى يتم عرض صفحة المدخل، اكتمل النشر.

    تظهر لقطة الشاشة اكتمال النشر.

  9. حدد الانتقال إلى المورد للانتقال إلى صفحة حساب Azure Cosmos DB.

    تظهر لقطة الشاشة صفحة حساب Azure Cosmos DB.

إنشاء تطبيق وظائف في Azure

  1. من قائمة مدخل Azure أو الصفحة الرئيسية، حدد Create a resource.

  2. في صفحة New، قم باختيار Compute>Function App.

  3. ضمن تحديد خيار استضافة، حدد Consumption>Select لإنشاء تطبيقك في خطة الاستهلاك الافتراضية. في خيار الاستضافة بلا خادم هذا، تدفع فقط مقابل الوقت الذي تعمل فيه وظائفك. توفر الخطة المتميزة أيضا تحجيما ديناميكيا. يجب عليك إدارةتحجيم نطاق وظيفة التطبيق الخاصة بك، عندما تقوم بتشغيل خطة App Service.

  4. في صفحة Basics، استخدم إعدادات تطبيق الوظائف على النحو المحدد في الجدول التالي:

    الإعدادات القيمة المقترحة ‏‏الوصف
    الاشتراك اشتراكك الاشتراك الذي تقوم بموجبه بإنشاء تطبيق الوظائف الجديد.
    مجموعة الموارد myResourceGroup اسم مجموعة الموارد الجديدة التي تقوم فيها بإنشاء تطبيق الوظائف. يجب إنشاء مجموعة موارد جديدة بسبب وجود قيود معروفة عند إنشاء تطبيقات وظائف جديدة في مجموعة موارد موجودة.
    اسم تطبيق الوظائف اسم فريد عالميًا الاسم الذي يحدد تطبيق الوظائف الجديد. الأحرف الصالحة هي a-z (غير حساسة لحالة الأحرف)، و0-9، و-.
    مكدس وقت التشغيل اللغة المفضلة اختر وقت تشغيل يدعم لغة برمجة الوظائف المفضلة لك. يتوفر التحرير في المدخل فقط لبرنامج JavaScript وPowerShell وPython وTypeScript وC# النصي.
    لإنشاء تطبيق برنامج نصي C# يدعم التحرير في المدخل، يجب عليك اختيار إصدار وقت التشغيل الذي يدعم النموذج قيد المعالجة.
    يجب تطوير مكتبة فئة C# ووظائف Java محليا.
    ‏‏الإصدار رقم الإصدار اختر إصدار وقت التشغيل المثبت.
    المنطقة المنطقة المفضلة حدد منطقة قريبة منك أو قريبة من الخدمات الأخرى التي تصل دوالك إليها.
    نظام التشغيل Windows يتم تحديد نظام التشغيل مسبقا لك استنادا إلى تحديد مكدس وقت التشغيل، ولكن يمكنك تغيير الإعداد إذا لزم الأمر. يتم اعتماد التحرير في المدخل فقط على نظام Windows.
  5. اقبل الخيارات الافتراضية في علامات التبويب المتبقية، بما في ذلك السلوك الافتراضي لإنشاء حساب تخزين جديد في علامة التبويب Storage ومثيل Application Insight جديد في علامة التبويب Monitoring . يمكنك أيضا اختيار استخدام حساب تخزين موجود أو مثيل Application Insights.

  6. حدد Review + create لمراجعة تكوين التطبيق الذي اخترته، ثم حدد Create لتوفير تطبيق الوظائف ونشره.

  7. قم باختيار رمز Notifications في الزاوية العلوية اليمنى من المدخل وستشاهد رسالة نجح النشر.

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

    لقطة شاشة لإخطار التوزيع.

بعد ذلك، يمكنك إنشاء دالة في تطبيق الوظائف الجديد.

مشغل Azure Cosmos DB

  1. في تطبيق الوظائف، حدد Overview، ثم حدد + Create ضمن Functions.

  2. ضمن تحديد قالب، قم بالتمرير لأسفل واختر قالب مشغل Azure Cosmos DB.

  3. في تفاصيل القالب، قم بتكوين المشغل الجديد مع الإعدادات كما هو محدد في هذا الجدول، ثم حدد إنشاء:

    الإعدادات القيمة المقترحة ‏‏الوصف
    دالة جديدة اقبل الاسم الافتراضي اسم الدالة
    اتصال حساب Azure Cosmos DB يجب عليك قبول القيمة الافتراضية. حدد جديد، ثم حساب التخزين الذي أنشأته سابقًا، ثم موافق. إنشاء إعداد تطبيق لاتصال الحساب. يتم استخدام هذا الإعداد بواسطة الربط للاتصال بقاعدة البيانات.
    اسم قاعدة البيانات المهام اسم قاعدة البيانات التي تتضمن المجموعة التي ستتم مراقبتها.
    اسم المجموعة Items اسم المجموعة التي تتم مراقبتها.
    اسم المجموعة لعقود الإيجار عقود الإيجار اسم المجموعة لتخزين عقود الإيجار.
    قم بإنشاء مجموعة تأجير إذا لم تكن موجودة ‏‏نعم‬ التحقق من وجود مجموعة التأجير وإنشاء تلقائيًا.

    ينشئ Azure دالة Azure Cosmos DB المشغلة استنادا إلى القيم المتوفرة.

  4. لعرض رمز الدالة المستندة إلى القالب، حدد الرمز + اختبار.

    قالب دالة Azure Cosmos DB في C#

    يكتب قالب الدالة هذا عدد المستندات ومعرف المستند الأول إلى السجلات.

بعد ذلك، يمكنك الاتصال بحساب Azure Cosmos DB وإنشاء Items الحاوية في Tasks قاعدة البيانات.

إنشاء حاوية العناصر

  1. افتح مثيلاً ثانيًا من مدخل Azure في علامة تبويب جديدة في المستعرض.

  2. على الجانب الأيسر من المدخل، قم بتوسيع شريط الرموز، cosmos واكتب في حقل البحث، وحدد Azure Cosmos DB.

    ابحث عن خدمة Azure Cosmos DB

  3. اختر حساب Azure Cosmos DB، ثم حدد مستكشف البيانات.

  4. ضمن API SQL، اختر قاعدة بيانات المهام وحدد حاوية جديدة.

    إنشاء حاوية

  5. ضمن إضافة حاوية، استخدم الإعدادات الموجودة في الجدول أسفل الصورة:

    تعريف حاوية المهام

    الإعدادات القيمة المقترحة ‏‏الوصف
    معرف قاعدة البيانات المهام اسم قاعدة البيانات الجديدة. يجب أن يتطابق هذا مع الاسم المعرف في ربط الدالة.
    معرف الحاوية Items اختر اسمًا للحاوية الجديدة. يجب أن يتطابق هذا مع الاسم المعرف في ربط الدالة.
    مفتاح التقسيم⁧ /الفئة مفتاح قسم يقوم بتوزيع البيانات بالتساوي على كل قسم. تحديد مفتاح القسم الصحيح مهم في إنشاء حاوية performant.
    الإنتاجية 400 ر.ر استخدم القيمة الافتراضية. إذا كنت تريد تقليل زمن الانتقال، يمكنك زيادة الانتاجية لاحقاً.
  6. انقر فوق موافق لإنشاء حاوية العناصر. قد يستغرق الأمر وقتًا قصيرًا حتى يتم إنشاء الحاوية.

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

اختبار الوظيفة

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

    قم بإنشاء عنصر في حاوية العناصر

  2. قم باستبدال محتويات ملف الرأس الجديد بالرمز الآتي، ثم اختر حفظ.

    {
        "id": "task1",
        "category": "general",
        "description": "some task"
    }
    
  3. قم بالتبديل إلى علامة التبويب المستعرض الأول الذي يحتوي على الدالة في المدخل. قم بتوسيع سجلات الدالة والتحقق من أن المستند الجديد قد قام بتشغيل الدالة. راجع أن task1 قيمة معرف المستند مكتوبة إلى السجلات.

    اطلع على الرسالة في السجلات.

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

تنظيف الموارد

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

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

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

  1. في بوابة Azure، اذهب إلى صفحة مجموعة الموارد.

    للوصول إلى تلك الصفحة من صفحة تطبيق الوظائف، حدد علامة التبويب Overview، ثم حدد الارتباط التشعبي ضمن مجموعة الموارد.

    لقطة شاشة توضح تحديد مجموعة الموارد المراد حذفها من صفحة تطبيق الوظيفة.

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

  2. في صفحة مجموعة الموارد، راجع قائمة الموارد المدرجة وتحقق من أنها هي التي تريد حذفها.

  3. حدد حذف مجموعة الموارد واتبع الإرشادات.

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

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

لقد قمت بإنشاء دالة تعمل عند إضافة مستند أو تعديله في Azure Cosmos DB. لمزيدٍ من المعلومات حول الربط بقاعدة بيانات Cosmos DB، راجع روابط Azure Functions Cosmos DB.

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