ข้อดีและข้อเสียของสคริปต์ของ Ola คืออะไรเมื่อใช้แผนการบำรุงรักษา


9

คุณช่วยฉันเข้าใจข้อดีและข้อเสียของการใช้โซลูชันของ Ola มากกว่าแผนการบำรุงรักษาหรือไม่? ฉันได้เตรียมงานนำเสนอตาม SQL Pass ( http://www.pass.org/DownloadFile.aspx?File=ebae1b31 ) ซึ่งฉันจะนำเสนอ

ฉันกำลังเตรียมสถานการณ์บางอย่างที่โซลูชันของ Ola ระบุและโซลูชันแผนการบำรุงรักษาไม่ได้ โปรดช่วยฉันอธิบายเรื่องเทคนิคนี้ให้มากกว่านี้หน่อยได้ไหม?

โดยวิธีการที่เราจัดการเกือบ 150 เซิร์ฟเวอร์ (ผสมของ 2008/2012/2014/2016) ด้วยโซลูชันของ Ola อย่างน้อย 75% ของพวกเขา ฉันชอบบทความนี้โดยเบรนต์โอซาร์ แต่ในความคิดเห็นหนึ่งเบรนต์ได้แนะนำให้ใช้โซลูชันที่อิงกับสคริปต์สำหรับจำนวนเซิร์ฟเวอร์ที่เรามี https://www.brentozar.com/archive/2012/04/maintenance-plans-roombas-suck-good-way/


เรากำลังพูดถึงการสำรองข้อมูลการบำรุงรักษาดัชนี / สถิติการตรวจสอบความเสียหายหรือทั้งหมดข้างต้น?
nkdbajoe

ทั้งหมดนั้น. สคริปต์โซลูชันการบำรุงรักษาทั้งหมดโดย Ola ฉันได้แก้ไขปัญหาการสร้างดัชนีใหม่และการปรับปรุงสถิติในแผนการบำรุงรักษาโดยใช้สคริปต์ของ Ola ฉันแค่ต้องการกระสุนทางเทคนิคเพิ่มเติมจาก DBA อื่น ๆ ที่นั่น ขอบคุณ.
Pat

2
ฉันเองเชื่อว่าทางออกที่ดีที่สุดคือโซลูชันที่ตรงตามความต้องการทางธุรกิจของคุณและความสามารถของคุณในการแก้ไขเมื่อเกิดข้อผิดพลาด วิธีแก้ปัญหาของ Ola นั้นไม่ได้เลวร้าย แต่ฉันก็ยังชอบโซลูชันที่ปรับแต่งเองสำหรับสภาพแวดล้อมของฉันเอง ตัวอย่างเช่นสำหรับการบำรุงรักษาดัชนีฉันต้องการให้มีการประมวลผลแบบขนานเพื่อประหยัดเวลา วิธีการแก้ปัญหาของ Ola ไม่ทำงานที่นี่ ฉันต้องการอัปเดตสถิติที่เพิ่มขึ้นโซลูชันของ Ola ไม่ทำงานที่นี่เช่นกัน
jyao

คุณมีข้อมูลใด ๆ ที่จะแสดงว่าพวกเขาดีขึ้นหรือคุณแค่ไปกับสิ่งที่คุณรู้สึกดีขึ้น? วิธีที่ดีที่สุดในการแก้ปัญหาคือรับข้อมูลประสิทธิภาพเพื่อแสดงว่าทำไมวิธีการจึงดีกว่า
Joe W

สำหรับการบำรุงรักษาดัชนีหลายครั้งปัจจัย จำกัด คือ SAN และหน่วยเก็บข้อมูลย่อยของคุณ ขึ้นอยู่กับการกำหนดค่า SAN ของคุณคุณอาจไม่เห็นการปรับปรุงใด ๆ ในการสร้างใหม่แบบขนาน
Alen

คำตอบ:


13

ฉันเขียนที่นี่

แผนการบำรุงรักษานั้นไม่เลว แต่เมื่อสภาพแวดล้อมของคุณเติบโตขึ้นความยืดหยุ่นและฟังก์ชั่นที่ จำกัด ที่แผนการบำรุงรักษาจะไม่เพียงพอ

เพื่อเพิ่มมากขึ้น

  • วิธีการแก้ปัญหาการบำรุงรักษา Ola เป็นที่ยอมรับอย่างกว้างขวางในชุมชนและองค์กรขนาดใหญ่
  • เปิดแหล่งที่มาและปัญหาที่สามารถยกระดับgitHub / ปัญหาที่มีโอกาสที่จะได้รับการแก้ไขอย่างรวดเร็ว
  • มีความยืดหยุ่นและปรับขนาดได้ (แม้ว่าคุณต้องการปรับใช้กับเซิร์ฟเวอร์ 100s เพียงใช้Install-DbaMaintenanceSolutionจาก dbatools)
  • Microsoft ใช้เวลาเกือบหนึ่งทศวรรษในการแก้ไข GUI แผนการบำรุงรักษาซึ่งเป็นรถราคา :-)
  • มีเอกสารและคำถามที่พบบ่อยมากมายและได้รับการปรับปรุงอย่างต่อเนื่องเพื่อรองรับเวอร์ชันเซิร์ฟเวอร์ sql ที่ใหม่กว่า
  • ในเวอร์ชันตัวอย่างคุณสามารถเรียกใช้การสำรองข้อมูลแบบขนานได้
  • สำหรับโซลูชันการบำรุงรักษาดัชนีคุณสามารถกำหนดเวลาของกระบวนการเช่นถ้ามันใช้เวลามากกว่า X ให้ยกเลิก

