الأسئلة المتداولة حول Azure Cosmos DB ل NoSQL

ينطبق على: NoSQL

كيف أعمل بدء التطوير مقابل Azure Cosmos DB ل NoSQL؟

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

تتوفر مجموعات تطوير البرامج (SDKs) ل .NET وPython Node.js وJavaScript وGo وJava. يمكن للمطورين أيضا استخدام واجهة برمجة تطبيقات REST للتفاعل مع موارد Azure Cosmos DB من المزيد من الأنظمة الأساسية واللغات.

هل هناك Azure Cosmos DB لعينات NoSQL للبدء؟

تحقق من نماذج التعليمات البرمجية للتشغيل السريع هذه والقوالب لواجهة برمجة التطبيقات ل NoSQL:

هل يدعم Azure Cosmos DB ل NoSQL البيانات الخالية من المخطط؟

نعم، تسمح واجهة برمجة التطبيقات ل NoSQL للتطبيقات بتخزين مستندات JSON العشوائية كعناصر دون تعريفات مخطط أو تلميحات. تتوفر البيانات على الفور للاستعلام باستخدام لغة استعلام Azure Cosmos DB ل NoSQL.

هل يدعم Azure Cosmos DB ل NoSQL معاملات ACID (الذرية، والاتساق، والعزل، والمتانة)؟

نعم، تدعم واجهة برمجة التطبيقات ل NoSQL المعاملات عبر المستندات المعبر عنها باستخدام إما دفعات في SDKs أو كإجراءات ومشغلات مخزنة في JavaScript. يتم تحديد نطاق المعاملات لقسم واحد داخل كل حاوية ويتم تنفيذها باستخدام دلالات ACID باعتبارها "كل شيء أو لا شيء"، معزولة عن التعليمة البرمجية الأخرى المنفذة في نفس الوقت وطلبات المستخدم. في حالة حدوث استثناءات، يتم التراجع عن المعاملة بأكملها.

كيف أعمل إنشاء قاعدة بيانات Azure Cosmos DB ل NoSQL؟

يمكنك إنشاء قواعد بيانات باستخدام إحدى هذه الأدوات:

كيف أعمل تكوين Azure Cosmos DB للمستخدمين والأذونات الأصلية لقاعدة بيانات NoSQL؟

يمكنك إنشاء مستخدمين وأذونات باستخدام أحد Azure Cosmos DB ل NoSQL SDKs أو واجهة برمجة تطبيقات REST. لمزيد من المعلومات، راجع تكوين المستخدمين والرموز المميزة للمورد. يسمح بإنشاء أذونات باستخدام الرموز المميزة للمورد على مستوى الحاوية وتوابعها (مثل المستندات والمرفقات). لا يسمح حاليا بإنشاء إذن على قاعدة البيانات أو على مستوى الحساب.

هل يمكنني المصادقة على Azure Cosmos DB ل NoSQL باستخدام حسابات معرف Microsoft Entra الموجودة؟

نعم! يدعم Azure Cosmos DB مصادقة Microsoft Entra لإدارة الخدمة ومواردها (مستوى التحكم) وتنفيذ البيانات والعمليات والاستعلامات (مستوى البيانات). يتم تنفيذ مصادقة مستوى التحكم باستخدام ميزة التحكم في الوصول المستندة إلى الدور في Azure. يمكنك استخدام دور مضمن تم تكوينه مسبقا](.. /.. /role-based-access-control/built-in-roles.md) أو يمكنك إنشاء دور مخصص. باستخدام التحكم في الوصول المستند إلى الدور في Azure، يمكنك إدارة الحسابات وقواعد البيانات والحاويات وبيانات التعريف. تتضمن وحدة التحكم عمليات تشمل، على سبيل المثال لا الحصر، هذه الأمثلة.

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

هل يدعم Azure Cosmos DB ل NoSQL لغة استعلام SQL؟

