نموذج تطبيقات المعاملات عالية الإنتاجية في Azure Cosmos DB ل PostgreSQL
ينطبق على: Azure Cosmos DB ل PostgreSQL (مدعوم بملحق قاعدة بيانات Citus إلى PostgreSQL)
عامل التصفية الشائع كمفتاح تقسيم
لاختيار مفتاح الجزء لتطبيق معاملات ذات معدل نقل عالي، اتبع الإرشادات التالية:
- اختر عموداً يُستخدَم لعمليات البحث عن النقاط وهو موجود في معظم عمليات الإنشاء والقراءة والتحديث والحذف.
- اختر عمودا يمثل بعدا طبيعيا في البيانات، أو قطعة مركزية من التطبيق. على سبيل المثال:
- في حمل عمل IOT،
device_id
هو عمود توزيع جيد.
- في حمل عمل IOT،
يساعد اختيار مفتاح جزء جيد على تحسين وثبات الشبكة، مع الاستفادة من الذاكرة والحوسبة لتحقيق زمن انتقال بالمللي ثانية.
نموذج البيانات الأمثل للتطبيقات ذات معدل النقل العالي
فيما يلي مثال على نموذج بيانات نموذجي لتطبيق IoT الذي يلتقط بيانات تتبع الاستخدام (بيانات السلسلة الزمنية) من الأجهزة. هناك جدولان لتسجيل بيانات تتبع الاستخدام: devices
وevents
. قد تكون هناك جداول أخرى، ولكنها غير مشمولة في هذا المثال.
عند إنشاء تطبيق ذي معدل نقل عالي، ضع في اعتبارك بعض التحسين.
- توزيع جداول كبيرة على عمود شائع يمثل جزءاً مركزياً من التطبيق، والعمود الذي يستعلمه تطبيقك في الغالب. في المثال الوارد أعلاه لتطبيق IOT،
device_id
هو هذا العمود، ويتعاون في تحديد موقع الأحداث وجداول الأجهزة. - يمكن أن تكون بقية الجداول الصغيرة جداول مرجعية.
- نظراً لأن تطبيقات IOT لها بعد زمني، قسّم الجداول الموزعة استناداً إلى الوقت. يمكنك استخدام Azure Cosmos DB الأصلي لإمكانيات السلسلة الزمنية PostgreSQL لإنشاء الأقسام وصيانتها.
- يساعد التقسيم على تصفية البيانات بكفاءة للاستعلامات باستخدام عوامل تصفية الوقت.
- تنتهي صلاحية البيانات القديمة أيضاً بسرعة، باستخدام الأمر DROP مقابل DELETE.
- يتم تقسيم جدول الأحداث في مثالنا حسب الشهر.
- استخدم نوع بيانات JSONB لتخزين البيانات شبه المنظمة. عادةً ما تكون بيانات تتبع استخدام الجهاز غير منظمة، ولكل جهاز مقاييسه الخاصة.
- في مثالنا، يحتوي جدول الأحداث على عمود
detail
، وهو JSONB.
- في مثالنا، يحتوي جدول الأحداث على عمود
- إذا كان تطبيق IoT يتطلب ميزات جغرافية مكانية، يمكنك استخدام ملحق PostGIS، الذي يدعمه Azure Cosmos DB ل PostgreSQL في الأصل.
الخطوات التالية
لقد انتهينا الآن من استكشاف نمذجة البيانات للتطبيقات القابلة للتطوير. الخطوة التالية هي الاتصال والاستعلام عن قاعدة البيانات بلغة البرمجة التي تختارها.