ตัวบ่งชี้การพับคิวรี
หมายเหตุ
ก่อนที่จะอ่านบทความนี้ เราขอแนะนําให้คุณอ่าน ภาพรวมของการประเมินผลคิวรีและการพับคิวรีใน Power Query เพื่อให้เข้าใจวิธีการทํางานของการพับใน Power Query ได้ดียิ่งขึ้น
ตัวบ่งชี้การพับคิวรีช่วยให้คุณเข้าใจขั้นตอนที่พับหรือไม่พับไม่ได้
ด้วยตัวบ่งชี้การพับคิวรีมันจะกลายเป็นชัดเจนเมื่อคุณทําการเปลี่ยนแปลงที่แบ่งการพับ คุณลักษณะนี้ช่วยให้คุณสามารถแก้ไขปัญหาได้อย่างรวดเร็ว หลีกเลี่ยงปัญหาด้านประสิทธิภาพการทํางานในตอนแรก และมีข้อมูลเชิงลึกที่ดีขึ้นในคิวรีของคุณ ในกรณีส่วนใหญ่คุณพบขั้นตอนที่พับหรือไม่ได้พับ แต่มีหลายกรณีที่ผลลัพธ์ไม่ชัดเจนและกรณีเหล่านี้จะถูกกล่าวถึงใน ตัวบ่งชี้ การวินิจฉัยขั้นตอน (แบบไดนามิกทึบ และไม่รู้จัก)
หมายเหตุ
คุณลักษณะตัวบ่งชี้การพับคิวรีจะพร้อมใช้งานสําหรับ Power Query Online เท่านั้น
การแปลการวินิจฉัยการพับคิวรี
เมื่อคุณตรวจสอบตัวบ่งชี้การพับคิวรีถัดจากขั้นตอน สิ่งสําคัญที่สุดที่ต้องทําความเข้าใจคือสถานะการวินิจฉัยไม่ได้ตามลําดับ กล่าวอีกนัยหนึ่งตัวบ่งชี้สําหรับขั้นตอนนั้นจะอธิบายว่าคิวรีทั้งหมดขึ้นอยู่กับจุดนั้นพับหรือไม่ ถ้าคุณมีตัวบ่งชี้ที่แสดงว่าคิวรีไม่ได้พับตามด้วยตัวบ่งชี้ที่แสดงการพับนั่นหมายความว่าคิวรีของคุณจนถึงจุดนั้นสามารถพับได้
การตีความนี้ทํางานกับคิวรีอย่างง่ายกับแหล่งข้อมูล SQL ตัวอย่างเช่น การใช้ ฐานข้อมูลตัวอย่าง AdventureWorks เชื่อมต่อกับ ตาราง Production.Product และโหลดข้อมูล การโหลดตัวอย่างนี้ผ่านตัวนําทาง Power Query มีคิวรีดังต่อไปนี้:
let
Source = Sql.Database("ServerName", "AdventureWorks"),
Navigation = Source{[Schema = "Production", Item = "Product"]}[Data]
in
Navigation
ถ้าคุณตรวจสอบว่ารหัสนี้แสดงอย่างไรในตัวบ่งชี้การพับคิวรี คุณทราบว่าขั้นตอนแรกไม่รวม แต่ขั้นตอนที่สองทําการพับซึ่งหมายความว่าคิวรีสูงถึงจุดนั้นจะพับ
ในตัวอย่างนี้ขั้นตอนเริ่มต้นไม่สามารถยืนยันได้ว่าพับ (ไม่รวมกัน) แต่ขั้นตอนสุดท้ายที่สร้างขึ้นเมื่อคุณโหลดข้อมูลในตอนแรกจะพับ วิธีการจัดการขั้นตอนแรก (แหล่งข้อมูล และบางครั้งขั้นตอนการนําทางอื่นๆ) จะขึ้นอยู่กับตัวเชื่อมต่อ ตัวอย่างเช่น ด้วย SQL จะมีการจัดการเป็นค่าตารางแค็ตตาล็อกซึ่งไม่ได้พับขึ้น อย่างไรก็ตาม ทันทีที่คุณเลือกข้อมูลสําหรับตัวเชื่อมต่อนั้น ตัวเชื่อมต่อจะพับ
ในทางกลับกัน ตัวบ่งชี้นี้อาจหมายถึงการพับคิวรีของคุณขึ้นจนถึงจุดแล้วหยุดพับได้ ซึ่งแตกต่างจากในกรณีที่คุณมีตัวบ่งชี้การพับสําหรับขั้นตอนที่แสดงให้เห็นว่าทุกอย่างพับเมื่อคุณมีตัวบ่งชี้ที่ไม่ได้พับก็ไม่ได้หมายความว่าทุกอย่างไม่ได้พับ แต่นั่นหมายความว่า "ไม่ใช่ทุกอย่าง" พับ โดยทั่วไปทุกอย่างขึ้นอยู่กับพับตัวบ่งชี้พับครั้งล่าสุดโดยมีการดําเนินงานมากขึ้นหลังจาก
การปรับเปลี่ยนตัวอย่างก่อนหน้านี้ คุณสามารถแปลงที่ไม่เคยพับ — ทําให้แต่ละคําเป็นตัวพิมพ์ใหญ่ได้
let
Source = Sql.Database("ServerName", "AdventureWorks"),
Navigation = Source{[Schema = "Production", Item = "Product"]}[Data],
#"Capitalized each word" = Table.TransformColumns(Navigation, {{"Name", each Text.Proper(_), type text}})
in
#"Capitalized each word"
ในตัวบ่งชี้การพับคิวรี คุณมีตัวบ่งชี้เดียวกันกับก่อนหน้านี้ ยกเว้นขั้นตอนสุดท้ายไม่ได้พับ ทุกอย่างขึ้นอยู่กับขั้นตอนนี้จะดําเนินการในแหล่งข้อมูล ในขณะที่ขั้นตอนสุดท้ายจะดําเนินการภายในเครื่อง
ตัวบ่งชี้การวินิจฉัยขั้นตอน
ตัวบ่งชี้การพับคิวรีใช้แผนคิวรีพื้นฐานและต้องการให้สามารถรับข้อมูลเกี่ยวกับคิวรีเพื่อรายงานได้ ในปัจจุบัน แผนคิวรีสนับสนุนเฉพาะตาราง ดังนั้นบางกรณี (รายการ ระเบียน ดั้งเดิม) จะไม่รายงานเป็นการพับหรือไม่ ในทํานองเดียวกัน ตารางคงที่จะรายงานแบบทึบแสง
ตัวชี้วัด | ไอคอน | คำอธิบาย |
---|---|---|
พับ | ตัวบ่งชี้การพับจะบอกคุณว่าคิวรีขึ้นอยู่กับขั้นตอนนี้ได้รับการประเมินโดยแหล่งข้อมูล | |
ไม่มีการพับ | ตัวบ่งชี้การพับไม่ได้บอกคุณว่าส่วนหนึ่งของคิวรีขึ้นอยู่กับขั้นตอนนี้ได้รับการประเมินภายนอกแหล่งข้อมูล คุณสามารถเปรียบเทียบกับตัวบ่งชี้การพับล่าสุดถ้ามีหนึ่งเพื่อดูว่าคุณสามารถจัดเรียงคิวรีของคุณใหม่เพื่อให้มีประสิทธิภาพมากขึ้นหรือไม่ | |
อาจพับ | ตัวบ่งชี้แบบพับอาจเป็นเรื่องผิดปกติ ซึ่งหมายถึงคิวรีที่ "อาจ" พับ ซึ่งระบุว่ามีการพับหรือไม่พับในขณะทํางาน เมื่อดึงผลลัพธ์จากคิวรี และแผนคิวรีเป็นแบบไดนามิก ตัวบ่งชี้เหล่านี้อาจปรากฏเฉพาะกับการเชื่อมต่อ ODBC หรือ OData เท่านั้น | |
ทึบแสง | ตัวบ่งชี้แบบทึบแสงบอกให้คุณทราบว่าแผนคิวรีที่เป็นผลลัพธ์นั้นไม่ครอบคลุมด้วยเหตุผลบางประการ ซึ่งโดยทั่วไปแสดงให้เห็นว่ามีตาราง "ค่าคงที่" จริง หรือการแปลงหรือตัวเชื่อมต่อไม่ได้รับการสนับสนุนโดยตัวบ่งชี้และเครื่องมือแผนคิวรี | |
ไม่รู้จัก | ตัวบ่งชี้ที่ไม่รู้จักแสดงถึงการขาดหายไปของแผนคิวรี เนื่องจากข้อผิดพลาดหรือพยายามเรียกใช้การประเมินแผนคิวรีในสิ่งอื่นนอกเหนือจากตาราง (เช่น เรกคอร์ด รายการ หรือค่าดั้งเดิม) |
การวิเคราะห์ตัวอย่าง
สําหรับการวิเคราะห์ตัวอย่าง เริ่มต้นโดยการเชื่อมต่อกับ ตาราง Production.Product ใน Adventure Works (SQL) การโหลดเริ่มต้นคล้ายกับตัวอย่างเริ่มต้น มีลักษณะเหมือนกับรูปภาพต่อไปนี้
การเพิ่มขั้นตอนเพิ่มเติมที่พับขยายเส้นสีเขียวทางด้านขวา ส่วนขยายนี้เกิดขึ้นเนื่องจากขั้นตอนนี้ยังพับ
การเพิ่มขั้นตอนที่ไม่พับแสดงตัวบ่งชี้ที่แตกต่างกัน ตัวอย่างเช่น ทําให้แต่ละคํา เป็นตัวพิมพ์ใหญ่ไม่เคยพับ ตัวบ่งชี้จะเปลี่ยน โดยแสดงให้เห็นว่าตามขั้นตอนนี้จะหยุดการพับ ตามที่กล่าวถึงก่อนหน้านี้ขั้นตอนก่อนหน้านี้ยังคงพับได้
การเพิ่มขั้นตอนปลายทางเพิ่มเติมที่ขึ้นอยู่กับ ตัวพิมพ์ใหญ่แต่ละขั้นตอน ยังคงไม่พับ
อย่างไรก็ตาม ถ้าคุณลบคอลัมน์ที่คุณใช้ตัวพิมพ์ใหญ่เพื่อให้แผนคิวรีที่ปรับให้เหมาะสมสามารถพับทั้งหมดได้อีกครั้ง คุณจะได้รับผลลัพธ์เหมือนรูปภาพต่อไปนี้ อย่างไรก็ตามบางสิ่งเช่นนี้เป็นเรื่องผิดปกติ รูปภาพนี้แสดงให้เห็นว่าไม่ใช่เพียงแค่ลําดับของขั้นตอน แต่การแปลงจริงที่ใช้ได้เช่นกัน