ลดคาร์ดินาลลิตี้
คาร์ดินาลลิตี้เป็นคำที่ใช้อธิบายความเป็นเอกลักษณ์ของค่าในคอลัมน์ นอกจากนี้ยังมีการใช้คาร์ดินาลลิตี้ในบริบทของความสัมพันธ์ระหว่างสองตาราง ซึ่งจะอธิบายทิศทางของความสัมพันธ์
ระบุระดับคาร์ดินาลลิตี้ในคอลัมน์
ก่อนหน้านี้ เมื่อคุณใช้ Power Query Editor เพื่อวิเคราะห์เมตาดาต้า ตัวเลือก การแจกจ่ายคอลัมน์ บนแท็บ มุมมอง แสดงสถิติเกี่ยวกับจำนวนรายการเฉพาะและไม่ซ้ำกันในแต่ละคอลัมน์ในข้อมูล
จำนวนค่าเฉพาะ - จำนวนรวมของค่าที่แตกต่างกันที่พบในคอลัมน์ที่ระบุ
จำนวนค่าที่ไม่ซ้ำ - จำนวนรวมของค่าที่ปรากฏเพียงครั้งเดียวในคอลัมน์ที่ระบุ
คอลัมน์ที่มีค่าซ้ําจํานวนมากในช่วงของมัน (จํานวนที่ไม่ซ้ํากันคือต่ํา) จะมีระดับของคาร์ดินาลลิตี้ต่ํา ในทางกลับกัน คอลัมน์ที่มีค่าไม่ซ้ำกันจำนวนมากในช่วงของมัน (จำนวนที่ไม่ซ้ำกันคือสูง) จะมีระดับของคาร์ดินาลลิตี้สูง
คาร์ดินาลลิตี้ที่ต่ํากว่านําไปสู่ประสิทธิภาพที่เหมาะสมมากขึ้น ดังนั้นคุณอาจจําเป็นต้องลดจํานวนคอลัมน์ที่มีคาร์ดินาลลิตี้สูงในแบบจําลองความหมายของคุณ
ลดคาร์ดินาลิตี้สำหรับความสัมพันธ์
เมื่อคุณนำเข้าหลายตาราง อาจเป็นไปได้ว่าคุณจะทำการวิเคราะห์บางอย่างโดยใช้ข้อมูลจากตารางเหล่านั้นทั้งหมด ความสัมพันธ์ระหว่างตารางเหล่านั้นจำเป็นเพื่อให้สามารถคำนวณผลลัพธ์และแสดงข้อมูลที่ถูกต้องในรายงานของคุณได้อย่างแม่นยำ Power BI Desktop ช่วยให้สร้างความสัมพันธ์เหล่านั้นได้ง่ายขึ้น ในความเป็นจริง ในกรณีส่วนใหญ่คุณไม่จำเป็นต้องทำอะไร คุณลักษณะจะตรวจหาให้คุณโดยอัตโนมัติ อย่างไรก็ตาม คุณอาจต้องสร้างความสัมพันธ์หรือจำเป็นต้องทำการเปลี่ยนแปลงไปยังสัมพันธ์บ้างเป็นครั้งคราว โดยไม่คำนึงว่าเป็นสิ่งสำคัญที่ต้องทำความเข้าใจความสัมพันธ์ใน Power BI Desktop ตลอดจนวิธีการสร้างและแก้ไขความสัมพันธ์ดังกล่าว
เมื่อคุณสร้างหรือแก้ไขความสัมพันธ์ คุณสามารถกำหนดค่าตัวเลือกเพิ่มเติมได้ ตามค่าเริ่มต้น Power BI Desktop จะกำหนดตัวเลือกเพิ่มเติมโดยอัตโนมัติโดยยึดตามการคาดเดาที่ดีที่สุด ซึ่งอาจแตกต่างกันสำหรับแต่ละความสัมพันธ์ที่ยึดตามข้อมูลในคอลัมน์
ความสัมพันธ์สามารถมีคาร์ดินาลลิตี้ที่แตกต่างกัน คาร์ดินาลลิตี้คือทิศทางของความสัมพันธ์ และชนิดของคาร์ดินาลลิตี้ต้องกำหนดความสัมพันธ์ของแบบจำลองแต่ละตัวด้วย ตัวเลือกคาร์ดินาลลิตี้ใน Power BI ประกอบด้วย:
กลุ่มต่อหนึ่ง (
*:1) - ความสัมพันธ์นี้เป็นชนิดเริ่มต้นที่พบบ่อยที่สุด ซึ่งหมายความว่าคอลัมน์ในตารางหนึ่งสามารถมีอินสแตนซ์ของค่าได้มากกว่าหนึ่งตัว และตารางอื่นที่เกี่ยวข้องมักจะเรียกว่าตารางการค้นหา มีเพียงอินสแตนซ์ของค่าหนึ่งตัวเท่านั้นหนึ่งต่อหนึ่ง (1:1) - ในประเภทความสัมพันธ์นี้ คอลัมน์ในหนึ่งตารางมีเพียงอินสแตนซ์ของค่าเฉพาะหนึ่งอินสแตนซ์เท่านั้น และตารางอื่นที่เกี่ยวข้องมีเพียงอินสแตนซ์ของค่าเฉพาะหนึ่งอินสแตนซ์เท่านั้น
หนึ่งต่อกลุ่ม (1:
*) - ในประเภทความสัมพันธ์นี้ คอลัมน์ในหนึ่งตารางมีเพียงอินสแตนซ์ของค่าเฉพาะหนึ่งอินสแตนซ์เท่านั้น และตารางอื่นที่เกี่ยวข้องสามารถมีอินสแตนซ์ของค่าได้มากกว่าหนึ่งตัวกลุ่มต่อกลุ่ม (:) - ด้วยแบบจำลองแบบรวม คุณสามารถสร้างความสัมพันธ์แบบกลุ่มต่อกลุ่มระหว่างตาราง ซึ่งจะกำจัดข้อกำหนดสำหรับค่าที่ไม่ซ้ำกันในตารางได้ นอกจากนี้ ยังกำจัดการแก้ปัญหาเฉพาะหน้าก่อนหน้านี้ เช่น การนำเฉพาะตารางใหม่เท่านั้นมาสร้างความสัมพันธ์
ในระหว่างการพัฒนา คุณกําลังสร้างและแก้ไขความสัมพันธ์ในแบบจําลองของคุณ ดังนั้นเมื่อคุณกําลังสร้างความสัมพันธ์ใหม่ในแบบจําลองของคุณ โดยไม่คํานึงถึงคาร์ดินาลลิตี้ที่คุณเลือกไว้ โปรดตรวจสอบให้แน่ใจเสมอว่าคอลัมน์ทั้งสองที่คุณกําลังใช้เพื่อเข้าร่วมในความสัมพันธ์นั้นกําลังใช้ข้อมูลชนิดเดียวกันร่วมกัน แบบจำลองของคุณจะไม่มีประสิทธิภาพถ้าคุณพยายามที่จะสร้างความสัมพันธ์ระหว่างสองคอลัมน์ ที่หนึ่งคอลัมน์มีชนิดข้อมูลข้อความ และอีกคอลัมน์มีชนิดข้อมูลจำนวนเต็ม
ในตัวอย่างต่อไปนี้ เขตข้อมูล ProductID มีชนิดข้อมูล จำนวนเต็ม ในตารางผลิตภัณฑ์และยอดขาย คอลัมน์ที่มีชนิดข้อมูล จำนวนเต็ม มีประสิทธิภาพดีกว่าคอลัมน์ที่มีชนิดข้อมูล ข้อความ
ปรับปรุงประสิทธิภาพโดยการลดระดับคาร์ดินาลลิตี้
Power BI Desktop มีเทคนิคที่แตกต่างกันที่คุณสามารถใช้เพื่อช่วยลดข้อมูลที่โหลดลงในแบบจําลองความหมาย เช่น การสรุป การลดข้อมูลที่โหลดลงในแบบจำลองของคุณจะช่วยปรับปรุงคาร์ดินาลลิตี้ของความสัมพันธ์ของรายงาน ด้วยเหตุนี้ จึงเป็นสิ่งสำคัญที่คุณต้องพยายามลดข้อมูลที่จะโหลดลงในแบบจำลองของคุณให้เหลือน้อยที่สุด กรณีนี้เป็นจริงอย่างยิ่งสำหรับแบบจำลองขนาดใหญ่ หรือแบบจำลองที่คุณคาดว่าจะขยายใหญ่ขึ้นเรื่อย ๆ เมื่อเวลาผ่านไป
บางทีเทคนิคที่มีประสิทธิภาพที่สุดในการลดขนาดแบบจำลองคือการใช้ตารางสรุปจากแหล่งข้อมูล ในกรณีที่ตารางรายละเอียดอาจประกอบด้วยธุรกรรมทั้งหมด ตารางสรุปจะประกอบด้วยระเบียนหนึ่งรายการต่อวัน ต่อสัปดาห์ หรือต่อเดือน ซึ่งอาจเป็นค่าเฉลี่ยของธุรกรรมต่อวันทั้งหมดสำหรับอินสแตนซ์
ตัวอย่างเช่น ตารางข้อเท็จจริงของยอดขายต้นทางจัดเก็บแถวสำหรับแต่ละบรรทัดคำสั่งซื้อหนึ่งแถว การลดข้อมูลที่สำคัญสามารถทำได้โดยการสรุปเมตริกยอดขายทั้งหมดถ้าคุณจัดกลุ่มตามวันที่ ลูกค้า และผลิตภัณฑ์ และไม่จำเป็นต้องมีรายละเอียดธุรกรรมแต่ละรายการ
จากนั้นพิจารณาว่าการลดข้อมูลที่มีนัยสําคัญมากยิ่งขึ้นสามารถบรรลุได้โดยการจัดกลุ่มตามวันที่ในระดับเดือน ซึ่งอาจสามารถลดขนาดแบบจำลองได้ถึง 99 เปอร์เซ็นต์ แต่การรายงานในระดับวันหรือระดับคำสั่งซื้อส่วนบุคคลนั้นไม่สามารถทำได้อีกต่อไป การตัดสินใจที่จะสรุปข้อมูลประเภทข้อเท็จจริงจะเกี่ยวข้องกับการชดเชยด้วยรายละเอียดข้อมูลของคุณเสมอ ข้อเสียคือ คุณอาจสูญเสียความสามารถในการเจาะลึกข้อมูลเนื่องจากไม่มีรายละเอียดอยู่อีกต่อไป คุณสามารถลดการชดเชยนี้ได้โดยใช้การออกแบบแบบจำลองผสม
ใน Power BI Desktop การออกแบบโหมดผสมสร้างแบบจำลองแบบรวม โดยพื้นฐานแล้วจะช่วยให้คุณสามารถกำหนดโหมดที่เก็บข้อมูลสำหรับแต่ละตารางได้ ดังนั้นแต่ละตารางสามารถมีคุณสมบัติของโหมดที่เก็บข้อมูล ที่ตั้งค่าเป็น นำเข้า หรือ DirectQuery
เทคนิคที่มีประสิทธิภาพในการลดขนาดของแบบจำลองคือการตั้งค่าคุณสมบัติของโหมดที่เก็บข้อมูลสำหรับตารางชนิดข้อเท็จจริงที่มีขนาดใหญ่กว่าเป็น DirectQuery วิธีการออกแบบนี้สามารถทำงานร่วมกับเทคนิคที่ใช้ในการสรุปข้อมูลของคุณได้อย่างดี ตัวอย่างเช่น คุณสามารถใช้ข้อมูลยอดขายสรุปเพื่อสร้างรายงาน "บทสรุป" ที่มีประสิทธิภาพสูงได้ ไม่สามารถสร้างหน้าการดูรายละเอียดข้อมูลเพื่อแสดงยอดขายที่ละเอียดสำหรับบริบทตัวกรอง (และแคบ) เฉพาะซึ่งแสดงคำสั่งขายในบริบททั้งหมด หน้าการดูรายละเอียดข้อมูลจะประกอบด้วยวิชวลที่ยึดตามตาราง DirectQuery เพื่อดึงข้อมูลคำสั่งขาย (รายละเอียดคำสั่งขาย)
สำหรับข้อมูลเพิ่มเติม โปรดดู เทคนิคการลดข้อมูลสำหรับการสร้างแบบจำลองแบบการนำเข้า