อะไรคือข้อดีของกรอบงาน Hadoop 2.0 (YARN)

ผู้เขียน: Roger Morrison
วันที่สร้าง: 18 กันยายน 2021
วันที่อัปเดต: 1 กรกฎาคม 2024
Anonim
6.2. YARN | Evolution From MapReduce 1.0
วิดีโอ: 6.2. YARN | Evolution From MapReduce 1.0

เนื้อหา


ที่มา: Jim Hughes / Dreamstime.com

Takeaway:

YARN เป็นการปรับปรุงที่สำคัญเหนือกรอบ Hadoop 1.0 ที่นี่เราตรวจสอบข้อดีบางอย่างที่มีอยู่เหนือรุ่นก่อน

ตั้งแต่เวลาที่มีการนำเสนอแนวคิดของข้อมูลขนาดใหญ่มันได้ผ่านวิวัฒนาการหลายขั้นตอน Hadoop เปิดตัวในปี 2548 ด้วยคุณสมบัติเริ่มต้นบางอย่างเช่นโปรแกรมประมวลผล MapReduce ซึ่งอนุญาตให้ปริมาณงานประมวลผลข้อมูลขนาดใหญ่กระจายอยู่ในกลุ่ม Hadoop มีประสบการณ์การเปลี่ยนแปลงมากมายและได้พัฒนากรอบและวิธีการขั้นสูง

YARN เป็นองค์ประกอบหลักของ Hadoop 2.0 โดยทั่วไปจะจัดการทรัพยากรในสภาพแวดล้อมแบบคลัสเตอร์ โบรกเกอร์ YARN โต้ตอบกับทรัพยากรการคำนวณ (ในนามของแอปพลิเคชัน) และกำหนดทรัพยากรให้กับแต่ละแอปพลิเคชันตามเกณฑ์การกรองที่แตกต่างกัน

ในบทความนี้เราจะพิจารณาข้อดีอันดับต้น ๆ ของ YARN over Hadoop 1.0

YARN Framework คืออะไร

Yet nother REsource ยังไม่มีข้อความegotiator เป็นองค์ประกอบหลักของ Hadoop 2.0 ซึ่งจัดการทรัพยากรในสภาพแวดล้อมแบบคลัสเตอร์ กรอบงาน Hadoop YARN เป็นรุ่นขั้นสูงของ Hadoop 1.0 ที่ให้ประสิทธิภาพที่ดีขึ้นซึ่งเป็นประโยชน์ต่อระบบนิเวศ Hadoop และเทคโนโลยีที่เกี่ยวข้องทั้งหมด ตอนนี้เราคุ้นเคยกับ YARN เพิ่มขึ้นเล็กน้อยลองดู Hadoop 1.0 และ YARN ให้ละเอียดยิ่งขึ้น


ข้อ จำกัด ของ Hadoop 1.0 Framework

เพื่อที่จะเข้าใจถึงข้อดีของกรอบ YARN สิ่งสำคัญคือต้องเข้าใจว่า Hadoop 1.0 ทำงานอย่างไรและข้อ จำกัด ของกรอบการทำงานนี้คืออะไร

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

