สร้างแอปพลิเคชันโดยใช้ DevOps และ GraphQL API
นําไปใช้กับ:✅ฐานข้อมูล SQL ใน Microsoft Fabric
ในส่วนนี้ของบทช่วยสอน คุณจะใช้สินทรัพย์ที่คุณสร้างขึ้นเพื่อสร้างแอปพลิเคชันเว็บที่อนุญาตให้ผู้ใช้เลือกภูมิภาคที่ได้รับผลกระทบจากการหยุดทํางาน และจากนั้นดูซัพพลายเออร์รายอื่นในภูมิภาคเพื่อแจ้งเตือนบริษัทให้ทราบถึงการหยุดชะงักของห่วงโซ่อุปทานเพิ่มเติม คุณจะสร้าง จุดสิ้นสุด GraphQL เหนือข้อมูลของคุณ จากนั้นสร้างแอปพลิเคชัน ASP.NET ที่คุณสามารถปรับใช้เฉพาะที่หรือกับผู้ให้บริการคลาวด์
โครงการการพัฒนาซอฟต์แวร์ที่เกี่ยวข้องกับงานการดําเนินการของนักพัฒนา (DevOps) ซึ่งหนึ่งในนั้นคือการควบคุมแหล่งข้อมูล คุณจะเริ่มต้นส่วนนี้โดยการใส่รายการที่คุณสร้างภายใต้ตัวควบคุมแหล่งข้อมูล
บทความนี้แสดงชุดของสถานการณ์ที่เป็นประโยชน์ในการสร้างแอปพลิเคชันที่ยึดตามฐานข้อมูล SQL ใน Fabric
ข้อกำหนดเบื้องต้น
- ทําตามขั้นตอนก่อนหน้าทั้งหมดในบทช่วยสอนนี้
- เปิดใช้งาน การตั้งค่าผู้เช่าการรวม Git
- เปิดใช้งานการตั้งค่าผู้ดูแลระบบผู้เช่าสําหรับ API สําหรับ GraphQL
- สร้างองค์กรและโครงการใน Microsoft Azure DevOps
CI/CD in Fabric with Azure DevOps
ในส่วนนี้ของบทช่วยสอน คุณจะได้เรียนรู้วิธีการทํางานกับฐานข้อมูล SQL ของคุณ ใน Microsoft Fabric ด้วย Azure DevOps
ฐานข้อมูล SQL ใน Microsoft Fabric มีการรวมการควบคุมแหล่งที่มาซึ่งช่วยให้ผู้ใช้ SQL สามารถติดตามข้อกําหนดของวัตถุฐานข้อมูลของพวกเขาเมื่อเวลาผ่านไปและทั่วทั้งทีม:
ทีมสามารถบันทึกฐานข้อมูลไปยังตัวควบคุมแหล่งข้อมูล ซึ่งจะแปลงฐานข้อมูลสดเป็นโค้ดในที่เก็บตัวควบคุมแหล่งข้อมูลที่กําหนดค่าไว้ (Azure DevOps) โดยอัตโนมัติ
ทีมสามารถอัปเดตวัตถุฐานข้อมูลจากเนื้อหาของตัวควบคุมแหล่งข้อมูลซึ่งตรวจสอบรหัสใน Azure DevOps ก่อนที่จะใช้การเปลี่ยนแปลงแบบต่างกันกับฐานข้อมูล
ถ้าคุณไม่คุ้นเคยกับตัวควบคุมซอร์สโค้ดใน Microsoft Fabric นี่คือทรัพยากรที่แนะนํา:
เริ่มต้นใช้งานตัวควบคุมแหล่งข้อมูล
เมื่อคุณดําเนินการข้อกําหนดเบื้องต้นเหล่านี้เสร็จแล้ว คุณสามารถทําให้พื้นที่ทํางานของคุณซิงค์กับ Azure DevOps ได้ ซึ่งช่วยให้คุณสามารถบันทึกการเปลี่ยนแปลงใด ๆ ที่คุณทําในพื้นที่ทํางานไปยังสาขา Azure DevOps และอัปเดตพื้นที่ทํางานของคุณเมื่อใดก็ตามที่ทุกคนสร้างความมุ่งมั่นใหม่กับสาขา Azure DevOps
ในตอนนี้ คุณจะแก้ไขหนึ่งวัตถุในฐานข้อมูลของคุณโดยใช้ Azure DevOps ซึ่งจะอัปเดตทั้งที่เก็บข้อมูลและวัตถุฐานข้อมูล คุณยังสามารถแก้ไขวัตถุในที่เก็บหรือ "ส่ง" วัตถุเหล่านั้นได้โดยตรง แต่ในกรณีนี้ให้ดําเนินการขั้นตอนทั้งหมดในสภาพแวดล้อม Azure DevOps ของคุณ
ในมุมมองพื้นที่ทํางานของบทช่วยสอนของคุณ ตรวจสอบให้แน่ใจว่าพื้นที่ทํางานของคุณถูกตั้งค่าให้อยู่ภายใต้ตัวควบคุมแหล่งข้อมูลและวัตถุทั้งหมดแสดง ซิงค์อยู่
ในมุมมองพื้นที่ทํางาน คุณจะเห็นไอคอน git สาขาที่คุณเลือก และข้อความเกี่ยวกับครั้งสุดท้ายที่ซิงโครไนซ์พื้นที่ทํางานด้วยตัวควบคุมแหล่งข้อมูล ถัดจากวันที่และเวลา คุณจะเห็นลิงก์ตัวระบุสําหรับตําแหน่งที่ตั้งเฉพาะในสภาพแวดล้อม Azure DevOps ของคุณ เปิดลิงก์นั้นเพื่อดําเนินการต่อ
ลงชื่อเข้าใช้ในสภาพแวดล้อม Azure DevOps ของคุณถ้าได้รับการร้องขอ
เมื่ออยู่ในสภาพแวดล้อม Azure DevOps ให้เลือก รายการ ไฟล์ ในบานหน้าต่าง explorer วัตถุที่ซิงโครไนซ์กับฐานข้อมูล SQL ของคุณใน Fabric และที่เก็บจะแสดงขึ้น
ขยาย suppy_chain_analytics_database SQLDatabase จากนั้นกด dbo แล้วเลือก ตาราง จากนั้น Suppliers.sql วัตถุ
สังเกตข้อกําหนด T-SQL ของตารางในเนื้อหาวัตถุ ในสภาพแวดล้อมการเขียนโค้ดการผลิต วัตถุนี้จะถูกเปลี่ยนแปลงโดยใช้เครื่องมือการพัฒนา เช่น Visual Studio หรือ Visual Studio Code ในกรณีใดๆ ข้อกําหนดของวัตถุฐานข้อมูลนั้นจะถูกจําลองแบบไปยังที่เก็บซึ่งคุณได้ทําสําเนาจากสถานะปัจจุบันของฐานข้อมูล ลองใช้ตัวควบคุมแหล่งข้อมูล Azure DevOps เพื่อทําการเปลี่ยนแปลงบางอย่างไปยังวัตถุฐานข้อมูลในขั้นตอนบทช่วยสอนถัดไป
ค้นหาบรรทัด
[Fax]
ข้อกําหนดคอลัมน์และเลือกปุ่ม แก้ไข แก้ไขข้อกําหนดคอลัมน์เป็น[Fax] NVARCHAR (255) NULL,
เลือกปุ่มยอมรับ
กรอกกล่องข้อความ ยอมรับ ที่ปรากฏขึ้น และเลือกปุ่ม ยอมรับ ลองอธิบายการเปลี่ยนแปลงทั้งหมดในตัวควบคุมแหล่งข้อมูลเพื่อประโยชน์ของคุณและทีมของคุณ
การยอมรับจะเขียนการเปลี่ยนแปลงไปยังที่เก็บ
สลับกลับไปยังฐานข้อมูล SQL ในพอร์ทัล Fabric จากนั้นเลือก ตัวควบคุมแหล่งข้อมูล
คุณมีการอัปเดตที่ค้างอยู่หนึ่งรายการ ในการผลิต คุณจะตรวจทานการเปลี่ยนแปลงเหล่านี้ เลือกปุ่ม อัปเดตทั้งหมด การอัปเดตอาจใช้เวลาสักครู่
เลือกฐานข้อมูล SQL ในชื่อ Fabric เปิดหน้าต่างคิวรีใหม่ในฐานข้อมูล SQL ของคุณ
คัดลอกและวางรหัส T-SQL ต่อไปนี้เพื่อดูการเปลี่ยนแปลงของตารางที่อยู่ในฐานข้อมูล:
SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'Suppliers';
ป้อนรหัส T-SQL ต่อไปนี้ที่คิวรีเพื่อเพิ่มคอลัมน์ที่
Notes
ชื่อว่าตารางSuppliers
ไฮไลต์เพียงส่วนของโค้ดและเลือกปุ่ม เรียกใช้ :ALTER TABLE Suppliers ADD Notes NVARCHAR(MAX);
ตอนนี้กลับไปยังบทช่วยสอนพื้นที่ทํางานในพอร์ทัล Fabric
เลือกปุ่มตัวควบคุมแหล่งข้อมูล และสังเกตว่าแทนที่จะเป็นการอัปเดต ระบบของคุณจะแสดงคําขอเปลี่ยนแปลง เลือกกล่องกาเครื่องหมายที่อยู่ถัดจากชื่อวัตถุ จากนั้นเลือกปุ่ม ยืนยัน
ระบบจะยอมรับการเปลี่ยนแปลงที่เกิดขึ้นในตัวแก้ไขคิวรี และคุณสามารถกลับไปยังพอร์ทัล Azure DevOps และนําทางไปยัง พื้นที่ไฟล์ และ
dbo
Schema และจากนั้น ตาราง และSuppliers
วัตถุเพื่อดูคอลัมน์ใหม่ได้ (คุณอาจต้องรีเฟรชหน้าเพื่อดูการเปลี่ยนแปลง)
ตอนนี้คุณได้เห็นวิธีการที่คุณสามารถโต้ตอบกับ Schema วัตถุฐานข้อมูล SQL ของคุณจากตัวควบคุมแหล่งข้อมูลของคุณใน Azure DevOps สําหรับข้อมูลเพิ่มเติมเกี่ยวกับตัวควบคุมแหล่งข้อมูลใน Microsoft Fabric ดูการรวมตัวควบคุมแหล่งฐานข้อมูล SQL ใน Microsoft Fabric และบทช่วยสอน: การจัดการวงจรชีวิตใน Fabric
ตั้งค่าและกําหนดค่า GraphQL API
การเชื่อมต่อกับแอปพลิเคชันฐานข้อมูลมักจะเกี่ยวข้องกับการติดตั้งชุดไลบรารีสําหรับแอปพลิเคชันของคุณที่ใช้โพรโทคอล Tabular Data Stream (TDS) ที่โต้ตอบกับฐานข้อมูลโดยตรง
Microsoft Fabric มีอินเทอร์เฟซ GraphQL สําหรับการทํางานไม่เฉพาะกับฐานข้อมูลเท่านั้น แต่มีแหล่งข้อมูลหลายแหล่ง คุณยังสามารถรวมแหล่งข้อมูลเหล่านี้สําหรับมุมมองข้อมูลแบบรวม GraphQL เป็นภาษาคิวรีสําหรับ API ที่ช่วยให้คุณสามารถร้องขอข้อมูลที่คุณต้องการได้อย่างถูกต้อง ทําให้ง่ายต่อการพัฒนา API เมื่อเวลาผ่านไปและเปิดใช้งานเครื่องมือสําหรับนักพัฒนาที่ทรงพลัง ซึ่งมีคําอธิบายที่สมบูรณ์และเข้าใจได้ของข้อมูลใน API ของคุณ ซึ่งทําให้ลูกค้าสามารถถามได้อย่างชัดเจนว่าพวกเขาต้องการอะไรและต้องการอะไรเพิ่มเติมอีก ซึ่งจะทําให้แอปใช้ GraphQL ได้อย่างรวดเร็วและเสถียรเนื่องจากพวกเขาควบคุมข้อมูลที่ได้รับ ไม่ใช่เซิร์ฟเวอร์ คุณสามารถนึกภาพของอินเทอร์เฟซ GraphQL ให้มุมมองของชุดข้อมูลที่มีอยู่ภายในแหล่งข้อมูล คุณสามารถคิวรีข้อมูลและเปลี่ยนข้อมูลโดยใช้การกลายพันธุ์ได้ คุณสามารถเรียนรู้เพิ่มเติมเกี่ยวกับ GraphQL ได้ที่ข้อมูลอ้างอิงนี้
คุณสามารถเริ่มสร้าง GraphQL API ได้โดยตรงจากภายในตัวแก้ไขคิวรี Fabric SQL Fabric สร้าง Schema GraphQL โดยอัตโนมัติตามข้อมูลของคุณ และแอปพลิเคชันพร้อมที่จะเชื่อมต่อในไม่กี่นาที
สร้าง API สําหรับ GraphQL
หากต้องการสร้าง API สําหรับ GraphQL ที่คุณจะใช้สําหรับแอปพลิเคชัน:
เปิดพอร์ทัลฐานข้อมูลบทช่วยสอน
เลือกปุ่ม ใหม่ และเลือก API สําหรับ GraphQL
ใส่ข้อความ supplier_impact_gql สําหรับ ชื่อ สําหรับรายการของคุณ และเลือก สร้าง
คุณจะเห็นแผง เลือกข้อมูล เลื่อนจนกว่าคุณจะพบ
SupplyChain.vProductsBySuppliers
มุมมองที่คุณสร้างไว้ก่อนหน้านี้ในบทช่วยสอนนี้ ให้เลือกเลือกปุ่ม โหลด
ใน แผง คิวรี 1 ให้แทนที่ข้อความที่คุณเห็นด้วยสตริงคิวรี GraphQL ต่อไปนี้:
query { vProductsbySuppliers(filter: { SupplierLocationID: { eq: 7 } }) { items { CompanyName SupplierLocationID ProductCount } } }
เลือกปุ่ม เรียกใช้ ในหน้าต่าง คิวรี 1 ผลลัพธ์ของคิวรี GraphQL จะถูกส่งกลับไปยัง หน้าต่าง ผลลัพธ์ ในรูปแบบ JSON
เลือกปุ่ม คัดลอกจุดสิ้นสุด ในริบบอน
เลือกปุ่มคัดลอกเมื่อแผงคัดลอกลิงก์ปรากฎขึ้น เก็บสตริงนี้ใน Notepad หรือตําแหน่งที่ตั้งอื่นที่จะใช้ในแอปพลิเคชันตัวอย่างสําหรับบทช่วยสอนนี้ ตัวอย่างเช่น จะมีลักษณะคล้ายกับ:
https://api.fabric.microsoft.com/v1/workspaces/<work space id>/graphqlapis/<graph api id>/graphql
API สําหรับ GraphQL ของคุณพร้อมที่จะยอมรับการเชื่อมต่อและคําขอแล้ว คุณสามารถใช้ตัวแก้ไข API เพื่อทดสอบและต้นแบบคิวรี GraphQL และตัวสํารวจ Schema เพื่อตรวจสอบชนิดข้อมูลและเขตข้อมูลที่แสดงใน API ได้ สําหรับข้อมูลเพิ่มเติม ดู สร้าง GraphQL API จากฐานข้อมูล SQL ของคุณในพอร์ทัล Fabric
สร้างเว็บแอปพลิเคชันเพื่อคิวรีข้อมูล
จนถึงตอนนี้ในบทช่วยสอนนี้ คุณได้สร้างฐานข้อมูลที่จัดเก็บยอดขายและผลิตภัณฑ์สําหรับ Contoso และเพิ่มซัพพลายเออร์และเข้าร่วมเอนทิตีโดยใช้ Transact-SQL (T-SQL) ตอนนี้คุณต้องการอนุญาตให้นักพัฒนาใช้ข้อมูลโดยไม่ต้องเรียนรู้ T-SQL และยังช่วยให้สามารถคิวรีคอมโพเนนต์ Microsoft Fabric หลายรายการในอินเทอร์เฟซเดียวได้ เรียกใช้แอปพลิเคชันนี้ภายในเครื่องในอินเทอร์เฟซ .NET REST ที่โฮสต์ด้วยตนเองซึ่งเข้าถึงจุดสิ้นสุด GraphQL ที่คุณสร้างขึ้นในบทช่วยสอนนี้ คุณยังสามารถปรับใช้แอปพลิเคชันนี้โดยตรงกับ Microsoft Azure ในฐานะเว็บแอปพลิเคชัน หรือเว็บเซิร์ฟเวอร์อื่นที่คุณเลือก
สร้างเว็บแอปพลิเคชันโดยใช้ฐานข้อมูล SQL ใน Fabric API สําหรับ GraphQL
คุณถูกขอให้สร้างแอปพลิเคชันที่แสดงซัพพลายเออร์ที่ได้รับผลกระทบทั้งหมดหากสถานที่ตั้งมีการแบ่งห่วงโซ่อุปทานเนื่องจากภัยพิบัติทางธรรมชาติหรือการหยุดชะงักอื่น ๆ รหัสนี้แสดงวิธีการสร้างแอปพลิเคชัน ASP.NET ที่ใช้คิวรี GraphQL เพื่อเข้าถึงคิวรีในจุดสิ้นสุด SQL In Fabric GraphQL ที่คุณสร้างขึ้นในส่วนสุดท้ายของบทช่วยสอน
- ติดตั้ง .NET SDK ที่เหมาะสมสําหรับระบบปฏิบัติการของคุณ
- เปิดทรัพยากรในตําแหน่งที่ตั้งนี้และทําตามขั้นตอนทั้งหมดที่คุณเห็น
สกรีนช็อตตัวอย่างของแอปพลิเคชันจากบทช่วยสอนนี้เป็นไปตาม: