DATA · REPLICATION · 2026
تكرار البيانات (Replication)
إزاي تخلي عندك نسخ متعددة من قاعدة البيانات بتشتغل سوا؟ Failover، read scaling، disaster recovery:
0%
Section 00
يعني إيه Replication؟
البداية من الصفر
الفكرة الكبيرة
سيرفر واحد بيقع = الـ app بيقع. سيرفرات كتيرة = الـ app يفضل شغال
SINGLE SERVER · NO REPLICATION
DB واحدة
لو وقعت = الـ app بالكامل down
- ✗ Single Point of Failure
- ✗ مفيش backup حي
- ✗ الـ reads والـ writes على نفس السيرفر
- ✗ disaster recovery بطيء جداً
WITH REPLICATION
عدة نسخ متزامنة
لو واحدة وقعت = الباقي بيكمل
- ✓ High Availability
- ✓ Disaster Recovery
- ✓ Read scaling (توزيع القراءات)
- ✓ Geographic distribution
١. أمان البيانات
نسخ متعددة = مش هتفقد البيانات حتى لو سيرفر مات
٢. توفر دائم
replica بتتحول لـ master فوراً لو الـ master وقع
٣. توسع القراءات
١٠ replicas = ١٠ضعف قدرة القراءة
٤. توزيع جغرافي
replicas في مناطق مختلفة = latency أقل للـ users
الـ Replication (التكرار) هو إنك تحتفظ بنسخ متعددة من نفس البيانات على سيرفرات مختلفة، وكل نسخة بتفضل متزامنة مع التانية. لو سيرفر وقع، النسخة التانية بتستلم.
📖 مصطلحات أساسية
- master / primary: السيرفر اللي بيقبل الـ writes (التعديلات)
- slave / replica / secondary: النسخة اللي بتاخد التغييرات من الـ master
- replication lag: تأخر الـ replica عن الـ master (بالثواني أو بايتات)
- failover: تحويل replica لتبقى الـ master الجديد لما الأصلي يقع
- WAL: Write-Ahead Log: ملف الـ DB بيسجل فيه كل التعديلات (ده اللي بنشحنه للـ replicas)
مثال حقيقي
تطبيق بنك بـ ٣ سيرفرات:
- ← Master في القاهرة: بيستقبل كل العمليات (إيداع، سحب، تحويل)
- ← Replica 1 في القاهرة: بتاخد نسخة فورية للـ failover
- ← Replica 2 في الإسكندرية: للـ disaster recovery + reports
لو الـ master في القاهرة قطع، الـ Replica 1 بتتحول لـ master في ثواني. لو الـ data center كله انفجر، لسه عندك نسخة في الإسكندرية. البيانات مش بتضيع.
⚡ Replication ≠ Backup
الـ replication = نسخة حية بتتحدث فوراً. الـ backup = snapshot وقتي. الاتنين مهمين! لو حد عمل DROP TABLE users غلط، الـ replication هتنقله للـ replica فوراً. الـ backup هو اللي ينقذك.
أسئلة انترفيو على القسم ده
3القسم 1 / 13