จัดการสภาพแวดล้อมผ่าน API สาธารณะ
Microsoft Fabric REST API มีจุดสิ้นสุดการบริการสําหรับการดําเนินการสร้าง อ่าน อัปเดต และลบ (CRUD) ของรายการ Fabric บทความนี้อธิบายถึง REST API ของสภาพแวดล้อมที่พร้อมใช้งานและการใช้งานของ REST
สำคัญ
คุณลักษณะนี้อยู่ในตัวอย่าง
ข้อมูลสรุปของ API ของสภาพแวดล้อมที่พร้อมใช้งาน
API | คำอธิบาย | ประเภท |
---|---|---|
สร้างสภาพแวดล้อม | สร้างสภาพแวดล้อมใหม่ในพื้นที่ทํางาน | ทั่วไป |
รับสภาพแวดล้อม | รับเมตาดาต้าของสภาพแวดล้อม การตอบสนองรวมถึงสถานะของสภาพแวดล้อม | ทั่วไป |
อัปเดตสภาพแวดล้อม | อัปเดตเมตาดาต้าของสภาพแวดล้อม เช่น ชื่อและคําอธิบาย | ทั่วไป |
ลบสภาพแวดล้อม | ลบสภาพแวดล้อมที่มีอยู่ | ทั่วไป |
สภาพแวดล้อมรายการในพื้นที่ทํางาน | รับรายการของสภาพแวดล้อมในพื้นที่ทํางาน | ทั่วไป |
เผยแพร่สภาพแวดล้อม | ทริกเกอร์การเผยแพร่ของสภาพแวดล้อมที่มีการเปลี่ยนแปลงที่ค้างอยู่ปัจจุบัน | ทั่วไป |
การยกเลิกการเผยแพร่ | ยกเลิกการเผยแพร่อย่างต่อเนื่องของสภาพแวดล้อม | ทั่วไป |
รับการคํานวณ Spark ที่เผยแพร่ | รับการกําหนดค่าการคํานวณ Spark ที่มีประสิทธิภาพ | การคํานวณ Spark |
รับการคํานวณ Staging Spark | รับการกําหนดค่าการคํานวณการกําหนดระยะแบบเต็ม การกําหนดค่าการแสดงข้อมูลรวมถึงการกําหนดค่าการคํานวณที่เผยแพร่และค้างอยู่ | การคํานวณ Spark |
รับไลบรารีที่เผยแพร่แล้ว | รับรายการไลบรารีที่มีประสิทธิภาพ | ไลบรารี |
รับไลบรารีการจัดเตรียม | รับรายการไลบรารีการกําหนดระยะแบบเต็ม รายการนี้ประกอบด้วยไลบรารีที่เผยแพร่และค้างอยู่ | ไลบรารี |
อัปโหลดไลบรารีการจัดเตรียม | เพิ่มไลบรารีแบบกําหนดเองหนึ่งรายการหรือไลบรารีสาธารณะหนึ่งไลบรารี/หลายรายการในสภาพแวดล้อม | ไลบรารี |
ลบไลบรารีการจัดเตรียม | ลบไลบรารีแบบกําหนดเองสําหรับการจัดเตรียมหนึ่งรายการหรือไลบรารีสาธารณะทั้งหมด | ไลบรารี |
เรียนรู้เพิ่มเติมเกี่ยวกับสภาพแวดล้อม API สาธารณะใน API รายการ - สภาพแวดล้อม
กรณีการใช้งาน API สาธารณะของสภาพแวดล้อม
ส่วนนี้แนะนําคุณผ่านสถานการณ์ทั่วไปหลายสถานการณ์เมื่อทํางานกับสภาพแวดล้อม คุณสามารถแทนที่ {WORKSPACE_ID}
และ {ARTIFACT_ID}
ในตัวอย่างต่อไปนี้ด้วยค่าที่เหมาะสม
สร้างสภาพแวดล้อมใหม่
คุณสามารถสร้างสภาพแวดล้อมว่างใหม่โดยใช้ API ต่อไปนี้
คำขอตัวอย่าง
POST https://api.fabric.microsoft.com/v1/workspaces/{{WORKSPACE_ID}}/environments { "displayName": "Environment_1", "description": "An environment description" }
จัดการไลบรารีการจัดเตรียม
คุณสามารถใช้ไลบรารีจัดเตรียมการอัปโหลด/ลบ API เพื่อจัดการส่วนไลบรารีในสภาพแวดล้อม
ตรวจสอบไลบรารีที่เผยแพร่สําหรับสภาพแวดล้อม
ก่อนที่จะเพิ่ม/ลบไลบรารี คุณสามารถใช้ API ไลบรารีที่เผยแพร่แล้วเพื่อตรวจสอบไลบรารีใดที่มีประสิทธิภาพในปัจจุบัน
คำขอตัวอย่าง
GET https://api.fabric.microsoft.com/v1/workspaces/{{WORKSPACE_ID}}/environments/{{ARTIFACT_ID}}/libraries
คำตอบตัวอย่าง
{ "customLibraries": { "wheelFiles": [ "samplewheel-0.18.0-py2.py3-none-any.whl" ], "pyFiles": [ "samplepython.py" ], "jarFiles": [ "samplejar.jar" ], "rTarFiles": [ "sampleR.tar.gz" ] }, "environmentYml": "dependencies:\r\n- pip:\r\n - matplotlib==3.4.3" }
การอัปโหลดไลบรารี
API สําหรับการอัปโหลดไลบรารีการกําหนดระยะจะยอมรับหนึ่งไฟล์ในแต่ละครั้ง ชนิดไฟล์ที่ได้รับการสนับสนุนคือ .whl, .jar, .tar.gz, .py และ environment.yml สําหรับไลบรารีสาธารณะ คุณสามารถระบุไฟล์ผ่านประเภทเนื้อหาแบบหลายส่วน/ฟอร์มข้อมูล
หมายเหตุ
- เพื่อจัดการไลบรารีสาธารณะอย่างมีประสิทธิภาพยิ่งขึ้น ขอแนะนําให้เขียนไลบรารีที่คาดหวังทั้งหมดจาก PyPI และ conda ในไฟล์ environment.yml
- API การอัปโหลดอนุญาตให้มีไฟล์สูงสุด 200 MB ในหนึ่งคําขอ ไลบรารีที่เกินขีดจํากัดขนาดนี้ยังไม่ได้รับการรองรับใน API สาธารณะ
คําขอตัวอย่าง
POST https://api.fabric.microsoft.com/v1/workspaces/{{WORKSPACE_ID}}/environments/{{ARTIFACT_ID}}/staging/libraries
การลบไลบรารี
ด้วยการระบุชื่อแฟ้มไลบรารีแบบเต็มด้วยชนิดคําต่อท้าย คุณสามารถลบไลบรารีได้ครั้งละหนึ่งไลบรารี
หมายเหตุ
- ถ้าคุณระบุ
environment.yml
เป็นไฟล์ที่จะลบ คุณกําลังเอาไลบรารีสาธารณะทั้งหมดออก - ถ้าคุณต้องการเอาชุดย่อยของไลบรารีสาธารณะที่มีอยู่ออก โปรดใช้ไลบรารีการอัปโหลดแทน และอัปโหลด environment.yml ที่มีเฉพาะไลบรารีที่คาดไว้เท่านั้น environment.yml ที่อัปโหลดจะแทนที่ส่วนไลบรารีสาธารณะที่มีอยู่ทั้งหมด
คําขอตัวอย่าง
DELETE https://api.fabric.microsoft.com/v1/workspaces/{{WORKSPACE_ID}}/environments/{{ARTIFACT_ID}}/staging/libraries?libraryToDelete=fuzzywuzzy-0.18.0-py2.py3-none-any.whl
จัดการการคํานวณ Staging Spark
คุณสามารถใช้การคํานวณ Staging Spark เพื่อจัดการการคํานวณ Spark ได้
ตรวจสอบการคํานวณ Spark ที่เผยแพร่สําหรับสภาพแวดล้อม
ก่อนที่จะเปลี่ยนการกําหนดค่าสําหรับสภาพแวดล้อม คุณสามารถใช้ API การคํานวณ Spark ที่เผยแพร่แล้วเพื่อตรวจสอบการกําหนดค่าการคํานวณ Spark ใดที่มีประสิทธิภาพในปัจจุบันได้
คำขอตัวอย่าง
GET https://api.fabric.microsoft.com/v1/workspaces/{{WORKSPACE_ID}}/environments/{{ARTIFACT_ID}}/sparkcompute
คำตอบตัวอย่าง
{ "instancePool": { "name": "Starter Pool", "type": "Workspace" }, "driverCores": 4, "driverMemory": "56g", "executorCores": 4, "executorMemory": "56g", "dynamicExecutorAllocation": { "enabled": false, "minExecutors": 1, "maxExecutors": 1 }, "sparkProperties": { "spark.acls.enable": "false" }, "runtimeVersion": "1.2" }
อัปเดตการกําหนดค่าการคํานวณ
คุณสามารถอัปเดตรันไทม์ Spark สลับไปยังพูลอื่น ปรับปรุงการกําหนดค่าการคํานวณ และเพิ่ม/ลบคุณสมบัติ Spark ผ่านการแก้ไขเนื้อความคําขอของ API นี้
คุณสามารถสลับกลุ่มที่แนบมาโดยการระบุชื่อกลุ่มและกลุ่ม ระบุชื่อพูลเป็น Starter Pool
เพื่อสลับพูลไปเป็นการตั้งค่าเริ่มต้น หากต้องการรับรายการพูลแบบกําหนดเองที่มีทั้งหมดของพื้นที่ทํางานโดย REST API ดู พูลแบบกําหนดเอง - รายการพื้นที่ทํางานแบบกําหนดเอง
ถ้าคุณต้องการเอาคุณสมบัติ Spark ที่มีอยู่ออก คุณจําเป็นต้องระบุค่าเป็น null
ด้วยคีย์ที่คุณต้องการนําออก ดังที่แสดงในตัวอย่างต่อไปนี้
คำขอตัวอย่าง
PATCH https://api.fabric.microsoft.com/v1/workspaces/{{WORKSPACE_ID}}/environments/{{ARTIFACT_ID}}/staging/sparkcompute { "instancePool": { "name": "Starter Pool", "type": "Workspace" }, "driverCores": 4, "driverMemory": "56g", "executorCores": 4, "executorMemory": "56g", "dynamicExecutorAllocation": { "enabled": false, "minExecutors": 1, "maxExecutors": 1 }, "sparkProperties": { "spark.acls.enable": null }, "runtimeVersion": "1.2" }
ทําให้การเปลี่ยนแปลงมีผลบังคับใช้
ใช้ชุด API ต่อไปนี้เพื่อเผยแพร่การเปลี่ยนแปลง
เตรียมพร้อมสําหรับการเผยแพร่
สภาพแวดล้อมสามารถยอมรับหนึ่งการเผยแพร่ในแต่ละครั้ง ก่อนที่จะเผยแพร่สภาพแวดล้อมของคุณ คุณสามารถตรวจสอบสถานะของสภาพแวดล้อมและมีการตรวจทานขั้นสุดท้ายของการเปลี่ยนแปลงการจัดเตรียมได้ เมื่อเผยแพร่สภาพแวดล้อมสําเร็จแล้ว การกําหนดค่าทั้งหมดในสถานะการแสดงข้อมูลจะมีผล
ขั้นตอนที่ 1: รับเมตาดาต้าของสภาพแวดล้อม
GET https://api.fabric.microsoft.com/v1/workspaces/{{WORKSPACE_ID}}/environments/{{ARTIFACT_ID}}/
ในเนื้อหาคําตอบ คุณสามารถบอกสถานะของสภาพแวดล้อมได้อย่างชัดเจน ตรวจสอบให้แน่ใจว่าไม่มีการเผยแพร่อย่างต่อเนื่องก่อนที่คุณจะย้ายไปยังขั้นตอนถัดไป
ขั้นตอนที่ 2: รับไลบรารีจัดเตรียม/Spark คํานวณเพื่อให้มีการตรวจทานขั้นสุดท้าย
GET https://api.fabric.microsoft.com/v1/workspaces/{{WORKSPACE_ID}}/environments/{{ARTIFACT_ID}}/staging/libraries GET https://api.fabric.microsoft.com/v1/workspaces/{{WORKSPACE_ID}}/environments/{{ARTIFACT_ID}}/staging/sparkcompute
ทริกเกอร์การเผยแพร่ของสภาพแวดล้อม
การเปลี่ยนแปลงที่คุณทําในสําหรับไลบรารีการกําหนดระยะและการคํานวณ Spark จะถูกแคช แต่จําเป็นต้องมีการเผยแพร่เพื่อให้มีประสิทธิภาพ ทําตามตัวอย่างต่อไปนี้เพื่อทริกเกอร์การเผยแพร่
คำขอตัวอย่าง
POST https://api.fabric.microsoft.com/v1/workspaces/{{WORKSPACE_ID}}/environments/{{ARTIFACT_ID}}/staging/publish
คำตอบตัวอย่าง
{ "publishDetails": { "state": "Running", "targetVersion": "46838a80-5450-4414-bea0-40fb6f3e0c0d", "startTime": "2024-03-29T14:17:09.0697022Z", "componentPublishInfo": { "sparkLibraries": { "state": "Running" }, "sparkSettings": { "state": "Running" } } } }
ในระหว่างการเผยแพร่ คุณยังสามารถเรียกใช้ API ต่อไปนี้เพื่อ ยกเลิก ได้อีกด้วย
คำขอตัวอย่าง
POST https://api.fabric.microsoft.com/v1/workspaces/{{WORKSPACE_ID}}/environments/{{ARTIFACT_ID}}/staging/cancelPublish