Format Atlas

مقارنة

Avro أم CBOR

يرمز Apache Avro السجلات وفق مخطط ويدعم مواءمة مخططي الكاتب والقارئ وملفات الحاوية. أما CBOR فهو تنسيق ثنائي عام يوسّع نموذج بيانات JSON، ويمثل سلاسل البايتات والعلامات مباشرة.

أي تنسيق يجب أن تختار؟

فكّر في Avro للمخططات المُدارة والسجلات ذات الأنواع وتطور المخطط في خطوط البيانات. وفكّر في CBOR للقيم الثنائية العامة والعلامات وبيانات البروتوكول المحددة بمعيار IETF.

مناسب لـ Avro

تبادل سجلات بمخطط محدد

  • الأحداث والتدفقات التي تتبع نسخ المخطط

مناسب لـ CBOR

تبادل بيانات منظمة على الأجهزة والشبكات محدودة الموارد · تمثيل البيانات في COSE وبروتوكولات إنترنت الأشياء

  • تمثيل بيانات شبيهة بـ JSON بصيغة ثنائية موجزة
  • استخدام وسوم قياسية أو خاصة بالتطبيق لتوضيح معنى القيم

المعلومات الأساسية

البندAvroCBOR
الامتداد.avro.cbor
نوع MIMEapplication/avroapplication/cbor
الاستخدامات الشائعةتبادل سجلات بمخطط محددتبادل بيانات منظمة على الأجهزة والشبكات محدودة الموارد · تمثيل البيانات في COSE وبروتوكولات إنترنت الأشياء
طريقة الفتحاستخدم أداة Avro لفحص المخطط والحقول والأنواع والسجلات.اقرأ الملف بمكتبة أو أداة فك ترميز CBOR، ثم افحص تدوين التشخيص أو عرضاً شبيهاً بـ JSON. تحقق من طريقة تمثيل القيم التي لا مقابل مباشراً لها في JSON، مثل الوسوم والسلاسل الثنائية.
التصدير أو التحويلعند التحويل إلى JSON أو Parquet، تحقق من الأسماء والأنواع والقيم الفارغة والأنواع المنطقية وعدد السجلات والتوافق.عند التحويل إلى JSON، قد تحتاج السلاسل الثنائية والقيم الموسومة إلى تمثيل خاص بالأداة. للتواقيع والتجزئات ومفاتيح التخزين المؤقت، اتبع قواعد الترميز المتفق عليها في البروتوكول، مثل الترميز الحتمي في RFC 8949.

الاختيار حسب الاستخدام

الأحداث والتدفقات التي تتبع نسخ المخطط

تبادل سجلات بمخطط محدد

Avro

تمثيل بيانات شبيهة بـ JSON بصيغة ثنائية موجزة

تبادل بيانات منظمة على الأجهزة والشبكات محدودة الموارد · تمثيل البيانات في COSE وبروتوكولات إنترنت الأشياء

CBOR

استخدام وسوم قياسية أو خاصة بالتطبيق لتوضيح معنى القيم

تبادل بيانات منظمة على الأجهزة والشبكات محدودة الموارد · تمثيل البيانات في COSE وبروتوكولات إنترنت الأشياء

CBOR

نقطة أساسية 1

يتطلب فك Avro مخطط الكاتب ويمكن لملف الحاوية تضمينه. يرمز CBOR عناصر ذات أنواع مثل الخرائط والعلامات، لكن تطور مخطط التطبيق منفصل.

مزيد من التفاصيل حول الاختلافات

نقطة أساسية 2

يعرّف Avro السجلات وunion والتعداد والأنواع المنطقية عبر المخططات. يعرّف CBOR الأعداد الصحيحة وسلاسل البايتات والمصفوفات والخرائط والعلامات دون فرض نظام مخطط للسجلات.

مزيد من التفاصيل حول الاختلافات

مزيد من التفاصيل حول الاختلافات

استخدم Avro عندما يدير المنتجون والمستهلكون مخططات متوافقة ويحتاجون تطور السجلات. استخدم CBOR عندما يحتاج البروتوكول نموذجاً ثنائياً عاماً ومضغوطاً يتضمن بايتات أو علامات. تحقق من توزيع المخططات والترميز الحتمي ودعم التنفيذات.

  • تُفسر بيانات Avro بمخطط الكاتب، ويمكن للحاوية تضمينه. تحمل عناصر CBOR معلومات النوع الثنائية، لكنها لا توفر تلقائياً عقد مخطط على مستوى التطبيق.
  • يمكن لحل مخططات Avro مواءمة مخططي الكاتب والقارئ. تضيف علامات CBOR دلالات، لكن على الطرفين الاتفاق على معناها وكيفية التعامل معها.
  • الترميزات الثنائية غير متوافقة. عند التحويل تحقق من union والأنواع المنطقية والقيم الافتراضية والمفقودة وعلامات CBOR ونطاق الأعداد وسلاسل البايتات والترميز الحتمي والامتدادات المجهولة.

الأسئلة الشائعة

هل يستطيع CBOR فك Avro دون مخطط؟

لا. الترميزان مختلفان ويحتاج Avro إلى مخطط الكاتب. يجب أن يحول النقل المخطط والقيم صراحة إلى عناصر CBOR.

مزيد من المعلومات

المراجع والمواصفات