السلام عليكم ،
في أي قاعدة بيانات " مبنية على الجداول " ، إذا كان لدي مجموعة من Indexes على جدول ما ، ولدي مجموعة ضخمة من البيانات أريد إدخالها ( 100 ألف سجل مثلاً ) ، فإنه ينصح أحياناً بتعطيل هذه Indexes إما بخيار Disable Index أو بخيار Drop Index ، ثم إدخال البيانات ، ثم إعادة تفعيل هذه Indexes ، مثال :
ALTER INDEX ACCT_STMT_IDX1 ON dbo.ACCT_STMT DISABLE Bulk Insert Data ... ALTER INDEX ACCT_STMT_IDX1 ON dbo.ACCT_STMT REBUILD
لماذا نعطلها ؟
لأن عملية الإضافة تستهلك وقت أكثر في حال استخدام Indexes من أجل بناء هذه Indexes .. ولكن نحن نريد الاستفادة من هذه Indexes ، لذلك نعيد بناءها .
مالفائدة إذا من عملية التعطيل إذا كنّا سنعمل تفعيل من جديد وإعادة بناء لهذه Indexes ؟ يعني ماذا سنستفيد ، إذا كنّا سنضطر لإعادة بناء Index بشكل كامل في كل مرة ، ونستهلك وقت أكثر؟





