Hive(jdbc/odbc的java实现)基于hadoop的数仓管理工具

Apache Hive是一个建立在Hadoop架构之上的数据仓库。它能够提供数据的精炼,查询和分析。可以将结构化的数据文件映射为一张数据库表,可以将简单的SQL语句转换为MapReduce任务进行运行。学习成本低,可以快速实现简单的MapReduce统计,十分适合数据仓库的统计分析。

架构

基本组成:

  • 用户接口:包括CLI、JDBC/ODBC、WebGUI。其中,CLI(command line interface)为shell命令行;JDBC/ODBC是Hive的JAVA实现,与传统数据库JDBC类似;WebGUI是通过浏览器访问Hive。
  • 元数据存储:通常是存储在关系数据库如mysql/derby中。Hive 将元数据存储在数据库中。Hive 中的元数据包括表的名字,表的列和分区及其属性,表的属性(是否为外部表等),表的数据所在目录等。
  • 解释器、编译器、优化器、执行器:完成HQL 查询语句从词法分析、语法分析、编译、优化以及查询计划的生成。生成的查询计划存储在HDFS 中,并在随后有MapReduce 调用执行。
  • Hive 支持的前四种文件格式是纯文本、序列文件、优化行列 (ORC) 格式和 RCFile

猜你喜欢

转载自blog.csdn.net/weixin_29403917/article/details/128113453