ข้อเสียที่สำคัญของวิธีการข้างต้น:

  • ว่าง - JobTracker เป็นเพียงจุดเดียวใน Hadoop 1.0 ซึ่งหมายความว่าหาก JobTracker ล้มเหลวงานทั้งหมดจะเริ่มต้นใหม่ตามค่าเริ่มต้น
  • ขีดความสามารถในการ จำกัด - เนื่องจาก JobTracker ทำงานหลายอย่างและทำงานบนเครื่องเดียวเครื่องอื่น ๆ ที่ใช้งานได้จะไม่ถูกใช้งาน ดังนั้นจึงส่งผลให้ขยายขีด จำกัด
  • การใช้ทรัพยากร - ในวิธีการข้างต้นสล็อตแมปและลดสล็อตจะถูกกำหนดไว้ล่วงหน้า อาจเกิดขึ้นที่หนึ่งในสล็อตเต็ม แต่สล็อตของเครื่องอื่นว่าง เนื่องจากมีการจองสล็อตว่างไว้พวกเขาจะไม่ได้ใช้งานแทนที่จะเป็นช่องเต็มรูปแบบ สิ่งนี้อาจทำให้เกิดปัญหาการใช้ทรัพยากร
  • การรันแอพพลิเคชั่นที่ไม่ใช่ MapReduce - JobTracker เป็นแอปพลิเคชั่นที่สร้างขึ้นสำหรับกรอบการทำงานของ MapReduce ปัญหาเกิดขึ้นเมื่อแอปพลิเคชันที่ไม่ใช่ MapReduce พยายามเรียกใช้ในกรอบงานนี้ แอปพลิเคชันต้องสอดคล้องกับกรอบการเขียนโปรแกรม MapReduce เพื่อให้ทำงานได้สำเร็จ ปัญหาทั่วไปบางประการที่ต้องเผชิญเนื่องจากปัญหานี้รวมถึง:
    • แบบสอบถามเฉพาะกิจ
    • การวิเคราะห์ตามเวลาจริง
    • ผ่านวิธีการ
  • ความล้มเหลวในการเรียงซ้อน - หนึ่งในปัญหาที่สำคัญในกรอบนี้เกิดขึ้นเมื่อจำนวนโหนดมากกว่า 4000 ในสถานการณ์เช่นนี้ความล้มเหลวแบบเรียงซ้อนเกิดขึ้นทำให้เกิดการเสื่อมสภาพของกลุ่มที่สมบูรณ์

นี่เป็นข้อ จำกัด ที่สำคัญบางประการที่ต้องเผชิญขณะทำงานกับกรอบนี้ มีข้อ จำกัด เล็กน้อยอื่น ๆ เช่นกันซึ่งไม่ได้กล่าวถึง กรอบ YARN ถูกนำมาใช้เพื่อเอาชนะข้อ จำกัด เหล่านี้


ไม่มีข้อบกพร่องไม่มีความเครียด - คู่มือแบบเป็นขั้นตอนเพื่อสร้างซอฟต์แวร์ที่เปลี่ยนแปลงชีวิตโดยไม่ทำลายชีวิตของคุณ

คุณไม่สามารถพัฒนาทักษะการเขียนโปรแกรมของคุณเมื่อไม่มีใครใส่ใจคุณภาพของซอฟต์แวร์

YARN Framework และข้อดี

กรอบ YARN ที่นำมาใช้ใน Hadoop 2.0 นั้นมีไว้เพื่อแบ่งปันความรับผิดชอบของ MapReduce และดูแลภารกิจการจัดการคลัสเตอร์ สิ่งนี้ช่วยให้ MapReduce ประมวลผลข้อมูลเท่านั้นและทำให้กระบวนการทำงานราบรื่นขึ้น

YARN นำเสนอแนวคิดของการจัดการทรัพยากรส่วนกลาง สิ่งนี้ทำให้แอปพลิเคชั่นหลายตัวทำงานบน Hadoop ซึ่งเป็นการแบ่งปันการจัดการทรัพยากรทั่วไป

