جدول المحتويات:
التعريف - ماذا يعني NoSQL؟
NoSQL هي فئة من أنظمة إدارة قواعد البيانات (DBMS) التي لا تتبع جميع قواعد DBMS العلائقية ولا يمكنها استخدام SQL التقليدي للاستعلام عن البيانات. المصطلح مضلل إلى حد ما عند تفسيره على أنه "لا SQL" ، وغالبًا ما يترجمه "SQL ليس فقط" ، لأن هذا النوع من قاعدة البيانات لا يكون عمومًا بديلًا ، بل إضافة تكميلية إلى RDBMSs و SQL.
تُستخدم الأنظمة المستندة إلى NoSQL عادةً في قواعد بيانات كبيرة جدًا ، وهي عرضة بشكل خاص لمشاكل الأداء الناجمة عن قيود SQL والنموذج العلائقي لقواعد البيانات. يعتقد الكثيرون في NoSQL كقاعدة بيانات حديثة للاختيار تتوافق مع متطلبات الويب. بعض تطبيقات NoSQL البارزة هي قاعدة بيانات Cassandra على Facebook ، و BigTable من Google ، و AmazonD ، و SimpleDB ، و Dynamo.
يشرح Techopedia NoSQL
لا تتبع قاعدة بيانات NoSQL بالضرورة القواعد الصارمة التي تحكم المعاملات في قواعد البيانات العلائقية. تُعرف هذه القواعد المنتهكة باختصار ACID (Atomicity ، الاتساق ، النزاهة ، المتانة). على سبيل المثال ، لا تستخدم قواعد بيانات NoSQL بنيات المخطط الثابتة وينضم SQL.
في RDBMS التقليدية ، العمليات الأساسية هي القراءة والكتابة. قد يتم تغيير حجم القراءات عن طريق نسخ البيانات إلى أجهزة متعددة ، وبالتالي طلبات قراءة موازنة التحميل. ومع ذلك ، يؤثر هذا على عمليات الكتابة لأنه يجب الحفاظ على تناسق البيانات. يمكن تغيير حجم الكتابة فقط عن طريق تقسيم البيانات. يؤثر هذا على القراءات ، حيث تكون الوصلات الموزعة بطيئة ويصعب تنفيذها. بالإضافة إلى ذلك ، للحفاظ على خصائص ACID ، يجب أن تقوم قواعد البيانات بتأمين البيانات. هذا يعني أنه عندما يفتح أحد المستخدمين عنصر بيانات ، فلن يكون بمقدور أي مستخدم آخر إجراء تغييرات على نفس العنصر. هذا التقييد له آثار خطيرة على الأداء.
هذه القيود لم تكن مشكلة كبيرة في الماضي. ومع ذلك ، مع ظهور الشبكات الاجتماعية والبيانات الضخمة ، اضطر عدد من قواعد البيانات الضخمة التي ظهرت إلى خدمة عشرات ، أو حتى المئات ، من ملايين العملاء في جميع أنحاء العالم مع عدة آلاف من القراءة والكتابة في كل دقيقة. RDBMSs التقليدية ببساطة لا تلبي هذه الحاجة لأنها يمكن فقط "زيادة" ، أو زيادة الموارد على خادم مركزي. تطبيق NoSQL ، من ناحية أخرى ، يمكن "توسيع" أو توزيع تحميل قاعدة البيانات عبر المزيد من الخوادم.
تركز قواعد بيانات NoSQL على فئات معينة من المشاكل - من كونها أكثر مرونة حول البيانات المخزنة (مخازن المستندات) ، إلى استهداف حالات الاستخدام ، مثل العلاقات (قواعد بيانات الرسم البياني) وتجميع البيانات (قواعد بيانات الأعمدة) أو مجرد تبسيط فكرة قاعدة البيانات وصولاً إلى شيء يخزن قيمة (مخازن مفتاح / قيمة).
توفر قواعد بيانات NoSQL مزايا قابلية التوسع السريع والأداء الأفضل وبنية أبسط مقارنةً بنظام RDBMS. ومع ذلك ، فإنها تعاني أيضًا من كونها تقنية جديدة وغير مثبتة نسبيًا ، ولا يمكنها توفير وظائف التقارير والتحليل الغنية لـ RDBMS.