สร้างเลคเฮ้าส์สําหรับ Direct Lake

บทความนี้อธิบายวิธีการสร้างเลคเฮาส์ สร้างตาราง Delta ในเลคเฮ้าส์ จากนั้นสร้างแบบจําลองความหมายพื้นฐานสําหรับเลคเฮ้าส์ในพื้นที่ทํางานของ Microsoft Fabric

ก่อนที่จะเริ่มสร้างเลคเฮาส์สําหรับ Direct Lake อย่าลืมอ่าน ภาพรวม Direct Lake ก่อน

สร้างเลคเฮ้าส์

  1. ในพื้นที่ทํางาน Microsoft Fabric ของคุณ ให้เลือก ใหม่>ตัวเลือกเพิ่มเติม จากนั้นวิศวกรข้อมูล เลือกไทล์เลคเฮ้าส์

    สกรีนช็อตแสดงไทล์ของเลคเฮ้าส์ในวิศวกรรมข้อมูล

  2. ในกล่องโต้ตอบ New lakehouse ใส่ชื่อ จากนั้นเลือก สร้าง ชื่อสามารถมีอักขระพยัญชนะผสมตัวเลขและเครื่องหมายขีดล่างเท่านั้น

    สกรีนช็อตที่แสดงกล่องโต้ตอบของเลคเฮ้าส์ใหม่

  3. ตรวจสอบว่าการสร้างและเปิดเลคเฮ้าส์ใหม่สําเร็จ

    สกรีนช็อตของเลคเฮ้าส์ที่สร้างขึ้นในพื้นที่ทํางาน

สร้างตารางเดลต้าในเลคเฮาส์

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

มีหลายตัวเลือกในการโหลดข้อมูลลงใน lakehouse รวมถึงไปป์ไลน์ข้อมูลและสคริปต์ ขั้นตอนต่อไปนี้ใช้ PySpark เพื่อเพิ่มตาราง Delta ไปยังเลคเฮาส์โดยยึดตาม ชุดข้อมูล Azure Open:

  1. ในเลคเฮ้าส์ที่สร้างขึ้นใหม่ เลือก เปิดสมุดบันทึก จากนั้นเลือก สมุดบันทึกใหม่

    สกรีนช็อตที่แสดงคําสั่งสมุดบันทึกใหม่

  2. คัดลอกและวางส่วนย่อยของโค้ดต่อไปนี้ลงในเซลล์โค้ดแรกเพื่อให้ SPARK เข้าถึงแบบจําลองที่เปิดอยู่ จากนั้นกด Shift + Enter เพื่อเรียกใช้โค้ด

    # Azure storage access info
    blob_account_name = "azureopendatastorage"
    blob_container_name = "holidaydatacontainer"
    blob_relative_path = "Processed"
    blob_sas_token = r""
    
    # Allow SPARK to read from Blob remotely
    wasbs_path = 'wasbs://%s@%s.blob.core.windows.net/%s' % (blob_container_name, blob_account_name, blob_relative_path)
    spark.conf.set(
      'fs.azure.sas.%s.%s.blob.core.windows.net' % (blob_container_name, blob_account_name),
      blob_sas_token)
    print('Remote blob path: ' + wasbs_path)
    
    
  3. ตรวจสอบรหัสว่าแสดงเส้นทาง blob ระยะไกลได้สําเร็จหรือไม่

    สกรีนช็อตที่แสดงผลลัพธ์เส้นทาง blob ระยะไกล

  4. คัดลอกและวางรหัสต่อไปนี้ลงในเซลล์ถัดไป จากนั้นกด Shift + Enter

    # Read Parquet file into a DataFrame.
    df = spark.read.parquet(wasbs_path)
    print(df.printSchema())
    
    
  5. ตรวจสอบรหัสว่าแสดงผล Schema ของ DataFrame สําเร็จแล้ว

    สกรีนช็อตที่แสดงเอาต์พุต Schema ของ dataframe

  6. คัดลอกและวางบรรทัดต่อไปนี้ลงในเซลล์ถัดไป จากนั้นกด Shift + Enter คําแนะนําแรกเปิดใช้งานวิธีการบีบอัด VORDER และคําแนะนําถัดไปจะบันทึก DataFrame เป็นตาราง Delta ใน lakehouse

    # Save as delta table 
    spark.conf.set("spark.sql.parquet.vorder.enabled", "true")
    df.write.format("delta").saveAsTable("holidays")
    
    
  7. ตรวจสอบงาน SPARK ทั้งหมดเสร็จสมบูรณ์ ขยายรายการงาน SPARK เพื่อดูรายละเอียดเพิ่มเติม

    สกรีนช็อตที่แสดงรายการงาน SPARK ที่ขยายแล้ว

  8. เพื่อตรวจสอบว่าตารางถูกสร้างขึ้นเรียบร้อยแล้ว ในพื้นที่ด้านบนซ้ายถัดจาก ตาราง เลือกจุดไข่ปลา (...) จากนั้นเลือก รีเฟรช จากนั้นขยายโหนด ตาราง

    สกรีนช็อตที่แสดงคําสั่งรีเฟรชใกล้กับโหนดตาราง

  9. ใช้วิธีเดียวกับด้านบนหรือวิธีการอื่นๆ ที่รองรับ เพิ่มตาราง Delta เพิ่มเติมสําหรับข้อมูลที่คุณต้องการวิเคราะห์

สร้างแบบจําลอง Direct Lake พื้นฐานสําหรับเลคเฮ้าส์ของคุณ

  1. ในเลคเฮ้าส์ของคุณ ให้เลือก แบบจําลองความหมายใหม่ จากนั้นในกล่องโต้ตอบ ให้เลือกตารางที่จะรวมไว้

    ภาพหน้าจอของกล่องโต้ตอบเพื่อสร้างแบบจําลองใหม่

  2. เลือก ยืนยัน เพื่อสร้างแบบจําลอง Direct Lake แบบจําลองจะถูกบันทึกโดยอัตโนมัติในพื้นที่ทํางานตามชื่อของเลคเฮ้าส์ของคุณ จากนั้นจะเปิดแบบจําลอง

    สกรีนช็อตที่แสดงแบบจําลองที่เปิดใน Power BI

  3. เลือก เปิดแบบจําลอง ข้อมูล เพื่อเปิดประสบการณ์การสร้างแบบจําลองเว็บซึ่งคุณสามารถเพิ่มความสัมพันธ์ของตารางและหน่วยวัด DAX ได้

    สกรีนช็อตที่แสดงการสร้างแบบจําลองเว็บใน Power BI

เมื่อคุณเพิ่มความสัมพันธ์และหน่วยวัด DAX เสร็จแล้ว คุณสามารถสร้างรายงาน สร้างแบบจําลองแบบรวม และคิวรีแบบจําลองผ่านจุดสิ้นสุด XMLA ในลักษณะเดียวกับแบบจําลองอื่น ๆ