ส่วนประกอบที่สำคัญบางส่วนของกรอบงาน YARN ได้แก่ :

  • ResourceManager - องค์ประกอบ ResourceManager เป็นผู้เจรจาต่อรองในคลัสเตอร์สำหรับทรัพยากรทั้งหมดที่มีอยู่ในคลัสเตอร์นั้น นอกจากนี้องค์ประกอบนี้แบ่งออกเป็นโปรแกรมจัดการที่รับผิดชอบการจัดการงานของผู้ใช้ จาก Hadoop 2.0 งาน MapReduce ใด ๆ จะถูกพิจารณาเป็นแอปพลิเคชัน
  • ApplicationMaster - องค์ประกอบนี้เป็นสถานที่ที่มีงานหรือแอปพลิเคชันอยู่ นอกจากนี้ยังจัดการงาน MapReduce ทั้งหมดและได้ข้อสรุปหลังจากการประมวลผลงานเสร็จสมบูรณ์
  • NodeManager - คอมโพเนนต์ตัวจัดการโหนดทำหน้าที่เป็นเซิร์ฟเวอร์สำหรับประวัติงาน รับผิดชอบในการรักษาความปลอดภัยข้อมูลของงานที่เสร็จสมบูรณ์ นอกจากนี้ยังติดตามงานของผู้ใช้พร้อมกับเวิร์กโฟลว์สำหรับโหนดเฉพาะ

โปรดทราบว่ากรอบ YARN มีองค์ประกอบที่แตกต่างกันเพื่อจัดการงานต่าง ๆ ลองมาดูกันว่าข้อ จำกัด ของ Hadoop 1.0 นั้นเป็นอย่างไร

  • การใช้ทรัพยากรให้ดีขึ้น - กรอบงาน YARN ไม่มีสล็อตคงที่สำหรับงาน มันมีตัวจัดการทรัพยากรกลางซึ่งอนุญาตให้คุณแชร์หลาย ๆ แอปพลิเคชันผ่านทางทรัพยากรทั่วไป
  • การรันแอปพลิเคชันที่ไม่ใช่ MapReduce - ใน YARN ความสามารถในการกำหนดเวลาและการจัดการทรัพยากรจะถูกแยกออกจากองค์ประกอบการประมวลผลข้อมูล สิ่งนี้ทำให้ Hadoop สามารถรันแอพพลิเคชั่นหลากหลายประเภทซึ่งไม่สอดคล้องกับการเขียนโปรแกรมของเฟรมเวิร์ก Hadoop ขณะนี้กลุ่ม Hadoop สามารถเรียกใช้คิวรีโต้ตอบแบบอิสระและทำการวิเคราะห์แบบเรียลไทม์ได้ดีขึ้น
  • ความเข้ากันได้ย้อนหลัง - YARN มาเป็นเฟรมเวิร์กที่เข้ากันได้แบบย้อนหลังซึ่งหมายถึงงานใด ๆ ที่มีอยู่ของ MapReduce สามารถดำเนินการได้ใน Hadoop 2.0
  • JobTracker ไม่มีอยู่อีกต่อไป - บทบาทที่สำคัญสองประการของ JobTracker คือการจัดการทรัพยากรและการจัดตารางเวลางาน ด้วยการแนะนำของกรอบ YARN สิ่งเหล่านี้จะถูกแยกออกเป็นสองส่วนที่แยกจากกันคือ:
    • NodeManager
    • ResourceManager

ข้อสรุป

การเปิดตัวกรอบ YARN ทำให้การสร้างแอพพลิเคชั่นสำหรับผู้พัฒนา Hadoop ง่ายขึ้น ตอนนี้แอปพลิเคชันไม่จำเป็นต้องใช้กับเครื่องมือของบุคคลที่สามอีกต่อไป YARN เป็นการเปลี่ยนแปลงครั้งใหญ่ซึ่งจะทำให้ผู้ใช้สามารถพิจารณา Hadoop 2.0 เพื่อสร้างแอปพลิเคชั่นและจัดการข้อมูลได้อย่างมีประสิทธิภาพมากขึ้น เมื่อเวลาผ่านไปจะมีการพัฒนาเพิ่มเติมเพื่อเพิ่มความสะดวกในการใช้งานของ Hadoop สำหรับตอนนี้กรอบ YARN จะมีบทบาทสำคัญในการจัดการกับปัญหาที่มีอยู่และสร้างสภาพแวดล้อมที่ไม่ยุ่งยากซึ่งมีความหลากหลายมากกว่าจากรุ่นก่อนหน้าของรุ่น MapReduce