เพิ่มกำลังรอระหว่างจุดตรวจหลังจากอัพเกรดเป็นพื้นที่เก็บข้อมูลที่ดีขึ้น


9

เมื่อเราย้ายจากแฟลชอาร์เรย์ทั้งหมดที่เก่ากว่าไปเป็นแฟลชอาร์เรย์ทั้งหมดที่ใหม่กว่า (ต่างกัน แต่เป็นผู้จำหน่ายที่ได้รับการยอมรับ) เราเริ่มเห็นการรอคอยเพิ่มขึ้นใน SQL Sentry ระหว่างจุดตรวจ

เวอร์ชัน: SQL Server 2012 Sp4

ในที่เก็บข้อมูลเก่าของเราการรอคอยของเราอยู่ที่ประมาณ 2k ด้วย "spikes" ถึง 2,500 ในระหว่างการตรวจสอบกับที่เก็บข้อมูลใหม่ spikes มักจะ 10k กับยอดใกล้ 50k ยามชี้ให้เราเห็นว่ามีความPAGEIOLATCHสุขมากขึ้น ทำการวิเคราะห์ของเราเองดูเหมือนว่าจะเป็นการรวมกันของPAGEIOLATCH and PAGELATCHรอ การใช้ Perfmon โดยทั่วไปเราสามารถพูดได้ว่ายิ่งมีด่านมากขึ้นเท่าไรเราก็ยิ่งได้รับมากขึ้นเท่านั้น ภาระงานของเราส่วนใหญ่จะเขียน (แทรก / ปรับปรุงเป็นหลัก)

ผู้จำหน่ายอุปกรณ์จัดเก็บได้พิสูจน์ให้เราเห็นแล้วว่าอาร์เรย์ที่ต่อตรงกับ Fibre Channel นั้นตอบสนองย่อย 1 ms ในระหว่างเหตุการณ์จุดตรวจสอบเหล่านี้ HBA ยังยืนยันหมายเลขของอาเรย์ด้วย เรายังไม่เชื่อว่าเป็นปัญหาการเข้าคิว HBA เนื่องจากความลึกของคิวไม่เคยสูงกว่า 8 เราได้ลองใช้ HBA รุ่นใหม่การเปลี่ยน ZIO การดำเนินการเค้นและการตั้งค่าความลึกคิวไม่เป็นประโยชน์ เรายังเพิ่มหน่วยความจำของเซิร์ฟเวอร์จาก 500 GB เป็น 1 TB โดยไม่มีการเปลี่ยนแปลง ในระหว่างกระบวนการจุดตรวจสอบเราจะเห็นแกนประมวลผล 2-4 แกน (จาก 16) ถึง 100% แต่ CPU โดยรวมอยู่ที่ประมาณ 20% ไบออสได้รับการตั้งค่าให้มีประสิทธิภาพสูงเช่นกัน ที่น่าสนใจเราจะเห็นว่าซีพียูมักจะอยู่ในสถานะสลีป C2 แม้ว่าเราจะปิดการใช้งานนั้นดังนั้นเรายังคงทำการวิจัยว่าทำไมสถานะสลีปถึงผ่าน C1

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

ใช้การวนลูปของแบบสอบถามนี้ 100 ครั้งเราสามารถตรวจพบว่ามี SPID จำนวนเท่าใดที่รออยู่บนดิสก์และหน่วยความจำ

SELECT
    [owt].[wait_type], count(*) as waitcount
FROM sys.dm_os_waiting_tasks [owt]
WHERE [owt].[wait_type] LIKE 'PAGE%'
group by [owt].[wait_type]
order by 1
GO 100

ป้อนคำอธิบายรูปภาพที่นี่

สิ่งที่ "ดี" คือเราสามารถทำซ้ำปัญหาได้อย่างง่ายดายในสภาพแวดล้อมที่สมบูรณ์แบบซึ่งมีอาร์เรย์รุ่นเดียวกันและรายละเอียดเซิร์ฟเวอร์ที่คล้ายกัน ฉันขอขอบคุณความคิดใด ๆ ที่จะดูหรือวิธีการปัญหาที่แคบลง ตอนนี้การทดสอบครั้งต่อไปของเรารวมถึง: เซิร์ฟเวอร์ใหม่ที่มีมาเธอร์บอร์ดรุ่นใหม่และซีพียูมากขึ้น ปิดใช้งานตัวจัดการข้อมูล SIOS (แม้ว่าจะมีที่เก็บข้อมูลเก่า) แบรนด์ HBA ที่แตกต่างกัน

exec sp_Blitz @outputtype = 'markdown'

ลำดับความสำคัญที่ 5: ความน่าเชื่อถือ : - โมดูลบุคคลที่สามที่เป็นอันตราย - Sophos Limited - การป้องกัน Overrun ของบัฟเฟอร์ Sophos - SOPHOS ~ 2.DLL - ติดตั้งโมดูลบุคคลที่สามอันตรายที่น่าสงสัย

