用户接口:包括CLI(命令行)、JDBC/ODBC(JAVA)、WebGUI(WEB界面)。
元数据存储:Hive将元数据存储在数据库中(默认为derby,建议mysql)。Hive的元数据包括表名,表的列和分区及其属性,表的属性(是否为外部表等),表的数据所在目录等。
驱动器:完成HQL 查询语句从词法分析、语法分析、编译、优化以及查询计划的生成。生成的查询计划存储在HDFS 中,并在随后有MapReduce 调用执行。
解释器:将SQL字符串转换成抽象语法树AST,这一步一般都用第三方工具库完成,比如antlr;对AST进行语法分析,比如表是否存在、字段是否存在、SQL语义是否有误。
编辑器:将AST编译生成逻辑执行计划
优化器:对逻辑执行计划进行优化。
执行器:把逻辑执行计划转换成可以运行的物理计划。对于Hive来说,就是MR/Spark。
Hadoop:使用HDFS进行存储
Hive架构
最新推荐文章于 2024-04-22 10:18:27 发布