คลังข้อมูล - การปรับแต่ง
คลังข้อมูลมีการพัฒนาอย่างต่อเนื่องและไม่สามารถคาดเดาได้ว่าผู้ใช้จะโพสต์ข้อความค้นหาใดในอนาคต ดังนั้นการปรับแต่งระบบคลังข้อมูลจึงทำได้ยากขึ้น ในบทนี้เราจะพูดถึงวิธีการปรับแต่งแง่มุมต่างๆของคลังข้อมูลเช่นประสิทธิภาพการโหลดข้อมูลการสืบค้น ฯลฯ
ความยากลำบากในการปรับแต่งคลังข้อมูล
การปรับคลังข้อมูลเป็นขั้นตอนที่ยากเนื่องจากสาเหตุต่อไปนี้ -
คลังข้อมูลเป็นแบบไดนามิก มันไม่เคยคงที่
เป็นเรื่องยากมากที่จะคาดเดาว่าผู้ใช้จะโพสต์ข้อความค้นหาใดในอนาคต
ความต้องการทางธุรกิจเปลี่ยนแปลงไปตามกาลเวลา
ผู้ใช้และโปรไฟล์ของพวกเขาเปลี่ยนแปลงไปเรื่อย ๆ
ผู้ใช้สามารถเปลี่ยนจากกลุ่มหนึ่งไปยังอีกกลุ่มหนึ่งได้
โหลดข้อมูลในคลังสินค้าก็เปลี่ยนแปลงไปตามเวลาเช่นกัน
Note - จำเป็นอย่างยิ่งที่จะต้องมีความรู้เกี่ยวกับคลังข้อมูลอย่างครบถ้วน
การประเมินประสิทธิภาพ
นี่คือรายการของการวัดผลตามวัตถุประสงค์ -
- เวลาตอบกลับแบบสอบถามโดยเฉลี่ย
- อัตราการสแกน
- เวลาที่ใช้ต่อวันในการสืบค้น
- การใช้หน่วยความจำต่อกระบวนการ
- อัตราทรูพุต I / O
ต่อไปนี้เป็นประเด็นที่ต้องจำ
จำเป็นต้องระบุมาตรการในข้อตกลงระดับบริการ (SLA)
ไม่มีประโยชน์ในการพยายามปรับแต่งเวลาตอบสนองหากดีกว่าที่กำหนดไว้แล้ว
จำเป็นอย่างยิ่งที่จะต้องมีความคาดหวังที่เป็นจริงในขณะที่ทำการประเมินผลงาน
นอกจากนี้ยังจำเป็นที่ผู้ใช้จะต้องมีความคาดหวังที่เป็นไปได้
เพื่อซ่อนความซับซ้อนของระบบจากผู้ใช้ควรใช้การรวมและมุมมอง
นอกจากนี้ยังเป็นไปได้ว่าผู้ใช้สามารถเขียนแบบสอบถามที่คุณไม่ได้ปรับแต่ง
การปรับโหลดข้อมูล
โหลดข้อมูลเป็นส่วนสำคัญของการประมวลผลข้ามคืน ไม่มีสิ่งอื่นใดที่สามารถรันได้จนกว่าการโหลดข้อมูลจะเสร็จสมบูรณ์ นี่คือจุดเข้าสู่ระบบ
Note- หากมีความล่าช้าในการถ่ายโอนข้อมูลหรือการมาถึงของข้อมูลระบบทั้งหมดจะได้รับผลกระทบไม่ดี ดังนั้นจึงเป็นเรื่องสำคัญมากที่จะต้องปรับแต่งโหลดข้อมูลก่อน
มีหลายวิธีในการปรับโหลดข้อมูลที่จะกล่าวถึงด้านล่าง -
วิธีการทั่วไปคือการแทรกข้อมูลโดยใช้ไฟล์ SQL Layer. ในแนวทางนี้จำเป็นต้องดำเนินการตรวจสอบและข้อ จำกัด ตามปกติ เมื่อข้อมูลถูกแทรกลงในตารางโค้ดจะทำงานเพื่อตรวจสอบว่ามีพื้นที่เพียงพอสำหรับแทรกข้อมูลหรือไม่ หากไม่มีพื้นที่เพียงพออาจต้องจัดสรรพื้นที่ให้กับตารางเหล่านี้มากขึ้น การตรวจสอบเหล่านี้ใช้เวลาในการดำเนินการและมีค่าใช้จ่ายสูงสำหรับ CPU
แนวทางที่สองคือการหลีกเลี่ยงการตรวจสอบและข้อ จำกัด เหล่านี้และวางข้อมูลลงในบล็อกที่จัดรูปแบบไว้ล่วงหน้าโดยตรง บล็อกเหล่านี้ถูกเขียนไปยังฐานข้อมูลในภายหลัง เร็วกว่าแนวทางแรก แต่สามารถใช้ได้กับบล็อกข้อมูลทั้งหมดเท่านั้น ซึ่งอาจนำไปสู่การสูญเสียพื้นที่บางส่วน
แนวทางที่สามคือในขณะที่โหลดข้อมูลลงในตารางที่มีตารางอยู่แล้วเราสามารถรักษาดัชนีได้
แนวทางที่สี่กล่าวว่าการโหลดข้อมูลในตารางที่มีข้อมูลอยู่แล้ว drop the indexes & recreate themเมื่อการโหลดข้อมูลเสร็จสมบูรณ์ ทางเลือกระหว่างแนวทางที่สามและแนวทางที่สี่ขึ้นอยู่กับจำนวนข้อมูลที่โหลดไปแล้วและจำนวนดัชนีที่ต้องสร้างใหม่
การตรวจสอบความสมบูรณ์
การตรวจสอบความสมบูรณ์มีผลต่อประสิทธิภาพของโหลดอย่างมาก ต่อไปนี้เป็นประเด็นที่ต้องจำ -
การตรวจสอบความสมบูรณ์จำเป็นต้องมีข้อ จำกัด เนื่องจากต้องใช้พลังในการประมวลผลที่หนักหน่วง
ควรใช้การตรวจสอบความสมบูรณ์ในระบบต้นทางเพื่อหลีกเลี่ยงการลดประสิทธิภาพของโหลดข้อมูล
การปรับแต่งแบบสอบถาม
เรามีแบบสอบถามสองประเภทในคลังข้อมูล -
- แบบสอบถามคงที่
- แบบสอบถามเฉพาะกิจ
แบบสอบถามคงที่
มีการกำหนดคิวรีแบบตายตัว ต่อไปนี้เป็นตัวอย่างของแบบสอบถามคงที่ -
- รายงานปกติ
- แบบสอบถามกระป๋อง
- การรวมทั่วไป
การปรับแต่งคิวรีคงที่ในคลังข้อมูลจะเหมือนกับในระบบฐานข้อมูลเชิงสัมพันธ์ ข้อแตกต่างเพียงอย่างเดียวคือจำนวนข้อมูลที่จะสอบถามอาจแตกต่างกัน เป็นการดีที่จะจัดเก็บแผนการดำเนินการที่ประสบความสำเร็จสูงสุดในขณะที่ทดสอบการสืบค้นคงที่ การจัดเก็บแผนการดำเนินการเหล่านี้จะช่วยให้เราสามารถระบุขนาดข้อมูลที่เปลี่ยนแปลงและข้อมูลที่บิดเบือนได้เนื่องจากจะทำให้แผนการดำเนินการเปลี่ยนแปลง
Note - เราไม่สามารถทำอะไรได้มากขึ้นในตารางข้อเท็จจริง แต่ในขณะที่จัดการกับตารางมิติข้อมูลหรือการรวมสามารถใช้คอลเลกชันการปรับแต่ง SQL กลไกการจัดเก็บและวิธีการเข้าถึงตามปกติเพื่อปรับแต่งแบบสอบถามเหล่านี้ได้
แบบสอบถามเฉพาะกิจ
เพื่อให้เข้าใจคำค้นหาเฉพาะกิจสิ่งสำคัญคือต้องรู้จักผู้ใช้คลังข้อมูลแบบเฉพาะกิจ สำหรับผู้ใช้แต่ละรายหรือกลุ่มผู้ใช้คุณจำเป็นต้องทราบสิ่งต่อไปนี้ -
- จำนวนผู้ใช้ในกลุ่ม
- ไม่ว่าพวกเขาจะใช้ข้อความค้นหาเฉพาะกิจในช่วงเวลาปกติ
- ไม่ว่าพวกเขาจะใช้ข้อความค้นหาเฉพาะกิจบ่อยๆ
- ไม่ว่าพวกเขาจะใช้คำค้นหาเฉพาะกิจเป็นครั้งคราวในช่วงเวลาที่ไม่รู้จัก
- ขนาดสูงสุดของแบบสอบถามที่มักจะเรียกใช้
- ขนาดเฉลี่ยของข้อความค้นหาที่มักจะเรียกใช้
- ไม่ว่าพวกเขาต้องการการเข้าถึงข้อมูลพื้นฐานแบบเจาะลึก
- เวลาเข้าสู่ระบบที่ผ่านไปต่อวัน
- เวลาสูงสุดของการใช้งานประจำวัน
- จำนวนการสืบค้นข้อมูลต่อชั่วโมงเร่งด่วน
Points to Note
สิ่งสำคัญคือต้องติดตามโปรไฟล์ของผู้ใช้และระบุการสืบค้นที่เรียกใช้เป็นประจำ
สิ่งสำคัญคือการปรับแต่งที่ดำเนินการจะไม่ส่งผลกระทบต่อประสิทธิภาพ
ระบุข้อความค้นหาที่คล้ายกันและแบบเฉพาะกิจที่มักเรียกใช้
หากระบุคำค้นหาเหล่านี้ฐานข้อมูลจะเปลี่ยนไปและสามารถเพิ่มดัชนีใหม่สำหรับแบบสอบถามเหล่านั้นได้
หากมีการระบุคำค้นหาเหล่านี้จะสามารถสร้างการรวมใหม่โดยเฉพาะสำหรับการสืบค้นเหล่านั้นซึ่งจะส่งผลให้การดำเนินการมีประสิทธิภาพ