مشاركة عبر


تغيير التقاط البيانات في مخزن Azure Cosmos DB التحليلي

ينطبق على: NoSQL MongoDB

يتيح لك التقاط بيانات التغيير (CDC) في مخزن Azure Cosmos DB التحليلي استهلاك موجز مستمر وتدريجي للبيانات المتغيرة (المدرجة والمحدثة والمحذوفة) بكفاءة من المخزن التحليلي. متكامل بسلاسة مع Azure Synapse وAzure Data Factory، ويوفر لك تجربة غير قابلة للتطوير بدون تعليمات برمجية لتخزين البيانات بشكل كبير. نظرا لأن ميزة التقاط بيانات التغيير تستند إلى مخزن تحليلي، فإنها لا تستهلك وحدات الطلب المتوفرة، ولا تؤثر على أحمال عمل المعاملات الخاصة بك، وتوفر زمن انتقال أقل، ولها TCO أقل.

يمكن كتابة ميزة التقاط بيانات التغيير في مخزن Azure Cosmos DB التحليلي إلى متلقيات مختلفة باستخدام تدفق بيانات Azure Synapse أو Azure Data Factory.

رسم تخطيطي للمخزن التحليلي في Azure Cosmos DB وكيف يمكن للكتابة إلى مختلف الخدمات المستهدفة الأولى والثالثة، مع التقاط بيانات التغيير.

لمزيد من المعلومات حول أنواع المتلقي المدعومة في تدفق بيانات التعيين، راجع أنواع المتلقي المعتمدة لتدفق البيانات.

بالإضافة إلى توفير موجز بيانات تزايدي من مخزن تحليلي إلى أهداف متنوعة، يدعم التقاط البيانات التغيير القدرات التالية:

  • يدعم التقاط الحذف والتحديثات المتوسطة
  • القدرة على تصفية موجز التغيير لنوع معين من العمليات (إدراج | تحديث | حذف | TTL)
  • يدعم تطبيق عوامل التصفية والإسقاطات والتحويلات على موجز التغيير عبر استعلام المصدر
  • يمكن استهلاك موجزات تغيير متعددة على نفس الحاوية في وقت واحد
  • يظهر كل تغيير في الحاوية مرة واحدة بالضبط في موجز التقاط بيانات التغيير، وتتم إدارة نقاط التحقق داخليا نيابة عنك
  • يمكن مزامنة التغييرات "من البداية" أو "من طابع زمني معين" أو "من الآن"
  • لا يوجد أي قيود حول فترة الاحتفاظ بالبيانات الثابتة التي تتوفر لها التغييرات

التقاط البيانات المتزايدة بكفاءة مع نقاط التحقق المدارة داخليا

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

  • يتم تطبيق عامل التصفية "_ts" على ملفات البيانات التي لا تضمن دائما الحد الأدنى من مسح البيانات. تضمن نقاط التحقق المستندة إلى GLSN المدارة داخليا في قدرة CDC الجديدة أن يتم تحديد البيانات المتزايدة، فقط استنادا إلى بيانات التعريف، وبالتالي يضمن الحد الأدنى من مسح البيانات في كل دفق.

  • لا تضمن عملية مزامنة المخزن التحليلي الترتيب المستند إلى "_ts" مما يعني أنه قد تكون هناك حالات يكون فيها "_ts" للسجل التزايدي أقل من "_ts" التي تم التحقق منها مؤخرا وقد يتم تفويتها في الدفق التزايدي. لا يعتبر مركز السيطرة على الأمراض الجديد "_ts" لتحديد السجلات التزايدية وبالتالي يضمن عدم تفويت أي من السجلات التزايدية.

الميزات

تغيير التقاط البيانات في مخزن Azure Cosmos DB التحليلي يدعم الميزات الرئيسية التالية.

التقاط التغييرات من البداية

Start from beginning عند تحديد الخيار، يتضمن التحميل الأولي لقطة كاملة لبيانات الحاوية في التشغيل الأول، ويتم التقاط البيانات المتغيرة أو التزايدية في عمليات التشغيل اللاحقة. يقتصر ذلك على الخاصية analytical TTL ولا يتم تضمين المستندات التي تمت إزالة TTL من المخزن التحليلي في موجز التغيير. مثال: تخيل حاوية مع analytical TTL تعيين إلى 31536000 ثانية، وهو ما يعادل سنة واحدة. إذا قمت بإنشاء عملية التقاط بيانات التغيير لهذه الحاوية، سيتم تضمين المستندات الأحدث من سنة واحدة فقط في التحميل الأولي.

التقاط التغييرات من طابع زمني معين

