คำถามและคำตอบสัมภาษณ์กลุ่มพื้นฐาน 2022
เผยแพร่แล้ว: 2021-01-08การสัมภาษณ์ Big Data อาจดำเนินการในลักษณะทั่วไป (ซึ่งคุณต้องมีแนวคิดทั่วไปเกี่ยวกับกรอบงานและเครื่องมือ Big Data ที่เป็นที่นิยม) หรืออาจเน้นที่กรอบงานหรือเครื่องมือเฉพาะ วันนี้ เราจะมาเน้นที่กรอบงาน Big Data ที่ใช้กันอย่างแพร่หลาย – Apache Hive
เราได้สร้างรายการคำถามสัมภาษณ์ Apache Hive นี้เพื่อช่วยให้คุณมีแนวคิดที่ดีขึ้นเกี่ยวกับประเภทของคำถามที่นายจ้างมักจะถามระหว่างการสัมภาษณ์ Hadoop ที่เกี่ยวข้องกับ Hive
ดังนั้น หากคุณเป็นคนหนึ่งที่อยากจะตอกย้ำบทสัมภาษณ์ของ Hive โปรดอ่านให้จบ!
- Apache Hive คืออะไร?
Apache Hive เป็นเฟรมเวิร์กคลังข้อมูลที่สร้างขึ้นบน Hadoop ส่วนใหญ่จะใช้สำหรับการวิเคราะห์ข้อมูลที่มีโครงสร้างและกึ่งโครงสร้าง Hive ได้รับการออกแบบเพื่อฉายโครงสร้างข้อมูลและดำเนินการค้นหาที่เขียนด้วย HQL (Hive Query Language) คล้ายกับคำสั่ง SQL นอกจากนี้ คอมไพเลอร์ Hive ยังแปลงการสืบค้นเหล่านี้เป็นงานลดแผนที่
- Hive รองรับแอปพลิเคชันประเภทใดบ้าง
Hive สามารถรองรับแอปพลิเคชันใดๆ ที่เขียนด้วย Python, Java, C++, Ruby และ PHP
- คุณหมายถึงอะไรโดย Metastore? เหตุใด Hive ไม่จัดเก็บข้อมูลเมตาใน HDFS
Metastore เป็นที่เก็บข้อมูลใน Hive ที่เก็บข้อมูลเมตาดาต้า โดยใช้ประโยชน์จาก RDBMS ร่วมกับเลเยอร์ ORM (Object Relational Model) แบบโอเพ่นซอร์สที่เรียกว่า Data Nucleus ซึ่งจะเปลี่ยนการแสดงวัตถุเป็นสคีมาเชิงสัมพันธ์และในทางกลับกัน