ลำดับความสำคัญ 200: ข้อมูล : - โหนดคลัสเตอร์ - นี่คือโหนดในคลัสเตอร์ - TraceFlag On - เปิดใช้งานการติดตามสถานะ 1117 ทั่วโลก - เปิดใช้งานการติดตามสถานะ 1118 ทั่วโลก - เปิดใช้งานการติดตามสถานะ 3226 ทั่วโลก

ลำดับความสำคัญ 200: การให้สิทธิ์ใช้งาน : - ฟีเจอร์ Enterprise Edition ที่ใช้งานอยู่ * xxxxx - ฐานข้อมูล [xxxxxx] กำลังใช้การบีบอัด หากฐานข้อมูลนี้ถูกกู้คืนไปยังเซิร์ฟเวอร์ Standard Edition การคืนค่าจะล้มเหลวในรุ่นก่อนหน้า 2016 SP1 * xxxxx - ฐานข้อมูล [xxxxxx] กำลังใช้การแบ่งพาร์ติชัน หากฐานข้อมูลนี้ถูกกู้คืนไปยังเซิร์ฟเวอร์ Standard Edition การคืนค่าจะล้มเหลวในรุ่นก่อนหน้า 2016 SP1

ลำดับความสำคัญ 240: รอสถิติ : - ไม่มีการตรวจพบการรอที่มีนัยสำคัญ - เซิร์ฟเวอร์นี้อาจกำลังรอการใช้งานอยู่หรือบางคนอาจล้างสถานะการรอก่อนหน้านี้

ลำดับความสำคัญ 250: ข้อมูลเซิร์ฟเวอร์: - ฮาร์ดแวร์ - ตัวประมวลผลเชิงตรรกะ: 16. หน่วยความจำกายภาพ: 512GB - ฮาร์ดแวร์ - การกำหนดค่า NUMA - โหนด: 0 สถานะ: ONLINE ตัวกำหนดเวลาออนไลน์: 8 ตัวกำหนดเวลาออฟไลน์: 0 กลุ่มตัวประมวลผล: 0 หน่วยความจำโหนด: 0 หน่วยความจำ VAS สงวนไว้ GB: 1177 - โหนด: 1 รัฐ: ON ตัวกำหนดเวลาทางออนไลน์ กลุ่ม: 0 โหนดหน่วยความจำ: 1 หน่วยความจำ VAS สงวนไว้ GB: 0 - แผนการใช้พลังงาน - เซิร์ฟเวอร์ของคุณมีซีพียู 3.50GHz และอยู่ในโหมดพลังงานประสิทธิภาพสูง - เซิร์ฟเวอร์รีสตาร์ทครั้งล่าสุด - 4 ก.ค. 2018 4:56 น. - SQL Server รีสตาร์ทครั้งล่าสุด - 5 ก.ค. 2018 5:11 AM - บริการเซิร์ฟเวอร์ SQL - เวอร์ชัน: 11.0.7462.6 ระดับแพทช์: SP4 รุ่น: Enterprise Edition (64 บิต) กลุ่มความพร้อมใช้งานเปิดใช้งาน: 1. สถานะกลุ่มผู้จัดการความพร้อมใช้งาน: 1 - เซิร์ฟเวอร์เสมือน - ประเภท: (HYPERVISOR) - รุ่นของ Windows - คุณกำลังใช้งาน Windows รุ่นที่ทันสมัยสวย: ยุคเซิร์ฟเวอร์ 2012R2, รุ่น 6.3

