Apache Hive คืออะไร

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

Hive ถูกสร้างขึ้นบน Apache Hadoop ซึ่งเป็นเฟรมเวิร์กโอเพนซอร์สที่ใช้ในการจัดเก็บและประมวลผลชุดข้อมูลขนาดใหญ่ได้อย่างมีประสิทธิภาพ ด้วยเหตุนี้ Hive จึงผสานเข้ากับ Hadoop ได้อย่างใกล้ชิด และได้รับการออกแบบมาเพื่อให้ทำงานกับข้อมูลระดับเพตะไบต์ได้อย่างรวดเร็ว สิ่งที่ทำให้ Hive มีเอกลักษณ์คือความสามารถในการสืบค้นชุดข้อมูลขนาดใหญ่ โดยการใช้ประโยชน์จาก Apache Tez หรือ MapReduce ที่มีอินเทอร์เฟซคล้ายกับ SQL

Hive ทำงานอย่างไร

Hive ถูกสร้างขึ้นเพื่อช่วยให้ผู้ที่ไม่ใช่โปรแกรมเมอร์ที่คุ้นเคยกับ SQL สามารถทำงานกับข้อมูลในระดับเพตะไบต์ได้โดยการใช้อินเทอร์เฟซที่คล้ายกับ SQL ที่เรียกว่า HiveQL ฐานข้อมูลแบบเชิงสัมพันธ์ในรูปแบบดั้งเดิมได้รับการออกแบบมาเพื่อการสืบค้นแบบอินเทอร์แอคทีฟในชุดข้อมูลขนาดเล็กถึงขนาดกลาง ซึ่งจะประมวลผลชุดข้อมูลขนาดใหญ่ได้ไม่ดีนัก Hive ใช้การประมวลผลเป็นชุดแทน เพื่อให้ทำงานได้อย่างรวดเร็วในทั่วทั้งฐานข้อมูลแบบกระจายตัวที่มีขนาดใหญ่มาก Hive เปลี่ยนการสืบค้นของ HiveQL ให้เป็นงานของ MapReduce หรือ Tez ที่ทำงานในเฟรมเวิร์กการกำหนดเวลางานแบบกระจายตัวของ Apache Hadoop ที่เรียกว่า Yet Another Resource Negotiator (YARN) ซึ่งจะสืบค้นข้อมูลที่จัดเก็บไว้ในโซลูชันการจัดเก็บไฟล์แบบกระจายตัวอย่าง Hadoop Distributed File System (HDFS) หรือ Amazon S3 Hive จัดเก็บฐานข้อมูลและข้อมูลเมตาที่เป็นตารางไว้ใน Metastore ซึ่งเป็นฐานข้อมูลหรือพื้นที่เก็บข้อมูลสำรองของไฟล์ ซึ่งช่วยให้การค้นพบและการกำหนดสาระสำคัญของข้อมูลเป็นเรื่องง่าย

Hive ประกอบด้วย HCatalog ซึ่งเป็นเลเยอร์การจัดการตารางและพื้นที่เก็บข้อมูลที่อ่านข้อมูลจาก Hive Metastore เพื่ออำนวยความสะดวกให้การผสานรวมระหว่าง Hive, Apache Pig และ MapReduce นั้นราบรื่น การใช้ Metastore จะทำให้ HCatalog สามารถอนุญาตให้ Pig และ MapReduce ใช้โครงสร้างข้อมูลเดียวกันกับ Hive ได้ ดังนั้นจึงไม่จำเป็นต้องกำหนดข้อมูลเมตาใหม่สำหรับแต่ละกลไก แอปพลิเคชันที่กำหนดเองหรือการผสานรวมกับบุคคลที่สาม สามารถใช้ WebHCat ซึ่งเป็น RESTful API สำหรับ HCatalog ในการเข้าถึงและนำข้อมูลเมตาของ Hive กลับมาใช้ใหม่

Hive มีประโยชน์อย่างไรบ้าง

รวดเร็ว

