Hive与HBase的区别有哪些

server/2024/12/27 1:48:44/
Hive 是基于 Hadoop 的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql 查询功能,可以将 sql 语句转换为 MapReduce 任务进行运行。
HBase Hadoop 的数据库,一个分布式、可扩展、大数据的存储。
1 、两者的特点
Hive 帮助熟悉 SQL 的人运行 MapReduce 任务。因为它是 JDBC 兼容的,同时,它也能够和现存的 SQL 工具整合在一起。运行Hive 查询会花费很长时间,因为它会默认遍历表中所有的数据。虽然有这样的缺点,一次遍历的数据量可以通过Hive 的分区机制来控制。分区允许在数据集上运行过滤查询,这些数据集存 储在不同的文件夹内,查询的时候只遍历指定文件夹( 分区 ) 中的数据。这种机制可以用来,例如,只处 理在某一个时间范围内的文件,只要这些文件名中包括了时间格式。
HBase 通过存储 key/value 来工作。它支持四种主要的操作:增加或者更新行,查看一个范围内的 cell ,获取指定的行,删除指定的行、列或者是列的版本。版本信息用来获取历史数据( 每一行的历史数据可以被删除,然后通过Hbase compactions 就可以释放出空间 ) 。虽然 HBase 包括表格,但是 schema 仅仅被表格 和列簇所要求,列不需要schema Hbase 的表格包括增加 / 计数功能。
2 、限制
Hive 目前不支持更新操作。另外,由于 hive hadoop 上运行批量操作,它需要花费很长的时间,通常是几分钟到几个小时才可以获取到查询的结果。Hive 必须提供预先定义好的 schema 将文件和目录映射到列,并且Hive ACID 不兼容。
HBase 查询是通过特定的语言来编写的,这种语言需要重新学习。类 SQL 的功能可以通过 Apache
Phonenix 实现,但这是以必须提供 schema 为代价的。另外, Hbase 也并不是兼容所有的 ACID 特性,虽然
它支持某些特性。最后但不是最重要的 为了运行 Hbase Zookeeper 是必须的, zookeeper 是一个用来进行分布式协调的服务,这些服务包括配置服务,维护元信息和命名空间服务。
3 、应用场景
Hive 适合用来对一段时间内的数据进行分析查询,例如,用来计算趋势或者网站的日志。 Hive 不应该用来进行实时的查询。因为它需要很长时间才可以返回结果。
Hbase 非常适合用来进行大数据的实时查询。 Facebook Hbase 进行消息和实时的分析。它也可以用来统计Facebook 的连接数。
4 、小总
Hive Hbase 是两种基于 Hadoop 的不同技术。 Hive 是一种类 SQL 的引擎,并且运行 MapReduce 任务,Hbase是一种在 Hadoop 之上的 NoSQL Key/vale 数据库。当然,这两种工具是可以同时使用的。就像用Google来搜索,用 FaceBook 进行社交一样, Hive 可以用来进行统计查询, HBase 可以用来进行实时查询,数据也可以从Hive 写到 Hbase ,设置再从 Hbase 写回 Hive

http://www.ppmy.cn/server/153484.html

相关文章

选择屏幕的用法

**************************定义控件*********************************** SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-002. SELECT-OPTIONS bukrs FOR iloa-bukrs . "公司代码 SELECT-OPTIONS swerk FOR iloa-swerk OBLIGATORY . "工厂 SELECT-O…

【作业】LSTM

目录 习题6-4 推导LSTM网络中参数的梯度, 并分析其避免梯度消失的效果 ​编辑 习题6-3P 编程实现下图LSTM运行过程 1. 使用Numpy实现LSTM算子 2. 使用nn.LSTMCell实现 3. 使用nn.LSTM实现 参考链接 习题6-4 推导LSTM网络中参数的梯度, 并分析其…

workman服务端开发模式-应用开发-后端api推送修改二

需要修改两个地方&#xff0c;第一个是总控制里面的续token延时&#xff0c;第二个是操作日志记录 一、总控续token延时方法 在根目录下app文件夹下controller文件夹下Base.php中修改isLoginAuth方法&#xff0c;具体代码如下&#xff1a; <?php /*** 总控制* User: 龙哥…

dubbo2.7.23注册中心、配置中心、元数据中心

一、配置中心 抽象接口&#xff1a;DynamicConfiguration 具体实现类&#xff1a;NacosDynamicConfiguration ZookeeperDynamicConfiguration 示例&#xff1a;zookeeper://10.6.32.92:2181/ConfigCenterConfig?checktrue&clientcurator&config-filedubbo.propertie…

【AIGC-ChatGPT副业提示词指令】炼金术士的元素启示:在神秘中寻找生命的答案【限时免费阅读,一天之后自动进入进阶课程】

引言&#xff1a;炼金术士的智慧传承 在这个充满未知与挑战的时代&#xff0c;我们常常需要一些更深层的智慧指引。炼金术士协会延续了古老的智慧传统&#xff0c;通过元素之环的启示&#xff0c;为现代人提供独特的思考维度和解决方案。这种将玄学与实践相结合的方式&#xf…

RedissonClient

RedisTemplate 和 RedissonClient 的区别 &#xff08;1&#xff09;定位不同&#xff1a; RedisTemplate 是 Spring 提供的工具类&#xff0c;直接对 Redis 的基本数据结构进行操作&#xff0c;适合实现缓存、基本的键值存取功能。RedissonClient 是基于 Redis 的高级封装工…

mysql mmm和mha对比

本文简单介绍MySQL的两个high availability方案&#xff0c;MMM和MHA。 MMM MMM(Master-Master replication managerfor Mysql)的基本组成如下&#xff0c; 主节点master1&#xff1a;承载写流量备主节点master2&#xff1a;replicate主节点master1的写流量&#xff0c;在主节…

MFC/C++学习系列之简单记录——序列化机制

MFC/C学习系列之简单记录——序列化机制 前言简述六大机制序列化机制使用反序列化总结 前言 MFC有六大机制&#xff0c;分别是程序启动机制、窗口创建机制、动态创建机制、运行时类信息机制、消息映射机制、序列化机制。 简述六大机制 程序启动机制&#xff1a;全局的应用程序…