ลำดับความสำคัญ 200: การกำหนดค่าเซิร์ฟเวอร์ที่ไม่ใช่ค่าเริ่มต้น: - Agent XPs - ตัวเลือก sp_configure นี้มีการเปลี่ยนแปลง ค่าเริ่มต้นคือ 0 และตั้งค่าเป็น 1 - ค่าเริ่มต้นการบีบอัดข้อมูลสำรอง - ตัวเลือก sp_configure นี้มีการเปลี่ยนแปลง ค่าเริ่มต้นคือ 0 และตั้งเป็น 1 - ขีด จำกัด กระบวนการที่ถูกบล็อก - ตัวเลือก sp_configure นี้มีการเปลี่ยนแปลง ค่าเริ่มต้นคือ 0 และตั้งเป็น 20 - ขีด จำกัด ต้นทุนสำหรับการขนาน - ตัวเลือก sp_configure นี้มีการเปลี่ยนแปลง ค่าเริ่มต้นของมันคือ 5 และได้รับการตั้งค่าเป็น 30 - XP Mail ฐานข้อมูล - ตัวเลือก sp_configure นี้มีการเปลี่ยนแปลง ค่าเริ่มต้นคือ 0 และได้รับการตั้งค่าเป็น 1 - ระดับสูงสุดของความขนาน - ตัวเลือก sp_configure นี้มีการเปลี่ยนแปลง ค่าเริ่มต้นคือ 0 และตั้งเป็น 8 - หน่วยความจำเซิร์ฟเวอร์สูงสุด (MB) - ตัวเลือก sp_configure นี้มีการเปลี่ยนแปลง ค่าเริ่มต้นของมันคือ 2147483647 และตั้งค่าเป็น 496640 - หน่วยความจำเซิร์ฟเวอร์ขั้นต่ำ (MB) - ตัวเลือก sp_configure นี้มีการเปลี่ยนแปลง ค่าเริ่มต้นคือ 0 และได้รับการตั้งค่าเป็น 8196 - ปรับให้เหมาะสมสำหรับปริมาณงานเฉพาะกิจ - ตัวเลือก sp_configure นี้มีการเปลี่ยนแปลง ค่าเริ่มต้นคือ 0 และได้รับการตั้งค่าเป็น 1 - การเข้าถึงระยะไกล - ตัวเลือก sp_configure นี้มีการเปลี่ยนแปลง ค่าเริ่มต้นคือ 1 และตั้งเป็น 0 - การเชื่อมต่อผู้ดูแลระบบระยะไกล - ตัวเลือก sp_configure นี้มีการเปลี่ยนแปลง ค่าเริ่มต้นคือ 0 และตั้งค่าเป็น 1 - สแกนหา procs เริ่มต้น - ตัวเลือก sp_configure นี้มีการเปลี่ยนแปลง ค่าเริ่มต้นคือ 0 และตั้งค่าเป็น 1 - แสดงตัวเลือกขั้นสูง - ตัวเลือก sp_configure นี้มีการเปลี่ยนแปลง ค่าเริ่มต้นของมันคือ 0 และได้รับการตั้งค่าเป็น 1 - xp_cmdshell - ตัวเลือก sp_configure นี้มีการเปลี่ยนแปลง


ลืมพูดถึง ... SQL 2012 SP4
Doley

คุณสามารถรันsp_Blitz ด้วย@OutputType = 'MARKDOWN'และโพสต์ผลลัพธ์ได้หรือไม่
Kin Shah

ฉันเพิ่มพวกเขาในโพสต์ (คนที่ฉันคิดว่ามีประโยชน์)
Doley

คุณทำงานหนักของ I / O เช่นการสร้างดัชนีขนาดใหญ่ขึ้นมาใหม่และเปรียบเทียบเวลากับ SAN เก่าหรือไม่ มันเป็นแฟลชชนิดเดียวกันกับ SAN เก่าหรือไม่ สิ่งที่เกี่ยวกับรูปแบบของไดรฟ์และแบ่งปันให้กับโปรแกรมหรือเซิร์ฟเวอร์อื่น ๆ ?
Alen

1
และคุณมีการแยกระดับเดียวกันระหว่างฐานข้อมูลบันทึกและ tempdb ในอาร์เรย์ใหม่หรือไม่ จุดตรวจสอบจะตบไฟล์ฐานข้อมูล แต่อาจขัดแย้งกับ IO อื่น ๆ ในไดรฟ์เหล่านั้น
David Browne - Microsoft

คำตอบ:


1

อืมมม คุณแสดงให้เห็นว่ามีคิวรออยู่ระหว่างด่าน แต่ไม่นานเท่าไหร่ที่จะรอโดยเฉลี่ย / รวม (ซึ่งจริงๆแล้วจะเป็นสิ่งที่ฉันสนใจ) ทำการวิเคราะห์สถิติการรอคอยที่แตกต่างกันเพื่อดูว่ามีช่วงเวลาที่น่าเป็นห่วงหรือไม่ นอกจากนี้สิ่งที่ทั้งสองรออยู่ในแผนภูมิของคุณคืออะไร? หากคุณได้รับหน่วยความจำจำนวนมากรอด้วย RAM 1TB ในการเล่นเราจำเป็นต้องมีการอภิปรายที่แตกต่างกัน :-D

ความเร็วในการเขียน 125MB ในระหว่างจุดตรวจ: นั่นเป็นเพียงจุดตรวจที่เขียนหรือ ALL? ไม่ว่าจะเป็นที่เก็บข้อมูลแฟลชทั้งหมด คุณใช้มาตรฐานว่าที่เก็บข้อมูลสำหรับรูปแบบการเขียนที่หลากหลายหรือไม่และถ้าเป็นเช่นนั้น


0

เราไม่แน่ใจว่าทำไมพฤติกรรมของ SQL Server ของเราเปลี่ยนแปลง (และเรามีหลักฐานเกิดขึ้นก่อนที่จะเปลี่ยนที่เก็บข้อมูล) แต่การเปิดใช้งานจุดตรวจทางอ้อมสำหรับฐานข้อมูลผู้ใช้ได้แก้ไขปัญหาให้เราแล้ว

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