Azure Data Explorer (Kusto) และฐานข้อมูล KQL

Summary

คุณสมบัติ มูลค่า
Connector ไอคอน Azure Data Explorer (Kusto) Azure Data Explorer (Kusto)
ไอคอนฐานข้อมูล KQL ฐานข้อมูล KQL
ผลิตภัณฑ์ Azure Data Explorer (Kusto): Excel
Power BI (แบบจําลองความหมาย)
Power Query ออนไลน์
ฐานข้อมูล KQL: Power BI (แบบจําลองความหมาย)
Power Query ออนไลน์
สถานะการเผยแพร่ แสดงตัวอย่าง (ฐานข้อมูล KQL) และความพร้อมใช้งานทั่วไป (Azure Data Explorer (Kusto))
ประเภท Azure และ Fabric
ชนิดของการรับรองความถูกต้อง Microsoft Entra ID
ชนิดแหล่งข้อมูล AzureDataExplorer
เอกสารอ้างอิงฟังก์ชัน AzureDataExplorer.Contents
AzureDataExplorer.Databases
AzureDataExplorer.KqlDatabase

Note

ความสามารถบางอย่างอาจมีอยู่ในผลิตภัณฑ์เดียว แต่ไม่ใช่อย่างอื่นเนื่องจากตารางเวลาการปรับใช้และความสามารถเฉพาะของโฮสต์

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

Azure Data Explorer (Kusto)

ฐานข้อมูล KQL

คุณต้องมีสิทธิ์ในการอ่านฐานข้อมูล KQL

ความสามารถที่รองรับ

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

พารามิเตอร์

Azure Data Explorer (Kusto)

จุดเข้าใช้งาน:AzureDataExplorer.Contents

จํานวนพารามิเตอร์ที่จําเป็น: 1

นําเข้าข้อมูลจาก Azure Data Explorer (Kusto)

นําเข้าข้อมูลจากอินสแตนซ์ Azure Data Explorer (Kusto) ของคุณ

พารามิเตอร์ ชื่อที่แสดง จำเป็นต้องระบุ ประเภท กลุ่ม ค่าตัวอย่าง Nullable เมตาดาต้าเพิ่มเติม
กลุ่มเครื่อง คลัสเตอร์ Yes SMS "https://mycluster.kusto.windows.net" false
ฐานข้อมูล ฐานข้อมูล No ข้อความที่ว่างได้ "MyDatabase" จริง
tableOrQuery ชื่อตารางหรือคิวรี Azure Data Explorer No ข้อความที่ว่างได้ "รายการบันทึก | บันทึก where [Timestamp] > ago(1h)"; "TracesTable" จริง {"Formatting.IsCode": true, "Formatting.IsMultiLine": true}
ตัวเลือก ตัวเลือกขั้นสูง No ระเบียนที่เป็นโมฆะ ตัวเลือกขั้นสูง จริง

เขตข้อมูลใน options

ฟิลด์ ชื่อที่แสดง จำเป็นต้องระบุ ประเภท กลุ่ม ค่าตัวอย่าง Nullable ไม่จำเป็นต้องระบุ
ตัวเลือก MaxRows จํากัดหมายเลขระเบียนผลลัพธ์คิวรี No ตัวเลข ตัวเลือกขั้นสูง "500000" false จริง
ตัวเลือก ขนาดสูงสุด จํากัดขนาดข้อมูลผลลัพธ์คิวรีเป็นไบต์ No ตัวเลข ตัวเลือกขั้นสูง "67108864" false จริง
ตัวเลือก NoTruncate ปิดใช้งานการตัดทอนชุดผลลัพธ์ No มีเหตุผล ตัวเลือกขั้นสูง "เท็จ" false จริง
ตัวเลือก AdditionalSetStatements คําสั่งชุดเพิ่มเติม (คั่นด้วยเครื่องหมายอัฒภาค) No SMS ตัวเลือกขั้นสูง "ตั้งค่า query_datascope=hotcache;" false จริง

ฐานข้อมูล KQL

จุดเข้าใช้งาน:AzureDataExplorer.KqlDatabase

จํานวนพารามิเตอร์ที่จําเป็น: 0

นําเข้าข้อมูลจากคลัสเตอร์ Fabric Kusto ในโหมดการค้นพบ

