البيانات الضخمة وأنظمة NoSQL
البيانات الضخمة وأنظمة NoSQL هي تقنيات إدارة البيانات المصممة للتعامل مع الحجم والسرعة والتنوع الذي واجهت قواعد البيانات العلائقية صعوبة فيه، حيث تخلت عن الضمانات العلائقية الصارمة لصالح قابلية التوسع الأفقي والمخططات المرنة والتوافر العالي.
Definition
أنظمة البيانات الضخمة هي منصات لإدارة البيانات مصممة لمجموعات بيانات كبيرة جدًا أو سريعة جدًا أو متنوعة جدًا بحيث لا تستطيع قواعد البيانات التقليدية أحادية العقدة التعامل معها؛ أنظمة NoSQL هي مخازن غير علائقية تعتمد نماذج بيانات مرنة واتساقًا مخففًا لتحقيق قابلية التوسع الأفقي والتوافر.
Scope
يغطي هذا المجال أنظمة البيانات المصممة للنطاق الهائل: مخازن NoSQL (مخازن المفتاح-القيمة، المستندات، الأعمدة العريضة، والرسوم البيانية) ونماذج بياناتها المرنة؛ أطر عمل المعالجة المتوازية للبيانات المستمدة من MapReduce؛ المفاضلات بين الاتساق والتوافر التي يجسدها نظرية CAP وطيف نماذج الاتساق؛ وتخزين البيانات والمعالجة التحليلية عبر الإنترنت (OLAP) للتحليلات واسعة النطاق. يتناول هذا المجال كيف تخفف هذه الأنظمة أو تعيد تنظيم الافتراضات العلائقية لتحقيق التوسع. يستثني هذا المجال التفاصيل الداخلية للالتزام الموزع وتنفيذ الاستعلام المتوازي، والتي يتم تغطيتها في مجال قواعد البيانات الموزعة والمتوازية.
Sub-topics
Core questions
- ما هي احتياجات قابلية التوسع والمرونة التي دفعت إلى تجاوز قواعد البيانات العلائقية؟
- ما هي نماذج البيانات التي توفرها الفئات الرئيسية لـ NoSQL؟
- كيف تعالج أطر العمل المتوازية للبيانات مجموعات البيانات الضخمة عبر المجموعات؟
- ما هي المفاضلات بين الاتساق والتوافر التي تصفها نظرية CAP؟
- كيف تدعم مستودعات البيانات والمعالجة التحليلية عبر الإنترنت (OLAP) الاستعلامات التحليلية واسعة النطاق؟
Key concepts
- مخازن المفتاح-القيمة، المستندات، الأعمدة العريضة، الرسوم البيانية
- قابلية التوسع الأفقي
- مرونة المخطط
- MapReduce والمعالجة المتوازية للبيانات
- نظرية CAP
- الاتساق النهائي
- BASE مقابل ACID
- تخزين البيانات والمعالجة التحليلية عبر الإنترنت (OLAP)
Key theories
- مخازن NoSQL قابلة للتوسع أفقيًا
- تتخلى أنظمة NoSQL عن النموذج العلائقي أحادي العقدة لصالح نماذج المفتاح-القيمة، المستندات، الأعمدة العريضة، أو الرسوم البيانية التي تقوم بالتجزئة والنسخ المتماثل عبر مجموعات من الأجهزة التجارية، مع إعطاء الأولوية لقابلية التوسع والتوافر على حساب الاستعلامات الغنية والاتساق القوي.
- المعالجة المتوازية للبيانات
- تعبر أطر العمل التي تتبع نموذج MapReduce عن الحسابات واسعة النطاق كمراحل متوازية للتعيين والتخفيض على البيانات المقسمة، مما يخفي تعقيد التوزيع والجدولة وتحمل الأخطاء عن المبرمج.
- مفاضلة CAP
- تنص نظرية CAP على أن مخزن البيانات الموزع لا يمكنه ضمان الاتساق والتوافر وتحمل التقسيم في وقت واحد، مما يجبر المصممين على الاختيار، أثناء تقسيم الشبكة، بين الاتساق والتوافر.
Clinical relevance
تدعم أنظمة البيانات الضخمة وNoSQL البنية التحتية للبيانات للويب الحديث: تدعم مخازن المفتاح-القيمة والأعمدة العريضة الخدمات ذات حركة المرور العالية، وتعالج أطر العمل المتوازية للبيانات السجلات وتدفقات النقرات على نطاق واسع، وتخدم مستودعات البيانات تحليلات الأعمال، مما يجعل هذه الأنظمة مركزية في هندسة البيانات والتطبيقات واسعة النطاق.
History
تجاوزت أعباء العمل على نطاق الإنترنت في العقد الأول من القرن الحادي والعشرين ما يمكن أن تتعامل معه قواعد البيانات العلائقية أحادية العقدة. أتاح MapReduce من Google (2004/2008) ونظام Hadoop البيئي مفتوح المصدر معالجة البيانات على نطاق المجموعات؛ ألهم Dynamo من Amazon (2007) و Bigtable من Google موجة من مخازن NoSQL؛ وصاغت نظرية CAP لـ Brewer المفاضلات بين الاتساق والتوافر التي تجسدها هذه الأنظمة.
Debates
- الاتساق القوي مقابل الاتساق النهائي
- غالبًا ما تختار أنظمة NoSQL التوافر والاتساق النهائي للبقاء مستجيبة تحت التقسيمات، لكن هذا يدفع معالجة التعارضات إلى التطبيقات؛ يناقش المجال متى يكون الاتساق النهائي مقبولًا ومتى يجب على الأنظمة الأحدث استعادة ضمانات أقوى.
Key figures
- Jeffrey Dean
- Sanjay Ghemawat
- Eric Brewer
- Werner Vogels
Related topics
Seminal works
- dean2008
- decandia2007
- brewer2012
Frequently asked questions
- هل NoSQL تعني لا SQL على الإطلاق؟
- لا. عادةً ما تُقرأ NoSQL على أنها 'ليس SQL فقط'. تشير إلى مخازن البيانات التي لا تعتمد على النموذج العلائقي ولا تركز على SQL، ولكن العديد من أنظمة NoSQL تقدم واجهات استعلام شبيهة بـ SQL، ويغطي المصطلح عائلة واسعة — قواعد بيانات المفتاح-القيمة، المستندات، الأعمدة العريضة، والرسوم البيانية — بدلاً من تقنية واحدة.
- متى يجب أن أختار نظام NoSQL بدلاً من قاعدة بيانات علائقية؟
- تكون أنظمة NoSQL جذابة عندما تحتاج إلى التوسع أفقيًا عبر العديد من الأجهزة، أو تخزين بيانات مرنة أو سريعة التطور، أو زيادة التوافر لأنماط الوصول البسيطة. تظل قواعد البيانات العلائقية مفضلة عندما تحتاج إلى استعلامات غنية، وربط معقد، واتساق قوي للمعاملات على البيانات المنظمة.