รับข้อมูลจาก Azure Storage

ในบทความนี้ คุณจะได้เรียนรู้วิธีรับข้อมูลจาก Azure Storage (คอนเทนเนอร์ Azure Data Lake Storage รุ่น2, คอนเทนเนอร์ Blob หรือ Blob แต่ละรายการ) ลงในตารางในฐานข้อมูล KQL คุณสามารถนําเข้าข้อมูลอย่างต่อเนื่องหรือเป็นการนําเข้าครั้งเดียว หลังจากการนําเข้าเสร็จสมบูรณ์ ข้อมูลจะพร้อมใช้งานสําหรับการสืบค้น

  • การนําเข้าอย่างต่อเนื่อง (พรีวิว): การนําเข้าอย่างต่อเนื่องจะตั้งค่าไปป์ไลน์การนําเข้าที่อนุญาตให้บ้านเหตุการณ์สามารถฟังเหตุการณ์ Azure Storage ได้ ไปป์ไลน์จะแจ้งให้ eventhouse ดึงข้อมูลเมื่อมีเหตุการณ์ที่สมัครใช้งานเกิดขึ้น เหตุการณ์คือ BlobCreated และ BlobRename

  • การนําเข้าแบบครั้งเดียว: ใช้วิธีนี้เพื่อดึงข้อมูลจาก Azure Storage เป็นการดําเนินการแบบครั้งเดียว

    Note

Prerequisites

ข้อกําหนดเบื้องต้นสําหรับการนําเข้าอย่างต่อเนื่อง

ใน Azure:

  • ลงทะเบียนผู้ให้บริการทรัพยากรกริดเหตุการณ์ กับการสมัครใช้งาน Azure ของคุณ
  • กําหนดสิทธิ์บทบาท ตัวอ่านข้อมูล Blob ของที่เก็บข้อมูล ให้กับข้อมูลประจําตัวของพื้นที่ทํางาน
  • สร้างคอนเทนเนอร์ Blob เพื่อเก็บไฟล์ข้อมูล
    • อัปโหลดไฟล์ข้อมูล โครงสร้างไฟล์ข้อมูลถูกใช้เพื่อกําหนดโครงสร้างตาราง สําหรับข้อมูลเพิ่มเติม ให้ดู รูปแบบข้อมูล ที่ได้รับการสนับสนุนโดย Real-Time Intelligence

      Note

      คุณต้องอัปโหลดไฟล์ข้อมูล:

      • ก่อน การตั้งค่าคอนฟิก เพื่อกําหนด schema ตารางระหว่างการตั้งค่า
      • หลังจากการกําหนดค่าเพื่อทริกเกอร์การนําเข้าอย่างต่อเนื่อง เพื่อแสดงตัวอย่างข้อมูล และเพื่อตรวจสอบการเชื่อมต่อ

      Note

      การนําเข้าอย่างต่อเนื่องจาก Azure Storage ยังได้รับการสนับสนุนเมื่อมีการกําหนดค่าบัญชีที่เก็บข้อมูลด้วยจุดสิ้นสุดส่วนตัว (Private Link) ตรวจสอบให้แน่ใจว่าพื้นที่ทํางาน Fabric สามารถเข้าถึงบัญชีที่เก็บข้อมูลผ่านเส้นทางเครือข่ายส่วนตัวที่กําหนดค่าไว้

เพิ่มการกําหนดบทบาทข้อมูลประจําตัวของพื้นที่ทํางานให้กับบัญชีเก็บข้อมูล

  1. จากการตั้งค่าพื้นที่ทํางานใน Fabric ให้คัดลอกรหัสประจําตัวพื้นที่ทํางานของคุณ

    สกรีนช็อตของการตั้งค่าพื้นที่ทํางานที่มี ID พื้นที่ทํางานที่ถูกไฮไลต์ไว้

  2. ในพอร์ทัล Azure ให้เรียกดูบัญชี Azure Storage ของคุณ แล้วเลือก การควบคุมการเข้าถึง (IAM)>Add>Add role assignment

  3. เลือกตัวอ่านข้อมูล Blob ที่เก็บข้อมูล

  4. ในกล่องโต้ตอบ เพิ่มการกําหนดบทบาท เลือก + เลือกสมาชิก

  5. วางรหัสข้อมูลประจําตัวของพื้นที่ทํางาน เลือกแอปพลิเคชัน แล้วเลือก ตรวจสอบ>+ มอบหมาย

สร้างคอนเทนเนอร์ Blob และอัปโหลดไฟล์ข้อมูล

  1. ในบัญชีที่เก็บข้อมูล ให้เลือก คอนเทนเนอร์

  2. เลือก + คอนเทนเนอร์ ป้อนชื่อสําหรับคอนเทนเนอร์ และเลือก บันทึก

  3. ป้อนคอนเทนเนอร์ เลือก อัปโหลด และอัปโหลดไฟล์ข้อมูลที่เตรียมไว้ก่อนหน้านี้

    สําหรับข้อมูลเพิ่มเติม โปรดดู รูปแบบที่รองรับและการบีบอัดที่รองรับ

  4. จากเมนูบริบท [...] ให้เลือก คุณสมบัติคอนเทนเนอร์ และคัดลอก URL เพื่อป้อนข้อมูลระหว่างการกําหนดค่า

    สกรีนช็อตของรายการคอนเทนเนอร์ที่มีเมนูบริบทเปิดอยู่ และไฮไลต์ตัวเลือก คุณสมบัติคอนเทนเนอร์

เลือก Azure Storage เป็นแหล่งข้อมูล

เปิดโฟลว์ รับข้อมูล และเลือก Azure Storage เป็นแหล่งข้อมูล

  1. จากพื้นที่ทํางานของคุณ ให้เปิดบ้านเหตุการณ์ แล้วเลือกฐานข้อมูล

  2. บน Ribbon ฐานข้อมูล KQL ให้เลือก รับข้อมูล

  3. เลือกแหล่งข้อมูลจากรายการที่พร้อมใช้งาน ในตัวอย่างนี้ คุณกําลังนําเข้าข้อมูลจาก Azure Storage

    สกรีนช็อตของไทล์รับข้อมูลโดยเน้นตัวเลือกที่เก็บข้อมูล Azure

Configure

  1. เลือกตารางปลายทาง หากต้องการนําเข้าข้อมูลลงในตารางใหม่ ให้เลือก + ตารางใหม่ แล้วป้อนชื่อตาราง

    Note

    ชื่อตารางสามารถมีอักขระได้สูงสุด 1,024 ตัว รวมถึงช่องว่าง อักขระที่เป็นตัวอักษรและตัวเลข ยัติภังค์ และขีดล่าง ไม่รองรับอักขระพิเศษ

  2. ใน กําหนดค่าการเชื่อมต่อ Azure Blob Storage ตรวจสอบให้แน่ใจว่าการนําเข้าแบบต่อเนื่องเปิดอยู่ ซึ่งเปิดใช้งานตามค่าเริ่มต้น

  3. กําหนดค่าการเชื่อมต่อโดยการสร้างการเชื่อมต่อใหม่หรือโดยใช้การเชื่อมต่อที่มีอยู่

    วิธีการสร้างการเชื่อมต่อใหม่:

    1. เลือกเชื่อมต่อกับบัญชีเก็บข้อมูล

      สกรีนช็อตของการกําหนดค่าแท็บที่มีการนําเข้าอย่างต่อเนื่องและเชื่อมต่อกับบัญชีที่เลือก

    2. ใช้คําอธิบายต่อไปนี้เพื่อช่วยกรอกข้อมูลในฟิลด์

      Setting คําอธิบายฟิลด์
      Subscription การสมัครใช้งานบัญชีเก็บข้อมูล
      บัญชีที่เก็บข้อมูล Blob ชื่อบัญชีที่เก็บข้อมูล
      Container คอนเทนเนอร์ที่เก็บข้อมูลที่มีไฟล์ที่คุณต้องการส่ง
    3. ในฟิลด์ การเชื่อมต่อ ให้เปิดดรอปดาวน์ แล้วเลือก + การเชื่อมต่อใหม่ แล้วเลือก บันทึก>ปิด การตั้งค่าการเชื่อมต่อมีไว้ล่วงหน้า

    Note

    เมื่อคุณสร้างการเชื่อมต่อใหม่ คุณจะสร้างสตรีมเหตุการณ์ใหม่ด้วย ชื่อถูกกําหนดเป็น<storage_account_name>_eventstream อย่าลบสตรีมเหตุการณ์การนําเข้าอย่างต่อเนื่องออกจากพื้นที่ทํางาน

    เมื่อต้องใช้การเชื่อมต่อที่มีอยู่:

    1. เลือก เลือกบัญชีเก็บข้อมูลที่มีอยู่

      สกรีนช็อตของการกําหนดค่าแท็บที่มีการนําเข้าอย่างต่อเนื่องและเชื่อมต่อกับบัญชีที่มีอยู่ที่เลือกไว้

    2. ใช้คําอธิบายต่อไปนี้เพื่อช่วยกรอกข้อมูลในฟิลด์

      Setting คําอธิบายฟิลด์
      RTAStorageAccount สตรีมเหตุการณ์ที่เชื่อมต่อกับบัญชีที่เก็บข้อมูลของคุณจาก Fabric
      Container คอนเทนเนอร์ที่เก็บข้อมูลที่มีไฟล์ที่คุณต้องการส่ง
      Connection ฟิลด์นี้ถูกเติมไว้ล่วงหน้าด้วย สายอักขระการเชื่อมต่อ
    3. ในฟิลด์ Connection ให้เปิดดรอปดาวน์และเลือก สายอักขระการเชื่อมต่อ ที่มีอยู่จากรายการ จากนั้นเลือก บันทึกปิด>

  4. หรือขยายตัวกรอง ไฟล์ และระบุตัวกรองต่อไปนี้:

    Setting คําอธิบายฟิลด์
    เส้นทางโฟลเดอร์ กรองข้อมูลเพื่อนําเข้าไฟล์ด้วยเส้นทางโฟลเดอร์ที่เฉพาะเจาะจง
    นามสกุลไฟล์ กรองข้อมูลเพื่อนําเข้าไฟล์ที่มีนามสกุลไฟล์เฉพาะเท่านั้น
  5. ในส่วนการตั้งค่าสตรีมเหตุการณ์ ให้เลือกเหตุการณ์ที่จะตรวจสอบในการตั้งค่า>ขั้นสูงประเภทเหตุการณ์ โดยค่าเริ่มต้น Blob ที่สร้างขึ้น จะถูกเลือก คุณยังสามารถเลือก Blob เปลี่ยนชื่อ

    สกรีนช็อตของการตั้งค่าขั้นสูงที่มีดรอปดาวน์ประเภทเหตุการณ์ที่ขยาย

  6. เลือก ถัดไป เพื่อดูตัวอย่างข้อมูล

