Page 56 - Building Big Data Applications
P. 56

50 Building Big Data Applications
































                                           FIGURE 2.15 Hive architecture.

             Hive architecture

             Hive system architecture is seen in Fig. 2.12. The main architecture components that
             form the building blocks are as follows:
               MetastoredStores the system catalog and metadata about tables, columns, and
                partitions
               DriverdMaintains session details, process handles, statistics, and manages the life-
                cycle of a HiveQL statement as it moves through Hive.
               Query CompilerdCompiles HiveQL into map/reduce tasks (follows a DAG model)
               Execution EnginedProcesses and executes the tasks produced by the compiler in
                a dependency order. The execution engine manages all the interactions between
                the compiler and Hadoop
               Thrift ServerdProvides a thrift interface, a JDBC/ODBC server, and a rich API to
                integrate Hive with other applications.
               CLI and Web UIdAre two client interfaces. Command line interface allows com-
                mand line execution and the web user interface is a management console.
               InterfacesdExtensibility interfaces include the SerDe (implemented as Lazy SerDe
                in Hive) and ObjectInspector, UDF(user-defined function) and UDAF(user-defined
                aggregate function) interfaces that enable users to define their own custom
                functions.
   51   52   53   54   55   56   57   58   59   60   61