แชร์ผ่าน


Microsoft Fabric API สําหรับ GraphQL คืออะไร

GraphQL เป็นภาษาการสืบค้นแบบโอเพนซอร์สและรันไทม์สําหรับ API ที่ดูแลโดย GraphQL Foundation ซึ่งแตกต่างจาก REST API แบบดั้งเดิม GraphQL ช่วยให้ไคลเอ็นต์สามารถร้องขอข้อมูลที่ต้องการได้แม่นยําในการสืบค้นเดียว ซึ่งช่วยลดการดึงข้อมูลมากเกินไปและน้อยเกินไป

Microsoft Fabric API สําหรับ GraphQL นํามาตรฐานอันทรงพลังนี้มาสู่ระบบนิเวศ Fabric เป็นเลเยอร์การเข้าถึงข้อมูลที่ช่วยให้คุณคิวรีแหล่งข้อมูลหลายแหล่งได้อย่างรวดเร็วและมีประสิทธิภาพ API จะสรุปข้อมูลเฉพาะของแหล่งข้อมูลแบ็กเอนด์ เพื่อให้คุณมุ่งเน้นไปที่ตรรกะของแอปพลิเคชันและให้ข้อมูลทั้งหมดที่ไคลเอ็นต์ต้องการในการเรียกเพียงครั้งเดียว ด้วยภาษาการสืบค้นที่เรียบง่ายและการจัดการชุดผลลัพธ์ที่มีประสิทธิภาพ GraphQL ช่วยลดเวลาที่แอปพลิเคชันใช้ในการเข้าถึงข้อมูลของคุณใน Fabric

เหตุใดจึงต้องใช้ GraphQL สําหรับข้อมูล Fabric

หากไม่มี GraphQL การเปิดเผยข้อมูล Fabric ต่อแอปพลิเคชันโดยทั่วไปต้องใช้วิธีใดวิธีหนึ่งต่อไปนี้:

การเชื่อมต่อฐานข้อมูลโดยตรง

  • แอปพลิเคชันเชื่อมต่อโดยตรงกับเลคเฮาส์หรือคลังสินค้าโดยใช้ไดรเวอร์ SQL (ODBC, JDBC)
  • จับคู่โค้ดแอปพลิเคชันเข้ากับสคีมาฐานข้อมูลอย่างแน่นหนา—การเปลี่ยนแปลงสคีมาทําให้แอปพลิเคชันเสียหาย
  • ต้องจัดการสตริงการเชื่อมต่อ ข้อมูลประจําตัว และการขึ้นต่อกันของไดรเวอร์ในทุกแอปพลิเคชัน
  • แบบสอบถาม SQL ที่ฝังอยู่ในโค้ดแอปพลิเคชันนั้นยากต่อการทดสอบและบํารุงรักษา

REST API แบบกําหนดเอง

  • สร้างและบํารุงรักษาบริการแบ็กเอนด์แบบกําหนดเองด้วยเฟรมเวิร์ก เช่น ASP.NET หรือ Node.js
  • เขียนโค้ดคอนโทรลเลอร์ ตรรกะการกําหนดเส้นทาง และเลเยอร์การเข้าถึงข้อมูลสําหรับทุกปลายทาง
  • สร้างเวอร์ชัน API แยกต่างหาก (v1, v2, v3) เมื่อโครงสร้างข้อมูลเปลี่ยนแปลง
  • ดึงข้อมูลมากเกินไป (รับทั้งแถวเมื่อคุณต้องการคอลัมน์ไม่กี่คอลัมน์) หรือการดึงข้อมูลน้อยเกินไป (ไปกลับหลายครั้งสําหรับข้อมูลที่เกี่ยวข้อง)

GraphQL แก้ปัญหาเหล่านี้:

  • ไม่ต้องใช้โค้ดแบ็กเอนด์: Fabric จะสร้างสคีมา ตัวแก้ไข และตําแหน่งข้อมูล GraphQL โดยอัตโนมัติจากแหล่งข้อมูลของคุณ
  • สืบค้นสิ่งที่คุณต้องการ: ขอฟิลด์เฉพาะในการสืบค้นเดียว ช่วยลดการดึงข้อมูลมากเกินไปและลดขนาดเพย์โหลด
  • ดึงข้อมูลที่เกี่ยวข้องในคําขอเดียว: สํารวจความสัมพันธ์โดยไม่ต้องเดินทางไปกลับหลายครั้ง (ไม่มีปัญหาการสืบค้น N+1)
  • วิวัฒนาการของสคีมาโดยไม่ทําลายการเปลี่ยนแปลง: เพิ่มฟิลด์ใหม่โดยไม่ส่งผลกระทบต่อการสืบค้นที่มีอยู่ - ลูกค้าจะร้องขอเฉพาะสิ่งที่พวกเขารู้เท่านั้น
  • ประเภทความปลอดภัยและเอกสารประกอบ: สคีมาการจัดทําเอกสารด้วยตนเองพร้อมการวิปัสนาในตัวที่เครื่องมือการพัฒนาเข้าใจ
  • การเข้าถึงหลายแหล่งแบบครบวงจร: สืบค้นระหว่างเลคเฮาส์ คลังสินค้า และฐานข้อมูล SQL ผ่านปลายทางเดียว

