Realm (قاعدة البيانات)

Realm هو نظام إدارة قواعد بيانات كائنية مفتوح المصدر ، مصمم في البداية لأنظمة تشغيل الأجهزة المحمولة ( أندرويد / iOS ) [ 1 ] ، ولكنه متاح أيضًا لمنصات مثل Xamarin [ 2 ] و React Native [ 3 ] وغيرها [4] [5]، بما في ذلك تطبيقات سطح المكتب ( ويندوز [ 6 ] ). وهو مرخص بموجب رخصة أباتشي .

في سبتمبر 2016، أُعلن عن منصة Realm Mobile ، تلاها الإصدار المستقر الأول في يناير 2017. تتيح هذه المنصة مزامنة ثنائية الاتجاه بين خادم Realm Object Server [ 7 ] [ 8 ] وقواعد بيانات المستخدم على جانب العميل التابعة للمستخدم المُسجّل دخوله. وقد صدرت نسخة للمطورين ونسخة تجارية [ 9 ] ، بالإضافة إلى ترخيص تجاري [ 10 ] للتكامل مع أنظمة إدارة قواعد البيانات الأخرى مثل PostgreSQL . [ 11 ] [ 12 ]

في ربيع عام 2019، استحوذت MongoDB على Realm مقابل 39 مليون دولار أمريكي. [ 13 ]

في سبتمبر 2023، أُعيد تسمية قاعدة بيانات Realm لتصبح "Atlas Device SDKs". مع ذلك، في سبتمبر 2024، أعلنت MongoDB عن إيقاف خدمة Atlas Device Sync، التي كانت تُستخدم لمزامنة Realm مع MongoDB. ورغم إيقاف خدمة المزامنة الاحتكارية، ستظل قاعدة البيانات متاحة كمصدر مفتوح، لكن فريق MongoDB لن يتولى صيانتها. [ 14 ] في أكتوبر 2024، أعلنت MongoDB عن عدة خيارات بديلة تُقدم خدمة مزامنة لـ MongoDB، مثل Ditto وObjectBox وPowersync.

تاريخ

بدأ تطوير Realm في أواخر عام 2010 على يد ألكسندر ستيغسن، بالتعاون مع بيارن كريستيانسن، [ 15 ] تحت اسم TightDB. انطلقت الشركة في عام 2011 من خلال برنامج Y Combinator . [ 16 ] رُوِّج لها كقاعدة بيانات NoSQL ذات متانة قابلة للتكوين، وقدرة على مشاركة نفس مجموعات البيانات عبر عمليات متعددة، بل وحتى عبر أجهزة ومجموعات متعددة.

أعادت شركة TightDB تسمية منتجها إلى Realm في سبتمبر 2014، وأطلقته للاختبار العام. وفي مارس 2015،  تم الكشف عن تمويل بقيمة 20 مليون دولار تقريبًا. [ 16 ] [ 17 ]

ذُكرت شركة Realm في بعض الصحف التجارية ، [ 18 ] [ 19 ] بما في ذلك من قبل شركات أخرى مثل IBM . [ 20 ]

أعلنت شركة Realm عن الإصدار 1.0 في يونيو 2016، وأصدرت منصة للمزامنة ثنائية الاتجاه في الوقت الفعلي (نسخة تجريبية في سبتمبر 2016، وإصدار رسمي في يناير 2017)، [ 21 ] وقدمت حزمة تطوير برمجية Node.js لتطبيقات جانب الخادم. [ 22 ]

في مايو 2017، تم الإعلان عن دعم UWP .

في سبتمبر 2024، أعلنت MongoDB عن إيقاف خدمة المزامنة الخاصة بها المرتبطة بـ Realm DB وتوقف دعم Realm DB.

سمات

أبرز ميزات Realm هي التالية:

  • بما أن Realm عبارة عن مخزن كائنات، فإن واجهات برمجة التطبيقات الخاصة باللغة المكتوبة تقوم بربط الكائنات المكتوبة مباشرة بملف Realm - لذلك يتم استخدام الفئات كتعريف للمخطط.
  • يُسمح بالعلاقات بين الكائنات عبر "الروابط". كل "رابط" يُنشئ "رابطًا عكسيًا" كعلاقة عكسية مع أي كائنات أخرى مرتبطة بالكائن الحالي.
  • تُعدّ نتائج الاستعلام التي يُعيدها Realm بمثابة عروض محلية خاصة بكل خيط لإصدار قاعدة البيانات الحالي (حيث يتعامل Realm مع التزامن باستخدام بنية MVCC )، ويتم تحديث هذه العروض تلقائيًا عند إتمام أي معاملة من أي خيط ، طالما أن Realm قادر على تحديث إصدار مثيله (وهو أمر ممكن في الخيوط التي تتلقى إشعارات التغيير). عند حدوث ذلك، يستدعي Realm مستمعي التغيير الذين تتم إضافتهم إلى نتائج الاستعلام (إذا طرأ عليها تغيير).
  • تُعيد كل واجهة عرض محلية خاصة بالخيط كائنات وسيطة لا تقرأ من قاعدة البيانات أو تكتب إليها إلا عند استدعاء دالة الوصول، مما يعني أن جميع عمليات الوصول إلى قاعدة البيانات يتم تحميلها عند الحاجة. ولا يُسمح بالكتابة إلا أثناء عملية كتابة.
  • بما أن كل نتيجة استعلام وكل كائن وسيط يمثلان عرضًا للبيانات الأساسية، فإن أي تغيير يُجرى على قاعدة البيانات ينعكس في جميع الكائنات التي تشير إلى نفس البيانات. يُطلق Realm عمومًا على هذا السلوك اسم "بنية النسخ الصفري" (إلى جانب الوصول إلى البيانات المُحمّلة عند الطلب المذكور سابقًا).

