สถานการณ์ของตารางจากการคํานวณและกรณีการใช้งาน

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

ตารางที่มีการคํานวณคืออะไร

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

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

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

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

สกรีนช็อตที่เน้นตารางที่มีการคํานวณ

เหตุใดจึงใช้ตารางที่มีการคํานวณ

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

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

รูปภาพแสดงการแปลงข้อมูลที่เกิดขึ้นสองครั้ง

อย่างไรก็ตาม ถ้ามีการใช้ตารางที่มีการคํานวณ ระบบจะประมวลผลส่วนทั่วไป (ที่ใช้ร่วมกัน) ของการแปลงข้อมูลหนึ่งครั้งและจัดเก็บไว้ใน Azure Data Lake Storage จากนั้น จะมีการประมวลผลการแปลงที่เหลือจากผลลัพธ์ของการแปลงทั่วไป โดยรวมแล้ว การประมวลผลนี้เร็วกว่ามาก

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

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

สถานการณ์ตัวอย่างสําหรับการใช้ตารางที่คํานวณ

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

ตัวอย่างเช่น รูปภาพต่อไปนี้แสดงตาราง Orders

ภาพหน้าจอของตารางคําสั่งซื้อ

การใช้การอ้างอิงจากตารางนี้คุณสามารถสร้างตารางที่มีการคํานวณได้

การสร้างตารางที่มีการคํานวณ

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

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

ภาพหน้าจอของตารางรวมคําสั่งซื้อที่เน้นคอลัมน์ Customer

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

ตารางที่มีการคํานวณในกระแสข้อมูลอื่น ๆ

คุณยังสามารถสร้างตารางที่คํานวณในกระแสข้อมูลอื่น ๆ ได้ ซึ่งสามารถสร้างได้โดยการรับข้อมูลจากกระแสข้อมูลด้วยตัวเชื่อมต่อกระแสข้อมูล Microsoft Power Platform

รับข้อมูลจากกระแสข้อมูล Power Platform

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

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

ตารางที่มีการคํานวณ: ด้วยการแปลงหรือไม่มี?

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

โหลดข้อมูลโดยไม่มีการแปลงไฟล์ข้อความ/CSV

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

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

ทําการแปลงข้อมูลทั่วไปบางอย่างสําหรับตาราง SQL

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