تكوين واستخدام ارتباط نقاط الاشتباك العصبي Azure لـ Azure Cosmos DB

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

Azure Synapse Link لـ Azure Cosmos DB هو قدرة معالجة المعاملات والتحليلات الهجينة (HTAP) الهجينة التي تمكنك من تشغيل تحليلات قريبة في الوقت الفعلي عبر البيانات التشغيلية في Azure Cosmos DB. Synapse Link يخلق تكامل سلس ضيق بين Azure Cosmos DB وتحليلات نقاط الاشتباك العصبي Azure.

يتوفر Azure Synapse Link لواجهة برمجة تطبيقات Azure Cosmos DB SQL أو لواجهة برمجة تطبيقات Azure Cosmos DB API لحسابات Mongo DB. وهو قيد المعاينة لواجهة برمجة تطبيقات Gremlin، مع التنشيط عبر أوامر CLI. استخدم الخطوات التالية لتشغيل الاستعلامات التحليلية مع ارتباط نقاط الاشتباك العصبي Azure لـAzure Cosmos DB:

يمكنك أيضا التحقق من وحدة التدريب النمطية حول كيفية تكوين Azure Synapse Link ل Azure Cosmos DB.

الخطوة الأولى لاستخدام Synapse Link هي تمكينه لحساب قاعدة بيانات Azure Cosmos DB.

إشعار

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

إشعار

إذا كنت ترغب في استخدام مخطط الدقة الكاملة لواجهة برمجة التطبيقات لحسابات NoSQL، فلا يمكنك استخدام مدخل Microsoft Azure لتمكين Synapse Link. لا يمكن تغيير هذا الخيار بعد تمكين "ارتباط نقاط الاشتباك العصبي" في حسابك وتعيينه يجب استخدام Azure CLI أو PowerShell. لمزيد من المعلومات، تحقق من وثائق تمثيل مخطط مخزن التحليل.

إشعار

تحتاج إلى دور المساهم لتمكين Synapse Link على مستوى الحساب. وتحتاج على الأقل إلى دور عامل التشغيل لتمكين Synapse Link في حاوياتك أو مجموعاتك.

مدخل Azure

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

  2. إنشاء حساب Azure جديد، أو تحديد حساب Azure Cosmos DB موجود.

  3. انتقل إلى حساب Azure Cosmos DB وافتح Azure Synapse Link ضمن Integrations في الجزء الأيمن.

  4. حدد تمكين. قد تستغرق هذه العملية من دقيقة إلى خمس دقائق لإكمالها.

    Screenshot showing how to enable Synapse Link feature.

  5. حسابك الآن تمكين لاستخدام وصلة Synapse. بعد ذلك انظر كيفية إنشاء مخزن التحليلية تمكين الحاويات لبدء تكرار البيانات التشغيلية تلقائياً من مخزن المعاملات إلى مخزن التحليلية.

إشعار

لا يتم تشغيل رابط Synapse على المخزن التحليلي تلقائيا. بمجرد تمكين Synapse Link على حساب Cosmos DB، مكِّن المخزن التحليلي على الحاويات لبدء استخدام Synapse Link.

إشعار

يمكنك أيضا تمكين Synapse Link لحسابك باستخدام Power BI وجزء Synapse Link ، في قسم Integrations من قائمة التنقل اليسرى.

أدوات سطر الأوامر

تمكين Synapse Link في Azure Cosmos DB API لحساب NoSQL أو MongoDB باستخدام Azure CLI أو PowerShell.

Azure CLI

استخدام --enable-analytical-storage true في كلٍّ من عمليتي الإنشاء أو التحديث. تحتاج أيضا إلى اختيار نوع مخطط التمثيل. بالنسبة إلى واجهة برمجة التطبيقات لحسابات NoSQL، يمكنك استخدام --analytical-storage-schema-type مع القيم FullFidelity أو WellDefined. بالنسبة إلى واجهة برمجة التطبيقات لحسابات MongoDB، استخدم --analytical-storage-schema-type FullFidelityدائما .

رابط Synapse لواجهة برمجة تطبيقات Gremlin قيد المعاينة الآن. يمكنك تمكين Synapse Link في الرسوم البيانية الجديدة أو الموجودة باستخدام Azure CLI. استخدم الأمر CLI أدناه لتمكين Synapse Link لحساب Gremlin API الخاص بك:

