ตรวจสอบประสิทธิภาพของกราฟใน Microsoft Fabric

ประสิทธิภาพของกราฟใน Microsoft Fabric ขึ้นอยู่กับขนาดกราฟ ความซับซ้อนของแบบจําลอง รูปแบบคิวรี และความพร้อมใช้งานของความจุ เรียนรู้วิธีตรวจสอบ วิธีระบุปัญหาคอขวด และการดําเนินการที่ต้องดําเนินการเมื่องานรีเฟรชช้าหรือคิวรีไม่ส่งคืนผลลัพธ์ตามที่คาดไว้

สําหรับการติดตามสถานะงานรีเฟรชพื้นฐาน โปรดดู ตรวจสอบปริมาณงานกราฟ สําหรับเทคนิคการเพิ่มประสิทธิภาพการสืบค้น GQL โปรดดู เพิ่มประสิทธิภาพการสืบค้น GQL

ข้อกำหนดเบื้องต้น

ก่อนที่คุณจะเริ่ม ให้ตรวจสอบว่าคุณ:

ปัจจัยที่ส่งผลต่อประสิทธิภาพของกราฟ

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

ขนาดและความซับซ้อนของกราฟ

  • กราฟที่มีโหนดและขอบมากกว่า 500 ล้านโหนดส่งผลให้ประสิทธิภาพการทํางานไม่เสถียร สําหรับรายการขีดจํากัดทั้งหมด โปรดดู ข้อจํากัดปัจจุบัน
  • ประเภทโหนด ประเภท Edge และคุณสมบัติเพิ่มเติมแต่ละรายการจะเพิ่มลงในข้อมูลที่กราฟโหลดระหว่างการรีเฟรช การลบชนิดโหนด ชนิด Edge และคุณสมบัติที่ไม่ได้ใช้ออกจากโมเดลของคุณจะช่วยลดเวลาในการรีเฟรช
  • กราฟหนาแน่น (หลายขอบต่อโหนด) จะเพิ่มต้นทุนการสํารวจ หากโหนดส่วนใหญ่เชื่อมต่อกับโหนดอื่นๆ หลายพันโหนด การสืบค้นที่ข้ามหลายฮ็อปจะมีราคาแพง

ลักษณะของข้อมูลต้นทาง

  • กราฟอ่านโดยตรงจากตารางเลคเฮาส์ใน OneLake ตารางต้นฉบับขนาดใหญ่ที่มีหลายคอลัมน์จะใช้เวลาในการนําเข้านานขึ้น
  • หากตารางต้นทางของคุณมีคอลัมน์ที่คุณไม่ต้องการในกราฟ อย่าเพิ่มคุณสมบัติชนิดโหนดเหล่านั้นในระหว่างการสร้างแบบจําลองกราฟ คุณสมบัติแต่ละรายการจะเพิ่มข้อมูลที่อ่านระหว่างการรีเฟรชและรอยเท้าหน่วยความจําของกราฟที่สืบค้นได้ คุณสมบัติทั้งโหนดและประเภทเอดจ์จะถูกเพิ่มด้วยตนเอง ดังนั้นให้เพิ่มเฉพาะคุณสมบัติที่คุณต้องการเท่านั้น

รูปแบบการสืบค้น

  • คิวรีที่ข้ามฮ็อปหลายครั้ง ส่งคืนโหนดเต็ม (RETURN *) หรือสร้างชุดผลลัพธ์ที่ไม่มีขอบเขตจะใช้ทรัพยากรมากขึ้นและใช้เวลาในการเรียกใช้นานขึ้น
  • ตัวกรองระดับรูปแบบ การคาดการณ์ที่แคบ และ LIMIT ส่วนคําสั่งจะลดงานที่กลไกจัดการคิวรีดําเนินการ สําหรับเทคนิคเฉพาะ โปรดดู เพิ่มประสิทธิภาพการสืบค้น GQL

ความจุและการทํางานพร้อมกัน

  • งานรีเฟรชกราฟและคิวรีจะใช้หน่วยความจุ Fabric (CU ที่รวมกัน) ปริมาณงานอื่นๆ ในความจุเดียวกันแข่งขันกันเพื่อแย่งชิงทรัพยากรเหล่านี้
  • ถ้างานรีเฟรชช้าอย่างสม่ําเสมอ ให้ตรวจสอบว่าปริมาณงานที่มีการใช้พลังงานสูงอื่นๆ ทํางานพร้อมกันหรือไม่โดยใช้แอปเมตริกความจุ Microsoft Fabric

