تكوين رابط Azure الخاص لمتجر Azure Cosmos DB التحليلي

ينطبق على: NoSQL MongoDB العفريت

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

إشعار

إذا كنت تستخدم مناطق DNS الخاصة ل Azure Cosmos DB وترغب في إنشاء نقطة نهاية خاصة مدارة من Synapse إلى المورد الفرعي للمخزن التحليلي، يجب أولا إنشاء منطقة DNS للمخزن التحليلي (privatelink.analytics.cosmos.azure.com) المرتبط بالشبكة الظاهرية ل Azure Cosmos DB.

تمكين نقطة نهاية خاصة للمخزن التحليلي

قم بإعداد مساحة عمل Azure Synapse Analytics باستخدام شبكة ظاهرية مُدارة واستخراج البيانات

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

تسري قيود الوصول التالية عند تشغيل الحماية من سرقة البيانات لمساحة عمل تحليلات Azure Synapse:

  • إذا كنت تستخدم Azure Spark لـ تحليلات Azure Synapse، فلا يُسمح بالوصول إلا إلى نقاط النهاية الخاصة المُدارة المعتمدة لمتجر Azure Cosmos DB التحليلي.

  • إذا كنت تستخدم تجمعات SQL دون خادم Synapse، فيمكنك الاستعلام عن أي حساب Azure Cosmos DB باستخدام ارتباط Azure Synapse. ومع ذلك، لا يسمح بطلبات الكتابة التي تنشئ جداول خارجية كمحدد (CETAS) إلا لنقاط النهاية الخاصة المعتمدة في الشبكة الظاهرية لمساحة العمل.

إشعار

لا يمكنك تغيير الشبكة الافتراضية المدارة وتكوين استخراج البيانات بعد إنشاء مساحة العمل.

أضف نقطة نهاية خاصة مُدارة لمخزن Azure Cosmos DB التحليلي

إشعار

لتنفيذ بعض الخطوات أدناه، ستحتاج إلى تغيير تكوين شبكة حساب Azure Cosmos DB مؤقتا. انتقل إلى علامة التبويب Networking في المدخل، وانقر على الخيار Allow access from Azure Portal . بعد تكوين نقطة النهاية الخاصة بك، يمكنك إرجاع هذا الإجراء وتعطيل الوصول.

  1. قم بتسجيل الدخول إلى بوابة Azure.

  2. من مدخل Microsoft Azure، انتقل إلى مساحة عمل Synapse Analytics وافتح جزء Overview .

  3. قم بتشغيل Synapse Studio بالانتقال إلى جزء Getting Started وحدد Open ضمن Open Synapse Studio.

  4. في Synapse Studio، افتح علامة التبويب إدارة .

  5. انتقل إلى نقاط النهاية الخاصة المدارة وحدد جديد

    إنشاء نقطة نهاية خاصة جديدة للمخزن التحليلي.

  6. حدد نوع >حساب Azure Cosmos DB (API for NoSQL) Continue.

    حدد واجهة برمجة تطبيقات Azure Cosmos DB ل NoSQL لإنشاء نقطة نهاية خاصة.

  7. املأ نموذج نقطة النهاية الخاصة المدارة الجديدة بالتفاصيل التالية:

    • الاسم - اسم نقطة النهاية الخاصة المدارة. لا يمكن تحديث هذا الاسم بعد إنشائه.
    • الوصف - قدم وصفا مألوفا لتحديد نقطة النهاية الخاصة بك.
    • اشتراك Azure - حدد حساب Azure Cosmos DB من قائمة الحسابات المتوفرة في اشتراكات Azure.
    • اسم حساب Azure Cosmos DB - حدد حساب Azure Cosmos DB موجود من نوع SQL أو MongoDB.
    • المورد الفرعي المستهدف - حدد أحد الخيارات التالية: تحليلي: إذا كنت تريد إضافة نقطة النهاية الخاصة لمخزن Azure Cosmos DB التحليلي. NoSQL (أو MongoDB): إذا كنت تريد إضافة OLTP أو نقطة نهاية حساب المعاملات.

    إشعار

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

    اختر تحليليا للمورد الفرعي الهدف.

  8. بعد الإنشاء، انتقل إلى اسم نقطة النهاية الخاصة وحدد إدارة الموافقات في مدخل Microsoft Azure.

  9. انتقل إلى حساب Azure Cosmos DB الخاص بك، وحدد نقطة النهاية الخاصة، وحدد Approve.

  10. انتقل مرة أخرى إلى مساحة عمل Synapse Analytics وانقر فوق تحديث في جزء نقاط النهاية الخاصة المدارة . تحقق من أن نقطة النهاية الخاصة في حالة الموافقة .

    تحقق من الموافقة على نقطة النهاية الخاصة.

استخدم Apache Spark لتحليلات Azure Synapse

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

للسماح بالوصول إلى بيانات Azure Cosmos DB:

  • إذا كنت تستخدم Azure Synapse Link للاستعلام عن بيانات Azure Cosmos DB، أضف نقطة نهاية تحليلية خاصة مدارة لحساب Azure Cosmos DB.

  • إذا كنت تستخدم عمليات الكتابة/القراءة المجمعة و/أو عمليات الكتابة/القراءة المتدفقة إلى مخزن المعاملات، أضف نقطة نهاية خاصة SQL أو MongoDB مدارة لحساب Azure Cosmos DB. بالإضافة إلى ذلك، يجب عليك أيضا تعيين connectionMode إلى Gateway كما هو موضح في القصاصة البرمجية التالية:

    # Write a Spark DataFrame into an Azure Cosmos DB container
    # To select a preferred lis of regions in a multi-region account, add .option("spark.cosmos.preferredRegions", "<Region1>, <Region2>")
    
    YOURDATAFRAME.write\
      .format("cosmos.oltp")\
      .option("spark.synapse.linkedService", "<your-Cosmos-DB-linked-service-name>")\
      .option("spark.cosmos.container","<your-Cosmos-DB-container-name>")\
      .option("spark.cosmos.write.upsertEnabled", "true")\
      .option("spark.cosmos.connection.mode", "Gateway")\
      .mode('append')\
      .save()
    
    

استخدام تجمعات SQL دون خادم Synapse

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

لتكوين عزل الشبكة لهذا الحساب من مساحة عمل Synapse:

  1. اسمح لمساحة عمل Synapse بالوصول إلى حساب Azure Cosmos DB عن طريق تحديد NetworkAclBypassResourceId الإعداد على الحساب.

    استخدام PowerShell

    Update-AzCosmosDBAccount -Name MyCosmosDBDatabaseAccount -ResourceGroupName MyResourceGroup -NetworkAclBypass AzureServices -NetworkAclBypassResourceId "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Synapse/workspaces/wsName"
    

    استخدام Azure CLI

    az cosmosdb update --name MyCosmosDBDatabaseAccount --resource-group MyResourceGroup --network-acl-bypass AzureServices --network-acl-bypass-resource-ids "/subscriptions/subId/resourceGroups/rgName/providers/Microsoft.Synapse/workspaces/wsName"
    

    إشعار

    يجب أن يكون حساب Azure Cosmos DB ومساحة عمل Azure Synapse Analytics ضمن نفس مستأجر Microsoft Entra.

  2. يمكنك الآن الوصول إلى الحساب من تجمعات SQL دون خادم، باستخدام استعلامات T-SQL عبر ارتباط Azure Synapse. ومع ذلك، لضمان عزل الشبكة للبيانات في المخزن التحليلي، يجب إضافة نقطة نهاية خاصة مدارة تحليلية لهذا الحساب. خلاف ذلك، لن يتم حظر البيانات الموجودة في المخزن التحليلي من الوصول العام.

هام

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

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