การรีเฟรชแบบเพิ่มหน่วยกับกระแสข้อมูล

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

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

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

หมายเหตุ

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

Incremental refresh for dataflows.

การใช้การรีเฟรชแบบเพิ่มหน่วยในกระแสข้อมูลที่สร้างขึ้นใน Power BI กําหนดให้กระแสข้อมูลต้องอยู่ในพื้นที่ทํางานในความจุPremium การรีเฟรชแบบเพิ่มหน่วยในPower Appsจําเป็นต้องใช้ Power Apps Plan 2

ไม่ว่าใน Power BI หรือPower Apps การใช้การรีเฟรชแบบเพิ่มหน่วยจําเป็นต้องให้แหล่งข้อมูลที่นําเข้าลงในกระแสข้อมูลมีเขตข้อมูล DateTime ที่การรีเฟรชแบบเพิ่มหน่วยสามารถกรองได้

การกำหนดค่าการรีเฟรชแบบเพิ่มหน่วยสำหรับกระแสข้อมูล

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

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

หลังจากสร้างและบันทึกกระแสข้อมูลแล้ว ให้เลือก การรีเฟรชIncremental refresh. แบบเพิ่มหน่วย ในมุมมองเอนทิตี ดังที่แสดงในรูปต่อไปนี้

Incremental refresh icon for dataflows.

เมื่อคุณเลือกไอคอน หน้าต่าง การตั้งค่าการรีเฟรชแบบเพิ่ม หน่วยจะปรากฏขึ้น เปิดการรีเฟรชแบบเพิ่มหน่วย

Incremental refresh for dataflows.

รายการต่อไปนี้อธิบายการตั้งค่าในหน้าต่างการตั้งค่าการรีเฟรชแบบเพิ่มหน่วย

  • การสลับเปิด/ปิดการรีเฟรชแบบเพิ่มหน่วย: เปิดหรือปิดนโยบายการรีเฟรชแบบเพิ่มหน่วยสําหรับเอนทิตีนั้น

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

  • จัดเก็บ/รีเฟรชแถวจากอดีต: ตัวอย่างในรูปภาพก่อนหน้าแสดงการตั้งค่าสองสามรายการถัดไปเหล่านี้

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

    • เพิ่มข้อมูลของวันใหม่

    • รีเฟรชข้อมูล 10 วัน จนถึงวันที่ปัจจุบัน

    • ลบปีปฏิทินที่เก่ากว่าห้าปีก่อนวันที่ปัจจุบัน ตัวอย่างเช่น หากวันที่ปัจจุบันคือ 1 มกราคม 2019 ปี 2013 จะถูกลบ

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

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

    เคล็ดลับ

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

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

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

หมายเหตุ

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

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

การรีเฟรชแบบเพิ่มหน่วยและเอนทิตีที่เชื่อมโยงเทียบกับเอนทิตีที่คํานวณ

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

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

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

การเปลี่ยนระหว่างการรีเฟรชแบบเพิ่มหน่วยและการรีเฟรชทั้งหมด

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

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

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

โซนเวลารองรับในการรีเฟรชแบบเพิ่มหน่วย

การรีเฟรชกระแสข้อมูลแบบเพิ่มหน่วยจะขึ้นอยู่กับเวลาที่เรียกใช้ การกรองคิวรีจะพึ่งพาวันที่ที่เรียกใช้

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

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

  • ถ้าไม่ได้กําหนดการรีเฟรชตามกําหนดการ กระแสข้อมูลจะใช้โซนเวลาจากคอมพิวเตอร์ของผู้ใช้ที่กําลังดําเนินการรีเฟรช

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

รายละเอียดการใช้งานการรีเฟรชแบบเพิ่มหน่วย

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

ตัวอย่างในส่วนนี้ใช้นโยบายการรีเฟรชต่อไปนี้:

  • จัดเก็บแถวใน 1 ไตรมาสที่ผ่านมา
  • รีเฟรชแถวใน 10 วันที่ผ่านมา
  • ตรวจพบการเปลี่ยนแปลงข้อมูล = False
  • รีเฟรชเฉพาะวันที่สมบูรณ์ = True

ผสานพาร์ติชัน

ในตัวอย่างนี้ พาร์ติชันวันจะถูกผสานเป็นระดับเดือนโดยอัตโนมัติหลังจากที่พาร์ติชันอยู่นอกช่วงการเพิ่มหน่วย พาร์ติชันในช่วงการเพิ่มหน่วยต้องได้รับการบำรุงรักษาทุกวันเพื่อให้มีการรีเฟรชพาร์ติชันวันได้ การดำเนินการรีเฟรชด้วย เรียกใช้วันที่ 12/11/2016 จะผสานวันในเดือนพฤศจิกายน เพราะว่าอยู่นอกช่วงการเพิ่มหน่วย

Merge partitions in dataflows.

ลบพาร์ติชันเก่า

พาร์ติชันเก่าที่อยู่นอกช่วงรวมจะถูกลบ การดําเนินการรีเฟรชด้วย เรียกใช้วันที่ 1/2/2017 จะลบพาร์ติชันสําหรับ Q3 ของปี 2016 เนื่องจากอยู่นอกช่วงรวม

Drop old partitions in dataflows.

กู้คืนจากความล้มเหลวที่ยืดเยื้อ

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

การดำเนินการรีเฟรชทั้งถัดไปด้วย เรียกใช้วันที่ 1/15/2017 จะต้องเติม 13 วันที่หายไปนั้นกลับเข้ามาในการรีเฟรชด้วย นอกจากนี้ยังต้องรีเฟรชเก้าวันก่อนหน้าเนื่องจากวันเหล่านั้นไม่ได้รีเฟรชตามกําหนดการปกติ อีกนัยหนึ่งคือ ช่วงการเพิ่มหน่วยเพิ่มขึ้นจาก 10 เป็น 22 วัน

การดําเนินการรีเฟรชครั้งถัดไปด้วย เรียกใช้วันที่ 1/16/2017 จะใช้โอกาสนี้เพื่อผสานวันในเดือนธันวาคมและเดือนใน Q4 ของปี 2016

Recovery from prolonged failure in dataflows.

การรีเฟรชแบบเพิ่มหน่วยของกระแสข้อมูลและชุดข้อมูล

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

ทั้งสองวิธีทํางานตามข้อกําหนดที่คุณระบุไว้ในการตั้งค่าการรีเฟรช ข้อมูลเพิ่มเติม: การรีเฟรชแบบเพิ่มหน่วยใน Power BI Premium

นอกจากนี้ โปรดดู

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

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ Power Query และการรีเฟรชตามกำหนดการ สามารถดูได้ในบทความเหล่านี้:

สําหรับข้อมูลเพิ่มเติมเกี่ยวกับ Common Data Model คุณสามารถอ่านบทความภาพรวมได้: