Hadoop Tutorial: Ultimate Guide to Learn Big Data Hadoop 2022

เผยแพร่แล้ว: 2021-01-05

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

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

Doug Cutting และ Mike Cafarella พัฒนา Hadoop ข้อเท็จจริงที่น่าสนใจเกี่ยวกับประวัติของ Hadoop คือ Hadoop ได้รับการตั้งชื่อตามช้างของเล่นของลูกของ Cutting ลูกของคัตติ้งมีช้างของเล่นสีเหลืองชื่อ Hadoop และนั่นคือที่มาของกรอบงาน Big Data!

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

สารบัญ

บิ๊กดาต้าคืออะไร?

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

ตามคำนิยาม Big Data ที่มีชื่อเสียงของ Gartner หมายถึงข้อมูลที่มีความหลากหลาย เพิ่มขึ้นในปริมาณที่เพิ่มมากขึ้นเรื่อยๆ และด้วยความเร็วสูง บิ๊กดาต้าสามารถวิเคราะห์ข้อมูลเชิงลึกที่สามารถส่งเสริมการตัดสินใจทางธุรกิจที่ขับเคลื่อนด้วยข้อมูล นี่คือคุณค่าที่แท้จริงของ Big Data

ปริมาณ

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

ความเร็ว

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

ความหลากหลาย

เนื่องจากข้อมูลถูกสร้างขึ้นจากแหล่งที่แตกต่างกันจำนวนมาก ตามธรรมชาติแล้ว ข้อมูลนั้นจึงมีความหลากหลายและหลากหลายอย่างมาก แม้ว่าชนิดข้อมูลแบบดั้งเดิมส่วนใหญ่จะมีโครงสร้างและเข้ากันได้ดีกับฐานข้อมูลเชิงสัมพันธ์ แต่ Big Data ก็มีทั้งชนิดข้อมูลกึ่งโครงสร้างและไม่มีโครงสร้าง (ข้อความ เสียง และวิดีโอด้วย ทำไมต้องเป็นมัน?

บทช่วยสอน Hadoop สำหรับผู้เริ่มต้น

เมื่อพูดถึง Big Data มีความท้าทายหลักสามประการ:

พื้นที่จัดเก็บ

ปัญหาแรกคือจะเก็บข้อมูลจำนวนมหาศาลไว้ที่ไหน ระบบดั้งเดิมไม่เพียงพอเนื่องจากมีความจุที่จำกัด

ข้อมูลที่แตกต่างกัน

ปัญหาที่สองคือ Big Data มีความหลากหลายมาก (มีโครงสร้าง กึ่งมีโครงสร้าง ไม่มีโครงสร้าง) จึงเกิดคำถามขึ้นว่า จะเก็บข้อมูลนี้ที่มาในรูปแบบที่หลากหลายได้อย่างไร?

ความเร็วในการประมวลผล

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

เพื่อเอาชนะความท้าทายหลักเหล่านี้ Hadoop ได้รับการพัฒนา องค์ประกอบหลักสองอย่าง – HDFS และ YARN ได้รับการออกแบบมาเพื่อช่วยในการจัดการปัญหาการจัดเก็บและการประมวลผล แม้ว่า HDFS จะแก้ปัญหาด้านการจัดเก็บข้อมูลโดยการจัดเก็บข้อมูลในลักษณะแบบกระจาย YARN จะจัดการส่วนการประมวลผลโดยลดเวลาในการประมวลผลลงอย่างมาก

Hadoop เป็นเฟรมเวิร์ก Big Data ที่ไม่เหมือนใครเพราะ:

  • มันมีระบบไฟล์ที่ยืดหยุ่นซึ่งช่วยขจัดปัญหาคอขวดของ ETL
  • สามารถปรับขนาดได้อย่างประหยัดและปรับใช้กับฮาร์ดแวร์สินค้าโภคภัณฑ์
  • ให้ความยืดหยุ่นในการจัดเก็บและขุดข้อมูลทุกประเภท นอกจากนี้ยังไม่ถูกจำกัดด้วยสคีมาเดียว
  • มันเก่งในการประมวลผลชุดข้อมูลที่ซับซ้อน – สถาปัตยกรรมที่ขยายขนาดออกแบ่งปริมาณงานออกเป็นหลายโหนด

องค์ประกอบหลักของ Hadoop

คลัสเตอร์ Hadoop ประกอบด้วยสององค์ประกอบหลัก – HDFS (Hadoop Distributed File System) และ YARN (Yet Another Resource Negotiator)

HDFS

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

HDFS แบ่ง Big Data ออกเป็นหลายบล็อก ซึ่งจากนั้นจะถูกจัดเก็บในรูปแบบการกระจายบนคลัสเตอร์ของโหนดสเลฟ ในขณะที่ปรมาจารย์มีหน้าที่รับผิดชอบในการจัดการ บำรุงรักษา และตรวจสอบสเลฟ สเลฟจะทำหน้าที่เป็นโหนดของผู้ปฏิบัติงานจริง สำหรับการทำงานบนคลัสเตอร์ Hadoop ผู้ใช้ต้องเชื่อมต่อกับโหนดหลัก

HDFS ถูกแบ่งออกเป็นสอง daemons เพิ่มเติม:

ชื่อโหนด

มันทำงานบนเครื่องหลักและทำหน้าที่ดังต่อไปนี้ -

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

DataNode

มันทำงานบนเครื่องทาสและทำหน้าที่ดังต่อไปนี้ -

  • มันเก็บข้อมูลธุรกิจจริง
  • ให้บริการตามคำขออ่าน-เขียนของผู้ใช้
  • มันสร้าง ลบ ทำซ้ำบล็อกตามคำสั่งของ NameNode
  • จะส่งรายงานการเต้นของหัวใจไปยัง NameNode ทุก ๆ สามวินาที

เส้นด้าย

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

ตัวจัดการทรัพยากร

  • มันทำงานบนโหนดหลัก
  • ติดตามการเต้นของหัวใจจาก Node Manager
  • มันมีสองส่วนย่อย – ตัวจัดกำหนดการ & ApplicationManager ในขณะที่ตัวจัดกำหนดการจะจัดสรรทรัพยากรให้กับแอปพลิเคชันที่ทำงานอยู่ ApplicationManager ยอมรับการส่งงานและเจรจาคอนเทนเนอร์แรกสำหรับการดำเนินการแอปพลิเคชัน

ตัวจัดการฐาน

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

บทช่วยสอน Hadoop: ข้อกำหนดเบื้องต้นในการเรียนรู้ Hadoop

ในการเริ่มต้นบทช่วยสอน Hadoop และคุ้นเคยกับกรอบงาน คุณต้องมีข้อกำหนดเบื้องต้นที่จำเป็นสองประการ:

ทำความคุ้นเคยกับคำสั่ง Linux พื้นฐาน

เนื่องจาก Hadoop ได้รับการตั้งค่าบน Linux OS (โดยเฉพาะอย่างยิ่ง Ubuntu) คุณต้องมีความรอบรู้กับคำสั่ง Linux ระดับพื้นฐาน

ทำความคุ้นเคยกับแนวคิด Java พื้นฐาน

เมื่อคุณเริ่มบทช่วยสอน Hadoop คุณยังสามารถเริ่มเรียนรู้แนวคิดพื้นฐานของ Java ได้พร้อมกัน ซึ่งรวมถึง abstractions, encapsulation, inheritance และ polymorphism เป็นต้น

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

นี่คือคุณสมบัติเด่นของ Hadoop ที่ทำให้เป็นที่นิยม

1) เชื่อถือได้

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

