hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。 其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析。
Hive是建立在 Hadoop 上的数据仓库基础构架。它提供了一系列的工具,可以用来进行数据提取转化加载(ETL),这是一种可以存储、查询和分析存储在 Hadoop 中的大规模数据的机制。Hive 定义了简单的类 SQL 查询语言,称为 HQL,它允许熟悉 SQL 的用户查询数据。同时,这个语言也允许熟悉 MapReduce 开发者的开发自定义的 mapper 和 reducer 来处理内建的 mapper 和 reducer 无法完成的复杂的分析工作。
Hive 没有专门的数据格式。 Hive 可以很好的工作在 Thrift 之上,控制分隔符,也允许用户指定数据格式。
Hive是:提供一个大数据的SQL的接口,不做计算。用来做数据分析。
在这种模式下,hive metastore 服务跟HiveServer进程共用一个进程,但是会另起一个线程来运行元数据数据库,这个线程有可能在另外一个机器上。内置的metastore服务跟metastore数据库之间通过JDBC交互。比上一个方案更进一步了,但是还是不够好,因为hive metastore跟HiveServer还共用一个进程呢,于是来介绍下CDH强烈推荐的第三种模式
在这种模式下,Hive metastore 服务运行在独立的jvm进程里面。 HiveServer2, HCatalog, Cloudera Impala™, 和其他进程通过 Thrift 的网络 API (在 hive.metastore.uris 属性里面配置)来跟它通讯。metastore 服务跟存储 metastore 的数据库之间通过JDBC (用 javax.jdo.option.ConnectionURL 属性配置)通讯. 数据库 , HiveServer 进程,和 metastore 服务可以运行在同一个机子上,但是如果把 HiveServer进程运行在另一台机器上会更高的可用性(就是不要把鸡蛋放在一个篮子里啦)和扩展性。
————————————————
推荐阅读:
原文链接:https://blog.csdn.net/nsrainbow/article/details/41748863
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69949806/viewspace-2901331/ ,如需转载,请注明出处,否则将追究法律责任。