البرمجة

تحسين أداء حذف وإضافة الفهارس في SQL Server

عندما تقوم بحذف بيانات من جدول في قاعدة بيانات SQL Server، يتم تنفيذ هذا العملية بعناية للتأكد من سلامة البيانات والحفاظ على أداء الجدول. ومع ذلك، قد يؤدي حذف كمية كبيرة من البيانات في دفعات متعددة إلى زيادة في عمليات القراءة والكتابة التي يقوم بها الخادم.

في حالتك، بعد حذف 6 مليون سجل من جدول يحتوي على 36 مليون سجل، لاحظت زيادة كبيرة في عمليات القراءة والكتابة عندما قمت بإضافة فهرس غير متجانس (NON-Clustered Index) على العمود المُعرّف (Identity column) لتحسين أداء القراءة.

السبب وراء هذه الزيادة الكبيرة في عمليات الكتابة قد يكون متعدد، لكن من المحتمل أن يكون السبب الرئيسي هو تأثير عمليات الإدخال/الإخراج (IO) التي تقوم بها عملية الإضافة للفهرس الغير متجانس. عندما تقوم بإضافة فهرس على جدول، فإن SQL Server يقوم بتحديث الفهارس بشكل مستمر للحفاظ على البيانات المُفهرسة متزامنة مع البيانات الفعلية في الجدول. وهذا يعني زيادة في عمليات الكتابة، خاصةً عندما يتم إجراء تغييرات كبيرة على الجدول.

قد يكون هناك عوامل أخرى تؤثر على أداء الحذف وإضافة الفهارس، مثل حجم الفهرس نفسه وعدد الأعمدة المشتقة من الفهارس، والأنماط الواضحة للاستخدام لقاعدة البيانات.

لزيادة فهمك حول ما يحدث تحت الغطاء، يمكنك استخدام أدوات مراقبة الأداء مثل Extended Events أو SQL Server Profiler لتحليل النشاط على مستوى الخادم وفهم ما يحدث خلف الكواليس خلال عمليات الحذف والإضافة للفهارس.

في النهاية، يجب أن تتوافق بيانات الأداء الفعلية مع توقعات الأداء المرتقبة، وقد يتطلب الأمر بعض التجارب والضبط للعثور على أفضل توازن بين أداء القراءة والكتابة في بيئة قاعدة البيانات الخاصة بك.

المزيد من المعلومات

بالإضافة إلى الأمور التقنية المتعلقة بأداء قاعدة البيانات، هناك أيضًا عوامل أخرى يمكن أن تؤثر على أداء عمليات الحذف والإضافة للفهارس، مثل هيكلية البيانات والاستخدام الخاص بالتطبيق.

على سبيل المثال، قد تؤثر تغييرات في هيكل البيانات، مثل إسقاط الأعمدة وإعادة بناء الجدول كما حدث في حالتك، على أداء عمليات الحذف والإضافة للفهارس. عمليات إسقاط الأعمدة وإعادة بناء الجدول يمكن أن تؤدي إلى إعادة تنظيم البيانات في الجدول، مما قد يتطلب تحديث الفهارس بشكل كبير وزيادة في عمليات الكتابة.

بالإضافة إلى ذلك، يمكن أن تؤثر عمليات تنظيف البيانات وإعادة بناء الجدول على الاستخدام العام لقاعدة البيانات. قد يؤدي إعادة بناء الجدول إلى تعليق العمليات الأخرى التي تعتمد على الجدول المعني، مما يمكن أن يؤثر على أداء التطبيق بشكل عام.

لتحسين أداء عمليات الحذف والإضافة للفهارس، يمكنك النظر في الاستفادة من الفهارس المتجانسة بدلاً من الفهارس غير المتجانسة إذا كان ذلك مناسبًا لبيئة العمل الخاصة بك. الفهارس المتجانسة عادة ما تتطلب وقتًا أقل لإدخال البيانات، وذلك لأنها تُنظم مع البيانات الأساسية في نفس الترتيب، مما يسهل عملية الإدخال وتقليل عدد العمليات اللازمة لتحديث الفهرس.

علاوة على ذلك، يمكنك التحقق من تصميم جدولك وفهارسك لضمان أنها تتوافق مع استخدامات التطبيق الفعلية وأنها مُناسبة لحجم البيانات ونمط الوصول إليها. قد تحتاج أحيانًا إلى إعادة التقييم والضبط المستمر لأداء قاعدة البيانات الخاصة بك لضمان استمرارية الأداء العالي وتلبية احتياجات التطبيق.

مقالات ذات صلة

زر الذهاب إلى الأعلى
إغلاق

أنت تستخدم إضافة Adblock

يرجى تعطيل مانع الإعلانات حيث أن موقعنا غير مزعج ولا بأس من عرض الأعلانات لك فهي تعتبر كمصدر دخل لنا و دعم مقدم منك لنا لنستمر في تقديم المحتوى المناسب و المفيد لك فلا تبخل بدعمنا عزيزي الزائر