Hive จัดเก็บข้อมูลเมตาโดยใช้ RDBMS ไม่ใช่ HDFS เนื่องจากการดำเนินการอ่าน/เขียนโดยใช้ HDFS เป็นกระบวนการที่ใช้เวลานาน RDBMS มีข้อได้เปรียบเหนือกว่าเพราะช่วยให้มีเวลาแฝงต่ำ
- แยกความแตกต่างระหว่าง Local และ Remote Metastore
metastore ในพื้นที่ทำงานใน JVM เดียวกับที่บริการ Hive ทำงาน มันสามารถเชื่อมต่อกับฐานข้อมูลที่ทำงานใน JVM แยกต่างหากบนเครื่องเดียวกันหรือเครื่องระยะไกล ในทางตรงกันข้าม metastore ระยะไกลทำงานใน JVM แยกต่างหากและไม่ใช่ในที่ที่บริการ Hive ทำงาน
- คุณหมายถึงอะไรโดยพาร์ติชั่นในไฮฟ์? ความสำคัญของมันคืออะไร?
ใน Hive ตารางจะถูกจัดประเภทและจัดระเบียบเป็นพาร์ติชั่นเพื่อจัดระเบียบข้อมูลประเภทเดียวกันเข้าด้วยกัน ไม่ว่าจะเป็นตามคอลัมน์หรือคีย์พาร์ติชั่น ดังนั้น พาร์ติชั่นจึงเป็นไดเร็กทอรีย่อยในไดเร็กทอรีตาราง ตารางอาจมีคีย์พาร์ติชั่นมากกว่าหนึ่งคีย์สำหรับพาร์ติชั่นหนึ่งๆ
คุณสามารถบรรลุความละเอียดในตาราง Hive ได้ด้วยการแบ่งพาร์ติชัน ซึ่งช่วยลดเวลาแฝงของการสืบค้น เนื่องจากจะสแกนเฉพาะข้อมูลที่แบ่งพาร์ติชันที่เกี่ยวข้องเท่านั้น แทนที่จะสแกนทั้งชุดข้อมูล
- ตัวแปรไฮฟ์คืออะไร?
ตัวแปร Hive ถูกสร้างขึ้นในสภาพแวดล้อม Hive ที่พัฒนาโดยภาษาสคริปต์ของ Hive เมื่อใช้คำสั่งต้นทาง จะโอนค่าไปยังคิวรีแบบกลุ่มเมื่อคิวรีเริ่มดำเนินการ
- แอปพลิเคชันคลังข้อมูลประเภทใดที่ Hive เหมาะกับ?
ข้อบังคับการออกแบบของ Hadoop และ HDFS กำหนดข้อจำกัดบางประการเกี่ยวกับความสามารถของ Hive นอกจากนี้ยังไม่มีคุณสมบัติที่จำเป็นสำหรับ OLTP (การประมวลผลธุรกรรมออนไลน์) Hive เหมาะที่สุดสำหรับแอปพลิเคชันคลังข้อมูลในชุดข้อมูลขนาดใหญ่ที่ต้องการ:
- การวิเคราะห์ข้อมูลที่ค่อนข้างคงที่
- เวลาตอบสนองน้อยลง
- ไม่มีการเปลี่ยนแปลงแบบไดนามิกในข้อมูล
- ดัชนีไฮฟ์คืออะไร?
ดัชนี Hive คือวิธีการเพิ่มประสิทธิภาพการค้นหาของ Hive ใช้เพื่อเร่งความเร็วในการเข้าถึงคอลัมน์หรือชุดของคอลัมน์ในฐานข้อมูล Hive โดยใช้ดัชนี Hive ระบบฐานข้อมูลไม่จำเป็นต้องอ่านแถวทั้งหมดในตารางเพื่อค้นหาข้อมูลที่เลือก
- ทำไมคุณถึงต้องการ Hcatlog?
Hcatalog จำเป็นสำหรับการแชร์โครงสร้างข้อมูลกับระบบภายนอก ให้การเข้าถึง Hive metastore ดังนั้นคุณจึงสามารถอ่าน/เขียนข้อมูลไปยังคลังข้อมูล Hive ได้

- ตั้งชื่อส่วนประกอบของตัวประมวลผลแบบสอบถาม Hive?
ส่วนประกอบของตัวประมวลผลแบบสอบถาม Hive คือ:
- แผนตรรกะของรุ่น
- แผนทางกายภาพของรุ่น.
- เครื่องยนต์ดำเนินการ
- UDF และ UDAF
- ผู้ประกอบการ
- เครื่องมือเพิ่มประสิทธิภาพ
- พาร์เซอร์
- ตัววิเคราะห์ความหมาย
- การตรวจสอบประเภท
- ตารางรูปแบบ ORC ช่วยให้ Hive เพิ่มประสิทธิภาพได้อย่างไร
การใช้รูปแบบไฟล์ ORC (Optimized Row Columnar) คุณสามารถจัดเก็บข้อมูล Hive ได้อย่างมีประสิทธิภาพ เนื่องจากช่วยลดความซับซ้อนของข้อจำกัดต่างๆ ของรูปแบบไฟล์ Hive
- หน้าที่ของ Object-Inspector คืออะไร?
ใน Hive ตัวตรวจสอบวัตถุช่วยวิเคราะห์โครงสร้างภายในของวัตถุแถวและโครงสร้างเฉพาะของคอลัมน์ นอกจากนี้ยังมีวิธีในการเข้าถึงวัตถุที่ซับซ้อนซึ่งสามารถจัดเก็บในรูปแบบต่างๆ ในหน่วยความจำได้
- ความแตกต่างระหว่าง Hive และ HBase คืออะไร?
จุดแตกต่างที่สำคัญระหว่าง Hive และ HBase คือ:

