طَبِّقْهاتعلّم المبدأ، وطبّقه بيدكمقرر 122 · برمجة قواعد البيانات
تقييم الدرس 14

التجزئة والصيانة: Partitioning و ANALYZE

أجب عن الأسئلة ثم اضغط «صحّح ورقتي» في آخر الصفحة. ← العودة إلى الدرس

أسئلة التقييم

تقييم الدرس 14: التجزئة والصيانة: Partitioning و ANALYZE. إجاباتك تُحفظ تلقائيًّا على هذا الجهاز؛ أجب ثم اضغط «صحّح ورقتي».

1السؤال الأول: اختر الإجابة الصحيحة

1) أنسب طريقة لتقسيم مبيعات حسب السنة:
2) أنسب طريقة لتقسيم العملاء حسب المنطقة:
3) ماذا يحدث عند إدخال صف لسنة لا جزء لها ولا جزء DEFAULT؟
4) المقابل في Oracle لـ ANALYZE:
5) VACUUM FULL خطر في الذروة لأنه:

2السؤال الثاني: صح أم خطأ

1) الجدول المجزّأ يُستعلم عنه كجدول واحد.
الصواب: صح
2) التجزئة مفيدة لكل الجداول مهما كان حجمها.
الصواب: خطأ
3) الحذف في PostgreSQL يترك صفوفًا ميتة حتى تُنظف.
الصواب: صح
4) autovacuum يعمل تلقائيًّا على الخوادم الحقيقية.
الصواب: صح
5) شرط لا يذكر عمود التجزئة يستفيد من التقليم.
الصواب: خطأ

3السؤال الثالث: أكمل الفراغات من القائمة المنسدلة

1) لفصل جزء من جدول مجزّأ نكتب ALTER TABLE t p;
الإجابة: DETACH PARTITION
2) لتحديث إحصاءات جدول نستخدم .
الإجابة: ANALYZE
3) الجزء الذي يستقبل القيم غير المذكورة يُعرّف بـ .
الإجابة: DEFAULT

4السؤال الرابع: أسئلة عملية

1) كم صفًّا في sales بعد فصل جزء 2024؟

query.sql
CREATE TABLE sales (  id        int,  sold_on   date NOT NULL,  amount    numeric(10,2)) PARTITION BY RANGE (sold_on); CREATE TABLE sales_2024 PARTITION OF sales FOR VALUES FROM ('2024-01-01') TO ('2025-01-01');CREATE TABLE sales_2025 PARTITION OF sales FOR VALUES FROM ('2025-01-01') TO ('2026-01-01'); INSERT INTO salesSELECT g, date '2024-01-01' + (g % 700), 10 + g % 90 FROM generate_series(1, 5000) g;ALTER TABLE sales DETACH PARTITION sales_2024;SELECT count(*) FROM sales WHERE sold_on < '2025-01-01';
الناتج الصحيح:
النتيجة · صف واحد
count
0

2) كم جزءًا للجدول sales؟

query.sql
CREATE TABLE sales (  id        int,  sold_on   date NOT NULL,  amount    numeric(10,2)) PARTITION BY RANGE (sold_on); CREATE TABLE sales_2024 PARTITION OF sales FOR VALUES FROM ('2024-01-01') TO ('2025-01-01');CREATE TABLE sales_2025 PARTITION OF sales FOR VALUES FROM ('2025-01-01') TO ('2026-01-01'); INSERT INTO salesSELECT g, date '2024-01-01' + (g % 700), 10 + g % 90 FROM generate_series(1, 5000) g;SELECT count(*) FROM pg_inherits WHERE inhparent = 'sales'::regclass;
الناتج الصحيح:
النتيجة · صف واحد
count
2
أجب عن الأسئلة ثم اضغط «صحّح ورقتي».

📝 معلم؟ أرسل ملاحظة للمؤلف عن هذا الدرس