นําเข้าข้อมูลจากอินสแตนซ์ฐานข้อมูล KQL ของคุณ

พารามิเตอร์ ชื่อที่แสดง จำเป็นต้องระบุ ประเภท กลุ่ม ค่าตัวอย่าง Nullable เมตาดาต้าเพิ่มเติม
กลุ่มเครื่อง คลัสเตอร์ No ข้อความที่ว่างได้ "https://mycluster.kusto.windows.net" จริง
ฐานข้อมูล ฐานข้อมูล No ข้อความที่ว่างได้ "MyDatabase" จริง
tableOrQuery ชื่อตารางหรือคิวรี Azure Data Explorer No ข้อความที่ว่างได้ "รายการบันทึก | บันทึก where [Timestamp] > ago(1h)"; "TracesTable" จริง {"Formatting.IsCode": true, "Formatting.IsMultiLine": true}
ตัวเลือก ตัวเลือกขั้นสูง No ระเบียนที่เป็นโมฆะ ตัวเลือกขั้นสูง จริง

เขตข้อมูลใน options

ฟิลด์ ชื่อที่แสดง จำเป็นต้องระบุ ประเภท กลุ่ม ค่าตัวอย่าง Nullable ไม่จำเป็นต้องระบุ
ตัวเลือก MaxRows จํากัดหมายเลขระเบียนผลลัพธ์คิวรี No ตัวเลข ตัวเลือกขั้นสูง "500000" false จริง
ตัวเลือก ขนาดสูงสุด จํากัดขนาดข้อมูลผลลัพธ์คิวรีเป็นไบต์ No ตัวเลข ตัวเลือกขั้นสูง "67108864" false จริง
ตัวเลือก NoTruncate ปิดใช้งานการตัดทอนชุดผลลัพธ์ No มีเหตุผล ตัวเลือกขั้นสูง "เท็จ" false จริง
ตัวเลือก AdditionalSetStatements คําสั่งชุดเพิ่มเติม (คั่นด้วยเครื่องหมายอัฒภาค) No SMS ตัวเลือกขั้นสูง "ตั้งค่า query_datascope=hotcache;" false จริง

เชื่อมต่อจาก Power Query Desktop

Azure Data Explorer (Kusto)

เมื่อต้องการเชื่อมต่อกับ Azure Data Explorer จาก Power Query Desktop:

  1. เลือก Azure Data Explorer (Kusto) ในประสบการณ์การรับข้อมูล ประสบการณ์การใช้งานรับข้อมูลใน Power Query Desktop แตกต่างกันระหว่างแอป สําหรับข้อมูลเพิ่มเติมเกี่ยวกับประสบการณ์การใช้งานข้อมูลของ Power Query Desktop สําหรับแอปของคุณ ให้ไปที่ สถานที่รับข้อมูล

  2. ใน Azure Data Explorer (Kusto) ให้ระบุชื่อคลัสเตอร์ Azure Data Explorer ของคุณ สําหรับตัวอย่างนี้ ใช้เพื่อ https://help.kusto.windows.net เข้าถึงคลัสเตอร์วิธีใช้ตัวอย่าง สําหรับคลัสเตอร์อื่นๆ URL จะอยู่ในรูปแบบ https:// <ClusterName><ภูมิภาค>.kusto.windows.net.

    คุณยังสามารถเลือกฐานข้อมูลที่โฮสต์บนคลัสเตอร์ที่คุณกําลังเชื่อมต่อ และตารางใดตารางหนึ่งในฐานข้อมูล หรือแบบสอบถาม เช่นStormEvents | take 1000

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

    Note

    คุณอาจต้องเลื่อนลงเพื่อแสดงตัวเลือกขั้นสูงทั้งหมดและการเลือกการเชื่อมต่อข้อมูล

  4. เลือกโหมดการเชื่อมต่อ นําเข้า หรือ DirectQuery (Power BI Desktop เท่านั้น) ข้อมูลเพิ่มเติม: เมื่อต้องใช้โหมดการนําเข้าหรือ DirectQuery

  5. เลือก ตกลง เพื่อดำเนินการต่อ

    สกรีนช็อตของกล่องโต้ตอบ Azure Data Explorer (Kusto) พร้อม URL สําหรับคลัสเตอร์ที่ป้อน

  6. ถ้าคุณยังไม่มีการเชื่อมต่อกับคลัสเตอร์ ให้เลือก ลงชื่อเข้าใช้ ลงชื่อเข้าใช้ด้วยบัญชีขององค์กร แล้วเลือกเชื่อมต่อ

    สกรีนช็อตของกล่องโต้ตอบการลงชื่อเข้าใช้สําหรับ Azure Data Explorer พร้อมบัญชีองค์กรที่พร้อมให้ลงชื่อเข้าใช้

  7. ใน ตัวนําทางเลือกข้อมูลฐานข้อมูลที่คุณต้องการ จากนั้นเลือก โหลด เพื่อโหลดข้อมูลหรือ แปลงข้อมูล เพื่อแปลงข้อมูลในตัวแก้ไข Power Query ต่อไป ในตัวอย่างนี้ StormEvents ถูกเลือกในฐานข้อมูลตัวอย่าง

    สกรีนช็อตของ Navigator ที่เปิดและมีข้อมูลจาก StormEvents ในฐานข้อมูลตัวอย่าง