az cosmosdb create --capabilities EnableGremlin --name MyCosmosDBGremlinDatabaseAccount --resource-group MyResourceGroup --enable-analytical-storage true

بالنسبة لحسابات Gremlin API الموجودة، استبدل create ب update.

بوويرشيل

استخدام EnableAnalyticalStorage true في كلٍّ من عمليتي الإنشاء أو التحديث. تحتاج أيضا إلى اختيار نوع مخطط التمثيل. بالنسبة إلى واجهة برمجة التطبيقات لحسابات NoSQL، يمكنك استخدام --analytical-storage-schema-type مع القيم FullFidelity أو WellDefined. بالنسبة إلى واجهة برمجة التطبيقات لحسابات MongoDB، استخدم -AnalyticalStorageSchemaType FullFidelityدائما .

قالب Azure Resource Manager

ينشئ قالب Azure Resource Manager هذا حساب Azure Cosmos DB ممكن لواجهة برمجة تطبيقات SQL. ينشئ هذا القالب حساب API Core (SQL) في منطقة واحدة مع حاوية تم تكوينها مع تمكين TTL التحليلية، وخيار لاستخدام معدل النقل اليدوي أو التلقائي. لنشر هذا القالب، انقر فوق نشر إلى Azure في صفحة القراءة.

تمكين Azure Synapse Link للحاويات الخاصة بك

الخطوة الثانية هي تمكين Synapse Link للحاويات أو المجموعات. يتم إنجاز ذلك عن طريق تعيين الخاصية analytical TTL إلى -1 للاحتفاظ اللانهائي، أو إلى عدد صحيح موجب، وهذا هو عدد الثوان التي تريد الاحتفاظ بها في المخزن التحليلي. يمكن تغيير هذا الإعداد لاحقاً. لمزيد من المعلومات، راجع مقالة القيم التحليلية المتوافقة مع TTL.

يرجى ملاحظة التفاصيل التالية عند تمكين Azure Synapse Link على حاويات واجهة برمجة تطبيقات SQL الموجودة:

  • ينطبق عزل الأداء نفسه لعملية المزامنة التلقائية لمخزن التحليل على المزامنة الأولية ولا يوجد أي تأثير في أداء حمل عمل OLTP.
  • تختلف المزامنة الأولية للحاوية مع الوقت الإجمالي للمخزن التحليلي وفقاً لحجم البيانات وتعقيد المستندات. يمكن أن تستغرق هذه العملية في أي مكان فترة من بضع ثوانٍ إلى عدة أيام. يُرجى استخدام مدخل Azure لمراقبة تقدم الترحيل.
  • يؤثر معدل نقل الحاوية أو حساب قاعدة البيانات أيضاً في إجمالي وقت المزامنة الأولية. على الرغم من أن وحدات الطلب/الثانية غير مستخدمة في عملية الترحيل، إلا إن إجمالي وحدات الطلب/الثانية المتوفر يؤثر في أداء العملية. يمكنك زيادة وحدات الطلب المتوفرة في البيئة مؤقتاً لتسريع العملية.
  • لن تتمكن من الاستعلام عن المخزن التحليلي للحاوية الموجودة أثناء تمكين Synapse Link على الحاوية. لا يتأثر حمل عمل OLTP ويمكنك الاستمرار في قراءة البيانات بشكل طبيعي. ستُدمَج البيانات المُدخَلة بدء المزامنة الأولية في المخزن التحليلي من خلال عملية المزامنة التلقائية العادية للمخزن التحليلي.

إشعار

يمكنك الآن تمكين Synapse Link على مجموعات MongoDB API الحالية، باستخدام Azure CLI أو PowerShell.

مدخل Azure

حاوية جديدة

  1. تسجيل الدخول إلى مدخل Microsoft Azure أو مستكشف Azure Cosmos DB .

  2. انتقل إلى حساب Azure Cosmos الخاص بك وافتح مستكشف البيانات.

  3. حدد حاوية جديدة وأدخل اسما لقاعدة البيانات والحاوية ومفتاح القسم وتفاصيل معدل النقل. قم بتشغيل خيار مخزن التحليل. بعد تمكين المخزن التحليلي، ينشئ حاوية مع خاصية analytical TTL معينة على القيمة الافتراضية -1 (استبقاء لا نهائي للبيانات). هذا المخزن التحليلي الذي يحتفظ بجميع الإصدارات التاريخية من السجلات ويمكن تغييره لاحقاً.

    Turn on analytical store for Azure Cosmos DB container

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

  5. حدد "OK" لإنشاء حاوية Azure Cosmos DB تمكِّن مخزناً تحليلياً.

  6. بعد إنشاء الحاوية، تحقق من تمكين مخزن التحليل بالنقر فوق الإعدادات، أسفل المستندات في "مستكشف البيانات" مباشرة، وتحقق مما إذا كان الخيار وقت مخزن التحليل إلى Live قيد التشغيل.