2) ปรับขนาดได้

Hadoop สามารถปรับขนาดได้สูง สามารถรวมเข้ากับแพลตฟอร์มคลาวด์ที่สามารถทำให้เฟรมเวิร์กสามารถปรับขนาดได้มากขึ้น

3) ประหยัด

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

4) การจัดเก็บและการแปรรูปแบบกระจาย

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

ทำไมต้องเรียนรู้ Hadoop?

ตาม รายงานการวิจัยล่าสุด ตลาด Hadoop Big Data Analytics คาดว่าจะเติบโตจาก 6.71 พันล้านดอลลาร์ (ณ ปี 2559) เป็น 40.69 พันล้านดอลลาร์ในปี 2565 ที่ CAGR 43.4% นี่เป็นเพียงการแสดงให้เห็นว่าในอีกไม่กี่ปีข้างหน้า การลงทุนใน Big Data จะมีจำนวนมาก ความต้องการเฟรมเวิร์กและเทคโนโลยีของ Big Data เช่น Hadoop ก็จะเพิ่มขึ้นเช่นกัน

เมื่อสิ่งนั้นเกิดขึ้น ความต้องการผู้เชี่ยวชาญ Hadoop ที่มีทักษะ (เช่น Hadoop Developers, Hadoop Architects, Hadoop Administrators เป็นต้น) จะเพิ่มขึ้นอย่างทวีคูณ

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

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

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

หากคุณสนใจที่จะทราบข้อมูลเพิ่มเติมเกี่ยวกับ Big Data โปรดดูที่ PG Diploma in Software Development Specialization in Big Data program ซึ่งออกแบบมาสำหรับมืออาชีพที่ทำงานและมีกรณีศึกษาและโครงการมากกว่า 7 กรณี ครอบคลุมภาษาและเครื่องมือในการเขียนโปรแกรม 14 รายการ เวิร์กช็อป ความช่วยเหลือด้านการเรียนรู้และจัดหางานอย่างเข้มงวดมากกว่า 400 ชั่วโมงกับบริษัทชั้นนำ

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

ปรมาจารย์ด้านเทคโนโลยีแห่งอนาคต - Big Data

โปรแกรมประกาศนียบัตรขั้นสูงด้าน Big Data จาก IIIT Bangalore