ตรวจสอบประสิทธิภาพการรีเฟรช

ใช้ ฮับการตรวจสอบ เพื่อติดตามระยะเวลาในการรีเฟรชกราฟ และไม่ว่าจะสําเร็จหรือล้มเหลว สําหรับคําแนะนําทีละขั้นตอนในการเข้าถึงฮับการตรวจสอบ โปรดดู ตรวจสอบปริมาณงานกราฟ

ระบุการรีเฟรชช้า

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

  • การเติบโตของข้อมูลต้นทาง: ตารางเลคเฮาส์พื้นฐานเพิ่มขึ้น โดยเพิ่มข้อมูลเพิ่มเติมสําหรับกราฟที่จะนําเข้า
  • การเพิ่มความซับซ้อนของโมเดล: มีการเพิ่มประเภทโหนด ประเภทขอบ หรือคุณสมบัติใหม่ลงในโมเดล
  • แรงกดดันด้านความจุ: ปริมาณงานอื่นๆ กําลังใช้ส่วนแบ่งความจุที่พร้อมใช้งานมากขึ้น

ตอบสนองต่อความล้มเหลวในการรีเฟรช

งานรีเฟรชกราฟอาจล้มเหลวเมื่อเกินเวลาหมดเวลา 20 นาที สําหรับกราฟขนาดใหญ่ การหมดเวลานี้อาจทําให้เกิดความล้มเหลวได้ถึงสัปดาห์ละครั้ง หากการรีเฟรชล้มเหลว:

  1. เปิดฮับการตรวจสอบ และค้นหางานรีเฟรชที่ล้มเหลว
  2. เลือกงานเพื่อดูรายละเอียดข้อผิดพลาดและข้อมูลเวลา
  3. หากความล้มเหลวเป็นการหมดเวลา ให้ลองอีกครั้ง - การรีเฟรชครั้งต่อไปมักจะสําเร็จ หากหมดเวลาเกิดขึ้นซ้ําๆ ให้ลดขนาดกราฟโดยลบประเภทโหนด ประเภทขอบ หรือคุณสมบัติที่ไม่ได้ใช้ออก
  4. หากความล้มเหลวเกิดจากข้อผิดพลาดในการกําหนดค่า ให้เปิดแบบจําลองกราฟของคุณและตรวจสอบว่าการแม็ปชนิดโหนดและเอดจ์

สําหรับข้อมูลการแก้ไขปัญหาเพิ่มเติม โปรดดู การแก้ไขปัญหาและคําถามที่ถามบ่อย

ตรวจสอบประสิทธิภาพของคิวรี

เมตริกคิวรี GQL แต่ละรายการยังไม่พร้อมใช้งานในฮับการตรวจสอบในขณะนี้ ให้ใช้วิธีการเหล่านี้เพื่อทําความเข้าใจและปรับปรุงประสิทธิภาพของคิวรีแทน

สังเกตพฤติกรรมการสืบค้นในตัวแก้ไขโค้ด

เมื่อคุณเรียกใช้การค้นหา GQL ในตัว แก้ไขโค้ด ให้สังเกต:

  • เวลาตอบสนอง: ระยะเวลาที่การค้นหาใช้ในการส่งคืนผลลัพธ์ การสืบค้นที่ช้ามักเกี่ยวข้องกับการสํารวจเชิงลึก การจับคู่ที่ไม่มีขอบเขต หรือชุดผลลัพธ์ขนาดใหญ่
  • ขนาดผลลัพธ์: ชุดผลลัพธ์ขนาดใหญ่ (ใกล้ขีดจํากัดการตัดทอน 64 MB) บ่งชี้ว่าการค้นหาต้องการขอบเขตหรือการกรองที่เข้มงวดขึ้น ถ้าผลลัพธ์ถูกตัดทอน ให้เพิ่ม LIMIT, FILTERหรือ WHERE ส่วนคําสั่งเพื่อจํากัดผลลัพธ์ให้แคบลง
  • ผลลัพธ์ว่างเปล่าหลังจากการรีเฟรชสําเร็จ: สถานการณ์นี้มักจะหมายความว่าการกําหนดค่าแบบจําลองกราฟไม่ตรงกับข้อมูลเบื้องต้น ตรวจสอบว่าการแม็ปชนิดโหนดของคุณชี้ไปยังตารางและคอลัมน์ต้นทางที่ถูกต้อง

