المشاهدات المفهرسة SQL: ما يحدث إذا تغيرت البيانات

StackOverflow https://stackoverflow.com/questions/2023319

  •  19-09-2019
  •  | 
  •  

سؤال

أنا غير موجود أن طريقة العرض المفهرسة ولكني أتساءل ما يحدث بالضبط عند تغيير البيانات الموجودة في الجدول (الأسطفة)؟ يتم عرض ذاكرة التخزين المؤقت بالكامل OD OD فقط تغيير الصفوف؟

لدي استفسار معقد للغاية على عدة طاولات (+5) والذي يستخدم البحث عن توفر الفنادق (+ 100K السجلات) وجهة نظر مفهرسة IMHO قد يحسن الأداء بشكل كبير. ولكن يتم تغيير البيانات (عدد قليل من الصفوف) بشكل متكرر (تم بيع الغرفة، تم تغيير غرف مجانية في المشرف ATC.) وإذا كان العرض يتم إعادة البناء في كل مرة تم فيها تغيير صف واحد، فسيكون رقبة زجاجة لتطبيقي.

أو أي أفكار كيفية "ذاكرة التخزين المؤقت" استعلامات coplex جدا؟

شكرًا لك.

هل كانت مفيدة؟

المحلول

من وثائق Technet:

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

مصدر:

http://technet.microsoft.com/en-us/library/cc917715.aspx#xslttection124121120120.

أي أنه يبدو كما لو تم تحديث الصفوف عند الاقتضاء، دون الحاجة بالضرورة لتحديث / إعادة إنشاء العرض في مجمله.

نصائح أخرى

أنا أفترض أنك تقوم بتشغيل SQL Server. 100K + الصفوف ليست كثيرا. إذا كنت تنضم إلى جداول 5 سنوات، أقترح أن تتأكد من وجود فهارس تغطي الأعمدة التي تنضم إليها قبل النظر في تنفيذ طرق العرض المفهرسة. استخدم محلل الاستعلام للعثور على رقبة الزجاجة في استفسارك مباشرة. إذا كنت تواجه مشاكل في الأداء على جداول صغيرة جدا، فمن المحتمل أن يكون هناك مسح طاولة سيئة هناك.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top