前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >大数据技术Hbase 和 Hive 详解

大数据技术Hbase 和 Hive 详解

作者头像
不吃西红柿
发布2022-07-29 10:04:31
5600
发布2022-07-29 10:04:31
举报
文章被收录于专栏:信息技术智库

目录

两者的特点

各自的限制

应用场景


大数据技术Hbase 和 Hive 详解, 今天给大家介绍一下关于零基础学习大数据视频教程之HBASE 和 HIVE 是多么重要的技术,那么两者有什么区别呢 ? 下面我们一起来看一下吧。

   ApacheHive 是一个构建在 hadoop 基础设施之上的数据仓库。通过 Hive 可以使用 HQL 语言查询存放在 HDFS 上的数据。 HQL 是一种类 SQL 语言,这种语言最终被转化为 Map/Reduce. 虽然 Hive 提供了 SQL 查询功能,但是 Hive 不能够进行交互查询–因为它只能够在 Haoop 上批量的执行 Hadoop 。

   ApacheHBase 是一种 Key/Value 系统,它运行在 HDFS 之上。和 Hive 不一样, Hbase 的能够在它的数据库上实时运行,而不是运行 MapReduce 任务。 Hive 被分区为表格,表格又被进一步分割为列簇。列簇必须使用 schema 定义,列簇将某一类型列集合起来 ( 列不要求 schema 定义 ) 。例如,“ message ”列簇可能包含:“ to ”,” from ”“ date ”,“ subject ”,和” body ”。每一个 key/value 对在 Hbase 中被定义为一个 cell ,每一个 key 由 row-key ,列簇、列和时间戳。在 Hbase 中,行是 key/value 映射的集合,这个映射通过 row-key 来唯一标识。 Hbase 利用 Hadoop 的基础设施,可以利用通用的设备进行水平的扩展。

两者的特点

   Hive 帮助熟悉 SQL 的人运行 MapReduce 任务。因为它是 JDBC 兼容的,同时,它也能够和现存的 SQL 工具整合在一起。运行 Hive 查询会花费很长时间,因为它会默认遍历表中所有的数据。虽然有这样的缺点,一次遍历的数据量可以通过 Hive 的分区机制来控制。分区允许在数据集上运行过滤查询,这些数据集存储在不同的文件夹内,查询的时候只遍历指定文件夹 ( 分区 ) 中的数据。这种机制可以用来,例如,只处理在某一个时间范围内的文件,只要这些文件名中包括了时间格式。

   HBase 通过存储 key/value 来工作。它支持四种主要的操作:增加或者更新行,查看一个范围内的 cell ,获取指定的行,删除指定的行、列或者是列的版本。版本信息用来获取历史数据 ( 每一行的历史数据可以被删除,然后通过 Hbasecompactions 就可以释放出空间 ) 。虽然 HBase 包括表格,但是 schema 仅仅被表格和列簇所要求,列不需要 schema 。 Hbase 的表格包括增加 / 计数功能。

各自的限制

   Hive 目前不支持更新操作。另外,由于 hive 在 hadoop 上运行批量操作,它需要花费很长的时间,通常是几分钟到几个小时才可以获取到查询的结果。 Hive 必须提供预先定义好的 schema 将文件和目录映射到列,并且 Hive 与 ACID 不兼容。

   HBase 查询是通过特定的语言来编写的,这种语言需要重新学习。类 SQL 的功能可以通过 ApachePhonenix 实现,但这是以必须提供 schema 为代价的。另外, Hbase 也并不是兼容所有的 ACID 特性,虽然它支持某些特性。最后但不是最重要的–为了运行 Hbase , Zookeeper 是必须的, zookeeper 是一个用来进行分布式协调的服务,这些服务包括配置服务,维护元信息和命名空间服务。

应用场景

   Hive 适合用来对一段时间内的数据进行分析查询,例如,用来计算趋势或者网站的日志。 Hive 不应该用来进行实时的查询。因为它需要很长时间才可以返回结果。

   Hbase 非常适合用来进行大数据的实时查询。 Facebook 用 Hbase 进行消息和实时的分析。它也可以用来统计 Facebook 的连接数。

   Hive 和 Hbase 是两种基于 Hadoop 的不同大数据技术– Hive 是一种类 SQL 的引擎,并且运行 MapReduce 任务, Hbase 是一种在 Hadoop 之上的 NoSQL 的 Key/vale 数据库。当然,这两种工具是可以同时使用的。就像用 Google 来搜索,用 FaceBook 进行社交一样, Hive 可以用来进行统计查询, HBase 可以用来进行实时查询,数据也可以从 Hive 写到 Hbase ,设置再从 Hbase 写回 Hive 。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-12-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 两者的特点
  • 各自的限制
  • 应用场景
相关产品与服务
TDSQL MySQL 版
TDSQL MySQL 版(TDSQL for MySQL)是腾讯打造的一款分布式数据库产品,具备强一致高可用、全球部署架构、分布式水平扩展、高性能、企业级安全等特性,同时提供智能 DBA、自动化运营、监控告警等配套设施,为客户提供完整的分布式数据库解决方案。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档