الحاوية الموجودة

  1. تسجيل الدخول إلى مدخل Microsoft Azure أو مستكشف Azure Cosmos DB .

  2. انتقل إلى حساب Azure Cosmos DB وافتح علامة التبويب Azure Synapse Link .

  3. ضمن قسم Enable Azure Synapse Link for your containers حدد الحاوية.

    Screenshot showing how to turn on analytical store for an Azure Cosmos DB existing container.

  4. بعد تمكين الحاوية، تحقق من تمكين المخزن التحليلي بالنقر فوق الإعدادات، أسفل المستندات في مستكشف البيانات مباشرة، وتحقق مما إذا كان الخيار وقت التخزين التحليلي إلى Live قيد التشغيل.

إشعار

يمكنك أيضا تمكين Synapse Link لحسابك باستخدام Power BI وجزء Synapse Link ، في قسم Integrations من قائمة التنقل اليسرى.

أدوات سطر الأوامر

Azure CLI

تمكن الخيارات التالية Synapse Link في حاوية باستخدام Azure CLI عن طريق تعيين الخاصية --analytical-storage-ttl .

رابط Synapse لواجهة برمجة تطبيقات Gremlin قيد المعاينة الآن. يمكنك تمكين Synapse Link في الرسوم البيانية الجديدة أو الحالية باستخدام Azure CLI. استخدم الأمر CLI أدناه لتمكين Synapse Link للرسوم البيانية لواجهة برمجة تطبيقات Gremlin:

az cosmosdb gremlin graph create --g MyResourceGroup --a MyCosmosDBGremlinDatabaseAccount --d MyGremlinDB --n MyGraph --analytical-storage-ttl –1

بالنسبة للرسوم البيانية الموجودة، استبدل create ب update.

بوويرشيل

تمكن الخيارات التالية Synapse Link في حاوية باستخدام Azure CLI عن طريق تعيين الخاصية -AnalyticalStorageTtl .

Azure Cosmos DB SDKs - واجهة برمجة تطبيقات SQL فقط

.NET SDK

تنشئ التعليمات البرمجية .NET التالية حاوية ممكنة ل Synapse Link عن طريق تعيين الخاصية AnalyticalStoreTimeToLiveInSeconds . لتحديث حاوية موجودة، استخدم Container.ReplaceContainerAsync الأسلوب .

// Create a container with a partition key, and analytical TTL configured to -1 (infinite retention)
ContainerProperties properties = new ContainerProperties()
{
    Id = "myContainerId",
    PartitionKeyPath = "/id",
    AnalyticalStoreTimeToLiveInSeconds = -1,
};
CosmosClient cosmosClient = new CosmosClient("myConnectionString");
await cosmosClient.GetDatabase("myDatabase").CreateContainerAsync(properties);

Java V4 SDK

تنشئ التعليمات البرمجية Java التالية حاوية ممكنة ل Synapse Link عن طريق تعيين الخاصية setAnalyticalStoreTimeToLiveInSeconds . لتحديث حاوية موجودة، استخدم container.replace الفئة .

// Create a container with a partition key and  analytical TTL configured to  -1 (infinite retention) 
CosmosContainerProperties containerProperties = new CosmosContainerProperties("myContainer", "/myPartitionKey");

containerProperties.setAnalyticalStoreTimeToLiveInSeconds(-1);

container = database.createContainerIfNotExists(containerProperties, 400).block().getContainer();

بايثون V4 SDK

تنشئ التعليمات البرمجية Python التالية حاوية ممكنة ل Synapse Link عن طريق تعيين الخاصية analytical_storage_ttl . لتحديث حاوية موجودة، استخدم replace_container الأسلوب .

# Client
client = cosmos_client.CosmosClient(HOST,  KEY )

# Database client
try:
    db = client.create_database(DATABASE)

except exceptions.CosmosResourceExistsError:
    db = client.get_database_client(DATABASE)