ตรวจสอบข้อมูลตัวอย่างก่อนนําเข้า

แท็บ ตรวจสอบ จะเปิดขึ้นพร้อมกับตัวอย่างข้อมูล

หากต้องการดําเนินการนําเข้าให้เสร็จสมบูรณ์ ให้เลือกเสร็จสิ้น

สกรีนช็อตของแท็บ ตรวจสอบ ที่แสดงตัวอย่างข้อมูลที่นําเข้าก่อนเลือก เสร็จสิ้น

Note

หากต้องการทริกเกอร์การนําเข้าอย่างต่อเนื่องและแสดงตัวอย่างข้อมูล ให้อัปโหลด Blob ใหม่หลังจากที่คุณกําหนดค่าเสร็จสมบูรณ์

Optionally:

  • ใช้ดรอปดาวน์ของไฟล์ข้อกําหนดสคีมาเพื่อเปลี่ยนไฟล์ที่อนุมาน schema

  • ใช้ดรอปดาวน์ชนิดไฟล์เพื่อสํารวจตัวเลือกขั้นสูงตามชนิดข้อมูล

  • ใช้ดรอปดาวน์ Table_mapping เพื่อกําหนดการแม็ปใหม่

  • เลือก </> เพื่อเปิดตัวแสดงคําสั่งเพื่อดูและคัดลอกคําสั่งอัตโนมัติที่สร้างขึ้นจากอินพุตของคุณ คุณยังสามารถเปิดคําสั่งในชุดคิวรี KQL ได้อีกด้วย

  • เลือกไอคอนดินสอเพื่อแก้ไขคอลัมน์

แก้ไขคอลัมน์

Note

  • สําหรับรูปแบบตาราง (CSV, TSV, PSV) คุณไม่สามารถแมปคอลัมน์สองครั้ง เมื่อต้องการแมปไปยังคอลัมน์ที่มีอยู่ ก่อนอื่นให้ลบคอลัมน์ใหม่
  • คุณไม่สามารถเปลี่ยนชนิดคอลัมน์ที่มีอยู่ได้ ถ้าคุณพยายามแมปไปยังคอลัมน์ที่มีรูปแบบที่แตกต่างกัน คุณอาจมีคอลัมน์ที่ว่างเปล่า

