หมายเหตุ
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลอง ลงชื่อเข้าใช้หรือเปลี่ยนไดเรกทอรีได้
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลองเปลี่ยนไดเรกทอรีได้
บทความนี้ให้คําแนะนําเกี่ยวกับวิธีการใช้เซิร์ฟเวอร์ประวัติ Apache Spark แบบขยายเพื่อแก้ไขจุดบกพร่องและวินิจฉัยว่าเสร็จสมบูรณ์และเรียกใช้แอปพลิเคชัน Apache Spark
เข้าถึงเซิร์ฟเวอร์ประวัติ Apache Spark
เซิร์ฟเวอร์ประวัติ Apache Spark เป็นส่วนติดต่อผู้ใช้เว็บสําหรับแอปพลิเคชัน Spark ที่เสร็จสมบูรณ์และเรียกใช้ คุณสามารถเปิดอินเทอร์เฟสผู้ใช้เว็บ Apache Spark (UI) จากสมุดบันทึกตัวบ่งชี้ความคืบหน้าหรือหน้ารายละเอียดแอปพลิเคชัน Apache Spark ได้
เปิด UI ของเว็บ Spark จากสมุดบันทึกตัวบ่งชี้ความคืบหน้า
เมื่อทริกเกอร์งาน Apache Spark ปุ่มเพื่อเปิด Spark web UI จะอยู่ภายใน ตัวเลือกการดําเนินการ เพิ่มเติมในตัวบ่งชี้ความคืบหน้า เลือก Spark web UI และรอสองสามวินาที จากนั้นหน้า Spark UI จะปรากฏขึ้น
เปิด UI ของเว็บ Spark จากหน้ารายละเอียดแอปพลิเคชัน Apache Spark
นอกจากนี้ คุณยังสามารถเปิด UI ของเว็บ Spark ผ่านหน้ารายละเอียดแอปพลิเคชัน Apache Spark ได้ เลือก Monitor ทางด้านซ้ายของหน้า จากนั้นเลือกแอปพลิเคชัน Apache Spark หน้ารายละเอียดของแอปพลิเคชันจะปรากฏขึ้น
สําหรับแอปพลิเคชัน Apache Spark ที่มีสถานะกําลังทํางาน ปุ่มจะแสดง Spark UI เลือก Spark UI และหน้า Spark UI จะปรากฏขึ้น
สําหรับแอปพลิเคชัน Apache Spark ที่มีสถานะสิ้นสุดลง สถานะสิ้นสุดสามารถหยุด ได้ล้มเหลว ยกเลิก หรือเสร็จสมบูรณ์ ปุ่มจะแสดง เซิร์ฟเวอร์ประวัติ Spark เลือก เซิร์ฟเวอร์ ประวัติ Spark และหน้า Spark UI จะปรากฏขึ้น
แท็บกราฟในเซิร์ฟเวอร์ประวัติ Apache Spark
เลือก ID งานสําหรับงานที่คุณต้องการดู จากนั้นเลือก กราฟ บนเมนูเครื่องมือเพื่อดูมุมมองกราฟงาน
ภาพรวม
คุณสามารถดูภาพรวมของงานของคุณในกราฟงานที่สร้างขึ้นได้ ตามค่าเริ่มต้น กราฟจะแสดงงานทั้งหมด คุณสามารถกรองมุมมองนี้ตาม ID งาน
การแสดงผล
ตาม ค่าเริ่มต้น การแสดงความคืบหน้า จะถูกเลือกไว้ คุณสามารถตรวจสอบโฟลว์ข้อมูลได้โดยการเลือก อ่าน หรือ เขียน ในรายการดรอปดาวน์ แสดงผล
โหนดกราฟจะแสดงสีที่แสดงในคําอธิบายแผนภูมิความร้อน
เล่น
เมื่อต้องการเล่นงาน ให้เลือก เล่น คุณสามารถเลือก หยุด เมื่อใดก็ได้เพื่อหยุด สีของงานจะแสดงสถานะที่แตกต่างกันเมื่อเล่น:
| สี | ความหมาย |
|---|---|
| สีเขียว | สําเร็จแล้ว: งานเสร็จสมบูรณ์แล้ว |
| สีส้ม | ลองใหม่อีกครั้ง: อินสแตนซ์ของงานที่ล้มเหลวแต่ไม่มีผลต่อผลลัพธ์สุดท้ายของงาน งานเหล่านี้มีอินสแตนซ์ที่ซ้ํากันหรือลองใหม่ซึ่งอาจสําเร็จในภายหลัง |
| น้ำเงิน | กําลังเรียกใช้: งานกําลังทํางานอยู่ |
| ชนผิวขาว | กําลังรอหรือข้าม: งานกําลังรอเรียกใช้ หรือมีการข้ามลําดับขั้น |
| สีแดง | ล้มเหลว: งานล้มเหลว |
รูปภาพต่อไปนี้แสดงสีสถานะสีเขียว สีส้ม และสีน้ําเงิน
รูปต่อไปนี้แสดงสีสถานะสีเขียวและสีขาว
รูปต่อไปนี้แสดงสีแดง และสีเขียวสีสถานะ
หมายเหตุ
เซิร์ฟเวอร์ประวัติ Apache Spark ช่วยให้การเล่นสําหรับแต่ละงานที่เสร็จสมบูรณ์ (แต่ไม่อนุญาตให้เล่นงานที่ไม่สมบูรณ์)
Zoom
ใช้เมาส์เลื่อนเพื่อย่อและขยายในกราฟงาน หรือเลือก ย่อ/ขยายเพื่อให้ พอดีกับหน้าจอ
คำแนะนำเครื่องมือ
วางเมาส์บนโหนดกราฟเพื่อดูคําแนะนําเครื่องมือเมื่อมีงานที่ล้มเหลวและเลือกขั้นตอนเพื่อเปิดหน้าลําดับขั้น
บนแท็บกราฟงาน ขั้นจะมีคําแนะนําเครื่องมือและไอคอนขนาดเล็กปรากฏขึ้นหากงานมีงานที่ตรงตามเงื่อนไขต่อไปนี้:
| สภาวะ | คำอธิบาย |
|---|---|
| การเบ้ข้อมูล | ขนาด > การอ่านข้อมูลเฉลี่ยของขนาดการอ่านข้อมูลของงานทั้งหมดภายในลําดับขั้นนี้ * 2 และขนาด > การอ่านข้อมูล 10 MB |
| เวลาไม่เบ้ | เวลา > การดําเนินการเฉลี่ยของงานทั้งหมดภายในลําดับขั้นนี้ * 2 และเวลา > การดําเนินการ 2 นาที |
คําอธิบายโหนดกราฟ
โหนดกราฟงานแสดงข้อมูลต่อไปนี้ของแต่ละขั้นตอน:
- ID
- ชื่อหรือคําอธิบาย
- หมายเลขงานทั้งหมด
- ข้อมูลที่อ่าน: ผลรวมของขนาดอินพุตและขนาดการอ่านแบบสลับ
- การเขียนข้อมูล: ผลรวมของขนาดเอาต์พุตและขนาดการเขียนแบบสลับ
- เวลาดําเนินการ: เวลาระหว่างเวลาเริ่มต้นของความพยายามครั้งแรกและเวลาเสร็จสิ้นของความพยายามครั้งล่าสุด
- จํานวนแถว: ผลรวมของระเบียนข้อมูลป้อนเข้า ระเบียนผลลัพธ์ ระเบียนแบบสลับ อ่านและสลับการเขียนระเบียน
- ความคืบหน้า
หมายเหตุ
ตามค่าเริ่มต้น โหนดกราฟงานจะแสดงข้อมูลจากความพยายามสุดท้ายของแต่ละขั้นตอน (ยกเว้นเวลาการดําเนินการของขั้นตอน) อย่างไรก็ตาม ในระหว่างการเล่น โหนดกราฟจะแสดงข้อมูลของแต่ละความพยายาม
ขนาดข้อมูลของการอ่านและเขียนคือ 1MB = 1000 KB = 1000 * 1000 ไบต์
แสดงความคิดเห็น
ส่งคําติชมเกี่ยวกับปัญหาโดยการเลือก ส่งคําติชมถึงเรา
ขีดจํากัดหมายเลขลําดับขั้น
สําหรับการพิจารณาประสิทธิภาพ ตามค่าเริ่มต้น กราฟจะพร้อมใช้งานเฉพาะเมื่อแอปพลิเคชัน Spark มีขั้นตอนน้อยกว่า 500 ขั้นตอนเท่านั้น ถ้ามีลําดับขั้นมากเกินไป จะล้มเหลวด้วยข้อผิดพลาดดังนี้:
The number of stages in this application exceeds limit (500), graph page is disabled in this case.
สําหรับการแก้ปัญหาเฉพาะหน้า ก่อนที่จะเริ่มแอปพลิเคชัน Spark โปรดใช้การกําหนดค่า Spark นี้เพื่อเพิ่มขีดจํากัด:
spark.ui.enhancement.maxGraphStages 1000
แต่โปรดสังเกตว่านี่อาจทําให้เกิดประสิทธิภาพการทํางานที่ไม่ดีของหน้าและ API เนื่องจากเนื้อหาอาจมีขนาดใหญ่เกินไปสําหรับเบราว์เซอร์ที่จะดึงและแสดง
สํารวจแท็บการวินิจฉัยในเซิร์ฟเวอร์ประวัติ Apache Spark
หากต้องการเข้าถึงแท็บ การวินิจฉัย ให้เลือก ID งาน จากนั้นเลือก การวินิจฉัย บนเมนูเครื่องมือเพื่อรับมุมมอง การวินิจฉัยงาน แท็บการวินิจฉัยประกอบด้วย Data Skew, Time Skew และ Executor Usage Analysis
ตรวจสอบ Data Skew, Time Skew และ Executor Usage Analysis โดยการเลือกแท็บตามลําดับ
การเบ้ข้อมูล
เมื่อคุณเลือกแท็บ การเบ้ ข้อมูล งานแบบเบ้ที่สอดคล้องกันจะปรากฏขึ้นตามพารามิเตอร์ที่ระบุ
ระบุพารามิเตอร์ - ส่วนแรกจะแสดงพารามิเตอร์ซึ่งใช้เพื่อตรวจหา Data Skew กฎเริ่มต้นคือ: การอ่านข้อมูลงานมากกว่าสามเท่าของข้อมูลงานเฉลี่ยที่อ่านและข้อมูลงานที่อ่านได้มีมากกว่า 10 MB ถ้าคุณต้องการกําหนดกฎของคุณเองสําหรับงานที่เบื้องหน้า คุณสามารถเลือกพารามิเตอร์ของคุณได้ ส่วน ลําดับขั้นและเครื่องหมายการวาดจะถูกรีเฟรชตามลําดับ
ขั้นตอนที่ เบ้ - ส่วนที่สองแสดงขั้นตอนซึ่งมีงานเบ้ที่ตรงตามเกณฑ์ที่ระบุไว้ก่อนหน้านี้ ถ้ามีงานที่บิดเบื้องมากกว่าหนึ่งงานในหนึ่งขั้นตอน ตารางลําดับขั้นแบบเบ้จะแสดงเฉพาะงานที่มีการเบ้มากที่สุดเท่านั้น (ตัวอย่างเช่น ข้อมูลที่ใหญ่ที่สุดสําหรับข้อมูลเบ้)
แผนภูมิ เบ้ - เมื่อแถวในตารางขั้นตอนการเบ้ถูกเลือก แผนภูมิแบบเบ้แสดงรายละเอียดการกระจายงานเพิ่มเติมตามข้อมูลที่อ่านและเวลาการดําเนินการ งานที่เบ้ถูกทําเครื่องหมายเป็นสีแดงและงานปกติจะถูกทําเครื่องหมายเป็นสีน้ําเงิน แผนภูมิแสดงงานตัวอย่างสูงสุด 100 งาน และรายละเอียดงานจะแสดงในบานหน้าต่างด้านล่างขวา
เวลาไม่บิด
แท็บ เวลาการวาด จะแสดงงานที่เบื้องหน้าตามเวลาการดําเนินการของงาน
ระบุพารามิเตอร์ - ส่วนแรกจะแสดงพารามิเตอร์ซึ่งใช้เพื่อตรวจหาการเบ้เวลา เกณฑ์เริ่มต้นในการตรวจหาเวลาการเบ้คือ: เวลาการดําเนินการงานมากกว่าสามครั้งโดยเฉลี่ยแล้ว และเวลาการดําเนินการงานมากกว่า 30 วินาที คุณสามารถเปลี่ยนพารามิเตอร์ตามความต้องการของคุณได้ ลําดับ ขั้น แบบเบ้และ แผนภูมิ แบบเบ้จะแสดงลําดับขั้นและข้อมูลงานที่สอดคล้องกันเช่นเดียวกับแท็บ การเบ้ข้อมูล ดังที่อธิบายไว้ก่อนหน้านี้
เลือกเวลาการบิดเบื้อง จากนั้นผลลัพธ์ที่กรองแล้วจะแสดงในส่วนลําดับขั้นแบบเบ้ตามพารามิเตอร์ที่ตั้งค่าไว้ในส่วนระบุพารามิเตอร์ เลือกหนึ่งรายการในส่วน ลําดับขั้น การวาด จากนั้นแผนภูมิที่สอดคล้องกันจะร่างในส่วนที่ 3 และรายละเอียดงานจะแสดงในบานหน้าต่างด้านล่างขวา
การวิเคราะห์การใช้งานของตัวดําเนินการ
คุณลักษณะนี้ได้ถูกเลิกใช้ใน Fabric แล้วในขณะนี้ ถ้าคุณยังคงต้องการใช้สิ่งนี้เป็นการแก้ไขปัญหาชั่วคราว โปรดเข้าถึงหน้าโดยการเพิ่ม "/executorusage" ที่อยู่เบื้องหลังเส้นทาง "/diagnostic" อย่างชัดเจนใน URL ดังนี้:
Spark Executor Rolling Logs: เข้าถึงงานขนาดใหญ่และยาวได้ง่ายขึ้น
เนื่องจากแอปพลิเคชัน Spark มีขนาดและระยะเวลาเพิ่มขึ้นอย่างต่อเนื่อง การจัดการและการวิเคราะห์บันทึกที่มีประสิทธิภาพจึงมีความสําคัญมากขึ้นเรื่อยๆ เราได้แนะนําการปรับปรุง Spark History Server (สําหรับแอปพลิเคชันที่เสร็จสมบูรณ์) และ Spark UI (สําหรับแอปพลิเคชันที่ทํางานอยู่) ซึ่งเปิดใช้งานบันทึกการหมุนเวียนของตัวดําเนินการสําหรับ Spark 3.4 ขึ้นไป
เมื่อบันทึกตัวดําเนินการเกิน 16MB หรืองาน Spark ทํางานนานกว่าหนึ่งชั่วโมง ระบบจะแบ่งบันทึกออกเป็นเซ็กเมนต์รายชั่วโมงโดยอัตโนมัติ ทําให้ง่ายต่อการนําทาง ดู และดาวน์โหลดบันทึกโดยไม่ต้องจัดการกับไฟล์ที่มีขนาดใหญ่มาก
ตอนนี้คุณสามารถ:
- ดูบันทึกตามชั่วโมงเพื่อระบุหน้าต่างการดําเนินการที่เฉพาะเจาะจงได้อย่างรวดเร็ว
- เข้าถึงบันทึกที่ใช้งานอยู่ล่าสุดในขณะที่งานยังทํางานอยู่
- ดาวน์โหลดบันทึกรายชั่วโมงแต่ละรายการหรือบันทึกทั้งหมดพร้อมกันตามต้องการ
คุณลักษณะนี้ช่วยให้ผู้ใช้สามารถค้นหาและวิเคราะห์บันทึกจากจุดเวลาใดจุดหนึ่งได้อย่างง่ายดายในขณะที่หลีกเลี่ยงความยุ่งยากในการดาวน์โหลดหรือเปิดไฟล์บันทึกขนาดใหญ่
ด้านล่างนี้คือตัวอย่างของมุมมอง Executor Rolling Logs: