حجم مشترك للبيانات (MDF متعددة) وحجم مجمع مشترك آخر لسجلات (LDF متعددة) على سان

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

سؤال

لدي 3 مثيلات من SQL Server 2008، كل منها على آلات مختلفة مع قواعد بيانات متعددة على كل مثيل.لدي 2 منفصلة Luns على سان لملفات MDF و LDF.تعمل ملفات NDX و TEMPDB على محرك الأقراص المحلي على كل جهاز.هل الامور على ما يرام.بالنسبة للمثيلات الثلاثة لتبادل نفس حجم ملفات البيانات وحجم آخر لملفات السجل؟

ليس لدي توفير رقيق على SAN، لذلك أود ألا ألا أقصر مساحة القرص، مما أدى إلى إنشاء أحجام متعددة لأنني تم تقديمك في أنني يجب أن أنشئ وحدة تخزين (حرف محرك الأقراص) لكل مثيل، إن لم يكن لكل قاعدة بيانات.أنا أدرك أنني يجب أن أقسيم سجلاتي وملفات البيانات على الأقل.لا توجد مثيل مشاركة ملفات قاعدة البيانات الفعلية، فقط المسافة على محرك الأقراص.

يتم اعتماد أي مساعدة.

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

المحلول

بالطبع الجواب هو: "ذلك يعتمد". يمكنني أن أحاول أن أعطيك بعض التلميحات على ما يعتمد عليه. ومع ذلك

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

شيء آخر هو أن خادم SQL "يعرف" أن وصول I / O المتسلسل يمنحك Trhoughput أعلى بكثير من عشوائي I / O، لذلك هناك الكثير من الآليات في العمل (مثل منظمة LogFile، للقراءة، كاتب كسول وكاتب كسول الآخرين) لتجنب عشوائي I / O قدر الإمكان.

الآن، إذا كانت ثلاث مثيلات من SQL Server قم بطلبات الإدخال / الإخراج المتسلسل على وحدة تخزين واحدة في نفس الوقت، ثم من منظور وحدة التخزين التي تحصل عليها طلبات I / O العشوائية مرة أخرى، مما يؤلم بأدائك.

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

ما يجب تجنبه في كل حالة هو خطوات نمو متعددة على ملفات السجل أو البيانات. إذا كانت العديد من الملفات على نظام ملفات واحد تنمو، فسوف تحصل على تجزئة وتجزح يمكنه تحويل طلب قراء أو كتابة متسلسل حتى من مصدر واحد إلى عشوائي I / O مرة أخرى.

تتغير الصورة بأكملها مرة أخرى إذا كنت تستخدم SSDs كأقراص. هذه لها متطلبات وسلوك مختلفة تماما، ولكن نظرا لأنك لم تقل أي شيء عن SSD، سأفترض أنك تستخدم صفيف "تقليديا" أو تكوين RAID.

Sight Summary: قد تفلت عن ذلك، إذا كانت الظروف صحيحة، ولكن من الصعب تقييمها دون معرفة المزيد عن أنظمتك، من كل من منظور SAN و SQL.

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