การเปลี่ยนแปลงที่คุณสามารถทําได้ในตารางขึ้นอยู่กับพารามิเตอร์ต่อไปนี้:

  • ชนิดของตารางเป็นของใหม่หรือที่มีอยู่
  • ชนิดการแมปเป็นแบบใหม่หรือมีอยู่
ประเภทตาราง ประเภทการแมป การปรับเปลี่ยนที่มี
ตารางใหม่ การแมปใหม่ เปลี่ยนชื่อคอลัมน์, เปลี่ยนประเภทข้อมูล, เปลี่ยนแหล่งข้อมูล, การแปลงการแมป, เพิ่มคอลัมน์, ลบคอลัมน์
ตารางที่มีอยู่ การแมปใหม่ เพิ่มคอลัมน์ (ซึ่งคุณสามารถเปลี่ยนชนิดข้อมูล เปลี่ยนชื่อ และอัปเดต)
ตารางที่มีอยู่ การแมปที่มีอยู่ none

สกรีนช็อตของตัวแก้ไขคอลัมน์ที่มีคอลัมน์ตารางเปิดอยู่สําหรับการแก้ไขชื่อ ชนิดข้อมูล และการแม็ป

การแปลงการทําแผนที่

การแมปรูปแบบข้อมูลบางอย่าง (Parquet, JSON และ Avro) สนับสนุนการแปลงข้อมูล ingest-time แบบง่าย เมื่อต้องการใช้การแปลงการแมป ให้สร้างหรือปรับปรุงคอลัมน์ในหน้าต่าง แก้ไขคอลัมน์

การแปลงข้อมูลการแมปสามารถทําได้ในคอลัมน์ของสตริงชนิดหรือวันที่เวลา ด้วยแหล่งข้อมูลที่มีชนิดข้อมูลเป็น int หรือ long สําหรับข้อมูลเพิ่มเติม โปรดดูรายการทั้งหมดของการแปลงการแมปที่รองรับ

ตัวเลือกขั้นสูงที่ยึดตามชนิดข้อมูล

ตาราง (CSV, TSV, PSV):

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

    ภาพหน้าจอของตัวเลือกขั้นสูง

  • ข้อมูลแบบตารางไม่จําเป็นต้องรวมชื่อคอลัมน์ที่ใช้ในการแมปข้อมูลต้นทางไปยังคอลัมน์ที่มีอยู่ หากต้องการใช้แถวแรกเป็นชื่อคอลัมน์ ให้เลือก แถวแรกเป็นส่วนหัวของคอลัมน์

    สกรีนช็อตของแถวแรกคือสวิตช์ส่วนหัวของคอลัมน์

ตาราง (CSV, TSV, PSV):

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

  • หากต้องการใช้แถวแรกเป็นชื่อคอลัมน์ ให้เลือกส่วนหัวของแถวแรก

    สกรีนช็อตของตัวเลือก CSV ขั้นสูง รวมถึงตัวควบคุมสําหรับส่วนหัวของแถวแรกและการตั้งค่าตัวคั่น

JSON:

  • เมื่อต้องการกําหนดการแบ่งคอลัมน์ของข้อมูล JSON ให้เลือก ระดับที่ซ้อนกัน ตั้งแต่ 1 ถึง 100

    ภาพหน้าจอของตัวเลือก JSON ขั้นสูง รวมถึงการตั้งค่าระดับที่ซ้อนกันที่ใช้ในการแยกคอลัมน์ JSON

ตรวจสอบสรุปการนําเข้า

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

สกรีนช็อตของหน้าสรุปสําหรับการนําเข้าอย่างต่อเนื่องพร้อมการนําเข้าที่สําเร็จเสร็จสมบูรณ์

เมื่อคุณปิดหน้าต่าง คุณจะเห็นการเชื่อมต่อในแท็บ Explorer ภายใต้ สตรีมข้อมูล จากที่นี่ คุณสามารถกรองสตรีมข้อมูลและลบสตรีมข้อมูลได้

สกรีนช็อตของตัวสํารวจฐานข้อมูล KQL ที่มีข้อมูลสตรีมที่เน้น