เริ่มต้นอย่างรวดเร็ว: สืบค้นและใช้ข้อมูล OneLake ทั่วทั้ง Microsoft Fabric

ในโหมดเริ่มต้นนี้ คุณจะใช้เอนจิน Fabric สามตัวเพื่อโต้ตอบกับโต๊ะ lakehouse เดียวกัน ขั้นแรก คุณจะสอบถามตารางโดยใช้ SQL analytics endpoint จากนั้นคุณสร้างรายงาน Power BI ในโหมด Direct Lake บนตารางเดียวกัน สุดท้าย คุณอ่านตารางเดียวกันจากสมุดบันทึก Spark ขั้นตอนเหล่านี้ร่วมกันแสดงรูปแบบหลักของ OneLake: สําเนาข้อมูลหนึ่งชุด หลายเอนจิน

OneLake จัดเก็บข้อมูลตารางในรูปแบบ Delta Parquet แบบเปิดบนระบบ Azure Data Lake Storage (ADLS) Gen2. พื้นฐานที่ใช้ร่วมกันนี้ช่วยให้เอนจิน Fabric ต่าง ๆ ทํางานกับข้อมูลเดียวกันโดยไม่ต้องย้ายหรือฟอร์แมตใหม่สําหรับแต่ละประสบการณ์ เครื่องมือและบริการที่รองรับ ADLS Gen2 เช่น Azure Databricks, Azure Synapse Analytics และแอปพลิเคชันที่กําหนดเอง ก็สามารถเข้าถึงข้อมูลเดียวกันจากภายนอก Fabric ได้เช่นกัน

ข้อกำหนดเบื้องต้น

สืบค้นตารางโดยใช้จุดสิ้นสุดการวิเคราะห์ SQL

บ้านพักทุกหลังในทะเลสาบจะได้รับ SQL analytics endpoint โดยอัตโนมัติ endpoint จะอ่านโดยตรงจากตาราง Delta ใน OneLake ดังนั้นคุณสามารถรันคําสั่ง T-SQL กับข้อมูลบ้านพักของคุณโดยไม่ต้องคัดลอกไปยัง SQL store แยกต่างหาก

  1. ในพอร์ทัล Fabric เปิดพื้นที่ทํางานที่มีบ้านพักริมทะเลสาบของคุณและเลือกบ้านพักริมทะเลสาบ

  2. ที่มุมขวาบนของบ้านพักทะเลสาบ ให้เลือก วิเคราะห์ข้อมูลด้วย>ปลายทางวิเคราะห์ SQL จากเมนูแบบเลื่อนลงเพื่อสลับไปยังปลายทางวิเคราะห์ SQL ของรายการเดียวกัน

    ภาพหน้าจอของพอร์ทัล Fabric ที่แสดงการสลับไปยังปลายทางวิเคราะห์ SQL

  3. ในเมนูจุดสิ้นสุดการวิเคราะห์ SQL ให้เลือก คําค้น SQL ใหม่

  4. ในตัวแก้ไขคําสั่งค้นหา ให้รันคําสั่งค้นหาต่อไปนี้กับ dim_products ตาราง:

    คําค้นนี้จัดกลุ่มตามหมวดหมู่และหมวดย่อยเพื่อแสดงจํานวนสินค้าและราคาเฉลี่ย

    SELECT
       category,
       subcategory,
       COUNT(*) AS products,
       ROUND(AVG(standard_price), 2) AS avg_price
    FROM (
       SELECT
          product_id,
          category,
          subcategory,
          standard_price,
          ROW_NUMBER() OVER (
             PARTITION BY product_id
             ORDER BY from_date DESC
          ) AS rn
       FROM dbo.dim_products
    ) latest
    WHERE rn = 1
    GROUP BY category, subcategory
    ORDER BY avg_price DESC;
    
  5. ตรวจสอบผลลัพธ์ในบานหน้าต่างผลลัพธ์ของคําสั่งค้นหา

    ภาพหน้าจอของพอร์ทัล Fabric ที่แสดงผลลัพธ์ของคําสั่ง SQL

คุณได้สอบถามตารางโดยไม่ย้ายหรือทําสําเนา จุดเชื่อมต่อ SQL analytics อ่านไฟล์ Delta เดียวกันกับ Lakehouse ใน OneLake

สร้างรายงาน Power BI ในโหมด Direct Lake

Direct Lake เป็นโหมดจัดเก็บข้อมูลของ Power BI ที่อ่านตาราง Delta จาก OneLake ดังนั้นโมเดลเชิงความหมายจึงสามารถให้บริการรายงานโดยไม่ต้องนําเข้าหรือทําซ้ําข้อมูล Direct Lake มีสองโหมดที่อ่านข้อมูลจาก OneLake ได้ทั้งคู่: Direct Lake บน OneLake และ Direct Lake บน SQL ทั้งสองแตกต่างกันในวิธีที่โมเดลเชิงความหมายค้นหาตารางและบังคับใช้สิทธิ์ เนื่องจาก quickstart นี้เริ่มต้นจากปลายทาง SQL analytics flow จึงสร้างโมเดล Direct Lake on SQL semantic model

ในส่วนนี้ คุณจะสร้างโมเดลเชิงความหมายและรายงานง่าย ๆ บนตารางเดียวกันdim_products