لغة الاستعلامات المركبة (SQL) هي لغة تستخدم عادة للاستعلام عن البيانات الارتباطية. تحتوي واجهة برمجة التطبيقات ل NoSQL على لغة استعلام NoSQL مخصصة مشتقة من SQL. تتضمن لغة استعلام NoSQL مجموعة فرعية من لغة استعلام SQL المقترنة عادة ب SQL Server جنبا إلى جنب مع تحسينات مختلفة خاصة ب NoSQL. توفر لغة استعلام NoSQL عوامل تشغيل هرمية وعلائقية غنية وقابلية للتوسعة عبر الوظائف المستندة إلى JavaScript والمحددة من قبل المستخدم (UDFs). يسمح قواعد اللغة JSON لنمذجة مستندات JSON كأشجار مع العقد المسماة، والتي يتم استخدامها من قِبل كل من تقنيات الفهرسة التلقائية Azure Cosmos DB ولهجة الاستعلام SQL من Azure Cosmos DB. للحصول على معلومات حول استخدام لغة الاستعلام هذه، راجع استعلام NoSQL.

هل يدعم Azure Cosmos DB ل NoSQL وظائف تجميع SQL؟

تدعم واجهة برمجة التطبيقات ل NoSQL التجميع عبر وظائف تجميعية مثل: COUNTو MAXAVGو و SUM عبر لغة استعلام NoSQL.

كيف يوفر Azure Cosmos DB ل NoSQL التزامن؟

تدعم واجهة برمجة التطبيقات ل NoSQL التحكم المتفائل في التزامن (OCC) من خلال علامات كيان HTTP أو ETags. يحتوي كل API لمورد NoSQL على ETag، ويتم تعيين ETag على الخادم في كل مرة يتم فيها تحديث مستند. يتم تضمين رأس ETag والقيمة الحالية في كافة رسائل الاستجابة. يمكن استخدام ETags مع If-Match العنوان للسماح للخادم بتحديد ما إذا كان يجب تحديث مورد. القيمة If-Match هي قيمة ETag التي سيتم التحقق منها مقابلها. إذا كانت قيمة ETag تطابق قيمة ETag الملقم، يتم تحديث المورد. إذا لم يعد ETag حاليًا، يرفض الخادم العملية باستخدام رمز استجابة "HTTP 412 Precondition failure". ثم يقوم العميل بإعادة إحضار المورد للحصول على قيمة ETag الحالية للمورد. بالإضافة إلى ذلك، يمكن استخدام ETags مع If-None-Match العنوان لتحديد ما إذا كانت هناك حاجة إليها لإعادة تعبئة مورد.

تتضمن معظم واجهة برمجة التطبيقات ل NoSQL SDKs فئات لإدارة التحكم المتفائل في التزامن.

كيف يمكنني إدراج المستندات بشكل مجمع في Azure Cosmos DB ل NoSQL؟

استخدم ميزة الاستيراد المجمع في .NET SDK أو Java SDK لواجهة برمجة التطبيقات ل NoSQL لاستيراد مجموعات كبيرة من البيانات. تعمل هذه الميزة على تحسين معدل النقل المقدم لاستيراد مجموعات كبيرة من البيانات.

بدلا من ذلك، استخدم Apache Spark لاستيراد البيانات على نطاق واسع باستخدام Python أو Scala.

هل يدعم Azure Cosmos DB ل NoSQL التخزين المؤقت لرابط الموارد؟

نعم، نظرا لأن Azure Cosmos DB ل NoSQL هي خدمة RESTful، فإن ارتباطات الموارد غير قابلة للتغيير ويمكن تخزينها مؤقتا. يمكن لواجهة برمجة التطبيقات لعملاء NoSQL تحديد عنوان "If-None-Match" للقراءة مقابل أي مستند أو حاوية تشبه المورد ثم تحديث نسخهم المحلية بعد تغيير إصدار الخادم.

هل يتوفر مثيل محلي من Azure Cosmos DB ل NoSQL؟

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

لماذا يتم تقريب قيم الفاصلة العائمة الطويلة في عنصر Azure Cosmos DB ل NoSQL عند استخدام مستكشف البيانات في المدخل؟

تقييد مستكشف البيانات هذا هو قيد JavaScript. يستخدم JavaScript أرقام تنسيق النقطة العائمة مزدوجة الدقة كما هو محدد في معهد مهندسي الكهرباء والإلكترونيات (IEEE) 754. يمكن لنوع البيانات هذا أن يحتفظ بأمان بالأرقام بين -(253 - 1) و253-1 (أي 9007199254740991) فقط.