ฐานข้อมูล KQL

เมื่อต้องการเชื่อมต่อกับฐานข้อมูล KQL จาก Power Query Desktop:

  1. ใน รับข้อมูล ให้เลือก Microsoft Fabric (พรีวิว) หรือค้นหา KQL เลือก ฐานข้อมูล KQL แล้วเลือก เชื่อมต่อ ข้อมูลเพิ่มเติม: จะรับข้อมูลได้จากที่ใด

    สกรีนช็อตของหน้ารับข้อมูล โดยเลือกประเภท Microsoft Fabric (พรีวิว) และเน้น KQL Desktop (พรีวิว)

  2. ในฐานข้อมูล KQL ให้กรอกข้อมูลในคลัสเตอร์และฟิลด์เสริม เช่น ฐานข้อมูล

    สกรีนช็อตของหน้า Kusto ที่แสดงคลัสเตอร์และฟิลด์ทางเลือกที่พร้อมกรอก

    หากต้องการรับ URI ของคลัสเตอร์ ให้ไปที่ฐานข้อมูล KQL ของคุณในบริการ Fabric และคัดลอก URI แบบสอบถาม

    ภาพหน้าจอของโฮมเพจฐานข้อมูล KQL พร้อมเน้นตัวเลือกการคัดลอก URI แบบสอบถาม

    จากนั้นเลือก ตกลง

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

    สกรีนช็อตของกล่องโต้ตอบการลงชื่อเข้าใช้สําหรับฐานข้อมูล KQL พร้อมบัญชีองค์กรที่พร้อมให้ลงชื่อเข้าใช้

  4. ในตัว นําทาง ให้เลือกตารางที่คุณต้องการ จากนั้นโหลดหรือแปลงข้อมูล

    สกรีนช็อตของตัวนําทาง Power Query ที่มีตารางเหตุการณ์พายุถูกเลือก

เชื่อมต่อจาก Power Query Online

Azure Data Explorer (Kusto)

