Hadoop_Hive
Hive是基于Hadoop的数据仓库工具,将SQL语句转换为MapReduce任务。
Hive特点
数据源采集到数据仓库中需要依靠ETL(Extract-Transform-Load),数据抽取转换与加载。
优点
- 开发周期短,学习成本低。
- 扩展性能好,容错性高。
缺点
- HQL语句的表达能力弱,无法做到类似递归等操作。
- 执行时需要转换为MapReduce任务,效率低延迟高。
Hive架构
用户接口:Client
- CLI:终端,用于与Hive进行交互。
- JDBC/ODBC:JavaDatabase Connectivity/Open Database Connectivity,即数据库API接口,连接到Hive Server。
- Thrift Server:用于可扩展,跨语言开发,使得可以使用其他语言来调用Hive。
- WebUI:通过浏览器来访问&管理Hive的运行。
元数据储存:Metastore
元数据:保存数据的描述信息,表名、类型、所在位置等属性。元数据默认储存在Derby中,不适合多用户操作。
驱动器:Driver
包括解析器、编译器、优化器、执行器。
Hadoop
Hive的数据储存在HDFS上,底层借助MapReduce进行数据查询与处理,执行程序运行在YARN上。
对比RDBMS
本文标题:Hadoop_Hive
文章作者:Raincorn
发布时间:2020-07-14
最后更新:2020-07-28
原始链接:https://blog.raincorn.top/2020/07/14/Hadoop_Hive/
版权声明:本文采用知识共享署名-非商业性使用 4.0 国际许可协议进行许可