دليل MongoDB Bson: ما هو BSON وكيف يختلف عن JSON؟

BSON (JSON الثنائي) هو ترميز ثنائي مُشفر لوثائق مشابهة لـ JSON يُستخدم في قواعد بيانات MongoDB. تقدم هذه المقالة لمحة عن BSON، صيغة البيانات الثنائية المستخدمة بواسطة MongoDB لتخزين الوثائق.

Amir Hassan

Amir Hassan

20 أغسطس 2025

دليل MongoDB Bson: ما هو BSON وكيف يختلف عن JSON؟

Apidog للمؤسسات

نشر محلي

SSO & RBAC

متوافق مع SOC 2

استكشاف Apidog Enterprise

BSON (Binary JSON) هو تسلسل مشفر ثنائي لوثائق مشابهة لـ JSON يستخدم في قواعد بيانات MongoDB. تقدم هذه المقالة نظرة عامة على BSON، التنسيق الثنائي للبيانات المستخدم من قبل MongoDB لتخزين الوثائق.

توضح ما هو BSON، وكيف يوسع قدرات JSON والاختلافات الرئيسية بين BSON وJSON. بالإضافة إلى ذلك، تشمل كيفية تعامل Apidog مع هذا تلقائيًا. كما يظهر أمثلة على العمليات الأساسية CRUD وأوامر قاعدة البيانات باستخدام Apidog للتفاعل مع MongoDB.

زر

ما هو BSON في MongoDB؟

BSON (Binary JSON) هو التنسيق الأساسي للبيانات المستخدم في قواعد بيانات MongoDB. بعض الأمور الرئيسية التي يجب معرفتها عن BSON في MongoDB:

هيكل مستند BSON

BSON (Binary JSON) هو تسلسل مشفر ثنائي لوثائق مشابهة لـ JSON يستخدم في قواعد بيانات MongoDB. يحتوي مستند BSON على أزواج حقل-قيمة مرتبة تشبه كائنات JSON.

يمكن أن تكون الحقول أي سلاسل UTF-8 صحيحة، بينما يمكن أن تكون القيم واحدة من عدة أنواع بيانات BSON مثل السلسلة، والعدد الصحيح، والعدد العشري، والبيانات الثنائية، والمصفوفة، والمستند، والقيمة المنطقية، والتاريخ، والقيمة null، وغيرها. يبدأ هيكل مستند BSON برقم صحيح مكون من 4 بايت يشير إلى الحجم الإجمالي للمستند.

التالي هو زوج الحقل-القيمة الذي يحتوي على حقل "_id" الذي يحدد المستند بشكل فريد. يتبع محتوى المستند مع ترميز كل زوج حقل-قيمة بتنسيق ثنائي محدد بناءً على نوع البيانات.

مثال يوضح هيكل مستند BSON:

// مستند BSON عينة
{
  _id: ObjectId("507f1f77bcf86cd799439011"), // معرف فريد مكون من 12 بايت
  name: "جون دو", // سلسلة
  age: 35, // عدد صحيح
  address: { // مستند مدرج
    street: "123 الشارع الرئيسي",
    city: "أي مدينة", 
    state: "كاليفورنيا"
  },
  hobbies: ["قراءة", "تسلق الجبال","سباحة"], // مصفوفة
  graduated: true, // قيمة منطقية
  birthday: ISODate("1980-05-15T00:00:00Z"), // تاريخ
  data: BinData(0, "SGVsbG8gV29ybGQ="), // بيانات ثنائية
  ts: Timestamp(1590583045633, 1) // طابع زمني
}

أمور رئيسية يجب ملاحظتها:

ما هو الفرق بين JSON وBSON؟

إليك الاختلافات الرئيسية بين JSON وBSON:

تحويل JSON وBSON في MongoDB باستخدام Apidog

Apidog هو مجموعة أدوات API تسهل تطوير API. يقدم MongoDB كواحد من خيارات قواعد البيانات المدمجة. من خلال استخدام MongoDB مع Apidog، يمكنك تخزين نماذج واستطلاعات API في MongoDB كواجهة خلفية.

يمكن أن تكون استجابات API الوهمية التي يقدمها Apidog مدفوعة بالبيانات المخزنة في قاعدة بيانات MongoDB. وهذا يسمح لـ Apidog بالاستفادة من MongoDB كمصدر بيانات دائم لنماذج API. بعد ذلك، سنشرح علاقة JSON وBSON معك.

زر

تخزن MongoDB البيانات كمستندات BSON، والتي يمكن اعتبارها مجموعة شاملة من JSON. عند تشغيل قاعدة بيانات MongoDB باستخدام Apidog، يتم استخدام JSON لتكوين المحتوى. سيقوم Apidog تلقائيًا بربط كل حقل بنوع بيانات BSON المقابل بناءً على محتوى JSON الفعلي.

هناك حالة خاصة وهي حقل _id. وفقًا لتقاليد MongoDB، يجب أن يحتوي كل مستند على حقل _id كمفتاح أساسي، مع ObjectId كنوع البيانات الافتراضي بدلاً من string.

باستخدام Apidog، للإعلان عن حقل _id من نوع ObjectId، استخدم تنسيق السلسلة العادية. إذا كان محتوى السلسلة يتوافق مع تنسيق ObjectId، فسيقوم Apidog تلقائيًا بربطه بنوع ObjectId في BSON.

على سبيل المثال، في MongoDB يوجد مستند BSON مثل:

نسخ الكود
{
    _id: ObjectId('654e056de3662b1c09477cc3
'),
    name: "Apidog"
}

ثم لاستعلام هذا المستند بواسطة _id باستخدام Apidog، سيكون JSON لوضعه في "شرط الاستعلام" كما يلي:

نسخ الكود
{
    "_id": "654e056de3662b1c09477cc3"
}
MongoDB

Explore more

أين يمكن تنزيل Swagger UI باللغة العربية مجانًا

أين يمكن تنزيل Swagger UI باللغة العربية مجانًا

استكشف صعوبة الحصول على واجهة باللغة العربية لـ Swagger UI وتعرف على سبب كون Apidog بديلاً قويًا لمنصة تطوير واجهات برمجة التطبيقات (APIs).

23 أبريل 2025

أين يمكن تحميل Postman بالعربية مجانًا؟ استكشاف الخيارات وبديل Apidog

أين يمكن تحميل Postman بالعربية مجانًا؟ استكشاف الخيارات وبديل Apidog

هل يمكنك تحميل Postman بالعربية مجانًا؟ بينما يفتقر Postman للدعم الأصلي للغة العربية، توجد حلول بديلة. استكشفها واكتشف Apidog، بديل Postman القوي والموحد المصمم لتبسيط سير عمل API بالكامل، بغض النظر عن اللغة.

22 أبريل 2025

للمبتدئين: الاستخدام الأساسي لبرنامج Postman

للمبتدئين: الاستخدام الأساسي لبرنامج Postman

Postman هي أداة أساسية لاختبار واجهات برمجة التطبيقات (API). يمكن أن يُحسن كفاءتك عند تنفيذ استراتيجيات API. في هذه المقالة، سأشرح أساسيات استخدام Postman، لتمكين المستخدمين الجدد من تعلمه بسهولة من خلال هذا الدليل.

25 مارس 2025

ممارسة تصميم API في Apidog

اكتشف طريقة أسهل لبناء واستخدام واجهات برمجة التطبيقات