Start from timestamp عند تحديد الخيار، يعالج التحميل الأولي البيانات من الطابع الزمني المحدد، ويتم التقاط البيانات التزايدية أو المتغيرة في عمليات التشغيل اللاحقة. هذه العملية مقيدة أيضا بالخاصية analytical TTL .

التقاط التغييرات من الآن

Start from timestamp عند تحديد الخيار، لا يتم التقاط جميع العمليات السابقة للحاوية.

التقاط الحذف والتحديثات المتوسطة وTTLs

تلتقط ميزة التقاط بيانات التغيير للمخزن التحليلي عمليات الحذف والتحديثات المتوسطة وعمليات TTL. يمكن تطبيق الحذف والتحديثات التي تم التقاطها على Sinks التي تدعم عمليات الحذف والتحديث. تعرف القيمة {_rid} السجلات بشكل فريد، وهكذا عن طريق تحديد {_rid} عمود مفتاح على جانب المتلقي، ستنعكس عمليات التحديث والحذف على المتلقي.

لاحظ أن عمليات TTL تعتبر عمليات حذف. تحقق من قسم إعدادات المصدر للتحقق من تفاصيل الوضع ودعم التحديثات الوسيطة والحذف في المتلقيات.

تصفية موجز التغيير لنوع معين من العمليات

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

تطبيق عوامل التصفية والإسقاطات والتحويلات على موجز التغيير عبر استعلام المصدر

يمكنك اختياريا استخدام استعلام مصدر لتحديد عامل التصفية (التصفية) والإسقاط (الإسقاطات) والتحويل (التحولات)، والتي سيتم دفعها جميعا لأسفل إلى المخزن التحليلي العمودي. فيما يلي نموذج استعلام المصدر الذي سيلتقط السجلات التزايدية فقط باستخدام عامل التصفية Category = 'Urban'. يعرض هذا الاستعلام النموذجي خمسة حقول فقط ويطبق تحويلا بسيطا:

SELECT ProductId, Product, Segment, concat(Manufacturer, '-', Category) as ManufacturerCategory
FROM c 
WHERE Category = 'Urban'

عمليات التقاط بيانات التغيير المتعددة

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

عزل معدل النقل وزمن انتقال أقل وانخفاض TCO

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

السيناريوهات

فيما يلي سيناريوهات شائعة حيث يمكنك استخدام التقاط بيانات التغيير والمخزن التحليلي.

استهلاك البيانات المتزايدة من Cosmos DB

يمكنك استخدام التقاط بيانات تغيير المخزن التحليلي، إذا كنت تستخدم حاليا أو تخطط لاستخدام:

  • التقاط البيانات المتزايدة باستخدام تدفقات بيانات Azure Data Factory أو نشاط النسخ.
  • معالجة دفعة واحدة باستخدام Azure Data Factory.
  • دفق بيانات Cosmos DB
    • يحتوي المخزن التحليلي على زمن انتقال يصل إلى 2 دقيقة لمزامنة بيانات مخزن المعاملات. يمكنك جدولة تدفقات البيانات في Azure Data Factory كل دقيقة.
    • إذا كنت بحاجة إلى الدفق دون زمن الانتقال أعلاه، نوصي باستخدام ميزة موجز التغيير في مخزن المعاملات.
  • التقاط الحذف والتغييرات المتزايدة وتطبيق عوامل التصفية على بيانات Cosmos DB.
    • إذا كنت تستخدم مشغلات Azure Functions أو أي خيار آخر مع موجز التغيير وترغب في التقاط الحذف والتغييرات المتزايدة وتطبيق التحويلات وما إلى ذلك؛ نوصي بتغيير التقاط البيانات عبر المخزن التحليلي.

موجز تزايدي للنظام الأساسي التحليلي الذي تختاره

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

تغيير التقاط البيانات على Azure Cosmos DB لحاويات MongoDB

واجهة الخدمة المرتبطة لواجهة برمجة التطبيقات ل MongoDB غير متوفرة ضمن تدفقات بيانات Azure Data Factory حتى الآن. يمكنك استخدام واجهة برمجة التطبيقات الخاصة بك لنقطة نهاية حساب MongoDB مع واجهة خدمة Azure Cosmos DB ل NoSQL المرتبطة كحل بديل حتى يتم دعم خدمة Mongo المرتبطة مباشرة.

في واجهة خدمة NoSQL مرتبطة جديدة، حدد Enter Manually لتوفير معلومات حساب Azure Cosmos DB. هنا، استخدم نقطة نهاية مستند NoSQL للحساب (مثال: https://<account-name>.documents.azure.com:443/) بدلا من نقطة نهاية Mongo DB (مثال: mongodb://<account-name>.mongo.cosmos.azure.com:10255/)

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