แชร์ผ่าน


สร้างรายการฟังก์ชันข้อมูลผู้ใช้ Fabric

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

โดยเฉพาะ คุณเรียนรู้วิธีการ:

  • สร้างรายการฟังก์ชันข้อมูลผู้ใช้
  • เขียนฟังก์ชันใหม่
  • จัดการฟังก์ชัน
  • เรียกใช้ฟังก์ชันของคุณ

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

สร้างรายการฟังก์ชันข้อมูลผู้ใช้ Fabric ใหม่

  1. เลือกพื้นที่ทํางานของคุณ และเลือก +รายการใหม่
  2. เลือก ชนิดรายการ เป็น รายการทั้งหมด ค้นหาและเลือก ฟังก์ชันข้อมูลผู้ใช้

สร้างรายการฟังก์ชันข้อมูลผู้ใช้ใหม่

  1. ในพื้นที่ทํางานของคุณ ให้เลือก +รายการใหม่

  2. ในบานหน้าต่างที่เปิดขึ้น ให้ค้นหา user data functionsจากนั้นเลือกไทล์

    สกรีนช็อตที่แสดงไทล์ฟังก์ชันข้อมูลผู้ใช้ในบานหน้าต่างรายการใหม่

  3. ระบุ ชื่อ สําหรับรายการฟังก์ชันข้อมูลผู้ใช้

  4. เลือก ฟังก์ชันใหม่ เพื่อสร้างเทมเพลตฟังก์ชัน hello_fabric Python ตัวสํารวจฟังก์ชันแสดงฟังก์ชันทั้งหมดที่เผยแพร่และพร้อมที่จะเรียกใช้

    สกรีนช็อตที่แสดงวิธีการสร้างฟังก์ชันใหม่โดยใช้เทมเพลต

  5. เมื่อมีการเผยแพร่ฟังก์ชัน hello_fabric คุณสามารถเรียกใช้จากรายการของฟังก์ชันในตัวสํารวจฟังก์ชัน

    สกรีนช็อตที่แสดงรหัสสําหรับฟังก์ชัน hello-fabric

เพิ่มฟังก์ชันใหม่จากตัวอย่าง

นี่คือตัวอย่างของวิธีการเพิ่มฟังก์ชันใหม่จากเมนู Insert sample ในกรณีนี้ เราจะเพิ่มฟังก์ชันที่เรียกว่า จัดการข้อมูลด้วย ไลบรารี pandas ที่ใช้ไลบรารี pandas ตามความต้องการ ทําตามขั้นตอนเพื่อเพิ่มฟังก์ชันตัวอย่างนี้:

  1. ตรวจสอบให้แน่ใจว่าคุณอยู่ในโหมดพัฒนา เลือก การจัดการไลบรารี เพื่อเพิ่มไลบรารีที่ฟังก์ชันของคุณจําเป็นต้องใช้

    สกรีนช็อตที่แสดงวิธีการจัดการไลบรารี

    หมายเหตุ

    ไลบรารี fabric_user_data_functions จะถูกเพิ่มตามค่าเริ่มต้น และไม่สามารถลบออกได้ ไลบรารีนี้จําเป็นสําหรับฟังก์ชันการทํางานของฟังก์ชันข้อมูลผู้ใช้ คุณจําเป็นต้องปรับปรุงรุ่นของไลบรารีนี้สําหรับ SDK นี้รุ่นใดๆ ในอนาคต

  2. เลือก ไลบรารี pandas และเลือกเวอร์ชัน เมื่อเพิ่มไลบรารีแล้ว ไลบรารีจะถูกบันทึกโดยอัตโนมัติในรายการฟังก์ชันข้อมูลผู้ใช้ของคุณ

    สกรีนช็อตที่แสดงวิธีการเพิ่มไลบรารี pandas

  3. เลือก แทรก ตัวอย่าง และเลือก จัดการข้อมูลด้วยไลบรารี pandas การดําเนินการนี้จะแทรกรหัสตัวอย่างที่ด้านล่างของโค้ดของคุณหลังจากฟังก์ชันอื่น ๆ

    สกรีนช็อตที่แสดงวิธีการแทรกตัวอย่างที่ใช้ไลบรารี pandas

  4. เมื่อแทรกตัวอย่างลงในตัวแก้ไขแล้ว คุณจะทดสอบโดยใช้ ความสามารถในการทดสอบ ในโหมดพัฒนา

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

    สกรีนช็อตที่แสดงส่วนย่อยของโค้ดของตัวอย่างในตัวแก้ไข

  6. หลังจากการเผยแพร่เสร็จสมบูรณ์ คุณจะเห็นฟังก์ชันใหม่ในรายการ Functions explorer ฟังก์ชันนี้พร้อมที่จะเรียกใช้จากพอร์ทัล หรือเรียกใช้จากแอปพลิเคชันหรือรายการ Fabric อื่น เช่น ไปป์ไลน์

    สกรีนช็อตที่แสดงส่วนย่อยของโค้ดของตัวอย่างในตัวแก้ไข

เรียกใช้ฟังก์ชันของคุณ

  1. ในการเรียกใช้ฟังก์ชันของคุณก่อนอื่นคุณต้องเปลี่ยนเป็น โหมดเรียกใช้เท่านั้น โดยคลิกที่ตัวสลับโหมด

    ภาพหน้าจอแบบเคลื่อนไหวแสดงวิธีการเปลี่ยนเป็นโหมดเรียกใช้เท่านั้น

  2. เลือก เรียกใช้ ไอคอนที่ปรากฏขึ้นเมื่อคุณโฮเวอร์เหนือฟังก์ชันในรายการ Functions explorer

    ภาพหน้าจอแสดงวิธีการเรียกใช้ฟังก์ชัน

  3. ส่งผ่านพารามิเตอร์ที่จําเป็นซึ่งแสดงเป็นฟอร์มในตัวสํารวจฟังก์ชัน ในกรณีนี้ เรากําลังจะเรียกใช้ฟังก์ชัน manipulate_data ซึ่งจําเป็นต้องใช้สตริง JSON เป็นพารามิเตอร์

    [
     {
      "Name": "John",
      "Age": 22,
      "Gender": "male"
     }
    ]
    
  4. เลือก เรียกใช้ เพื่อเรียกใช้ฟังก์ชัน

    สกรีนช็อตที่แสดงเอาต์พุตเมื่อมีการดําเนินการฟังก์ชันสําเร็จ

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

เขียนฟังก์ชันใหม่

ทุกฟังก์ชันที่ทํางานได้เริ่มต้นด้วยโปรแกรมตกแต่ง @udf.function() ก่อนข้อกําหนดของฟังก์ชัน อ่านเพิ่มเติมเกี่ยวกับ Python แบบจําลองการเขียนโปรแกรมของเรา เมื่อต้องเขียนฟังก์ชันใหม่ ใช้ @udf.function() ของตกแต่งที่จุดเริ่มต้นเพื่อประกาศให้เป็นฟังก์ชันที่สามารถทํางานได้ นี่คือฟังก์ชันตัวอย่าง:

# This sample allows you to pass a credit card number as an integer and mask it, leaving the last 4 digits. 

@udf.function()
def maskCreditCard(cardNumber: int)-> str:
    # Convert the card number to a string
    cardNumberStr = str(cardNumber)
    
    # Check if the card number is valid
    if not cardNumberStr.isdigit() or not (13 <= len(cardNumberStr) <= 19):
        raise ValueError("Invalid credit card number")
    
    # Mask all but the last four digits
    maskedNumber = '*' * (len(cardNumberStr) - 4) + cardNumberStr[-4:]
    
    return str(maskedNumber)

เมื่อฟังก์ชันพร้อม ให้เผยแพร่ฟังก์ชันเพื่อเรียกใช้

แนวคิดหลักของแบบจําลองการเขียนโปรแกรม

ฟังก์ชันข้อมูลผู้ใช้ของคุณใช้ แบบจําลอง Python Programming Function ของ User Data เพื่อสร้าง เรียกใช้ แก้ไขจุดบกพร่อง และปรับเปลี่ยนแต่ละฟังก์ชัน นี่คือไลบรารีของฝ่ายแรกที่มีฟังก์ชันการทํางานที่จําเป็นในการเรียกใช้ฟังก์ชันของคุณใน Fabric และใช้ประโยชน์จากการผสานรวมทั้งหมด

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

import datetime
import fabric.functions as fn
import logging

udf = fn.UserDataFunctions()

หมายเหตุ

คําสั่งนําเข้าที่มีไลบรารี fabric.functions และบรรทัดที่มีคําสั่งนี้ udf = fn.UserDataFunctions() จําเป็นต้องเรียกใช้ฟังก์ชันของคุณอย่างถูกต้อง ฟังก์ชัน ของคุณจะไม่ทํางานอย่างเหมาะสม หากบรรทัดเหล่านี้หายไป

  • เมื่อต้องสร้าง เรียกใช้ จัดการฟังก์ชัน คุณต้องมี SDK fabric.functions และไลบรารีที่สําคัญอื่นๆ อีกเล็กน้อย เช่น logging ช่วยให้คุณสามารถเขียนบันทึกแบบกําหนดเองได้
  • udf=fn.UserDataFunctions() คือตัวสร้างเพื่อกําหนดฟังก์ชันภายในรายการฟังก์ชันข้อมูลผู้ใช้

จัดการฟังก์ชันข้อมูล

เปลี่ยนชื่อฟังก์ชัน

  1. ในโหมด พัฒนา ให้เลือกในตัวแก้ไขโค้ดและอัปเดตชื่อฟังก์ชัน ตัวอย่างเช่น เปลี่ยนชื่อ hello_fabric เป็น hello_fabric1:

    @udf.function()
    def hello_fabric1(name: str) -> str:
       logging.info('Python UDF trigger function processed a request.')
    
       return f"Welcome to Fabric Functions, {name}, at {datetime.datetime.now()}!"
    
  2. หลังจากเปลี่ยนชื่อ แล้ว ให้เลือก เผยแพร่ เพื่อบันทึกการเปลี่ยนแปลงเหล่านี้

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

ลบฟังก์ชัน

หากต้องการลบฟังก์ชัน ให้เลือกรหัสฟังก์ชันในตัวแก้ไขโค้ดและลบส่วนโค้ดทั้งหมดออก เผยแพร่การเปลี่ยนแปลงเพื่อลบทั้งหมดออกจากรายการฟังก์ชันข้อมูลผู้ใช้

ตัวอย่างเช่น เมื่อต้องลบฟังก์ชัน hello_fabric ให้ลบบล็อกโค้ดต่อไปนี้:

@udf.function()
def hello_fabric(name: str) -> str:
    logging.info('Python UDF trigger function processed a request.')

    return f"Welcome to Fabric Functions, {name}, at {datetime.datetime.now()}!"

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

ขั้นตอนถัดไป