เมื่อต้องการเชื่อมต่อกับ Azure Data Explorer จาก Power Query Online:

  1. เลือกตัวเลือก Azure Data Explorer (Kusto) ในประสบการณ์การรับข้อมูล แอปต่าง ๆ มีวิธีการต่าง ๆ ในการเข้าถึง Power Query Online รับประสบการณ์ข้อมูล สําหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการเข้าถึง Power Query Online รับประสบการณ์ข้อมูลจากแอปของคุณ ไปที่ สถานที่รับข้อมูล

    สกรีนช็อตของหน้าต่างรับข้อมูลที่เน้น Azure Data Explorer

  2. ใน เชื่อมต่อกับแหล่งข้อมูล ให้ระบุชื่อของคลัสเตอร์ Azure Data Explorer ของคุณ สําหรับตัวอย่างนี้ ใช้เพื่อ https://help.kusto.windows.net เข้าถึงคลัสเตอร์วิธีใช้ตัวอย่าง สําหรับคลัสเตอร์อื่นๆ URL จะอยู่ในรูปแบบ https:// <ClusterName><ภูมิภาค>.kusto.windows.net.

    คุณยังสามารถเลือกฐานข้อมูลที่โฮสต์บนคลัสเตอร์ที่คุณกําลังเชื่อมต่อ และตารางใดตารางหนึ่งในฐานข้อมูล หรือแบบสอบถาม เช่นStormEvents | take 1000

    สกรีนช็อตของหน้า เลือกแหล่งข้อมูล สําหรับ Azure Data Explorer (Kusto) พร้อม URL สําหรับคลัสเตอร์ที่ป้อน

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

  4. ถ้าจําเป็น ให้เลือกเกตเวย์ข้อมูลภายในองค์กรในเกตเวย์ข้อมูล

  5. ถ้าคุณยังไม่มีการเชื่อมต่อกับคลัสเตอร์ ให้เลือก ลงชื่อเข้าใช้ ลงชื่อเข้าใช้ด้วยบัญชีขององค์กร

  6. หลังจากลงชื่อเข้าใช้สําเร็จแล้ว ให้เลือก ถัดไป

  7. ในหน้า เลือกข้อมูล ให้เลือกข้อมูลฐานข้อมูลที่คุณต้องการ จากนั้นเลือก แปลงข้อมูล หรือ ถัดไป เพื่อแปลงข้อมูลในตัวแก้ไข Power Query ต่อไป ในตัวอย่างนี้ StormEvents ถูกเลือกในฐานข้อมูลตัวอย่าง

    สกรีนช็อตของหน้าเลือกข้อมูล ซึ่งมีข้อมูลจาก StormEvents ในฐานข้อมูลตัวอย่าง

ฐานข้อมูล KQL

เมื่อต้องการเชื่อมต่อกับฐานข้อมูล KQL จาก Power Query Online:

  1. ใน เลือกแหล่งข้อมูล ให้ค้นหา KQL แล้วเลือก ฐานข้อมูล KQL ข้อมูลเพิ่มเติม: จะรับข้อมูลได้จากที่ใด

  2. ใน เชื่อมต่อกับแหล่งข้อมูล ให้กรอกข้อมูลในคลัสเตอร์และฟิลด์เพิ่มเติม เช่น ฐานข้อมูล

    สกรีนช็อตของหน้าเชื่อมต่อกับแหล่งข้อมูล พร้อมการตั้งค่าการเชื่อมต่อที่พร้อมให้กรอก

    หากต้องการรับ URI ของคลัสเตอร์ ให้ไปที่ฐานข้อมูล KQL ของคุณในบริการ Fabric และคัดลอก URI แบบสอบถาม

    ภาพหน้าจอของโฮมเพจฐานข้อมูล MyKQLDatabase KQL พร้อมเน้นตัวเลือก URI คัดลอกคิวรี

  3. หากจําเป็น ให้ป้อนเกตเวย์ข้อมูลภายในองค์กรหากคุณกําลังจะใช้ข้อมูลภายในองค์กร ตัวอย่างเช่น ถ้าคุณกําลังจะรวมข้อมูลจากกระแสข้อมูลและฐานข้อมูล SQL Server ภายในองค์กร

  4. ลงชื่อเข้าใช้บัญชีขององค์กร

  5. เมื่อคุณลงชื่อเข้าใช้สําเร็จแล้ว ให้เลือก ถัดไป

  6. ใน เลือกข้อมูล ให้เลือกข้อมูลที่คุณต้องการ แล้วเลือก แปลงข้อมูล

    สกรีนช็อตของหน้าเลือกข้อมูล โดยเลือกเหตุการณ์พายุ

ข้อมูลเพิ่มเติม

ตัวเลือกขั้นสูง

ทั้ง Power Query Desktop และ Power Query Online มีชุดของตัวเลือกขั้นสูงที่คุณสามารถเพิ่มลงในคิวรีของคุณได้ถ้าจําเป็น

ตารางต่อไปนี้แสดงรายการของตัวเลือกขั้นสูงทั้งหมดที่คุณสามารถตั้งค่าใน Power Query Desktop และ Power Query Online

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

สําหรับข้อมูลเกี่ยวกับตัวเลือกขั้นสูงเพิ่มเติมที่ไม่พร้อมใช้งานใน Power Query UI ไปที่ การกําหนดค่าตัวเลือกตัวเชื่อมต่อ Azure Data Explorer ในคิวรี M

