2
SQL Server 2008 - ดัชนีการแบ่งพาร์ติชันและคลัสเตอร์
ดังนั้นให้ฉันนำหน้าด้วยการบอกว่าฉันไม่สามารถควบคุมการออกแบบฐานข้อมูลของฉันได้ทั้งหมดดังนั้นแง่มุมมากมายของระบบปัจจุบันจึงไม่สามารถเปลี่ยนแปลงได้ตามวัตถุประสงค์ของสถานการณ์นี้ ความคิดเห็นเกี่ยวกับวิธีที่เราคิดใหม่แง่มุมของการออกแบบน่าจะถูกต้อง แต่ไม่ช่วยเหลือ :) ฉันมีตารางที่มีขนาดใหญ่มากกว้างประมาณ 150 ฟิลด์และแถวประมาณ 600 ม. ซึ่งขับเคลื่อนกระบวนการจำนวนมาก นี่คือสถานการณ์ในคลังข้อมูลดังนั้นเราจึงไม่มีการอัปเดต / แทรกใด ๆ นอกกระบวนการโหลดตามกำหนดเวลาดังนั้นจึงมีการจัดทำดัชนีอย่างหนัก มีการตัดสินใจที่จะลองแบ่งพาร์ติชันตารางนี้และฉันมีความกังวลเกี่ยวกับการทำดัชนีตารางที่แบ่งพาร์ติชัน ฉันไม่มีประสบการณ์ในการแบ่งพาร์ติชันดังนั้นอินพุตหรือลิงก์ใด ๆ ที่ชื่นชม ฉันไม่สามารถค้นหาสิ่งที่ฉันเป็นบน BOL หรือ msdn โดยเฉพาะได้ ขณะนี้เราจัดกลุ่มในฟิลด์ที่เราจะเรียกIncidentKeyซึ่งเป็นvarchar(50)และไม่ซ้ำกัน - เราสามารถมีได้ระหว่าง 1-100 รายการด้วยเหมือนกันIK(ไม่มีความคิดเห็นโปรด) เรามักจะได้รับข้อมูลใหม่ในIncidentKeyบันทึกเก่า ๆดังนั้นจึงไม่ต่อเนื่องกัน ฉันเข้าใจว่าฉันต้องรวมฟิลด์พาร์ติชันIncidentDateของฉันไว้ในคีย์ดัชนีคลัสเตอร์เพื่อให้พาร์ติชันทำงานได้อย่างถูกต้อง IncidentKey, IncidentDateฉันคิดว่ามันจะเป็น คำถามคือกลไกของดัชนีแบบคลัสเตอร์จะทำงานกับคีย์ 2 ส่วนในตารางที่แบ่งพาร์ติชันได้อย่างไรหากเร็กคอร์ดในพาร์ติชัน "ใหม่" ควรอยู่หน้าเร็กคอร์ดในพาร์ติชัน "เก่า" ในดัชนีคลัสเตอร์ ตัวอย่างเช่นฉันมี 5 บันทึก: IncidentKey Date ABC123 1/1/2010 ABC123 7/1/2010 …