5

หนึ่งในข้อดีที่สำคัญของโซลูชันที่ใช้สคริปต์คือความง่ายในการปรับใช้ - สิ่งที่เกี่ยวข้องอย่างชัดเจนในกรณีของคุณเนื่องจากคุณมีเซิร์ฟเวอร์มากกว่า 150+ ตัว พยายามที่จะเปิดตัวแผนการบำรุงรักษาหลายอย่าง (เช่นอย่างน้อย 2 แผนหนึ่งสำหรับฐานข้อมูลระบบและอีกหนึ่งแผนสำหรับฐานข้อมูลผู้ใช้) ใน 150 เซิร์ฟเวอร์จะเป็นฝันร้าย การดูแลรักษาพวกเขาในครั้งเดียวนั้นเป็นเรื่องที่ยุ่งยาก

โซลูชันที่ใช้สคริปต์นั้นง่ายต่อการปรับใช้และบำรุงรักษาเมื่อเวลาผ่านไป สคริปต์ของ Ola นั้นค่อนข้างครอบคลุมและครอบคลุมความต้องการส่วนใหญ่ พวกเขาเป็นจุดเริ่มต้นที่ดีสำหรับองค์กรใด ๆ ที่จะปรับแต่งเพื่อให้ตรงกับความต้องการเฉพาะของตนเอง

ในกรณีของเราเรามีอินสแตนซ์ SQL ประมาณ 40 รายการในสภาพแวดล้อม DEV ของเราและเราใช้สคริปต์ Ola ที่แก้ไขด้วยคุณสมบัติการเชื่อมต่อแบบหลายจุดของ SSMS เพื่อให้สามารถเปิดใช้การเปลี่ยนแปลงในระบอบการบำรุงรักษาบนอินสแตนซ์ทั้งหมด 40 ได้ในคลิกเดียว กรณีพิเศษใด ๆ ได้รับการจัดการโดยการแก้ไขของเรา


3

ฉันไม่แน่ใจ 100% ของสคริปต์ของเขา แต่สคริปต์ที่กำหนดเองนั้นดีกว่าแผนการบำรุงรักษา แผนการที่มีอยู่แล้วนั้นจะสร้างดัชนีทุกตัวขึ้นมาใหม่บนโต๊ะ หากคุณมี Always On จะสร้างพายุการจราจร

สคริปต์แบบกำหนดเองที่คุณสามารถสร้างใหม่ได้มากกว่า 20% หรืออะไรก็ตามที่คุณมีอยู่ สร้างดัชนีที่น้อยลงในแต่ละครั้ง น้อยเสมอกับข้อมูลที่จะส่งไปยังรอง สร้างใหม่เร็วขึ้นเพราะคุณสร้างดัชนีน้อยลง ต้องการหน้าต่างการบำรุงรักษาที่สั้นกว่า

ครั้งล่าสุดที่ฉันใช้แผนการบำรุงรักษาฉันมีตารางแถวละ 300 ล้านและ Always On จะเป็นชั่วโมง ๆ หลัง ๆ ทุกครั้งที่มีการสร้างดัชนีใหม่และปัญหาเกี่ยวกับบันทึกธุรกรรมล้น กลับไปที่สคริปต์และมันก็หายไปหมด


