แชร์ผ่าน


การรีเฟรชที่เหมาะสมที่สุดสําหรับทิวทัศน์ทะเลสาบในเลคเฮาส์

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

โหมดรีเฟรชสําหรับมุมมองทะเลสาบที่เป็นรูปธรรม

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

  • การรีเฟรชแบบเต็ม: โหมดนี้จะบังคับใช้การคํานวณใหม่แบบเต็มสําหรับมุมมองทะเลสาบที่เป็นรูปธรรม

การรีเฟรชที่เหมาะสมที่สุด

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

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

สําคัญ

เพื่อให้การรีเฟรชแบบเพิ่มหน่วยมีผล จําเป็นต้องตั้งค่าคุณสมบัติฟีดข้อมูลการเปลี่ยนแปลงเดลต้า (CDF) เป็น delta.enableChangeDataFeed=true สําหรับแหล่งที่มาที่ขึ้นต่อกันทั้งหมดที่อ้างอิงในคําจํากัดความมุมมองทะเลสาบที่เป็นรูปธรรม หากต้องการข้อมูลเพิ่มเติม โปรดดูวิธีเปิดใช้การเปลี่ยนแปลงพร็อพเพอร์ตี้ฟีดข้อมูล

ประโยชน์ของการรีเฟรชที่เหมาะสมที่สุด

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

  • ปรับปรุงประสิทธิภาพ: รอบการรีเฟรชที่เร็วขึ้นช่วยให้คุณมอบข้อมูลเชิงลึกที่สดใหม่ยิ่งขึ้นและติดตามข้อมูลที่เปลี่ยนแปลงอย่างรวดเร็ว

  • ประหยัดเวลา: มีการประมวลผลเฉพาะข้อมูลที่เปลี่ยนแปลง ซึ่งส่งผลให้ระยะเวลาการรีเฟรชลดลง

นิพจน์ที่รองรับในการรีเฟรชที่เหมาะสมที่สุดสําหรับกลยุทธ์การรีเฟรชแบบเพิ่มหน่วย

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

ตารางต่อไปนี้สรุปนิพจน์ที่รองรับ:

โครงสร้าง SQL ข้อสังเกต
นิพจน์ SELECT สนับสนุนนิพจน์ที่มีฟังก์ชันกําหนด (ในตัว) ฟังก์ชัน Non-deterministic และ Window นําไปสู่กลยุทธ์การรีเฟรชแบบเต็มรูปแบบ
FROM
WHERE รองรับเฉพาะฟังก์ชันในตัวที่กําหนดเท่านั้น
การเข้าร่วมภายใน
WITH นิพจน์ตารางทั่วไปได้รับการสนับสนุน
ยูเนี่ยนออล
ข้อจํากัดด้านคุณภาพข้อมูล เฉพาะฟังก์ชันในตัวที่กําหนดเท่านั้นที่ได้รับการสนับสนุนในข้อจํากัด

หมายเหตุ

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

ประเด็นสําคัญสําหรับการรีเฟรชที่เหมาะสมที่สุด

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

วิธีเปิดใช้การเปลี่ยนแปลงพร็อพเพอร์ตี้ฟีดข้อมูล

จําเป็นต้องเปิดใช้งานคุณสมบัติการเปลี่ยนแปลงฟีดข้อมูล (CDF) บนแหล่งข้อมูลที่ขึ้นต่อกันทั้งหมด

ตัวอย่างต่อไปนี้สาธิตวิธีการเปิดใช้งานโดยใช้ CREATE คําสั่ง

CREATE OR REPLACE MATERIALIZED LAKE VIEW silver.customer_orders
TBLPROPERTIES (delta.enableChangeDataFeed=true)
AS
SELECT 
    c.customerID,
    c.customerName,
    c.region,
    o.orderDate,
    o.orderAmount
FROM bronze.customers c INNER JOIN bronze.orders o
ON c.customerID = o.customerID

หรือคุณสามารถใช้ ALTER TABLE คําสั่งบนตารางต้นฉบับ

  ALTER TABLE <table-name> SET TBLPROPERTIES (delta.enableChangeDataFeed = true);

ตัวอย่าง:

  ALTER TABLE bronze.customers SET TBLPROPERTIES (delta.enableChangeDataFeed = true);
  ALTER TABLE bronze.orders SET TBLPROPERTIES (delta.enableChangeDataFeed = true);

วิธีเปิดใช้งานโหมดรีเฟรชที่เหมาะสมที่สุด

โดยค่าเริ่มต้น โหมดการรีเฟรชที่เหมาะสมที่สุดจะถูกเปิดใช้งานสําหรับสายข้อมูล หากไม่เป็นเช่นนั้น ให้ทําตามขั้นตอนด้านล่าง:

  1. ไปที่ตัวเลือกจัดการมุมมองทะเลสาบที่เป็นรูปธรรมและเปิดใช้งานการสลับOptimal refresh

    ภาพหน้าจอที่แสดงการสลับเพื่อเปิดใช้งานโหมดรีเฟรชที่เหมาะสมที่สุด

รีเฟรชเต็มรูปแบบ

การรีเฟรชแบบเต็มจะทําการคํานวณใหม่ทั้งหมดของมุมมองทะเลสาบที่เป็นรูปธรรมตามข้อมูลต้นฉบับ

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

ภาพหน้าจอที่แสดงการสลับเพื่อเปลี่ยนเป็นโหมดรีเฟรชแบบเต็ม

Or

หากต้องการทําการรีเฟรชมุมมองทะเลสาบแบบเต็มรูปแบบ คุณสามารถใช้คําสั่งต่อไปนี้:

REFRESH MATERIALIZED LAKE VIEW [workspace.lakehouse.schema].MLV_Identifier FULL

หมายเหตุ

  • หากชื่อพื้นที่ทํางานของคุณมีช่องว่าง ให้ใส่เครื่องหมายแบ็คติ๊ก: `My Workspace`.lakehouse.schema.view_name
  • การรีเฟรชมุมมองทะเลสาบที่เป็นรูปธรรมซึ่งใช้ตารางที่ไม่ใช่เดลต้าเป็นแหล่งที่มาจะเริ่มการรีเฟรชเต็มรูปแบบ