Hadoop คืออะไร? การแนะนำ, Archiโครงสร้าง ระบบนิเวศ ส่วนประกอบ
Hadoop คืออะไร?
Apache Hadoop เป็นเฟรมเวิร์กซอฟต์แวร์โอเพ่นซอร์สที่ใช้ในการพัฒนาแอปพลิเคชันการประมวลผลข้อมูลซึ่งดำเนินการในสภาพแวดล้อมการประมวลผลแบบกระจาย
แอปพลิเคชันที่สร้างขึ้นโดยใช้ HADOOP จะทำงานบนชุดข้อมูลขนาดใหญ่ที่กระจายอยู่ตามคลัสเตอร์ของคอมพิวเตอร์ทั่วไป คอมพิวเตอร์ทั่วไปมีราคาถูกและหาได้ง่าย โดยส่วนใหญ่แล้วมีประโยชน์สำหรับการเพิ่มพลังการประมวลผลด้วยต้นทุนต่ำ
เช่นเดียวกับข้อมูลที่อยู่ในระบบไฟล์ในเครื่องของระบบคอมพิวเตอร์ส่วนบุคคล ใน Hadoop ข้อมูลจะอยู่ในระบบไฟล์แบบกระจายซึ่งเรียกว่าเป็น ระบบไฟล์แบบกระจาย Hadoop- รูปแบบการประมวลผลจะขึ้นอยู่กับ 'ตำแหน่งข้อมูล' แนวคิดที่ตรรกะการคำนวณจะถูกส่งไปยังโหนดคลัสเตอร์ (เซิร์ฟเวอร์) ที่มีข้อมูล ตรรกะการคำนวณนี้ไม่มีอะไรเลย แต่เป็นเวอร์ชันคอมไพล์ของโปรแกรมที่เขียนด้วยภาษาขั้นสูง เช่น Java- โปรแกรมดังกล่าวจะประมวลผลข้อมูลที่เก็บไว้ Hadoop HDFS.
คุณรู้หรือไม่? คลัสเตอร์คอมพิวเตอร์ประกอบด้วยหน่วยประมวลผลหลายหน่วย (ดิสก์จัดเก็บข้อมูล + โปรเซสเซอร์) ซึ่งเชื่อมต่อถึงกันและทำหน้าที่เป็นระบบเดียว
ระบบนิเวศและส่วนประกอบของ Hadoop
แผนภาพด้านล่างแสดงส่วนประกอบต่างๆ ในระบบนิเวศ Hadoop
Apache Hadoop ประกอบด้วยสองโครงการย่อย –
- Hadoop MapReduce: MapReduce คือโมเดลการคำนวณและกรอบงานซอฟต์แวร์สำหรับเขียนแอปพลิเคชันที่ทำงานบน Hadoop โปรแกรม MapReduce เหล่านี้สามารถประมวลผลข้อมูลจำนวนมหาศาลแบบขนานบนคลัสเตอร์โหนดการคำนวณขนาดใหญ่ได้
- เอชดีเอฟเอส (Hadoop แจกจ่ายระบบไฟล์): HDFS ดูแลส่วนที่จัดเก็บของแอปพลิเคชัน Hadoop แอปพลิเคชัน MapReduce ใช้ข้อมูลจาก HDFS HDFS สร้างสำเนาของบล็อกข้อมูลหลายชุดและแจกจ่ายไปยังโหนดการคำนวณในคลัสเตอร์ การแจกจ่ายนี้ทำให้สามารถคำนวณได้อย่างน่าเชื่อถือและรวดเร็วอย่างยิ่ง
แม้ว่า Hadoop จะเป็นที่รู้จักดีที่สุดสำหรับ MapReduce และระบบไฟล์แบบกระจาย - HDFS แต่คำนี้ยังใช้สำหรับครอบครัวของโปรเจ็กต์ที่เกี่ยวข้องซึ่งอยู่ภายใต้การประมวลผลแบบกระจายและการประมวลผลข้อมูลขนาดใหญ่ โครงการอื่นๆ ที่เกี่ยวข้องกับ Hadoop ที่ อาปาเช่ รวมอยู่ด้วย Hive, HBase, ควาญช้าง, Sqoop, Flume และ ZooKeeper
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 ประกอบด้วยศูนย์ข้อมูล แร็ค และโหนดที่ดำเนินการงานจริง โดยศูนย์ข้อมูลประกอบด้วยแร็คและแร็คประกอบด้วยโหนด แบนด์วิดท์เครือข่ายที่พร้อมใช้งานสำหรับกระบวนการจะแตกต่างกันไปขึ้นอยู่กับตำแหน่งของกระบวนการ กล่าวคือ แบนด์วิดท์ที่พร้อมใช้งานจะน้อยลงเมื่อเราออกจากระบบ
- กระบวนการบนโหนดเดียวกัน
- โหนดที่แตกต่างกันบนชั้นวางเดียวกัน
- โหนดบนชั้นวางที่แตกต่างกันของศูนย์ข้อมูลเดียวกัน
- โหนดในศูนย์ข้อมูลต่างๆ