สําหรับนักพัฒนาแอปพลิเคชัน GraphQL หมายถึงการพัฒนาที่เร็วขึ้นด้วยโครงสร้างพื้นฐานที่น้อยลง สําหรับวิศวกรข้อมูล หมายถึงการเปิดเผยข้อมูลโดยไม่ต้องเขียนและบํารุงรักษาโค้ด API ที่กําหนดเอง

ใครควรใช้ API สําหรับ GraphQL

API ของ Fabric สําหรับ GraphQL ได้รับการออกแบบมาสําหรับ:

  • นักพัฒนาแอปพลิเคชันที่ สร้างเว็บและแอปพลิเคชันมือถือที่ขับเคลื่อนด้วยข้อมูลที่ใช้ข้อมูลเลคเฮาส์และคลังสินค้าของ Fabric
  • วิศวกรข้อมูล เปิดเผยข้อมูล Fabric ไปยังแอปพลิเคชันดาวน์สตรีมผ่าน API ที่ทันสมัยและยืดหยุ่นโดยไม่ต้องเขียนโค้ดแบ็กเอนด์แบบกําหนดเอง
  • นักพัฒนาการผสานรวม ที่เชื่อมต่อข้อมูล Fabric กับแอปพลิเคชันแบบกําหนดเองและเวิร์กโฟลว์อัตโนมัติ
  • นักพัฒนา BI สร้างแอปพลิเคชันการวิเคราะห์แบบกําหนดเองที่เสริม Power BI ด้วยข้อมูล Fabric
  • นักวิทยาศาสตร์ข้อมูล เปิดเผยข้อมูล Fabric และข้อมูลเชิงลึกของแมชชีนเลิร์นนิงผ่าน API แบบเป็นโปรแกรม

หากคุณกําลังทํางานภายในแพลตฟอร์มการวิเคราะห์แบบรวม Microsoft Fabric และต้องการทําให้แอปพลิเคชันสามารถเข้าถึงข้อมูลฐานข้อมูลเลคเฮาส์ คลังสินค้า หรือ SQL ได้ GraphQL API เป็นวิธีที่มีประสิทธิภาพและเป็นมิตรกับนักพัฒนาในการสืบค้นข้อมูลที่คุณต้องการ

เคล็ดลับ

ต้องการรวม Fabric GraphQL API กับเอเจนต์ AI หรือไม่ ลองใช้บทช่วยสอน สร้างเซิร์ฟเวอร์ GraphQL MCP ในเครื่องสําหรับเอเจนต์ AI เพื่อเชื่อมต่อเอเจนต์ AI กับข้อมูล Fabric ของคุณโดยใช้โปรโตคอลบริบทของโมเดล

เปิดเผยข้อมูลผ่าน API สําหรับ GraphQL

การเปิดเผยแหล่งข้อมูลไปยังรายการ GraphQL ใน Microsoft Fabric นั้นตรงไปตรงมาและสามารถทําได้ภายในไม่กี่นาทีโดยใช้อินเทอร์เฟซภาพของพอร์ทัล Fabric กระบวนการนี้เกี่ยวข้องกับ:

  1. สร้างรายการ GraphQL API ในพื้นที่ทํางาน Fabric ของคุณ
  2. เชื่อมต่อแหล่งข้อมูลของคุณ โดยเลือกจากเลคเฮาส์ คลังสินค้า หรือฐานข้อมูลที่พร้อมใช้งาน
  3. เลือกวัตถุที่จะแสดง เช่น ตาราง มุมมอง หรือกระบวนงานที่เก็บไว้
  4. กําหนดความสัมพันธ์ (ไม่บังคับ) ระหว่างออบเจ็กต์เพื่อเปิดใช้งานการสืบค้นที่ซ้อนกันที่มีประสิทธิภาพ
  5. กําหนดค่าสิทธิ์เพื่อ ควบคุมผู้ที่สามารถเข้าถึง API ของคุณได้

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

