# استراتيجية قواعد البيانات

## الأساس

PostgreSQL هو مصدر الحقيقة للبيانات المعاملية، Redis للكاش والصفوف والحضور المؤقت، وتخزين كائنات للوسائط. OpenSearch يضاف للبحث عند تجاوز PostgreSQL أو الحاجة إلى features متقدمة.

## مبادئ النمذجة

- UUID/ULID للمعرفات العامة ومنع كشف التسلسل.
- قيود وفهارس وقيم حالة صريحة، وtimestamps موحدة UTC.
- soft delete فقط عند الحاجة التجارية؛ الحذف والاحتفاظ يطبقان فعليًا حسب السياسة.
- append-only audit/application events للحالات الحساسة.
- عدم تخزين الصور والفيديو داخل PostgreSQL.

## الأداء والنمو

1. قياس slow queries وN+1 وبناء فهارس صحيحة.
2. cache محدود مع invalidation وTTL.
3. connection pooling وread replicas للقراءات المناسبة.
4. partitioning للجداول الضخمة مثل messages/events/views بعد اختبار.
5. أرشفة/retention ثم sharding فقط عند إثبات الحاجة.

## السلامة والتغيير

- migrations بنمط expand/contract ومتوافقة خلفيًا.
- backfills مجزأة ومراقبة ولا تقفل الجداول طويلًا.
- backup مشفر، PITR وrestore drills دورية.
- RPO/RTO يعتمدان قبل Production ويختبران، لا يكتفى بتوفر نسخة احتياطية.

## الخصوصية

قاموس بيانات يصنف PII والحساسية والمالك والاحتفاظ. طلبات التصدير والحذف قابلة للتتبع وتشمل النسخ المشتقة والوسائط ضمن حدود النسخ الاحتياطية المعلنة.