ปัญหาและวิธีแก้ไขประสิทธิภาพของคิวรีทั่วไป

อาการ สาเหตุที่น่าจะเป็นไปได้ โซลูชัน
คิวรีใช้เวลามากกว่าสองสามวินาที การเคลื่อนที่ลึก (จํานวนฮ็อปสูง) หรือฟิลเตอร์ที่ขาดหายไป เพิ่มส่วนคําสั่งระดับWHEREรูปแบบ ลดช่วงการกระโดด และนําไปใช้LIMIT
แบบสอบถามไม่ส่งผลลัพธ์ การกําหนดค่าผิดประเภทโหนดหรือเอดจ์ หรือตารางต้นทางว่างเปล่า ตรวจสอบการแม็ปแบบจําลองและยืนยันว่ามีข้อมูลต้นทางอยู่
ผลลัพธ์แบบสอบถามจะถูกตัดทอน ชุดผลลัพธ์เกิน 64 MB จํากัดการฉายภาพให้แคบลงด้วยคุณสมบัติเฉพาะแทน RETURN *และเพิ่มLIMIT
การรวมช้าหรือไม่เสถียร ชุดผลลัพธ์เกิน 128 MB ก่อนการรวม เพิ่มตัวกรองเพื่อลดผลลัพธ์ระดับกลางก่อนGROUP BY
การหมดเวลาของคิวรี (จํากัด 20 นาที) การสํารวจแบบมัลติฮอปที่ไม่มีขอบเขตบนกราฟหนาแน่น ใช้เพื่อTRAILป้องกันการกลับมาดูขอบ กระชับขอบเขตการกระโดด และเพิ่มLIMIT

สําหรับกลยุทธ์การเพิ่มประสิทธิภาพการสืบค้นโดยละเอียด โปรดดู เพิ่มประสิทธิภาพการสืบค้น GQL

ติดตามการใช้ความจุ

ใช้แอป Microsoft Fabric ตัววัดความจุ เพื่อทําความเข้าใจว่าปริมาณงานกราฟส่งผลต่อการใช้ความจุโดยรวมของคุณอย่างไร แอพนี้ช่วยให้คุณ:

  • เปรียบเทียบการใช้ความจุระหว่างงานรีเฟรชกราฟและปริมาณงาน Fabric อื่นๆ
  • ระบุช่วงเวลาที่แรงดันความจุอาจทําให้การรีเฟรชกราฟช้าลง
  • ตัดสินใจว่าเมื่อใดควรปรับขนาดความจุของคุณขึ้นหรือลงตามแนวโน้มการใช้งาน

สําหรับข้อมูลเพิ่มเติม โปรดดู ติดตั้งแอปเมตริกความจุ Microsoft Fabric

สรุปแนวทางปฏิบัติที่ดีที่สุดด้านประสิทธิภาพ

  • ปรับขนาดโมเดลของคุณให้เหมาะสม: หลีกเลี่ยงการเพิ่มประเภทโหนด ประเภทขอบ และคุณสมบัติที่คุณไม่ต้องการ รุ่นที่เล็กกว่าจะรีเฟรชเร็วขึ้นและใช้หน่วยความจําน้อยลง
  • กรองตั้งแต่เนิ่นๆ ฉายภาพให้แคบ: ใช้ส่วนคําสั่งระดับ WHERE รูปแบบและส่งคืนเฉพาะคุณสมบัติที่คุณต้องการ หลีกเลี่ยงRETURN *
  • ผูกผลลัพธ์ของคุณ: นําไปใช้ LIMIT กับการค้นหาที่มีคาร์ดินาลลิตี้สูง รักษาผลลัพธ์ให้ต่ํากว่าเกณฑ์การตัดทอน 64 MB
  • ให้การเคลื่อนที่ตื้น: ใช้ระยะการกระโดดที่แคบที่สุดที่สถานการณ์ของคุณอนุญาต ใช้ TRAIL เพื่อป้องกันเส้นทางที่ซ้ําซ้อนในกราฟหนาแน่น
  • ตรวจสอบแนวโน้มการรีเฟรช: สร้างระยะเวลาการรีเฟรชพื้นฐานและตรวจสอบเมื่อการรีเฟรชเบี่ยงเบนไปอย่างมีนัยสําคัญ
  • ตรวจสอบความจุระหว่างการชะลอตัว: ใช้ แอปเมตริกความจุ เพื่อพิจารณาว่าแรงกดดันด้านความจุเป็นสาเหตุหรือไม่