- Hive เป็นเฟรมเวิร์กคลังข้อมูลในขณะที่ HBase เป็นฐานข้อมูล NoSQL
- แม้ว่า Hive สามารถเรียกใช้การสืบค้น SQL ส่วนใหญ่ได้ แต่ HBase ไม่อนุญาตการสืบค้น SQL
- Hive ไม่รองรับการดำเนินการแทรก อัปเดต และลบระดับระเบียนในตาราง แต่ HBase รองรับฟังก์ชันเหล่านี้
- Hive ทำงานบน MapReduce แต่ HBase ทำงานบน HDFS
- ตารางที่มีการจัดการและตารางภายนอกคืออะไร
ในตารางที่มีการจัดการ ทั้งข้อมูลเมตาดาต้าและข้อมูลตารางจะถูกลบออกจากไดเร็กทอรีคลังข้อมูล Hive ถ้าคุณออกจาก/ออกจากตารางที่มีการจัดการ อย่างไรก็ตาม ในตารางภายนอก เฉพาะข้อมูลเมตาดาต้าที่เชื่อมโยงกับตารางเท่านั้นที่จะถูกลบในขณะที่ข้อมูลตารางจะถูกเก็บไว้ใน HDFS
- ตั้งชื่อส่วนประกอบต่างๆ ของสถาปัตยกรรม Hive
Hive Architecture มีองค์ประกอบ 5 ประการ:
- ส่วนต่อประสาน ผู้ใช้ – อนุญาตให้ผู้ใช้ส่งการสืบค้นและการดำเนินการอื่น ๆ ไปยังระบบ Hive อินเทอร์เฟซผู้ใช้รองรับ UI เว็บ Hive, บรรทัดคำสั่ง Hive และ Hive HD Insight
- โปรแกรมควบคุม – จะสร้างหมายเลขอ้างอิงเซสชันสำหรับแบบสอบถาม แล้วส่งแบบสอบถามไปยังคอมไพเลอร์เพื่อสร้างแผนการดำเนินการสำหรับสิ่งเดียวกัน
- Metastore – ประกอบด้วยข้อมูลที่มีโครงสร้างพร้อมกับข้อมูลทั้งหมดในตารางและพาร์ติชันต่างๆ ในคลังข้อมูล (พร้อมแอตทริบิวต์) เมื่อได้รับคำขอข้อมูลเมตา จะส่งข้อมูลเมตาไปยังคอมไพเลอร์เพื่อดำเนินการค้นหา
- คอมไพเลอร์ – จะสร้างแผนการดำเนินการเพื่อแยกวิเคราะห์คิวรี ทำการวิเคราะห์เชิงความหมายบนบล็อกคิวรีต่างๆ และสร้างนิพจน์คิวรี
- กลไกการดำเนินการ – ในขณะที่คอมไพเลอร์สร้างแผนการดำเนินการ เอ็นจินการดำเนินการจะนำไปใช้ จัดการการพึ่งพาของขั้นตอนต่างๆ ของแผน
เห็นได้ชัดว่า Hive มีอะไรมากกว่าแค่ 15 คำถามเหล่านี้ นี่เป็นเพียงแนวคิดพื้นฐานที่จะช่วยให้คุณเรียนรู้เกี่ยวกับ Hive ได้ง่ายขึ้น
หากคุณสนใจที่จะทราบข้อมูลเพิ่มเติมเกี่ยวกับ Big Data โปรดดูที่ PG Diploma in Software Development Specialization in Big Data program ซึ่งออกแบบมาสำหรับมืออาชีพที่ทำงานและมีกรณีศึกษาและโครงการมากกว่า 7 กรณี ครอบคลุมภาษาและเครื่องมือในการเขียนโปรแกรม 14 รายการ เวิร์กช็อป ความช่วยเหลือด้านการเรียนรู้และจัดหางานอย่างเข้มงวดมากกว่า 400 ชั่วโมงกับบริษัทชั้นนำ
มีความสุขในการเรียนรู้!