Hadoop 2.0 Cluster Architecture Federation
บทนำ:
ในบล็อกนี้ฉันจะเจาะลึกเข้าไปใน Hadoop 2.0 Cluster Architecture Federation Apache Hadoop มีการพัฒนาไปมากตั้งแต่เปิดตัว Apache Hadoop 1.x. ดังที่คุณทราบจากบล็อกก่อนหน้าของฉันว่า เป็นไปตามโทโพโลยี Master / Slave โดยที่ NameNode ทำหน้าที่เป็นมาสเตอร์ดีมอนและรับผิดชอบในการจัดการโหนดทาสอื่น ๆ ที่เรียกว่า DataNodes ในระบบนิเวศนี้ Master Daemon หรือ NameNode เดียวนี้กลายเป็นคอขวดและในทางตรงกันข้าม บริษัท ต่างๆจำเป็นต้องมี NameNode ซึ่งพร้อมใช้งานสูง เหตุผลนี้จึงกลายเป็นรากฐานของสถาปัตยกรรมสหพันธ์ HDFS และ สถาปัตยกรรม HA (High Availability) .
วิธีการเป็นวิศวกรปัญญาประดิษฐ์
หัวข้อที่ฉันได้กล่าวถึงในบล็อกนี้มีดังนี้:
- สถาปัตยกรรม HDFS ปัจจุบัน
- ข้อ จำกัด ของสถาปัตยกรรม HDFS ในปัจจุบัน
- สถาปัตยกรรมสหพันธ์ HDFS
ภาพรวมของสถาปัตยกรรม HDFS ปัจจุบัน:
ดังที่คุณเห็นในรูปด้านบน HDFS ปัจจุบันมีสองชั้น:
- เนมสเปซ HDFS (NS): เลเยอร์นี้มีหน้าที่จัดการไดเร็กทอรีไฟล์และบล็อก มีการดำเนินการระบบไฟล์ทั้งหมดที่เกี่ยวข้องกับเนมสเปซเช่นการสร้างลบหรือแก้ไขไฟล์หรือไดเร็กทอรีไฟล์
- ชั้นเก็บข้อมูล: ประกอบด้วยสององค์ประกอบพื้นฐาน
- การจัดการบล็อก : ดำเนินการดังต่อไปนี้:
- ตรวจสอบการเต้นของหัวใจของ DataNodes เป็นระยะและจัดการการเป็นสมาชิก DataNode ไปยังคลัสเตอร์
- จัดการรายงานการบล็อกและดูแลตำแหน่งบล็อก
- รองรับการดำเนินการบล็อกเช่นการสร้างการแก้ไขการลบและการจัดสรรตำแหน่งบล็อก
- รักษาปัจจัยการจำลองให้สอดคล้องกันทั่วทั้งคลัสเตอร์
- การจัดการบล็อก : ดำเนินการดังต่อไปนี้:
2. การจัดเก็บทางกายภาพ : มีการจัดการโดย DataNodes ซึ่งรับผิดชอบในการจัดเก็บข้อมูลและด้วยเหตุนี้จึงให้การเข้าถึงแบบอ่าน / เขียนข้อมูลที่จัดเก็บใน HDFS
ดังนั้นสถาปัตยกรรม HDFS ปัจจุบันช่วยให้คุณมีเนมสเปซเดียวสำหรับคลัสเตอร์ ในสถาปัตยกรรมนี้ NameNode เดียวมีหน้าที่จัดการเนมสเปซ สถาปัตยกรรมนี้สะดวกและง่ายต่อการใช้งาน นอกจากนี้ยังมีความสามารถเพียงพอที่จะตอบสนองความต้องการของคลัสเตอร์การผลิตขนาดเล็ก
ถั่วใน java คืออะไร
ข้อ จำกัด ของ HDFS ปัจจุบัน:
ตามที่กล่าวไว้ก่อนหน้านี้ HDFS ในปัจจุบันเพียงพอกับความต้องการและกรณีการใช้งานของคลัสเตอร์การผลิตขนาดเล็ก แต่องค์กรใหญ่ ๆ เช่น Yahoo, Facebook พบข้อ จำกัด บางประการเนื่องจากคลัสเตอร์ HDFS เติบโตขึ้นอย่างทวีคูณ ให้เราดูข้อ จำกัด บางประการอย่างรวดเร็ว:
- เนมสเปซคือ ไม่สามารถปรับขนาดได้ เช่น DataNodes ดังนั้นเราสามารถมี DataNodes จำนวนเท่านั้นในคลัสเตอร์ที่ NameNode เดียวสามารถจัดการได้
- สองเลเยอร์ ได้แก่ เลเยอร์เนมสเปซและเลเยอร์การจัดเก็บคือ คู่กันอย่างแน่นหนา ซึ่งทำให้การใช้งาน NameNode ทางเลือกเป็นเรื่องยากมาก
- ประสิทธิภาพของ Hadoop System ทั้งหมดขึ้นอยู่กับ ปริมาณงาน ของ NameNode ดังนั้นประสิทธิภาพทั้งหมดของการดำเนินการ HDFS ทั้งหมดจึงขึ้นอยู่กับจำนวนงานที่ NameNode สามารถจัดการได้ในช่วงเวลาหนึ่ง ๆ
- NameNode เก็บเนมสเปซทั้งหมดไว้ใน RAM เพื่อการเข้าถึงที่รวดเร็ว สิ่งนี้นำไปสู่ข้อ จำกัด ในแง่ของ ขนาดหน่วยความจำ เช่นจำนวนของเนมสเปซอ็อบเจ็กต์ (ไฟล์และบล็อก) ที่เซิร์ฟเวอร์เนมสเปซเดียวสามารถรับมือได้
- หลายองค์กร (ผู้ขาย) ที่มีการปรับใช้ HDFS อนุญาตให้หลายองค์กร (ผู้เช่า) ใช้เนมสเปซคลัสเตอร์ของตนได้ ดังนั้นจึงไม่มีการแยกเนมสเปซดังนั้นจึงมี ไม่มีการแยก ระหว่างองค์กรผู้เช่าที่ใช้คลัสเตอร์
สถาปัตยกรรมสหพันธ์ HDFS:
- ใน HDFS Federation Architecture เรามีบริการชื่อที่ปรับขนาดได้ในแนวนอน ดังนั้นเราจึงมี NameNodes หลายตัวซึ่งรวมกันเช่นเป็นอิสระจากกัน
- DataNodes อยู่ที่ด้านล่างนั่นคือชั้นจัดเก็บข้อมูลที่อยู่เบื้องหลัง
- DataNode แต่ละรายการจะลงทะเบียนด้วย NameNodes ทั้งหมดในคลัสเตอร์
- DataNodes ส่งสัญญาณ heartbeats เป็นระยะบล็อกรายงานและจัดการคำสั่งจาก NameNodes
การแสดงภาพของสถาปัตยกรรมสหพันธ์ HDFS แสดงไว้ด้านล่าง:
ก่อนที่จะก้าวไปข้างหน้าให้ฉันพูดสั้น ๆ เกี่ยวกับภาพสถาปัตยกรรมด้านบน:
- มีหลายเนมสเปซ (NS1, NS2, …, NSn) และแต่ละเนมสเปซถูกจัดการโดย NameNode ที่เกี่ยวข้อง
- แต่ละเนมสเปซมีบล็อกพูลของตัวเอง (NS1 มีพูล 1, NSk มีพูล k เป็นต้น)
- ดังที่แสดงในภาพบล็อกจากพูล 1 (สีฟ้า) จะถูกเก็บไว้ใน DataNode 1, DataNode 2 และอื่น ๆ ในทำนองเดียวกันบล็อกทั้งหมดจากแต่ละกลุ่มบล็อกจะอยู่ใน DataNodes ทั้งหมด
ตอนนี้เรามาทำความเข้าใจส่วนประกอบของ HDFS Federation Architecture โดยละเอียด:
พิมพ์สองครั้งเพื่อ int java
บล็อกพูล:
บล็อกพูลไม่ใช่อะไรนอกจากชุดของบล็อกที่เป็นของเนมสเปซเฉพาะ ดังนั้นเราจึงมีชุดบล็อกพูลที่แต่ละบล็อกพูลได้รับการจัดการแยกจากกัน ความเป็นอิสระที่แต่ละบล็อกพูลได้รับการจัดการอย่างอิสระทำให้เนมสเปซสร้างรหัสบล็อกสำหรับบล็อกใหม่โดยไม่ต้องประสานกับเนมสเปซอื่น บล็อกข้อมูลที่มีอยู่ในกลุ่มบล็อกทั้งหมดจะถูกเก็บไว้ใน DataNodes ทั้งหมด โดยทั่วไปบล็อกพูลจะจัดเตรียมสิ่งที่เป็นนามธรรมเพื่อให้บล็อกข้อมูลที่อยู่ใน DataNodes (เช่นเดียวกับในสถาปัตยกรรมเนมสเปซเดียว) สามารถจัดกลุ่มที่สอดคล้องกับเนมสเปซเฉพาะ
ปริมาณเนมสเปซ:
ปริมาณเนมสเปซไม่ใช่อะไรเลยนอกจากเนมสเปซพร้อมกับบล็อกพูล ดังนั้นใน HDFS Federation เราจึงมีไดรฟ์ข้อมูลหลายเนมสเปซ เป็นหน่วยการจัดการที่มีอยู่ในตัวกล่าวคือแต่ละไดรฟ์ข้อมูลเนมสเปซสามารถทำงานได้อย่างอิสระ หาก NameNode หรือเนมสเปซถูกลบออกบล็อกพูลที่เกี่ยวข้องซึ่งอยู่บน DataNodes จะถูกลบด้วย
การสาธิตเกี่ยวกับ Hadoop 2.0 Cluster Architecture Federation | Edureka
ตอนนี้ฉันเดาว่าคุณมีความคิดที่ดีเกี่ยวกับ HDFS Federation Architecture เป็นแนวคิดทางทฤษฎีมากกว่าและผู้คนไม่ได้ใช้มันในระบบการผลิตที่เป็นประโยชน์โดยทั่วไป มีปัญหาการใช้งานบางอย่างกับ HDFS Federation ที่ทำให้ยากต่อการปรับใช้ ดังนั้นไฟล์ สถาปัตยกรรม HA (High Availability) เป็นที่ต้องการในการแก้ปัญหา Single Point of Failure ฉันได้กล่าวถึงไฟล์ สถาปัตยกรรม HDFS HA ในบล็อกถัดไปของฉัน
ตอนนี้คุณเข้าใจ Hadoop HDFS Federation Architecture แล้วลองดูไฟล์ โดย Edureka บริษัท การเรียนรู้ออนไลน์ที่เชื่อถือได้ซึ่งมีเครือข่ายผู้เรียนที่พึงพอใจมากกว่า 250,000 คนกระจายอยู่ทั่วโลก หลักสูตรการฝึกอบรม Edureka Big Data Hadoop Certification ช่วยให้ผู้เรียนมีความเชี่ยวชาญใน HDFS, Yarn, MapReduce, Pig, Hive, HBase, Oozie, Flume และ Sqoop โดยใช้กรณีการใช้งานแบบเรียลไทม์ในโดเมนการค้าปลีกโซเชียลมีเดียการบินการท่องเที่ยวการเงิน
มีคำถามสำหรับเรา? โปรดระบุไว้ในส่วนความคิดเห็นแล้วเราจะติดต่อกลับไป