إنشاء حاوية مخزن تحليلي مُمكَّنة

مكتمل

بعد تمكين Azure Synapse Link في حساب Azure Cosmos DB، يمكنك إنشاء حاوية أو تحديثها بدعم من مخزن تحليلي.

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

أنواع مخطط المخزن التحليلي

نظراً لأن البيانات من المخزن التشغيلي متزامنة مع المخزن التحليلي، يتم تحديث المخطط ديناميكياً ليعكس بنية المستندات التي تتم مزامنتها. يعتمد السلوك المحدد لصيانة المخطط الديناميكي هذا على نوع مخطط المخزن التحليلي الذي تم تكوينه لحساب Azure Cosmos DB. يتم دعم نوعين من تمثيل المخطط:

  • محدد جيدا: نوع المخطط الافتراضي لحساب Azure Cosmos DB ل NoSQL.
  • الدقة الكاملة: نوع المخطط الافتراضي (والمدعم فقط) لحساب Azure Cosmos DB لحساب MongoDB.

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

على سبيل المثال، ضع في اعتبارك مستندي JSON التاليين:

{"productID": 123, "productName": "Widget"}
{"productID": "124", "productName": "Wotsit"}

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

productID productName
123 عنصر واجهة المستخدم
Wotsit

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

productID.int32 productName.string productID.string
123 عنصر واجهة المستخدم
Wotsit 124

إشعار

لمزيد من المعلومات، راجع ما هو مخزن Azure Cosmos DB التحليلي؟.

تمكين دعم المخزن التحليلي في حاوية

يمكنك تمكين دعم المخزن التحليلي عند إنشاء حاوية جديدة أو لحاوية موجودة. لتمكين دعم المخزن التحليلي، يمكنك استخدام مدخل Microsoft Azure، أو يمكنك استخدام Azure CLI أو Azure PowerShell من سطر أوامر أو في برنامج نصي.

استخدام مدخل Microsoft Azure

لتمكين دعم المخزن التحليلي عند إنشاء حاوية جديدة في مدخل Microsoft Azure، حدد الخيار On من أجل Analytical Store، كما هو موضح هنا:

Screenshot showing the Analytical Store option when creating a new container in the Azure portal.

بدلاً من ذلك، يمكنك تمكين دعم المخزن التحليلي لحاوية موجودة في صفحة Azure Synapse Link في قسم Integrations في الصفحة لحساب Cosmos DB الخاص بك، كما هو موضح هنا:

Screenshot showing the Azure Synapse Link page in the Azure portal, with an existing container selected and the Enable Synapse Link on your container button enabled.

استخدام Azure CLI

لاستخدام Azure CLI لتمكين دعم المخزن التحليلي في Azure Cosmos DB لحاوية NoSQL، قم بتشغيل az cosmosdb sql container create الأمر (لإنشاء حاوية جديدة) أو az cosmosdb sql container update أمر (لتكوين حاوية موجودة) مع --analytical-storage-ttl المعلمة ، وتعيين وقت استبقاء للبيانات التحليلية. يتيح تحديد معلمة -analytical-storage-ttl لـ -1 الاحتفاظ الدائم بالبيانات التحليلية. على سبيل المثال، ينشئ الأمر التالي حاوية جديدة تسمى my-container مع دعم مخزن تحليلي.

az cosmosdb sql container create --resource-group my-rg --account-name my-cosmos-db --database-name my-db --name my-container --partition-key-path "/productID" --analytical-storage-ttl -1

بالنسبة لحساب Azure Cosmos DB لحساب MongoDB، يمكنك استخدام az cosmosdb mongodb collection create الأمر أو az cosmosdb mongodb collection update مع المعلمة --analytical-storage-ttl . بالنسبة إلى Azure Cosmos DB لحساب Apache Gremlin، استخدم az cosmosdb gremlin graph create الأمر أو az cosmosdb gremlin graph update مع المعلمة --analytical-storage-ttl .

باستخدام Azure PowerShell

لاستخدام Azure PowerShell لتمكين دعم المخزن التحليلي في n Azure Cosmos DB لحاوية NoSQL، قم بتشغيل New-AzCosmosDBSqlContainer cmdlet (لإنشاء حاوية جديدة) أو Update-AzCosmosDBSqlContainer cmdlet (لتكوين حاوية موجودة) مع -AnalyticalStorageTtl المعلمة ، وتعيين وقت استبقاء للبيانات التحليلية. يتيح تحديد معلمة -AnalyticalStorageTtl لـ -1 الاحتفاظ الدائم بالبيانات التحليلية. على سبيل المثال، ينشئ الأمر التالي حاوية جديدة تسمى my-container مع دعم مخزن تحليلي.

New-AzCosmosDBSqlContainer -ResourceGroupName "my-rg" -AccountName "my-cosmos-db" -DatabaseName "my-db" -Name "my-container" -PartitionKeyKind "hash" -PartitionKeyPath "/productID" -AnalyticalStorageTtl -1

للحصول على حساب Azure Cosmos DB ل MongoDB API، استخدم New-AzCosmosDBMongoDBCollection cmdlet أو Update-AzCosmosDBMongoDBCollection مع المعلمة -AnalyticalStorageTtl .

اعتبارات لتمكين دعم المتجر التحليلي

لا يمكن تعطيل دعم المخزن التحليلي دون حذف الحاوية. يؤدي تعيين قيمة TTL للمخزن التحليلي إلى 0 أو null إلى تعطيل المخزن التحليلي بشكلٍ فعّال من خلال عدم مزامنة العناصر الجديدة له مُجدداً من المخزن التشغيلي وحذف العناصر التي تمت مزامنتها بالفعل من المخزن التحليلي. بعد تعيين هذه القيمة إلى 0، لا يمكنك إعادة تمكين دعم المخزن التحليلي في الحاوية.