มุมมองรายงานจะแสดงราคาสินค้าเฉลี่ยตาม category, โดยแต่ละแถบจะแบ่งด้วย subcategory.

  1. จากเมนู SQL analytics endpoint ให้เลือก โมเดลความหมายใหม่

    ภาพหน้าจอของพอร์ทัล Fabric ที่แสดงการสร้างโมเดลเชิงความหมายจากปลายทาง SQL analytics

  2. ป้อนชื่อสําหรับโมเดลเชิงความหมาย เช่น dim_products_model. เลือกdim_productsตาราง แล้วเลือก ยืนยัน

  3. จากเมนูโมเดลเชิงความหมาย ให้เลือก รายงานใหม่

    ภาพหน้าจอของพอร์ทัล Fabric ที่แสดงการสร้างรายงานจากโมเดลเชิงความหมาย

  4. ในประสบการณ์การเขียนรายงาน ให้ขยายdim_productsตารางในแผงข้อมูล

  5. ในบานหน้าต่างการแสดงผล ให้เลือกแผนภูมิคอลัมน์ซ้อน

    ภาพหน้าจอของพอร์ทัล Fabric ที่แสดงภาพการเลือกแผนภูมิคอลัมน์ซ้อน

  6. ลากcategoryไปที่แกน X

  7. ลากstandard_priceไปที่แกน Y แล้วตั้งค่าการรวมเป็น Average

  8. ลาก subcategory ไปที่ คําอธิบายเพื่อ แบ่งแต่ละหมวดหมู่ออกเป็นหมวดหมู่ย่อย

    ภาพหน้าจอของพอร์ทัล Fabric ที่แสดงผลลัพธ์ของขั้นตอนการสร้างรายงาน

  9. บนริบบอน ให้เลือก File>Save และบันทึกรายงานลงในพื้นที่ทํางานของคุณ

รายงานนี้อ่านจากตาราง Delta เดียวกันใน OneLake ที่คุณเพิ่งสอบถามด้วย T-SQL คุณไม่ได้สร้างสําเนาข้อมูลที่สองเพื่อขับเคลื่อนรายงาน

อ่านตารางเดียวกันจากสมุดบันทึก Spark

โน้ตบุ๊ก Fabric ให้เอนจินที่สามกับข้อมูลเดียวกัน Spark อ่าน dim_products ตาราง Delta โดยตรงจาก OneLake โดยไม่ต้องผ่าน SQL analytics endpoint หรือโมเดลเชิงความหมาย ขั้นตอนนี้แสดงให้เห็นว่าเอนจินที่มีสแตกคําสั่งค้นหาที่แตกต่างกันโดยสิ้นเชิงจะทํางานจากไฟล์พื้นฐานเดียวกัน

  1. กลับไปที่บ้านริมทะเลสาบที่มี dim_products.

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

  3. ในเซลล์โค้ดแรก วางโค้ด PySpark ต่อไปนี้:

    รหัสนี้ใช้ from_date เป็นมิติเวลาและสรุปจํานวนสินค้าและราคาเฉลี่ยตามช่วงเวลาและหมวดหมู่

    from pyspark.sql import functions as F
    
    df = spark.read.table("dim_products")
    
    summary = (
       df.groupBy("from_date", "category")
       .agg(
          F.count("*").alias("products"),
          F.round(F.avg("standard_price"), 2).alias("avg_price"),
       )
       .orderBy(F.col("from_date"), F.col("avg_price").desc())
    )
    
    display(summary)
    
  4. เลือก Run cell (หรือกด Shift+Enter) เพื่อรันเซลล์ ผลลัพธ์แสดงให้เห็นว่าราคาเฉลี่ยแตกต่างกันอย่างไรในแต่ละหมวดหมู่ในแต่ละวันที่มีผลบังคับใช้

    ภาพหน้าจอของพอร์ทัล Fabric ที่แสดงผลลัพธ์ของโค้ดโน้ตบุ๊ก

สปาร์กอ่านไฟล์ Delta ใน OneLake โดยตรง ไม่มีข้อมูลใดถูกก็อปปี้ไปยังร้านค้าเฉพาะของ Spark และตารางที่คุณค้นหาก็เป็นตารางเดียวกับที่สนับสนุนโมเดลความหมายของคุณ ตอนนี้คุณมีสําเนาข้อมูลหนึ่งชุดใน OneLake ที่เอนจินสามตัว—จุดสิ้นสุดการวิเคราะห์ SQL, Power BI Direct Lake และ Spark—ใช้ผ่านการจัดเก็บแบบเปิดและรูปแบบตารางแบบเปิด โดยไม่ต้องย้ายหรือปรับรูปแบบข้อมูล

ล้างแหล่งข้อมูล

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

  1. ในพื้นที่ทํางานของคุณ ให้วางเมาส์เหนือโมเดลความหมายที่คุณสร้างขึ้นแล้วเลือกเมนูตัวเลือกเพิ่มเติม (...) จากนั้นเลือก ลบ
  2. ทําซ้ําสําหรับรายงานและสมุดบันทึกในพื้นที่ทํางานของคุณ

การลบรายงาน โมเดลความหมาย หรือสมุดบันทึกจะไม่ส่งผลกระทบต่อบ้าน dim_products พักและโต๊ะที่อยู่เบื้องหลัง