การระบุปัญหาด้านประสิทธิภาพ

Data Modeling ระดับกลางใน Power BI

Sara Billen

Curriculum Manager at DataCamp

การแก้ไขปัญหาด้านประสิทธิภาพ

ภาพผู้หญิงนั่งหน้าจอคอมพิวเตอร์ที่แดชบอร์ดกำลังโหลดช้า

Data Modeling ระดับกลางใน Power BI

ปัญหาด้านประสิทธิภาพ

ภาพวาดนาฬิกาทราย

จุดที่อาจเกิดปัญหา:

  • การนำเข้าข้อมูล
  • การคิวรีฐานข้อมูลด้วย DirectQuery
  • การแสดงผลวิชวล
  • คอลัมน์แบบ Calculated และ Computed
  • ความสัมพันธ์ที่ไม่มีประสิทธิภาพ
    • ความสัมพันธ์แบบ Many-to-many
    • การกรองข้ามแบบสองทิศทาง
Data Modeling ระดับกลางใน Power BI

การปรับแต่งการนำเข้าข้อมูล

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

ไดอะแกรมวิธีนำเข้าข้อมูลใน Power BI ได้แก่ Excel, CSV และฐานข้อมูล

Data Modeling ระดับกลางใน Power BI

การปรับแต่ง Direct Query

  • วิธีเชื่อมต่อข้อมูลมี 2 แบบ:
    • Import model: เก็บข้อมูลไว้ใน Power BI
    • Direct Query: คิวรีฐานข้อมูลโดยตรง

$$

  • จำกัดจำนวนคิวรีที่รันพร้อมกัน
  • คำแนะนำสำหรับฐานข้อมูลเชิงสัมพันธ์
    • เขียน SQL query ที่มีประสิทธิภาพ
    • ใช้ index ที่เหมาะสม
    • ดึงเฉพาะคอลัมน์และแถวที่ต้องการ

ไดอะแกรมวิธีโหลดข้อมูลใน Power BI แสดงฟังก์ชัน Import และ Direct Query ที่เชื่อมต่อกับฐานข้อมูล

Data Modeling ระดับกลางใน Power BI

Calculated columns และ Computed columns

สร้างคอลัมน์แบบกำหนดเองด้วย:

Calculated columns Computed columns
DAX Power Query (M)
เร็วสำหรับการคำนวณ อย่างง่าย เร็วสำหรับการคำนวณ อย่างง่าย
ช้าสำหรับการคำนวณ ซับซ้อน เร็วสำหรับการคำนวณ ซับซ้อน
สร้างต่อวิชวลขณะรันไทม์ สร้างครั้งเดียวตอนนำเข้าข้อมูล
Data Modeling ระดับกลางใน Power BI

การลบการกรองแบบสองทิศทางด้วย filter measures

  • กรณีใช้งานการกรองแบบสองทิศทาง
    • ค้นหารายการ Slicer ที่เกี่ยวข้องระหว่าง dimension
  • สามารถสร้าง filter measure เพื่อหลีกเลี่ยงความสัมพันธ์แบบสองทิศทางสำหรับกรณีใช้งานที่สาม
Data Modeling ระดับกลางใน Power BI

การลบการกรองแบบสองทิศทางด้วย filter measures

โมเดลข้อมูลใน Power BI แสดงตัวกรองทิศทางเดียวและ filter measure ชื่อ Slicer_MyFactTable

Data Modeling ระดับกลางใน Power BI

การลบการกรองแบบสองทิศทางด้วย filter measures

1) สร้าง filter measure ใน DAX:

Slicer_MyFactTable = INT(NOT ISEMPTY('My Fact Table'))
  • คืนค่า 1 หากมีค่าอย่างน้อยหนึ่งค่าในตาราง fact
  • คืนค่า 0 หากไม่มีค่าใดในตาราง fact

$$

2) เพิ่ม visual filter ให้กับ slicer และกำหนดเงื่อนไขที่ Slicer_MyFactTable = 1

Data Modeling ระดับกลางใน Power BI

การแสดงผลวิชวล

หน้าจอคอมพิวเตอร์แสดงรายงานในแอปพลิเคชัน Power BI

$$

  • ใช้ตัวกรองที่เข้มงวดเพื่อลดปริมาณข้อมูล
  • แสดงข้อมูลบนวิชวลให้น้อยที่สุด
  • จำกัดจำนวนวิชวลในหน้ารายงาน
  • ใช้เฉพาะ custom visual ที่ทำงานเร็ว
Data Modeling ระดับกลางใน Power BI

มาฝึกกันเถอะ!

Data Modeling ระดับกลางใน Power BI

Preparing Video For Download...