# Creating the container with analytical store enabled
try:
    container = db.create_container(
        id=CONTAINER,
        partition_key=PartitionKey(path='/id', kind='Hash'),analytical_storage_ttl=-1
    )
    properties = container.read()
    print('Container with id \'{0}\' created'.format(container.id))
    print('Partition Key - \'{0}\''.format(properties['partitionKey']))

except exceptions.CosmosResourceExistsError:
    print('A container with already exists')

الاتصال إلى مساحة عمل Synapse

ستخدم التعليمات الواردة في الاتصال برابط Azure Synapse حول كيفية الوصول إلى قاعدة بيانات Azure Cosmos DB من Azure Synapse Analytics Studio باستخدام Azure Synapse Link.

مخزن تحليلي للاستعلام باستخدام Azure Synapse Analytics

مخزن تحليلي للاستعلام باستخدام Apache Spark ل Azure Synapse Analytics

استخدم الإرشادات الموجودة في مقالة مخزن تحليل Query Azure Cosmos DB باستخدام Spark 3 حول كيفية الاستعلام باستخدام Synapse Spark 3. هذه المقالة تعطي بعض الأمثلة حول كيفية التفاعل مع مخزن التحليلية من الإيماءات Synapse. هذه الإيماءات مرئية عند النقر بزر الماوس الأيمن على حاوية. مع الإيماءات، يمكنك بسرعة توليد رمز وتعديله لاحتياجاتك. كما أنها مثالية لاكتشاف البيانات بنقرة واحدة.

لتكامل Spark 2 استخدام التعليمات في مقالة مخزن تحليلي Query Azure Cosmos DB باستخدام Spark 2.

الاستعلام عن المخزن التحليلي باستخدام تجمع SQL بلا خادم في Azure Synapse Analytics

تجمع SQL بلا خادم يسمح لك الاستعلام وتحليل البيانات في حاويات DB Cosmos Azure التي تم تمكينها مع ارتباط Azure Synapse. يمكنك تحليل البيانات في الوقت الفعلي القريب دون التأثير على أداء أعباء العمل الخاصة بالمعاملات. وهو يوفر بناء جملة T-SQL مألوفا للاستعلام عن البيانات من المتجر التحليلي والاتصال المتكامل بمجموعة واسعة من أدوات الاستعلام BI والاستعلام المخصص عبر واجهة T-SQL. لمعرفة المزيد، راجع مخزن تحليل الاستعلام باستخدام مقالة تجمع SQL بلا خادم.

استخدام تجمع SQL بلا خادم لتحليل البيانات وتصورها في Power BI

يمكنك استخدام تجربة BI المتكاملة في مدخل Azure Cosmos DB، لإنشاء لوحات معلومات BI باستخدام Synapse Link ببضع نقرات فقط. لمعرفة المزيد، راجع كيفية إنشاء لوحات معلومات BI باستخدام Synapse Link. ستنشئ هذه التجربة المتكاملة طرق عرض T-SQL بسيطة في تجمعات SQL بلا خادم Synapse، لحاويات Azure Cosmos DB. يمكنك إنشاء لوحات معلومات BI عبر طرق العرض هذه، والتي ستستعلم عن حاويات Azure Cosmos DB في الوقت الفعلي، باستخدام استعلام مباشر؛ ما يعكس أحدث التغييرات التي تم إجراؤها على بياناتك. لا يوجد أي تأثير على الأداء أو التكلفة لأعباء العمل الخاصة بالمعاملات، ولا يوجد تعقيد في إدارة خطوط أنابيب ETL.

إذا كنت ترغب في استخدام طرق عرض T-SQL المتقدمة مع الصلات عبر حاوياتك أو إنشاء لوحات معلومات Power BI في وضع الاستيراد، فشاهد استخدام تجمع SQL بلا خادم لتحليل بيانات Azure Cosmos DB باستخدام Synapse Link.

تحسين الأداء باستخدام أفضل الممارسات

التقسيم المخصص

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

استخدم أفضل الممارسات الإلزامية هذه للاستعلامات بلا خادم SQL.

نماذج لبدء استخدام Azure Synapse Link على GitHub تعرض هذه الحلول من نهاية إلى طرف مع سيناريوهات IoT والبيع بالتجزئة. يمكنك أيضا العثور على العينات المقابلة ل Azure Cosmos DB ل MongoDB في نفس المستودع ضمن مجلد MongoDB .

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

لمعرفة المزيد، راجع المستندات التالية: