- بواسطة x32x01 ||
عمرك سألت نفسك ليه شركات ضخمة زي Netflix بتختار داتا بيز مختلفة عن المعتاد؟
ليه تستخدم Apache Cassandra بدل MongoDB أو MySQL؟
الإجابة ببساطة: القرار مش تريند… القرار مبني على فهم السيستيم نفسه 💡
خلّيني أشرح لك الفكرة بمثال بسيط 👇
دلوقتي تخيل شبكة كاشيرات:
✅ اختار على حسب:
لو البوست فادك؟
شير ولايك يا هندسة 😅❤️
وسيب رأيك في الكومنتات… تحب نكمل مقارنة بين أنظمة تانية؟ 👇
ليه تستخدم Apache Cassandra بدل MongoDB أو MySQL؟
الإجابة ببساطة: القرار مش تريند… القرار مبني على فهم السيستيم نفسه 💡
خلّيني أشرح لك الفكرة بمثال بسيط 👇
🧾 مثال الكاشير: الفكرة في سطرين
تخيل محل فيه كاشير واحد بس:- لو اتأخر
- لو خد بريك
- لو وقع السيستم
دلوقتي تخيل شبكة كاشيرات:
- كل واحد يستقبل طلبات
- لو واحد وقع، الباقي يكمل
- ممكن الأداء يقل شوية، بس الشغل ما يوقفش ✅
🌐 Cassandra بتشتغل إزاي؟
Cassandra شبه شبكة الكاشيرات بالظبط 👌 كل Node فيها:- متساوي (Equal)
- تقدر تقرأ وتكتب من أي Node
- مفيش Leader واحد متحكم في الدنيا
- Availability عالية جدًا 🔥
- مفيش Election
- مفيش توقف كامل
- Graceful Degradation لو حصل Fail
🍃 MongoDB بتختلف في إيه؟
MongoDB في شكلها التقليدي (Primary / Secondaries) شبه كاشير واحد للـ Write:- فيه Node أساسي للكتابة
- لو وقع:
- يحصل Election
- الـ Write يقف شوية
- لحد ما يطلع Leader جديد 😅
- MongoDB قوية جدًا في الاستعلامات
- مرنة وسهلة
- Schema وConsistency ممتازة في حالات كتير
🎯 تختار أنهي واحدة؟ اسأل نفسك السؤالين دول
1️⃣ طبيعة الداتا وAccess Pattern
- الداتا Key-Value
- أو مربوطة بـ User ID
- Writes وReads كتير
- من أماكن مختلفة
2️⃣ Multi-Region وLatency
- عندك Users في مناطق كتير 🌍
- عايز الخدمة قريبة من كل مستخدم
- ومينفعش أي Region يقع
🧩 الخلاصة: اختار بالعقل مش بالتريند
❌ متختارش داتا بيز علشان: مشهورة - كل الناس بتستخدمها - بتعمل كل حاجة✅ اختار على حسب:
- طبيعة الـ Business
- هل السيستيم لازم يفضل شغال دايمًا؟
اختار Design من غير Leader واحد 👉 - هل الترتيب والـ Consistency الصارمة أهم؟
اختار الداتا بيز التقليدية اللي انت متعود عليها 👉
لو البوست فادك؟
شير ولايك يا هندسة 😅❤️
وسيب رأيك في الكومنتات… تحب نكمل مقارنة بين أنظمة تانية؟ 👇