Hive ได้รับการออกแบบมาเพื่อให้จัดการข้อมูลในระดับเพตะไบต์ได้อย่างรวดเร็วโดยการใช้การประมวลผลเป็นชุด

คุ้นเคย

Hive มีอินเทอร์เฟซคล้ายกับ SQL ที่คุ้นเคยซึ่งสามารถเข้าถึงได้สำหรับผู้ที่ไม่ใช่โปรแกรมเมอร์

ปรับขนาดได้

กระจายและปรับขนาด Hive ตามความต้องการของคุณได้อย่างง่ายดาย

Apache Hive และ Apache HBase แตกต่างกันอย่างไร

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

คุณลักษณะ

Apache Hive

Apache HBase

ฟังก์ชัน

กลไกสืบค้นข้อมูลที่คล้ายกับ SQL ออกแบบมาเพื่อการจัดเก็บข้อมูลปริมาณมาก รองรับไฟล์หลายรูปแบบ

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

ประเภทของการประมวลผล

การประมวลผลเป็นชุดโดยใช้เฟรมเวิร์กคำนวณของ Apache Tez หรือ MapReduce

การประมวลผลแบบเรียลไทม์

เวลาแฝง

ปานกลางถึงสูง ขึ้นอยู่กับการตอบสนองของกลไกการคำนวณ โมเดลการดำเนินการแบบกระจายตัวมีประสิทธิภาพที่เหนือกว่าเมื่อเทียบกับระบบสืบค้นโมโนลิทิกอย่าง RDBMS สำหรับปริมาณข้อมูลเดียวกัน

ต่ำ แต่อาจไม่สม่ำเสมอ ข้อจำกัดด้านโครงสร้างของสถาปัตยกรรม HBase อาจส่งผลให้เวลาแฝงสูงภายใต้ปริมาณการเขียนสูง

การผสานรวม Hadoop

ทำงานบน Hadoop ด้วย Apache Tez หรือ MapReduce สำหรับการประมวลผลและ HDFS หรือ Amazon S3 สำหรับการจัดเก็บ

ทำงานใน HDFS หรือ Amazon S3

การรองรับ SQL

มี HiveQL ซึ่งมีความสามารถในการสืบค้นที่คล้ายกับ SQL

ไม่สามารถรองรับ SQL ได้ด้วยตัวเอง คุณสามารถใช้ Apache Phoenix เพื่อใช้ความสามารถของ SQL

สคีมา

สคีมาที่กำหนดไว้สำหรับตารางทั้งหมด

ไม่มีสคีมา

ประเภทข้อมูล

รองรับข้อมูลที่มีโครงสร้างและไม่มีโครงสร้าง ให้การรองรับแบบเนทีฟสำหรับข้อมูลประเภท SQL ทั่วไป เช่น INT, FLOAT และ VARCHAR

รองรับเฉพาะข้อมูลที่ไม่มีโครงสร้างเท่านั้น ผู้ใช้กำหนดการจับคู่ฟิลด์ข้อมูลกับประเภทข้อมูลที่รองรับ Java

กรณีการใช้งานสำหรับ Hive มีอะไรบ้าง

Guardian มอบความปลอดภัยให้กับสมาชิก 27 ล้านคนผ่านผลิตภัณฑ์และบริการด้านการประกันภัยและการจัดการความมั่งคั่ง Guardian ใช้ Amazon EMR เพื่อเรียกใช้ Apache Hive บน Data Lake ของ S3 Apache Hive ใช้สำหรับการประมวลผลเป็นชุด Data Lake ของ S3 เป็นขุมพลังให้กับ Guardian Direct ซึ่งเป็นแพลตฟอร์มดิจิทัลที่ช่วยให้ผู้บริโภคสามารถวิจัยและซื้อทั้งผลิตภัณฑ์ Guardian และผลิตภัณฑ์ของบุคคลที่สามในภาคประกันภัยได้

