บทช่วยสอน HBase: คู่มือฉบับสมบูรณ์สำหรับผู้เริ่มต้น [2022]

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

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

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

มาเริ่มกันเลย.

สารบัญ

HBase คืออะไร?

คล้ายกับ Big Table ของ Google HBase เป็นรูปแบบข้อมูลที่ให้คุณเข้าถึงข้อมูลที่มีโครงสร้างปริมาณมากได้อย่างรวดเร็ว เป็นผลิตภัณฑ์ของ Apache Software Foundation และเป็นส่วนหนึ่งของโครงการ Hadoop มันเขียนด้วยภาษาจาวาและเป็นฐานข้อมูลกระจายแบบโอเพ่นซอร์สที่ไม่สัมพันธ์กัน มันทำงานบน Hadoop Distributed File System (HDFS) ซึ่งเป็นองค์ประกอบการจัดเก็บข้อมูลของ Hadoop

HBase มีการกระจาย สม่ำเสมอ หลายมิติ และเบาบาง คุณสามารถใช้กับข้อมูลปริมาณมหาศาล สคีมาแบบแปรผัน และข้อกำหนดอื่นๆ อีกมากมาย

คุณอาจสงสัยว่าข้อมูลที่กระจัดกระจายคืออะไร มันก็เหมือนกับการหาเข็มในกองหญ้า

ประวัติของ HBase

ก่อนที่เราจะพูดถึงคุณสมบัติและหน้าที่ของมัน คุณควรทราบเกี่ยวกับประวัติของมันเสียก่อน Google ได้เผยแพร่บทความบน BigTable ในปี 2549 และหลังจากนั้นนักพัฒนาซอฟต์แวร์ได้สร้างต้นแบบ HBase ตัวแรกในปี 2550

HBase เวอร์ชันแรกออกสู่ตลาดในเดือนตุลาคม 2550 ควบคู่ไปกับ Hadoop ในปี 2008 มันกลายเป็นโครงการย่อยของ Hadoop และในปี 2010 มันกลายเป็นโครงการระดับบนสุดของ Apache เรียกได้ว่าพัฒนาควบคู่ไปกับ Hadoop และส่วนประกอบหลักอื่นๆ

ทำไมเราถึงต้องการ HBase?

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

ใช้ระบบจัดเก็บข้อมูลแบบกระจายและมี MapReduce สำหรับการประมวลผลข้อมูล Hadoop มีองค์ประกอบหลายอย่าง เช่น HDFS และ MapReduce

HBase เป็นหนึ่งในองค์ประกอบสำคัญเหล่านั้น คุณลักษณะของมันทำให้เป็นสมาชิกที่สำคัญของระบบนิเวศ Hadoop ช่วยให้คุณทำงานกับข้อมูลปริมาณมหาศาลได้อย่างรวดเร็ว นอกจากนี้ยังให้การจัดการข้อมูลของคุณที่มีความปลอดภัยสูง คุณสามารถสำรองงาน MapReduce ด้วย HBase Tables ได้เช่นกัน

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

ความแตกต่างระหว่าง HDFS และ HBase

เนื่องจากทั้ง HDFS และ HBase เป็นส่วนประกอบของ Hadoop จึงอาจสร้างความสับสนเล็กน้อยสำหรับทุกคนที่จะเข้าใจความแตกต่างระหว่างพวกเขา แม้ว่าจะแตกต่างกันมากและทำงานแยกจากกัน

HDFS เป็นระบบไฟล์แบบกระจายของ Hadoop และคุณใช้สำหรับจัดเก็บข้อมูลจำนวนมหาศาล ในทางกลับกัน HBase เป็นฐานข้อมูลที่ใช้ HDFS คุณไม่สามารถค้นหาแต่ละระเบียนได้อย่างรวดเร็วใน HDFS แต่คุณสามารถทำได้ด้วย HBase

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

สถาปัตยกรรมของ HBase

เราสามารถกำหนดสถาปัตยกรรม HBase เป็นที่เก็บข้อมูลคีย์-ค่าที่เน้นคอลัมน์ ดังที่เราได้กำหนดไว้ก่อนหน้านี้ มันทำงานได้อย่างสมบูรณ์แบบบน HDFS โดยเพิ่มการเข้าถึงและความเร็วในการทำงาน สามส่วนหลักของ HBase คือ:

  • เซิร์ฟเวอร์ภูมิภาค
  • เซิร์ฟเวอร์ HMaster
  • ผู้ดูแลสวนสัตว์

HMaster รับผิดชอบหน้าที่การบริหารและการประสานงานของเซิร์ฟเวอร์ภูมิภาค Zookeeper รับผิดชอบข้อมูลการกำหนดค่าและการซิงโครไนซ์แบบกระจาย

ที่เก็บข้อมูลใน HBase

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

เราสามารถแยกแยะได้ดังนี้

  • ตารางมีหลายแถว
  • แถวหนึ่งมีหลายคอลัมน์ตระกูล
  • ตระกูลคอลัมน์มีคอลัมน์ต่างๆ
  • คอลัมน์มีคู่คีย์-ค่าต่างกัน

วางแนวแถวกับแนวคอลัมน์

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

แอปพลิเคชัน HBase

เนื่องจากความสามารถของ HBase ในการเพิ่มประสิทธิภาพการเข้าถึงและความเร็วในการจัดเก็บข้อมูล จึงพบแอปพลิเคชันในหลายอุตสาหกรรม คุณได้อ่านประวัติของ HBase แล้วว่ามีวางจำหน่ายในตลาดมานานแล้ว ด้วยการอัปเดตและความก้าวหน้ามากกว่าทศวรรษ มันจึงกลายเป็นเครื่องมือสำคัญสำหรับมืออาชีพด้านบิ๊กดาต้า

ต่อไปนี้เป็นแอปพลิเคชันของ HBase:

  • เราใช้ HBase เมื่อเราต้องการเขียนแอปพลิเคชันจำนวนมาก
  • เมื่อเราต้องทำการวิเคราะห์บันทึกออนไลน์เพื่อสร้างรายงานการปฏิบัติตามข้อกำหนด
  • เมื่อเราต้องการเข้าถึงข้อมูลของเราที่จัดเก็บไว้ใน HDFS อย่างรวดเร็วและสุ่ม
  • เมื่อเราต้องการการเข้าถึงข้อมูลปริมาณมหาศาลแบบเรียลไทม์เพื่ออ่าน/เขียน (บิ๊กดาต้า)

องค์กรสำคัญๆ มากมาย เช่น Google และ Facebook ใช้ HBase สำหรับการดำเนินงานภายใน ข้อมูลขนาดใหญ่มีอยู่ทั่วไปทุกหนทุกแห่ง และนั่นเป็นสาเหตุที่ความต้องการของ HBase ก็เพิ่มขึ้นค่อนข้างมากเช่นกัน

ความคิดสุดท้าย

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

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

ตรวจสอบหลักสูตรวิศวกรรมซอฟต์แวร์อื่นๆ ของเราที่ upGrad

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

การเรียนรู้มากกว่า 400 ชั่วโมง 14 ภาษาและเครื่องมือ สถานะศิษย์เก่า IIIT-B
โปรแกรมประกาศนียบัตรขั้นสูงด้าน Big Data จาก IIIT Bangalore