这篇文章主要为大家展示了“Hive基本概念是什么”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Hive基本概念是什么”这篇文章吧。
Hive是基于Hadoop的一个数据仓库工具,能将结构化的数据文件映射为一张表,并提供类SQL查询功能。Facebook家的。
本质就是将HQL转化为MR程序。 工作流程: Hive数据库将SQL中常用语句封装为对应的MapReduce模板并封装在hive中 ----> 客户使用sql语句对hive提交任务需求 ----> hive将根据对应的sql语句调用MapReduce程序 ----> MapReduce程序提交到yarn上运行 ----> 运行结果返回给客户
要说的是:
Hive处理的数据是存在hdfs上。(这点一定要明确,不然就会有种hive像数据库的错觉)
HQL语句调用的底层是MapReduce。
Hive任务提交在Yarn上。
优点: (1)Hive可以使用类SQL语言进行数据查询操作,减小了开发难度; (2)Hive使开发时避免写冗长的MapReduce程序,提高开发效率; (3)Hive可以实现对海量数据的分析计算操作; (4)Hive提供了自定义函数,用户可根据需求自定义封装函数。 缺点: (1)Hive的HQL表达能力有限,其自动生成的MapReduce程序不够智能,且无法对部分更优的算法进行封装; (2)Hive不支持行级别更新,只允许新增与追加,不允许修改删除操作; (3)Hive的效率比较低,执行延迟比较高,调优粒度较粗。
(1)client:用户接口,命令行cli、JDBC接口
(2)Metastore:元数据,存储数据的库名、表名、字段、类别、存储目录、自定义函数等,默认存储在自带的derby中
(3)Hadoop:HDFS存放数据,MapReduce进行数据计算
(4)Driver:解析器(SQL-->AST)、编译器(AST-->执行计划)、优化器(执行计划优化)、执行器(执行计划-->MapReduce)
(1)查询语言:Hive提供了类SQL查询语句HQL,但HIve不提供数据存储于计算环境;
(2)数据更新:Hive不支持对数据库的删除、修改;
(3)执行延迟:Hive执行延迟较高
(4)数据规模:Hive可以对海量数据进行分析计算
以上是“Hive基本概念是什么”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。