FINRA ซึ่งเป็นองค์กรควบคุมอุตสาหกรรมการเงิน เป็นหน่วยงานกำกับดูแลหลักทรัพย์อิสระที่ใหญ่ที่สุดในสหรัฐอเมริกา ทำหน้าที่ตรวจติดตามและควบคุมแนวทางปฏิบัติด้านการค้าในแง่ของการเงิน FINRA ใช้ Amazon EMR ในการเรียกใช้ Apache Hive บน Data Lake ของ S3 การเรียกใช้ Hive บนคลัสเตอร์ EMR ช่วยให้ FINRA สามารถประมวลผลและวิเคราะห์ข้อมูลซื้อขายของเหตุการณ์ที่มีจำนวนมากถึง 9 หมื่นล้านเหตุการณ์โดยใช้ SQL Data Lake บนคลาวด์ส่งผลให้ประหยัดค่าใช้จ่ายได้มากถึง 20 ล้านดอลลาร์สหรัฐเมื่อเทียบกับโซลูชันในองค์กรของ FINRA ทั้งยังลดเวลาที่ต้องใช้ในการกู้คืนและการอัปเกรดได้เป็นอย่างมาก

Vanguard ซึ่งเป็นบริษัทที่ปรึกษาด้านการลงทุนที่จดทะเบียนในอเมริกา เป็นผู้ให้บริการกองทุนรวมรายใหญ่ที่สุดและเป็นผู้ให้บริการกองทุนซื้อขายแลกเปลี่ยนรายใหญ่อันดับสอง Vanguard ใช้ Amazon EMR ในการเรียกใช้ Apache Hive บน Data Lake ของ S3 ข้อมูลจะถูกจัดเก็บไว้ใน S3 และ EMR จะสร้าง Hive Metastore ไว้บนข้อมูลดังกล่าว Hive Metastore ประกอบด้วยข้อมูลเมตาทั้งหมดเกี่ยวกับข้อมูลและตารางในคลัสเตอร์ EMR ซึ่งช่วยให้วิเคราะห์ข้อมูลได้อย่างง่ายดาย นอกจากนี้ Hive ยังช่วยให้นักวิเคราะห์สามารถดำเนินการสืบค้น SQL แบบเฉพาะกิจบนข้อมูลที่จัดเก็บไว้ใน Data Lake ของ S3 อีกด้วย การโอนย้ายไปยัง Data Lake ของ S3 ด้วย Amazon EMR ทำให้นักวิเคราะห์ข้อมูลมากกว่า 150 คนตระหนักถึงประสิทธิภาพในการดำเนินงานและลดต้นทุน EC2 และ EMR ได้ถึง 6 แสนดอลลาร์สหรัฐ

AWS จะรองรับ Hive ได้อย่างไร

Amazon EMR มีเฟรมเวิร์ก Hadoop ที่ได้รับการจัดการซึ่งใช้งานง่ายที่สุด เร็วที่สุด และคุ้มค่าที่สุด เพื่อช่วยให้ลูกค้าสามารถประมวลผลข้อมูลปริมาณมหาศาลในทั่วทั้งอินสแตนซ์ EC2 ที่ปรับขนาดได้แบบไดนามิก นอกจากนี้ลูกค้ายังสามารถเรียกใช้เฟรมเวิร์กแบบตัวกระจายยอดนิยมอื่น ๆ ได้ด้วย อาทิเช่น Apache Hive, Spark, HBase, Presto และ Flink ใน EMR 

เรียนรู้เพิ่มเติมเกี่ยวกับ Amazon EMR

เริ่มต้นใช้งาน Apache Hive บน AWS โดยการสร้างบัญชี AWS ฟรีวันนี้

ขั้นตอนต่อไปบน AWS

ลงชื่อสมัครใช้บัญชีฟรี

รับสิทธิ์การเข้าถึง AWS Free Tier ได้ทันที

ลงชื่อสมัครใช้งาน 
เริ่มต้นการสร้างในคอนโซล

เริ่มต้นสร้างในคอนโซลการจัดการของ AWS

ลงชื่อเข้าใช้