1
ตอนแรกฉันเขียนเองสำหรับ SQL 2005 เมื่อประมาณปี 2550 ฉันใช้หนังสือออนไลน์ที่เป็นฐานและเปลี่ยนเป็นบิต ย้อนกลับไปตอนนั้นดูเหมือนว่าคนส่วนใหญ่ใช้แผนการและตอนนี้ดูเหมือนว่าจะกลับรายการ และก่อนที่ฉันจะเริ่มทำข้อมูล DBA DBA ก่อนหน้านี้ก่อนหน้าฉันจะมีสคริปต์ที่กำหนดเองสำหรับ SQL 2000 สิ่งเดียวที่ฉันแตกต่างกันคือฉันสร้างขึ้นใหม่ทุกอย่าง มันเร็วกว่าที่จะสร้างสิ่งใดเกิน 20% หรือ 30% จากการจัดระเบียบใหม่เช่นกัน สำหรับการสำรองข้อมูลที่เราได้ใช้เสมอผลิตภัณฑ์ของบุคคลที่สาม
Alen

1

เหตุผลที่ฉันชอบก็คือสามารถสลับประเภทการสำรองข้อมูลโดยอัตโนมัติเพื่อให้ฐานข้อมูลใหม่จะมีการสำรองข้อมูลเต็มรูปแบบในครั้งแรกที่งานสำรองข้อมูลบันทึกทำงานแทนที่จะรอจนกว่าจะมีงานสำรองข้อมูลเต็มรูปแบบต่อไป


0

แผนการบำรุงรักษาจะทำได้ดีเกือบตลอดเวลา สคริปต์ของ Ola Hallengren จะทำได้ดีเกือบตลอดเวลา

ในบางกรณีที่ไม่ค่อยเกิดขึ้นคุณอาจต้องเติบโตด้วยตัวเอง

ในฐานะที่เป็น Jyao กล่าวว่ามันลงมาที่คุณสะดวกสบายที่สุดในการทำงานกับ หากเพื่อนร่วมงานของคุณรู้สึกสบายใจกับแผนการบำรุงรักษามากที่สุดเหตุใดจึงเกิดอาการสะบัดของคุณ?

หากเขามีฐานข้อมูลมากกว่า 20 ปีเขาเขียนสคริปต์การบำรุงรักษาของเขาเองแล้ว เกี่ยวกับเวลาที่คุณเรียนรู้ที่จะขับรถอาจมีพังค์ตัวเล็ก ๆ ในกางเกงขาสั้นคาร์โก้และ fliplops ที่มาพร้อมและเป็นเหมือน "เฮ้คุณ codger เก่าแผนการบำรุงรักษาดีกว่า - และดึงกางเกงของคุณลงคุณดูไร้สาระ! "

อาจมีการสู้รบเป็นเวลา 4 ปีที่เด็กหนุ่มผู้อัปยศล้มลงในแผนการบำรุงรักษาทุกครั้งที่ทำได้ ตอนนี้เด็กพังค์ตัวน้อยคนอื่นที่มีกางเกงยีนส์ผอมและเนคไทโบว์ประหลาดก็บอกให้เขากลับไปที่สคริปต์ ก็พอที่จะทำให้ผมของคุณเป็นสีเทา

สามสิ่งที่ควรพิจารณา:

ตัวอย่างของความเหนือกว่าของ Hallengrenite เหล่านี้มีผลบังคับใช้กับสภาพแวดล้อมของคุณหรือไม่?

มันจะทำให้คุณเกิดปัญหาจริงหรือไม่ถ้าเขาใช้แผนการบำรุงรักษา

หากคุณโน้มน้าวให้เขาใช้สคริปต์ของ Hallengren และมีปัญหาเขาจะสามารถแก้ไขได้ด้วยตัวเองหรือเขาจะต้องโทรหาคุณ


ตอบคำถามสองข้อแรกใช่ เราได้เห็นปัญหาเกี่ยวกับแผนการบำรุงรักษาแล้วและฉันแก้ไขปัญหาเหล่านั้นด้วยโซลูชันของ Ola มีการลดขนาดงานบันทึก (??) บนเซิร์ฟเวอร์การผลิตเช่นกันซึ่งฉันปิดการใช้งานทันที คำถามที่สามฉันไม่รู้ ฉันไม่แน่ใจว่าเขาจะสามารถแก้ไขปัญหาที่สร้างขึ้นโดยแผนการบำรุงรักษาเองได้หรือไม่ เมื่อฉันถามเขาในกรณีที่เราพบปัญหาเกี่ยวกับเรื่องนี้เราควรทำอย่างไร คำตอบของเขาคือโทรติดต่อฝ่ายสนับสนุนของ Microsoft (??)
Pat

@ Pat, ahh ดูเหมือนว่าเขาจะถึงขีด จำกัด ของเขาภายใต้หลักการปีเตอร์ โปรดใช้ความระมัดระวังในการทำให้เขาดีขึ้น - เขาไม่น่าจะขอบคุณความช่วยเหลือ
James
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.