แชร์ผ่าน


คิวรี Fabric OneLake ตารางเดลต้าจาก Snowflake

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

ภาพหน้าจอของไดอะแกรมเวิร์กโฟลว์ รวมถึงการนําเข้าข้อมูล การวิเคราะห์ และการส่งออกไปยังเกล็ดหิมะ

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

ตั้งค่าข้อมูลสาธิต Fabric

  1. ขั้นแรก ให้สร้างสภาพแวดล้อมของคุณใน Fabric:
    1. เลือกพื้นที่ทํางานของคุณจากแถบนําทางด้านซ้าย
    2. สร้างสตรีมเหตุการณ์ใหม่จากแหล่งข้อมูลที่มีอยู่หรือจากข้อมูลตัวอย่าง สําหรับคําแนะนําทีละขั้นตอน โปรดดู สร้างสตรีมเหตุการณ์ ภาพหน้าจอของแหล่งข้อมูลเสริมใน Fabric
    3. สร้างบ้านกิจกรรมและเชื่อมต่อกับสตรีมเหตุการณ์ที่คุณสร้างไว้ก่อนหน้านี้ สําหรับคําแนะนําทีละขั้นตอน โปรดดู สร้างบ้านกิจกรรม
    4. สร้างเลคเฮาส์ใหม่โดยใช้ ข้อมูลตัวอย่าง และตั้งค่า eventhub เป็นปลายทางเพื่อสร้างตารางใหม่
      ไดอะแกรมที่แสดงโฟลว์ข้อมูลใน Fabric
  2. จากนั้นเปิดใช้งาน ความพร้อมใช้งานของ OneLake:
    1. ในฐานข้อมูล EventHouse KQL ให้เปิดความพร้อมใช้งานของ OneLake สกรีนช็อตของการสลับความพร้อมใช้งานของ OneLake ในฐานข้อมูล EventHouse KQL
  3. ปรับเวลาซิงค์ให้เหมาะสม:
    1. กําหนดอัตราเป้าหมายเวลาแฝงต่ําเพื่อหลีกเลี่ยงความล่าช้าที่ยาวนาน ค่าเริ่มต้นอาจสูงสุด 3 ชั่วโมง
    2. เรียกใช้แบบสอบถาม KQL นี้เพื่อตั้งค่าอัตราเป้าหมาย:
    .alter-merge table <TableName> policy mirroring dataformat=parquet with (IsEnabled=true, TargetLatencyInMinutes=5)
    
  4. สร้างเลคเฮาส์:
    1. ใน Lakehouse ของคุณ ให้เลือกทางลัด ตารางใหม่> ภาพหน้าจอของตัวเลือกทางลัดใหม่ในเมนูแบบเลื่อนลง
    2. เลือก Microsoft OneLake เป็นแหล่งที่มา ภาพหน้าจอของไทล์ Microsoft OneLake สําหรับสร้างทางลัด
    3. นําทาง และเลือกฐานข้อมูล KQL และตารางที่คุณสร้างขึ้นใน EventHouse ภาพหน้าจอของการเชื่อมต่อทางลัดใหม่กับข้อมูล

กําหนดค่า Snowflake

  1. เริ่มต้นใช้งาน Snowflake:

    1. ลงชื่อเข้าใช้หรือสร้างบัญชี Snowflake หากคุณยังไม่มี ลงทะเบียน เพื่อทดลองใช้ฟรี 30 วัน
    2. ตั้งค่าคลังสินค้าและฐานข้อมูล Snowflake
  2. สร้างการรวมแค็ตตาล็อก

    CREATE OR REPLACE CATALOG INTEGRATION delta_catalog_integration
    CATALOG_SOURCE = OBJECT_STORE
    TABLE_FORMAT = DELTA
    ENABLED = TRUE
    
  3. เชื่อมโยงฐานข้อมูลกับแค็ตตาล็อก

    ALTER DATABASE <database_name>
    SET CATALOG = 'delta_catalog_integration'
    
  4. สร้างโวลุ่มภายนอกไปยัง OneLake

    CREATE OR REPLACE EXTERNAL VOLUME onelake
    STORAGE_LOCATIONS = (
      (
        NAME = 'my-onelake',
        STORAGE_PROVIDER = 'AZURE',
        STORAGE_BASE_URL = 'azure://onelake.dfs.fabric.microsoft.com/<workspace-guid>/<lakehouse-guid>/Tables/',
        AZURE_TENANT_ID = '<your-tenant-id>'
      )
    )
    
  5. สร้างและให้สิทธิ์บริการหลักของ Snowflake

    DESC EXTERNAL VOLUME onelake
    
    1. จากเอาต์พุต JSON ให้ค้นหา:
      1. AZURE_CONSENT_URL
      2. AZURE_MULTI_TENANT_APP_NAME
    2. ไปที่ AZURE_CONSENT_URL และลงชื่อเข้าใช้ด้วยผู้ใช้ที่สามารถสร้างบริการหลักได้ บริการหลักถูกสร้างขึ้น
  6. ให้สิทธิ์การเข้าถึงใน Fabric:

    1. ใน Fabric ให้สิทธิ์การเข้าถึง Lakehouse (พื้นที่ทํางานหรือระดับรายการ) แก่ผู้ให้บริการหลัก
    2. คุณสามารถเพิ่มเป็นสมาชิกพื้นที่ทํางานหรือใช้สิทธิ์ที่ละเอียดยิ่งขึ้น
  7. ยืนยันการเข้าถึง:

    SELECT SYSTEM$VERIFY_EXTERNAL_VOLUME('onelake')
    
    • คุณควรเห็นข้อความสําเร็จยืนยันการเข้าถึงการอ่าน/เขียน/แสดงรายการ/ลบ

สร้างและสอบถามตาราง Iceberg

  1. สร้างตาราง Iceberg ใน Snowflake:

    CREATE OR REPLACE ICEBERG TABLE onelaketest
    EXTERNAL_VOLUME = 'onelake'
    CATALOG = 'delta_catalog_integration'
    BASE_LOCATION = '<table_name_in_onelake>/'
    AUTO_REFRESH = TRUE
    
    • AUTO_REFRESH ช่วยให้มั่นใจได้ว่าข้อมูลเมตาจะซิงค์กับการอัปเดตของเดลต้า
  2. สอบถามตาราง Iceberg:

    SELECT COUNT(*) FROM MyDATABASE.ONELAKETEST