แชร์ผ่าน


จัดการและดําเนินการสมุดบันทึกใน Fabric ด้วย API

Microsoft Fabric REST API มีจุดสิ้นสุดการบริการสําหรับการดําเนินการสร้าง อ่าน อัปเดต และลบ (CRUD) ของรายการ Fabric บทความนี้อธิบาย REST API ของสมุดบันทึกที่พร้อมใช้งานและการใช้งานของ API

สำคัญ

คุณลักษณะนี้อยู่ในตัวอย่าง

ด้วย API สมุดบันทึก วิศวกรข้อมูลและนักวิทยาศาสตร์ข้อมูลสามารถปรับไปป์ไลน์ของตนเองให้เป็นอัตโนมัติและสร้าง CI/CD ได้อย่างสะดวกและมีประสิทธิภาพ API เหล่านี้ยังทําให้ผู้ใช้สามารถจัดการและจัดการรายการโน้ตบุ๊ค Fabric และรวมสมุดบันทึกกับเครื่องมือและระบบอื่น ๆ ได้อย่างง่ายดาย

การดําเนินการจัดการรายการเหล่านี้จะพร้อมใช้งานสําหรับสมุดบันทึก:

การดำเนินการ คำอธิบาย
สร้างรายการ สร้างสมุดบันทึกภายในพื้นที่ทํางาน
อัปเดตหน่วยข้อมูล อัปเดตเมตาดาต้าของสมุดบันทึก
อัปเดตข้อกําหนดรายการ อัปเดตเนื้อหาของสมุดบันทึก
ลบรายการ ลบสมุดบันทึก
รับรายการ รับเมตาดาต้าของสมุดบันทึก
รับข้อกําหนดรายการ รับเนื้อหาของสมุดบันทึก
ข้อมูลในรายการ แสดงรายการทั้งหมดในพื้นที่ทํางาน

สําหรับข้อมูลเพิ่มเติม ดูรายการ - REST API

การดําเนินการของตัวจัดกําหนดการงานต่อไปนี้จะพร้อมใช้งานสําหรับสมุดบันทึก:

การดำเนินการ คำอธิบาย
การรันงานตามความต้องการสินค้า เรียกใช้สมุดบันทึกด้วยการกําหนดพารามิเตอร์
ยกเลิกอินสแตนซ์งานรายการ ยกเลิกการเรียกใช้งานสมุดบันทึก
รับรายการอินสแตนซ์ของงาน รับสถานะการเรียกใช้สมุดบันทึก

สําหรับข้อมูลเพิ่มเติม ให้ดูที่ ตัวจัดกําหนดการงาน

หมายเหตุ

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

ตัวอย่างการใช้งาน REST API ของสมุดบันทึก

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

หมายเหตุ

สถานการณ์เหล่านี้ครอบคลุมเฉพาะตัวอย่างการใช้สมุดบันทึกที่ไม่ซ้ํากันเท่านั้น ตัวอย่าง API ทั่วไปของรายการ Fabric จะไม่ครอบคลุมที่นี่

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

Fabric Rest API กําหนดจุดสิ้นสุดแบบรวมสําหรับการดําเนินการ แทนที่พื้นที่ที่สํารองไว้ {WORKSPACE_ID} ด้วย {ARTIFACT_ID} ค่าที่เหมาะสมเมื่อคุณทําตามตัวอย่างในบทความนี้

สร้างสมุดบันทึกที่มีข้อกําหนด

สร้างรายการสมุดบันทึกด้วยแฟ้ม .ipynb ที่มีอยู่แล้วและแฟ้มต้นฉบับชนิดอื่น

ส่งคำขอ

POST https://api.fabric.microsoft.com/v1/workspaces/{{WORKSPACE_ID}}/items
 
{
    "displayName":"Notebook1",
    "type":"Notebook",
    "definition" : {
        "format": "ipynb", // Use "fabricGitSource" for source file format.
        "parts": [
            {
                "path": "notebook-content.ipynb", // fabric source file format, .py, .scala, .sql files are supported.
                "payload": "eyJuYmZvcm1hdCI6NCwibmJmb3JtYXRfbWlub3IiOjUsImNlbGxzIjpbeyJjZWxsX3R5cGUiOiJjb2RlIiwic291cmNlIjpbIiMgV2VsY29tZSB0byB5b3VyIG5ldyBub3RlYm9va1xuIyBUeXBlIGhlcmUgaW4gdGhlIGNlbGwgZWRpdG9yIHRvIGFkZCBjb2RlIVxuIl0sImV4ZWN1dGlvbl9jb3VudCI6bnVsbCwib3V0cHV0cyI6W10sIm1ldGFkYXRhIjp7fX1dLCJtZXRhZGF0YSI6eyJsYW5ndWFnZV9pbmZvIjp7Im5hbWUiOiJweXRob24ifX19",
                "payloadType": "InlineBase64"
            }
        ]
    }
}

ส่วนข้อมูลในคําขอคือสตริง base64 ที่แปลงจากสมุดบันทึกตัวอย่างต่อไปนี้

{
    "nbformat": 4,
    "nbformat_minor": 5,
    "cells": [
        {
            "cell_type": "code",
            "source": [
                "# Welcome to your new notebook\n# Type here in the cell editor to add code!\n"
            ],
            "execution_count": null,
            "outputs": [],
            "metadata": {}
        }
    ],
    "metadata": {
        "language_info": {
            "name": "python"
        },
        "dependencies": {
            "environment": {
                "environmentId": "6524967a-18dc-44ae-86d1-0ec903e7ca05",
                "workspaceId": "c31eddd2-26e6-4aa3-9abb-c223d3017004"
            },
            "lakehouse": {
                "default_lakehouse": "5b7cb89a-81fa-4d8f-87c9-3c5b30083bee",
                "default_lakehouse_name": "lakehouse_name",
                "default_lakehouse_workspace_id": "c31eddd2-26e6-4aa3-9abb-c223d3017004"
            }
        }
    }
}

หมายเหตุ

คุณสามารถเปลี่ยน lakehouse ตามค่าเริ่มต้นของสมุดบันทึกหรือสภาพแวดล้อมที่แนบมาได้โดยการเปลี่ยนเนื้อหาของmetadata.trident.lakehouseสมุดบันทึกหรือmetadata.trident.environment

รับสมุดบันทึกที่มีข้อกําหนด

ใช้ API ต่อไปนี้เพื่อรับเนื้อหาของสมุดบันทึก Fabric สนับสนุนการตั้งค่ารูปแบบเป็น .ipynb ในสตริงคิวรีเพื่อรับสมุดบันทึก .ipynb

ส่งคำขอ

POST https://api.fabric.microsoft.com/v1/workspaces/{{WORKSPACE_ID}}/items/{{ARTIFACT_ID}}/GetDefinition?format=ipynb

Response

รหัสสถานะ: 200

{
    "definition": {
        "parts": [
            {
                "path": "notebook-content.ipynb",
                "payload": "eyJuYmZvcm1hdCI6NCwibmJmb3JtYXRfbWlub3IiOjUsImNlbGxzIjpbeyJjZWxsX3R5cGUiOiJjb2RlIiwic291cmNlIjpbIiMgV2VsY29tZSB0byB5b3VyIG5ldyBub3RlYm9va1xuIyBUeXBlIGhlcmUgaW4gdGhlIGNlbGwgZWRpdG9yIHRvIGFkZCBjb2RlIVxuIl0sImV4ZWN1dGlvbl9jb3VudCI6bnVsbCwib3V0cHV0cyI6W10sIm1ldGFkYXRhIjp7fX1dLCJtZXRhZGF0YSI6eyJsYW5ndWFnZV9pbmZvIjp7Im5hbWUiOiJweXRob24ifX19",
                "payloadType": "InlineBase64"
            }
        ]
    }
}

เรียกใช้สมุดบันทึกตามความต้องการ

กําหนดตารางเวลาการเรียกใช้สมุดบันทึกของคุณด้วย API ต่อไปนี้ งาน Spark เริ่มต้นการดําเนินการหลังจากการร้องขอที่สําเร็จ

Fabric สนับสนุนการส่ง parameters ผ่านในเนื้อความคําขอเพื่อกําหนดพารามิเตอร์การเรียกใช้สมุดบันทึก ค่าต่างๆ จะถูกใช้โดยเซลล์พารามิเตอร์ของสมุดบันทึก

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

ส่งคำขอ

POST https://api.fabric.microsoft.com/v1/workspaces/{{WORKSPACE_ID}}/items/{{ARTIFACT_ID}}/jobs/instances?jobType=RunNotebook

{
    "executionData": {
        "parameters": {
            "parameterName": {
                "value": "new value",
                "type": "string"
            }
        },
        "configuration": {
            "conf": {
                "spark.conf1": "value"
            },
            "environment": {
                "id": "<environment_id>",
                "name": "<environment_name>"
            },
            "defaultLakehouse": {
                "name": "<lakehouse-name>",
                "id": "<lakehouse-id>",
                "workspaceId": "<(optional) workspace-id-that-contains-the-lakehouse>"
            },
            "useStarterPool": false,
            "useWorkspacePool": "<workspace-pool-name>"
        }
    }
}

Response

รหัสสถานะ: 202

Location: https://api.fabric.microsoft.com/v1/workspaces/4b218778-e7a5-4d73-8187-f10824047715/items/431e8d7b-4a95-4c02-8ccd-6faef5ba1bd7/jobs/instances/f2d65699-dd22-4889-980c-15226deb0e1b
Retry-After: 60

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