เมื่อต้องใช้โหมดนําเข้าหรือ DirectQuery

ในโหมดนําเข้า ข้อมูลจะถูกย้ายไปยัง Power BI ในโหมด DirectQuery ข้อมูลจะถูกคิวรีโดยตรงจากคลัสเตอร์ของคุณ

ใช้โหมดนําเข้าเมื่อ:

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

ใช้โหมด DirectQuery เมื่อ:

  • ชุดข้อมูลของคุณมีขนาดใหญ่มาก
  • คุณต้องการข้อมูลที่ใกล้เคียงกับเรียลไทม์

เมื่อต้องการเรียนรู้เพิ่มเติมเกี่ยวกับการใช้ DirectQuery ไปที่ เกี่ยวกับการใช้ DirectQuery ใน Power BI

เคล็ดลับสําหรับการคิวรีข้อมูล

ส่วนต่อไปนี้ประกอบด้วยเคล็ดลับและเทคนิคสําหรับการใช้ภาษาคิวรี Kusto กับ Power Query

คิวรีที่ซับซ้อนใน Power BI

คิวรีที่ซับซ้อนจะแสดงใน Kusto ได้ง่ายกว่าใน Power Query ควรใช้เป็น ฟังก์ชัน Kusto และเรียกใช้ใน Power BI วิธีนี้จําเป็นเมื่อใช้ DirectQuery กับ let คําสั่งในคิวรี Kusto ของคุณ เนื่องจาก Power BI รวมคิวรีสองคิวรี และไม่ let สามารถใช้คําสั่งกับ join ตัวดําเนินการ จึงอาจเกิดข้อผิดพลาดทางไวยากรณ์ได้ ดังนั้น ให้บันทึกแต่ละส่วนของการรวมเป็นฟังก์ชัน Kusto และอนุญาตให้ Power BI รวมฟังก์ชันทั้งสองนี้เข้าด้วยกัน

วิธีการจําลองตัวดําเนินการวันที่-เวลาสัมพัทธ์

Power Query ไม่มีตัวดําเนินการวันที่-เวลาแบบสัมพัทธ์ เช่นago() เมื่อต้องการจําลอง ago()ให้ใช้ฟังก์ชัน DateTime.FixedLocalNow และ #duration Power Query M ร่วมกัน

แทนที่จะใช้คิวรีนี้โดยใช้ ago() ตัวดําเนินการ:

    StormEvents | where StartTime > (now()-5d)
    StormEvents | where StartTime > ago(5d)

ใช้แบบสอบถามที่เทียบเท่าต่อไปนี้:

let
    Source = AzureDataExplorer.Contents("help", "Samples", "StormEvents", []),
    #"Filtered Rows" = Table.SelectRows(Source, each [StartTime] > (DateTime.FixedLocalNow()-#duration(5,0,0,0)))
in
    #"Filtered Rows"

การกําหนดค่าตัวเลือกตัวเชื่อมต่อ Azure Data Explorer ในคิวรี M

คุณสามารถกําหนดค่าตัวเลือกของตัวเชื่อมต่อ Azure Data Explorer จากตัวแก้ไขขั้นสูงของ Power Query ในภาษาคิวรี M เมื่อใช้ตัวเลือกเหล่านี้ คุณสามารถควบคุมคิวรีที่สร้างขึ้นซึ่งจะถูกส่งไปยังคลัสเตอร์ Azure Data Explorer ของคุณได้

let
    Source = AzureDataExplorer.Contents("help", "Samples", "StormEvents", [<options>])
in
    Source

คุณสามารถใช้ตัวเลือกใดๆ ต่อไปนี้ในแบบสอบถาม M ของคุณ:

ตัวเลือก ตัวอย่าง คำอธิบาย
แม็กซ์โรว์ [MaxRows=300000] เพิ่ม truncationmaxrecords คําสั่ง set ลงในแบบสอบถามของคุณ แทนที่จํานวนระเบียนสูงสุดเริ่มต้นที่แบบสอบถามสามารถส่งคืนไปยังผู้โทร (การตัดทอน)
แม็กซ์ไซส์ [MaxSize=4194304] เพิ่ม truncationmaxsize คําสั่ง set ลงในแบบสอบถามของคุณ แทนที่ขนาดข้อมูลสูงสุดเริ่มต้นที่คิวรีได้รับอนุญาตให้ส่งคืนไปยังผู้เรียก (การตัดทอน)
ไม่มีการตัดทอน [NoTruncate=true] เพิ่ม notruncation คําสั่ง set ลงในแบบสอบถามของคุณ เปิดใช้งานการระงับการตัดทอนผลลัพธ์แบบสอบถามที่ส่งกลับไปยังผู้เรียก
คําสั่ง AdditionalSetStatements [AdditionalSetStatements="set query_datascope=hotcache"] เพิ่มคําสั่ง set ที่ให้มาในแบบสอบถามของคุณ คําสั่งเหล่านี้ใช้เพื่อตั้งค่าตัวเลือกคิวรีสําหรับระยะเวลาของคิวรี ตัวเลือกคิวรีจะควบคุมวิธีที่คิวรีดําเนินการและส่งกลับผลลัพธ์
ตัวพิมพ์ใหญ่ไม่คํานึงถึงตัวพิมพ์ใหญ่ [CaseInsensitive=true] ทําให้ตัวเชื่อมต่อสร้างคิวรีที่ไม่คํานึงถึงตัวพิมพ์เล็กและใหญ่—คิวรีจะใช้ตัว =~ ดําเนินการแทน == ตัวดําเนินการเมื่อเปรียบเทียบค่า
บังคับใช้ประกอบด้วย [ForceUseContains=true] ทําให้ตัวเชื่อมต่อสร้างคิวรีที่ใช้ contains แทนค่าเริ่มต้น has เมื่อทํางานกับฟิลด์ข้อความ แม้ว่าจะ has มีประสิทธิภาพมากกว่ามาก แต่ก็ไม่ได้จัดการกับสตริงย่อย สําหรับข้อมูลเพิ่มเติมเกี่ยวกับความแตกต่างระหว่างตัวดําเนินการทั้งสอง ไปที่ ตัวดําเนินการสตริง
การหมดเวลา [Timeout=#duration(0,10,0,0)] กําหนดค่าการหมดเวลาทั้งไคลเอ็นต์และเซิร์ฟเวอร์ของคิวรีตามระยะเวลาที่ระบุ
ClientRequestIdPrefix [ClientRequestIdPrefix="MyReport"] กําหนดค่าคํานําหน้า ClientRequestId สําหรับคิวรีทั้งหมดที่ส่งโดยตัวเชื่อมต่อ ซึ่งช่วยให้สามารถระบุคิวรีในคลัสเตอร์ได้ว่ามาจากรายงานและ/หรือแหล่งข้อมูลเฉพาะ

Note

คุณสามารถรวมหลายตัวเลือกเข้าด้วยกันเพื่อให้ได้ลักษณะการทํางานที่ต้องการ: [NoTruncate=true, CaseInsensitive=true]

ถึงขีดจํากัดการสืบค้น Kusto

โดยค่าเริ่มต้นการสืบค้น Kusto จะส่งคืนสูงสุด 500,000 แถวหรือ 64 MB ตามที่อธิบายไว้ในขีดจํากัดการสืบค้น คุณสามารถแทนที่ค่าเริ่มต้นเหล่านี้ได้โดยใช้ตัวเลือกขั้นสูงในหน้าต่างการเชื่อมต่อ Azure Data Explorer (Kusto):

สกรีนช็อตของหน้าต่างการเชื่อมต่อ Azure Data Explorer (Kusto) พร้อมตัวเลือกขั้นสูงที่เป็นตัวเลือกที่เน้น

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

  • จํากัดหมายเลขเรกคอร์ดผลลัพธ์คิวรี จะสร้าง set truncationmaxrecords
  • จํากัดขนาดข้อมูลผลลัพธ์คิวรีเป็นไบต์ สร้าง set truncationmaxsize
  • ปิดใช้งานการตัดทอนชุดผลลัพธ์ จะสร้าง set notruncation

การใช้ตัวพิมพ์ใหญ่-เล็ก

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

let
    Source = AzureDataExplorer.Contents("help", "Samples", "StormEvents", [CaseInsensitive=true]),
    #"Filtered Rows" = Table.SelectRows(Source, each [State] == "aLaBama")
in
    #"Filtered Rows"

การใช้พารามิเตอร์แบบสอบถาม

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

ใช้พารามิเตอร์คิวรีในขั้นตอนคิวรี

คุณสามารถใช้พารามิเตอร์คิวรีในขั้นตอนคิวรีใดๆ ที่สนับสนุนพารามิเตอร์คิวรี ตัวอย่างเช่น กรองผลลัพธ์ตามค่าของพารามิเตอร์ ในตัวอย่างนี้ ให้เลือกเมนูดรอปดาวน์ทางด้านขวาของStateคอลัมน์ในตัวแก้ไข Power Query เลือก ตัวกรองข้อความเท่ากับ> จากนั้นเลือก ALABAMA ภายใต้ เก็บแถวที่ 'รัฐ'

สกรีนช็อตของกล่องโต้ตอบ แถวตัวกรอง ที่คุณตั้งค่าผลลัพธ์ตัวกรองโดยใช้พารามิเตอร์

ระบุพารามิเตอร์ให้กับฟังก์ชัน Azure Data Explorer

ฟังก์ชัน Kusto เป็นวิธีที่ยอดเยี่ยมในการรักษาการสืบค้น Kusto Query Language (KQL) ที่ซับซ้อน เราขอแนะนําให้ใช้ฟังก์ชันแทนการฝัง KQL ใน Power Query ข้อได้เปรียบหลักของการใช้ฟังก์ชันคือตรรกะจะคงอยู่เพียงครั้งเดียวในสภาพแวดล้อมที่ง่ายต่อการสร้างและทดสอบ

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

การสร้างฟังก์ชัน

คุณสามารถสร้างฟังก์ชันต่อไปนี้ในคลัสเตอร์ Azure Data Explorer ใดๆ ที่คุณสามารถเข้าถึงได้ รวมถึงคลัสเตอร์ฟรี ฟังก์ชันจะส่งกลับตาราง SalesTable จากคลัสเตอร์วิธีใช้ ซึ่งกรองสําหรับธุรกรรมการขายที่มากกว่าหรือน้อยกว่าตัวเลขที่ผู้ใช้รายงานให้มา

.create-or-alter  function LargeOrSmallSales(Cutoff:long,Op:string=">")
{
    cluster("help").database("ContosoSales").SalesTable
    | where  (Op==">" and SalesAmount >= Cutoff) or (Op=="<"  and SalesAmount <= Cutoff)
}

หลังจากที่คุณสร้างฟังก์ชันแล้ว คุณสามารถทดสอบได้โดยใช้:

LargeOrSmallSales(2000,">")
| summarize Sales=tolong(sum(SalesAmount)) by Country

คุณยังสามารถทดสอบได้โดยใช้:

LargeOrSmallSales(20,"<")
| summarize Sales=tolong(sum(SalesAmount)) by Country
การใช้ฟังก์ชันใน Power BI
  1. เชื่อมต่อกับคลัสเตอร์ที่คุณสร้างฟังก์ชัน

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

    สกรีนช็อตที่มีพารามิเตอร์ Cutoff และ Op ที่แสดงเหนือข้อมูลในเนวิเกเตอร์

  3. เพิ่มค่าให้กับพารามิเตอร์ แล้วเลือก นําไปใช้

  4. หลังจากการแสดงตัวอย่างปรากฏขึ้น ให้เลือก แปลงข้อมูล

  5. เมื่ออยู่ในตัวแก้ไข Power Query ให้สร้างพารามิเตอร์สองตัว หนึ่งสําหรับค่าตัดและอีกตัวสําหรับตัวดําเนินการ

  6. กลับไปที่ LargeOrSmallSales คิวรีและแทนที่ค่าด้วยพารามิเตอร์คิวรีในแถบสูตร

    สกรีนช็อตด้วยฟังก์ชัน LargeOrSmallSales โดยเน้นที่พารามิเตอร์ Cutoff_Param และ Op_Param ในแถบสูตร

  7. จากตัวแก้ไข ให้สร้างตารางแบบคงที่สองตาราง (ป้อนข้อมูล) เพื่อให้ตัวเลือกสําหรับพารามิเตอร์ทั้งสอง สําหรับจุดตัด คุณสามารถสร้างตารางที่มีค่าเช่น 10, 50, 100, 200, 500, 1000, 2000 สําหรับ Op, ตารางที่มีค่า Text สองค่า < และ >.

  8. สองคอลัมน์ในตารางต้องผูกกับพารามิเตอร์คิวรีโดยใช้การเลือก ผูกกับพารามิเตอร์

    ภาพหน้าจอของ Op ถูกผูกไว้กับพารามิเตอร์ Op_Param

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

สกรีนช็อตใน Power BI ที่มีการเลือกค่า Cutoff และ Op แสดงถัดจากตาราง

ตารางฐานจะถูกกรองก่อนแล้วจึงรวม

การใช้พารามิเตอร์คิวรีในรายละเอียดการเชื่อมต่อ

ใช้พารามิเตอร์คิวรีเพื่อกรองข้อมูลในคิวรีและเพิ่มประสิทธิภาพคิวรี

ในตัว แก้ไขขั้นสูง:

  1. ค้นหาส่วนต่อไปนี้ของแบบสอบถาม:

    แหล่งที่มา = AzureDataExplorer.Contents("<คลัสเตอร์>", "<ฐานข้อมูล>", "<คิวรี>", [])

    เช่น:

    Source = AzureDataExplorer.Contents("Help", "Samples", "StormEvents | where State == 'ALABAMA' | take 100", [])
    
  2. แทรกพารามิเตอร์คิวรีลงในคิวรี Kusto Query Language (KQL)

    ถ้าคุณวางคิวรี KQL โดยตรงในกล่องโต้ตอบการเชื่อมต่อ คิวรีจะเป็นส่วนหนึ่งของขั้นตอนแหล่งข้อมูลใน Power Query คุณสามารถฝังพารามิเตอร์เป็นส่วนหนึ่งของคิวรีโดยใช้ตัวแก้ไขขั้นสูง หรือเมื่อแก้ไขคําสั่งต้นทางในแถบสูตร ตัวอย่างคิวรี StormEvents | where State == ' " & State & " ' | take 100อาจเป็น State เป็นพารามิเตอร์และในรันไทม์คิวรีจะเป็น:

    StormEvents | where State == 'ALABAMA' | take 100

  3. หากคําค้นหาของคุณมีเครื่องหมายคําพูด ให้เข้ารหัสให้ถูกต้อง ตัวอย่างเช่น แบบสอบถามต่อไปนี้ใน KQL:

    "StormEvents | where State == "ALABAMA" | take 100"
    

    จะปรากฏใน โปรแกรมแก้ไขขั้นสูง ดังนี้พร้อมเครื่องหมายคําพูดสองเครื่องหมาย:

     "StormEvents | where State == ""ALABAMA"" | take 100"
    

    ถ้าคุณกําลังใช้พารามิเตอร์ เช่น Stateควรแทนที่ด้วยแบบสอบถามต่อไปนี้ ซึ่งประกอบด้วยเครื่องหมายอัญประกาศสามเครื่องหมาย:

    "StormEvents | where State == """ & State & """ | take 100"
    

ใช้คุณลักษณะ Value.NativeQuery สําหรับ Azure Data Explorer

เมื่อต้องการใช้คุณลักษณะ Azure Data Explorer ที่ไม่ได้รับการสนับสนุนใน Power Query ให้ใช้วิธีการ Value.NativeQuery ใน Power Query M วิธีนี้แทรกส่วนย่อย Kusto Query Language ภายในคิวรีที่สร้างขึ้น และยังสามารถใช้เพื่อให้คุณควบคุมคิวรีที่ดําเนินการได้มากขึ้น

ตัวอย่างต่อไปนี้แสดงวิธีการใช้ฟังก์ชันใน percentiles Azure Data Explorer:

let
    StormEvents = AzureDataExplorer.Contents(DefaultCluster, DefaultDatabase){[Name = DefaultTable]}[Data],
    Percentiles = Value.NativeQuery(StormEvents, "| summarize percentiles(DamageProperty, 50, 90, 95) by State")
in
    Percentiles

อย่าใช้ตัวกําหนดการรีเฟรชข้อมูล Power BI เพื่อออกคําสั่งควบคุมไปยัง Kusto

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