دعم لغات البرمجة

مراجع

  1. "Realm: قاعدة بيانات حديثة تركز على الكائنات لتطبيقات الهاتف المحمول" . تم الاطلاع عليه بتاريخ 22-04-2017 .
  2. "منصة قاعدة بيانات Realm للأجهزة المحمولة تدعم الآن Xamarin من مايكروسوفت" . Gooroo . تم ​​الاطلاع عليه بتاريخ 22 أبريل 2017 .
  3. "Realm: Introducing Realm React Native" . تم الاطلاع عليه بتاريخ 22-04-2017 .
  4. "Realm: Microsoft Xamarin 1.0, Azure, Windows Desktop" . تم الاطلاع عليه بتاريخ 22-04-2017 .
  5. "منصة Realm للأجهزة المحمولة تدعم Xamarin وMicrosoft Azure - ADTmag" . ADTmag . تم الاطلاع عليه بتاريخ 22 أبريل 2017 .
  6. "استخدام قاعدة بيانات Realm Mobile في تطبيق سطح مكتب مُحوَّل باستخدام Desktop Bridge" . فريق استشارات التطبيقات . تم الاطلاع عليه بتاريخ 22 أبريل 2017 .
  7. كيبس، بن. "ريلم توسع نطاق عروض قواعد البيانات الخاصة بها للأجهزة المحمولة مع خادم الكائنات" . عالم الشبكات . تم الاسترجاع في 22 أبريل 2017 .
  8. "ريلم توسّع نطاق عروض قواعد بياناتها للأجهزة المحمولة بإضافة خادم الكائنات | مدونة التنوع - البرمجيات كخدمة، والحوسبة السحابية، واستراتيجية الأعمال" . www.diversity.net.nz . تاريخ الاطلاع: ٢٢ أبريل ٢٠١٧ .
  9. "ريلم تطلق النسخة التجارية من قاعدة بياناتها للهواتف المحمولة - سيليكون أنجل" . سيليكون أنجل . 19 يناير 2017. تاريخ الاسترجاع: 22 أبريل 2017 .
  10. "Realm Open Sources Mobile Database, revoture to Enterprise Platform – ADTmag" . ADTmag . تاريخ الاسترجاع: 22 أبريل 2017 .
  11. "Realm تجعل PostgreSQL تعمل في الوقت الفعلي مع موصل جديد" . اتجاهات وتطبيقات قواعد البيانات . 21-03-2017 . تم الاطلاع عليه بتاريخ 22-04-2017 .
  12. "منصة تطوير تطبيقات الجوال من Realm تتصل بقاعدة بيانات PostgreSQL لربطها ببيانات المؤسسة - The New Stack" . The New Stack . 21 مارس 2017. تاريخ الاطلاع: 22 أبريل 2017 .
  13. ميلر، رون. "MongoDB تستحوذ على قاعدة بيانات Realm مفتوحة المصدر للهواتف المحمولة مقابل 39 مليون دولار" . techcrunch.com . تاريخ الاسترجاع: 25 أبريل 2019 .
  14. "تحديثات ميزات MongoDB: نهاية العمر الافتراضي والإيقاف" . mongodb.com . تم الاطلاع عليه بتاريخ 30-09-2024 .
  15. «شركة ناشئة أطلقها هؤلاء المهندسون السابقون في نوكيا قبل 9 أشهر تحقق نجاحاً باهراً» . بزنس إنسايدر . تاريخ الاطلاع: 22 أبريل 2017 .
  16. 1 2 رون ميلر (24 مارس 2015). "ريلم تستطيع توسيع نطاقها باستثمار 20 مليون دولار" . تك كرانش . تم الاطلاع عليه في 21 مايو 2017 .
  17. "النموذج د: إشعار العرض المعفى للأوراق المالية" . 30 مارس 2015. تم الاطلاع عليه في 21 مايو 2017 .
  18. كريل، بول. "ريلم تُعيد إحياء قاعدة بيانات الكائنات لتطوير تطبيقات الجوال" . إنفوورلد . تم الاطلاع عليه بتاريخ 22 أبريل 2017 .
  19. توماس كلابورن (29 سبتمبر 2016). "ريلم - قاعدة بيانات ربما لم تسمع بها من قبل، لكن مطوري التطبيقات يعرفونها - تروج لمنصة سحابية" . ذا ريجستر . تم الاطلاع عليه في 21 مايو 2017 .
  20. "تطبيق جوال للتعرف البصري باستخدام واتسون، وريلم، وسويفت - آي بي إم أوبن تك" . آي بي إم أوبن تك . ١٢ ديسمبر ٢٠١٦. تاريخ الاسترجاع: ٢٢ أبريل ٢٠١٧ .
  21. "ريلم: تقديم منصة ريلم للأجهزة المحمولة" . تم الاطلاع عليه بتاريخ 22-04-2017 .
  22. "Realm تُصدر قاعدة بيانات كائنية لـ Node.js" . InfoQ . تم الاطلاع عليه بتاريخ 22-04-2017 .
  23. realm/realm-kotlin ، Realm، 27-07-2024 ، تم الاطلاع عليه في 27-07-2024