สําหรับคําแนะนําทีละขั้นตอน โปรดดู สร้าง API สําหรับ GraphQL ใน Fabric และเพิ่มข้อมูล

แหล่งข้อมูลที่ได้รับการสนับสนุน

ปัจจุบันแหล่งข้อมูลที่รองรับต่อไปนี้ถูกเปิดเผยผ่าน Fabric API สําหรับ GraphQL:

  • คลังข้อมูล Microsoft Fabric
  • ฐานข้อมูล Microsoft Fabric SQL
  • Microsoft Fabric Lakehouse ผ่านจุดสิ้นสุด SQL Analytics
  • Microsoft Fabric Mirrored Databases ผ่านจุดสิ้นสุด SQL Analytics ซึ่งประกอบด้วย:
    • ฐานข้อมูล Azure SQL
    • อินสแตนซ์ที่มีการจัดการของ Azure SQL
    • Azure Cosmos DB
    • ฐานข้อมูล Microsoft Fabric SQL
    • Azure Databricks
    • Snowflake
    • เปิดฐานข้อมูลที่มิเรอร์
  • ฐานข้อมูล Azure SQL
  • Datamart

คุณลักษณะ

Microsoft Fabric API สําหรับ GraphQL มีความสามารถที่ครอบคลุมซึ่งช่วยเพิ่มความคล่องตัวในการเข้าถึงข้อมูลสําหรับแอปพลิเคชัน ตั้งแต่การสร้างโค้ดอัตโนมัติไปจนถึงการตรวจสอบประสิทธิภาพ ฟีเจอร์เหล่านี้ช่วยให้คุณสร้าง API ข้อมูลที่มีประสิทธิภาพด้วยการกําหนดค่าเพียงเล็กน้อย

การสร้างสคีมาอัตโนมัติ

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

ความยืดหยุ่นของแหล่งข้อมูล

  • แหล่งข้อมูลหลายแหล่ง: เชื่อมต่อและคิวรีในแหล่งข้อมูลหลายแหล่งด้วยการสนับสนุนคิวรีแบบกระจายออก
  • ออบเจ็กต์ฐานข้อมูล: รองรับตาราง มุมมอง และกระบวนงานที่เก็บไว้ในฐานข้อมูล SQL และคลังสินค้าอย่างเต็มรูปแบบ
  • การเปิดรับแสงแบบเลือก: เลือกวัตถุและคอลัมน์ที่เฉพาะเจาะจงเพื่อแสดงผ่าน API
  • การสร้างแบบจําลองความสัมพันธ์: สร้างความสัมพันธ์แบบหนึ่งต่อหนึ่ง หนึ่งต่อกลุ่ม และกลุ่มต่อกลุ่มระหว่างเอนทิตีข้อมูล

การดําเนินงานและการตรวจสอบ

  • การตรวจสอบประสิทธิภาพ: แดชบอร์ดในตัวและการบันทึกคําขอเพื่อติดตามพฤติกรรมและการใช้งาน API

วิวัฒนาการของสคีมาโดยไม่ต้องกําหนดเวอร์ชัน

GraphQL ใช้แนวทางที่ไม่เหมือนใครในวิวัฒนาการ API โดยหลีกเลี่ยงการกําหนดเวอร์ชันแบบเดิม แทนที่จะสร้างตําแหน่งข้อมูล v1, v2 และ v3 GraphQL API จะพัฒนาอย่างต่อเนื่อง:

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

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

ประสบการณ์การแก้ไขแบบโต้ตอบ

API สําหรับ GraphQL มีตัวแก้ไขที่ช่วยให้คุณพัฒนาและทดสอบการสืบค้นและการกลายพันธุ์ได้อย่างง่ายดาย ความสามารถของบรรณาธิการประกอบด้วย:

  • บานหน้าต่างผลลัพธ์เพื่อแสดงภาพผลลัพธ์ของคิวรีและการกลายพันธุ์
  • รองรับพารามิเตอร์การสืบค้นและการกลายพันธุ์
  • Intellisense ที่รองรับไวยากรณ์ GraphQL และชื่อวัตถุสคีมา

หากต้องการข้อมูลเพิ่มเติมเกี่ยวกับการใช้ตัวแก้ไข GraphQL โปรดดู API สําหรับตัวแก้ไข GraphQL

ขีด จำกัด

โปรดดูข้อมูลเพิ่มเติมใน API สําหรับข้อจํากัดของ GraphQL