Hadoop คืออะไร? การแนะนำ, Archiโครงสร้าง ระบบนิเวศ ส่วนประกอบ

Hadoop คืออะไร?

Apache Hadoop เป็นเฟรมเวิร์กซอฟต์แวร์โอเพ่นซอร์สที่ใช้ในการพัฒนาแอปพลิเคชันการประมวลผลข้อมูลซึ่งดำเนินการในสภาพแวดล้อมการประมวลผลแบบกระจาย

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

เช่นเดียวกับข้อมูลที่อยู่ในระบบไฟล์ในเครื่องของระบบคอมพิวเตอร์ส่วนบุคคล ใน Hadoop ข้อมูลจะอยู่ในระบบไฟล์แบบกระจายซึ่งเรียกว่าเป็น ระบบไฟล์แบบกระจาย Hadoop- รูปแบบการประมวลผลจะขึ้นอยู่กับ 'ตำแหน่งข้อมูล' แนวคิดที่ตรรกะการคำนวณจะถูกส่งไปยังโหนดคลัสเตอร์ (เซิร์ฟเวอร์) ที่มีข้อมูล ตรรกะการคำนวณนี้ไม่มีอะไรเลย แต่เป็นเวอร์ชันคอมไพล์ของโปรแกรมที่เขียนด้วยภาษาขั้นสูง เช่น Java- โปรแกรมดังกล่าวจะประมวลผลข้อมูลที่เก็บไว้ Hadoop HDFS.

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

ระบบนิเวศและส่วนประกอบของ Hadoop

แผนภาพด้านล่างแสดงส่วนประกอบต่างๆ ในระบบนิเวศ Hadoop

ระบบนิเวศและส่วนประกอบของ Hadoop

Apache Hadoop ประกอบด้วยสองโครงการย่อย –

  1. Hadoop MapReduce: MapReduce คือโมเดลการคำนวณและกรอบงานซอฟต์แวร์สำหรับเขียนแอปพลิเคชันที่ทำงานบน Hadoop โปรแกรม MapReduce เหล่านี้สามารถประมวลผลข้อมูลจำนวนมหาศาลแบบขนานบนคลัสเตอร์โหนดการคำนวณขนาดใหญ่ได้
  2. เอชดีเอฟเอส (Hadoop แจกจ่ายระบบไฟล์): HDFS ดูแลส่วนที่จัดเก็บของแอปพลิเคชัน Hadoop แอปพลิเคชัน MapReduce ใช้ข้อมูลจาก HDFS HDFS สร้างสำเนาของบล็อกข้อมูลหลายชุดและแจกจ่ายไปยังโหนดการคำนวณในคลัสเตอร์ การแจกจ่ายนี้ทำให้สามารถคำนวณได้อย่างน่าเชื่อถือและรวดเร็วอย่างยิ่ง

แม้ว่า Hadoop จะเป็นที่รู้จักดีที่สุดสำหรับ MapReduce และระบบไฟล์แบบกระจาย - HDFS แต่คำนี้ยังใช้สำหรับครอบครัวของโปรเจ็กต์ที่เกี่ยวข้องซึ่งอยู่ภายใต้การประมวลผลแบบกระจายและการประมวลผลข้อมูลขนาดใหญ่ โครงการอื่นๆ ที่เกี่ยวข้องกับ Hadoop ที่ อาปาเช่ รวมอยู่ด้วย Hive, HBase, ควาญช้าง, Sqoop, Flume และ ZooKeeper

Hadoop Archiเทคเจอร์

Hadoop Archiเทคเจอร์
Hadoop ระดับสูง Archiเทคเจอร์

Hadoop มี Master-Slave Archiเทคนิคการจัดเก็บข้อมูลและการประมวลผลข้อมูลแบบกระจายโดยใช้ แผนที่ลด และวิธีการ HDFS

ชื่อโหนด:

NameNode เป็นตัวแทนทุกไฟล์และไดเร็กทอรีที่ใช้ในเนมสเปซ

โหนดข้อมูล:

DataNode ช่วยให้คุณจัดการสถานะของโหนด HDFS และช่วยให้คุณสามารถโต้ตอบกับบล็อกได้

มาสเตอร์โหนด:

โหนดหลักช่วยให้คุณดำเนินการประมวลผลข้อมูลแบบขนานโดยใช้ Hadoop MapReduce

โหนดทาส:

โหนดสเลฟคือเครื่องเพิ่มเติมในคลัสเตอร์ Hadoop ซึ่งช่วยให้คุณจัดเก็บข้อมูลเพื่อทำการคำนวณที่ซับซ้อน นอกจากนี้ โหนดสเลฟทั้งหมดมาพร้อมกับ Task Tracker และ DataNode ซึ่งช่วยให้คุณซิงโครไนซ์กระบวนการกับ NameNode และ Job Tracker ได้ตามลำดับ

ใน Hadoop สามารถตั้งค่าระบบหลักหรือระบบรองในระบบคลาวด์หรือภายในองค์กรได้

คุณสมบัติของ 'Hadoop'

• เหมาะสำหรับการวิเคราะห์ข้อมูลขนาดใหญ่

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

• ความสามารถในการปรับขนาด

คลัสเตอร์ HADOOP สามารถปรับขนาดได้อย่างง่ายดายโดยการเพิ่มโหนดคลัสเตอร์เพิ่มเติม ซึ่งช่วยให้ข้อมูลขนาดใหญ่เติบโตได้ นอกจากนี้ การปรับขนาดไม่จำเป็นต้องปรับเปลี่ยนตรรกะของแอปพลิเคชัน

• ความทนทานต่อความผิดพลาด

ระบบนิเวศ HADOOP มีข้อกำหนดในการจำลองข้อมูลอินพุตไปยังโหนดคลัสเตอร์อื่น ๆ ด้วยวิธีนี้ ในกรณีที่โหนดคลัสเตอร์ล้มเหลว การประมวลผลข้อมูลยังคงดำเนินต่อไปได้โดยใช้ข้อมูลที่เก็บไว้ในโหนดคลัสเตอร์อื่น

โทโพโลยีเครือข่ายใน Hadoop

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

โทโพโลยีเครือข่ายใน Hadoop

โดยทั่วไปแบนด์วิดท์ของเครือข่ายถือเป็นปัจจัยสำคัญที่ต้องพิจารณาในการสร้างเครือข่าย อย่างไรก็ตาม เนื่องจากการวัดแบนด์วิดท์อาจทำได้ยาก ใน Hadoop เครือข่ายจึงแสดงเป็นต้นไม้ และระยะทางระหว่างโหนดในต้นไม้ (จำนวนฮ็อป) ถือเป็นปัจจัยสำคัญในการสร้างคลัสเตอร์ Hadoop โดยระยะทางระหว่างโหนดสองโหนดจะเท่ากับผลรวมระยะทางไปยังโหนดบรรพบุรุษร่วมที่ใกล้ที่สุด

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

  • กระบวนการบนโหนดเดียวกัน
  • โหนดที่แตกต่างกันบนชั้นวางเดียวกัน
  • โหนดบนชั้นวางที่แตกต่างกันของศูนย์ข้อมูลเดียวกัน
  • โหนดในศูนย์ข้อมูลต่างๆ