คลังข้อมูล - การปรับแต่ง

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

ความยากลำบากในการปรับแต่งคลังข้อมูล

การปรับคลังข้อมูลเป็นขั้นตอนที่ยากเนื่องจากสาเหตุต่อไปนี้ -

  • คลังข้อมูลเป็นแบบไดนามิก มันไม่เคยคงที่

  • เป็นเรื่องยากมากที่จะคาดเดาว่าผู้ใช้จะโพสต์ข้อความค้นหาใดในอนาคต

  • ความต้องการทางธุรกิจเปลี่ยนแปลงไปตามกาลเวลา

  • ผู้ใช้และโปรไฟล์ของพวกเขาเปลี่ยนแปลงไปเรื่อย ๆ

  • ผู้ใช้สามารถเปลี่ยนจากกลุ่มหนึ่งไปยังอีกกลุ่มหนึ่งได้

  • โหลดข้อมูลในคลังสินค้าก็เปลี่ยนแปลงไปตามเวลาเช่นกัน

Note - จำเป็นอย่างยิ่งที่จะต้องมีความรู้เกี่ยวกับคลังข้อมูลอย่างครบถ้วน

การประเมินประสิทธิภาพ

นี่คือรายการของการวัดผลตามวัตถุประสงค์ -

  • เวลาตอบกลับแบบสอบถามโดยเฉลี่ย
  • อัตราการสแกน
  • เวลาที่ใช้ต่อวันในการสืบค้น
  • การใช้หน่วยความจำต่อกระบวนการ
  • อัตราทรูพุต I / O

ต่อไปนี้เป็นประเด็นที่ต้องจำ

  • จำเป็นต้องระบุมาตรการในข้อตกลงระดับบริการ (SLA)

  • ไม่มีประโยชน์ในการพยายามปรับแต่งเวลาตอบสนองหากดีกว่าที่กำหนดไว้แล้ว

  • จำเป็นอย่างยิ่งที่จะต้องมีความคาดหวังที่เป็นจริงในขณะที่ทำการประเมินผลงาน

  • นอกจากนี้ยังจำเป็นที่ผู้ใช้จะต้องมีความคาดหวังที่เป็นไปได้

  • เพื่อซ่อนความซับซ้อนของระบบจากผู้ใช้ควรใช้การรวมและมุมมอง

  • นอกจากนี้ยังเป็นไปได้ว่าผู้ใช้สามารถเขียนแบบสอบถามที่คุณไม่ได้ปรับแต่ง

การปรับโหลดข้อมูล

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

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

มีหลายวิธีในการปรับโหลดข้อมูลที่จะกล่าวถึงด้านล่าง -

  • วิธีการทั่วไปคือการแทรกข้อมูลโดยใช้ไฟล์ SQL Layer. ในแนวทางนี้จำเป็นต้องดำเนินการตรวจสอบและข้อ จำกัด ตามปกติ เมื่อข้อมูลถูกแทรกลงในตารางโค้ดจะทำงานเพื่อตรวจสอบว่ามีพื้นที่เพียงพอสำหรับแทรกข้อมูลหรือไม่ หากไม่มีพื้นที่เพียงพออาจต้องจัดสรรพื้นที่ให้กับตารางเหล่านี้มากขึ้น การตรวจสอบเหล่านี้ใช้เวลาในการดำเนินการและมีค่าใช้จ่ายสูงสำหรับ CPU

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

  • แนวทางที่สามคือในขณะที่โหลดข้อมูลลงในตารางที่มีตารางอยู่แล้วเราสามารถรักษาดัชนีได้

  • แนวทางที่สี่กล่าวว่าการโหลดข้อมูลในตารางที่มีข้อมูลอยู่แล้ว drop the indexes & recreate themเมื่อการโหลดข้อมูลเสร็จสมบูรณ์ ทางเลือกระหว่างแนวทางที่สามและแนวทางที่สี่ขึ้นอยู่กับจำนวนข้อมูลที่โหลดไปแล้วและจำนวนดัชนีที่ต้องสร้างใหม่

การตรวจสอบความสมบูรณ์

การตรวจสอบความสมบูรณ์มีผลต่อประสิทธิภาพของโหลดอย่างมาก ต่อไปนี้เป็นประเด็นที่ต้องจำ -

  • การตรวจสอบความสมบูรณ์จำเป็นต้องมีข้อ จำกัด เนื่องจากต้องใช้พลังในการประมวลผลที่หนักหน่วง

  • ควรใช้การตรวจสอบความสมบูรณ์ในระบบต้นทางเพื่อหลีกเลี่ยงการลดประสิทธิภาพของโหลดข้อมูล

การปรับแต่งแบบสอบถาม

เรามีแบบสอบถามสองประเภทในคลังข้อมูล -

  • แบบสอบถามคงที่
  • แบบสอบถามเฉพาะกิจ

แบบสอบถามคงที่

มีการกำหนดคิวรีแบบตายตัว ต่อไปนี้เป็นตัวอย่างของแบบสอบถามคงที่ -

  • รายงานปกติ
  • แบบสอบถามกระป๋อง
  • การรวมทั่วไป

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

Note - เราไม่สามารถทำอะไรได้มากขึ้นในตารางข้อเท็จจริง แต่ในขณะที่จัดการกับตารางมิติข้อมูลหรือการรวมสามารถใช้คอลเลกชันการปรับแต่ง SQL กลไกการจัดเก็บและวิธีการเข้าถึงตามปกติเพื่อปรับแต่งแบบสอบถามเหล่านี้ได้

แบบสอบถามเฉพาะกิจ

เพื่อให้เข้าใจคำค้นหาเฉพาะกิจสิ่งสำคัญคือต้องรู้จักผู้ใช้คลังข้อมูลแบบเฉพาะกิจ สำหรับผู้ใช้แต่ละรายหรือกลุ่มผู้ใช้คุณจำเป็นต้องทราบสิ่งต่อไปนี้ -

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

Points to Note

  • สิ่งสำคัญคือต้องติดตามโปรไฟล์ของผู้ใช้และระบุการสืบค้นที่เรียกใช้เป็นประจำ

  • สิ่งสำคัญคือการปรับแต่งที่ดำเนินการจะไม่ส่งผลกระทบต่อประสิทธิภาพ

  • ระบุข้อความค้นหาที่คล้ายกันและแบบเฉพาะกิจที่มักเรียกใช้

  • หากระบุคำค้นหาเหล่านี้ฐานข้อมูลจะเปลี่ยนไปและสามารถเพิ่มดัชนีใหม่สำหรับแบบสอบถามเหล่านั้นได้

  • หากมีการระบุคำค้นหาเหล่านี้จะสามารถสร้างการรวมใหม่โดยเฉพาะสำหรับการสืบค้นเหล่านั้นซึ่งจะส่งผลให้การดำเนินการมีประสิทธิภาพ