logo

אדריכלות כוורת

הארכיטקטורה הבאה מסבירה את זרימת הגשת השאילתה לתוך Hive.

אדריכלות כוורת

לקוח כוורת

Hive מאפשר כתיבת יישומים בשפות שונות, כולל Java, Python ו-C++. זה תומך בסוגים שונים של לקוחות כגון:

  • Thrift Server - זוהי פלטפורמת ספק שירות חוצת שפות המשרתת את הבקשה מכל אותן שפות תכנות התומכות ב-Thrift.
  • מנהל התקן JDBC - הוא משמש ליצירת חיבור בין כוורת ליישומי Java. מנהל ההתקן JDBC קיים בכיתה org.apache.hadoop.hive.jdbc.HiveDriver.
  • מנהל התקן ODBC - מאפשר לאפליקציות התומכות בפרוטוקול ODBC להתחבר ל-Hive.

שירותי כוורת

להלן השירותים הניתנים על ידי Hive:-

  • Hive CLI - ה-Hive CLI (ממשק שורת הפקודה) הוא מעטפת שבה אנו יכולים לבצע שאילתות ופקודות של Hive.
  • ממשק משתמש של Hive Web - ממשק המשתמש של Hive Web הוא רק אלטרנטיבה של Hive CLI. הוא מספק GUI מבוסס אינטרנט לביצוע שאילתות ופקודות של Hive.
  • Hive MetaStore - זהו מאגר מרכזי המאחסן את כל מידע המבנה של טבלאות ומחיצות שונות במחסן. הוא כולל גם מטא-נתונים של עמודה ומידע מהסוג שלה, ה-serializers ו-de-serializers המשמשים לקריאה ולכתיבה של נתונים וקובצי HDFS המתאימים שבהם הנתונים מאוחסנים.
  • שרת כוורת - הוא מכונה Apache Thrift Server. הוא מקבל את הבקשה מלקוחות שונים ומספק אותה ל-Hive Driver.
  • מנהל התקן כוורת - הוא מקבל שאילתות ממקורות שונים כמו ממשק משתמש אינטרנט, CLI, Thrift ומנהל התקן JDBC/ODBC. זה מעביר את השאילתות לקומפיילר.
  • כוורת מהדר - מטרת המהדר היא לנתח את השאילתה ולבצע ניתוח סמנטי על בלוקי השאילתה והביטויים השונים. זה ממיר הצהרות HiveQL למשרות MapReduce.
  • Hive Execution Engine - Optimizer מייצר את התוכנית הלוגית בצורה של DAG של משימות הפחתת מפה ומשימות HDFS. בסופו של דבר, מנוע הביצוע מבצע את המשימות הנכנסות לפי סדר התלות שלהן.