Apache Spark compute ใน Microsoft Fabric คืออะไร

นําไปใช้กับ:✅ วิศวกรข้อมูลและวิทยาศาสตร์ข้อมูลใน Microsoft Fabric

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

รูปภาพของแพลตฟอร์มการคํานวณ Spark ที่มีพูลเริ่มต้นและพูล Spark แบบกําหนดเอง

กลุ่มเริ่มต้น

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

รูปภาพของตารางที่แสดงการกําหนดค่าพูลตัวเริ่มต้น

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

แผนภาพที่แสดงการออกแบบระดับสูงของกลุ่มเริ่มต้น

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

แผนภาพที่แสดงขั้นตอนระดับสูงในการเรียกเก็บเงินของกลุ่มเริ่มต้น

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

สระว่ายน้ํา Spark

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

ถ้าคุณไม่ได้ใช้พูล Spark ของคุณเป็นเวลา 2 นาทีหลังจากเซสชันของคุณหมดอายุ พูล Spark ของคุณจะถูกจัดสรร ช่วงเวลาหมดอายุของเซสชันเริ่มต้นนี้ถูกตั้งค่าเป็น 20 นาที และคุณสามารถเปลี่ยนได้ถ้าคุณต้องการ ถ้าคุณเป็นผู้ดูแลระบบพื้นที่ทํางาน คุณยังสามารถสร้างพูล Spark แบบกําหนดเองสําหรับพื้นที่ทํางานของคุณ และทําให้เป็นตัวเลือกเริ่มต้นสําหรับผู้ใช้อื่นได้ ด้วยวิธีนี้ คุณสามารถประหยัดเวลาและหลีกเลี่ยงการตั้งค่าพูล Spark ใหม่ทุกครั้งที่คุณเรียกใช้สมุดบันทึกหรืองาน Spark กลุ่ม Spark แบบกําหนดเองจะใช้เวลาประมาณสามนาทีในการเริ่มต้น เนื่องจาก Spark ต้องได้รับโหนดจาก Azure

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

ขนาดและจํานวนของโหนดที่คุณสามารถมีในพูล Spark แบบกําหนดเองของคุณขึ้นอยู่กับความจุ Microsoft Fabric ของคุณ ความจุคือการวัดกําลังการประมวลผลที่คุณสามารถใช้ใน Azure ได้ วิธีหนึ่งในการคิดก็คือ Apache Spark VCores สองเครื่อง (หน่วยของกําลังการประมวลผลสําหรับ Spark) เท่ากับหน่วยความจุหนึ่งหน่วย ตัวอย่างเช่น Fabric capacity SKU F64 มีหน่วยความจุ 64 หน่วย ซึ่งเทียบเท่ากับ 128 Spark VCores คุณสามารถใช้ Spark VCores เหล่านี้เพื่อสร้างโหนดที่มีขนาดแตกต่างกันสําหรับพูล Spark แบบกําหนดเองของคุณ ตราบใดที่จํานวนรวมของ Spark VCores ไม่เกิน 128

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

แผนภาพที่แสดงลําดับขั้นระดับสูงในการเรียกเก็บเงินของกลุ่มแบบกําหนดเอง

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

การกําหนดค่าพูลแบบกําหนดเองที่เป็นไปได้สําหรับ F64 ตามตัวอย่างก่อนหน้า:

ความจุผ้า SKU หน่วยกําลังการผลิต Spark VCores ขนาดโหนด จํานวนสูงสุดของโหนด
F64 64 384 เล็ก 96
F64 64 384 กลาง 48
F64 64 384 ใหญ่ 24
F64 64 384 X-Large 12
F64 64 384 XX-ขนาดใหญ่ 6

หมายเหตุ

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

โหนด

อินสแตนซ์ของพูล Apache Spark ประกอบด้วยโหนดส่วนหัวหนึ่งโหนดและโหนดผู้ปฏิบัติงาน สามารถเริ่มต้นอย่างน้อยหนึ่งโหนดในอินสแตนซ์ Spark โหนดหัวหน้าเรียกใช้บริการการจัดการพิเศษเช่น Livy, Yarn Resource Manager, Zookeeper และโปรแกรมควบคุม Apache Spark โหนดทั้งหมดเรียกใช้บริการ เช่น Node Agent และตัวจัดการโหนด Yarn โหนดผู้ปฏิบัติงานทั้งหมดเรียกใช้บริการ Apache Spark Executor

ขนาดโหนด

กลุ่ม Spark สามารถกําหนดด้วยขนาดโหนดที่อยู่ในช่วงจากโหนดการคํานวณขนาดเล็ก (ด้วย 4 vCore และหน่วยความจํา 32 GB) ไปยังโหนดการคํานวณขนาดใหญ่สองอัน (ด้วย 64 vCore และ 512 GB ของหน่วยความจําต่อโหนด) ขนาดโหนดสามารถเปลี่ยนแปลงได้หลังจากการสร้างกลุ่มแม้ว่าเซสชันที่ใช้งานอยู่จะต้องรีสตาร์ตก็ตาม

ขนาด vCore หน่วยความจำ
เล็ก 4 32 GB
กลาง 8 64 กิกะไบต์
ใหญ่ 16 128 กิกะไบต์
X-Large 32 256 GB
XX-ขนาดใหญ่ 64 512 GB

ปรับขนาดอัตโนมัติ

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

หมายเหตุ

ตามค่าเริ่มต้น spark.yarn.executor.decommission.enabled จะถูกตั้งค่าเป็น true ทําให้สามารถปิดโหนดที่มีความบกพร่องโดยอัตโนมัติเพื่อเพิ่มประสิทธิภาพการคํานวณ ถ้าควรใช้การปรับมาตราส่วนที่ก้าวร้าวน้อยลง การกําหนดค่านี้สามารถตั้งค่าเป็น เท็จ

การจัดสรรแบบไดนามิก

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

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