`
kavy
  • 浏览: 888053 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Hive Hbase区别 转载整理

 
阅读更多

Hive是为了简化编写MapReduce程序而生的,使用MapReduce做过数据分析的人都知道,很多分析程序除业务逻辑不同外,程序流程基本一样。在这种情况下,就需要Hive这样的用戶编程接口。Hive本身不存储和计算数据,它完全依赖于HDFS和MapReduce,Hive中的表纯逻辑,就是些表的定义等,也就是表的元数据。使用SQL实现Hive是因为SQL大家都熟悉,转换成本低,类似作用的Pig就不是SQL。

 

HBase为查询而生的,它通过组织起节点內所有机器的內存,提供一個超大的內存Hash表,它需要组织自己的数据结构,包括磁盘和內存中的,而Hive是不做这个的,表在HBase中是物理表,而不是逻辑表,搜索引擎使用它來存储索引,以满足查询的实时性需求。

hive类似CloudBase,也是基于hadoop分布式计算平台上的提供data warehouse的sql功能的一套软件。使得存储在hadoop里面的海量数据的汇总,即席查询简单化。hive提供了一套QL的查询语言,以sql为基础,使用起来很方便。

 

HBase是一个分布式的基于列存储的非关系型数据库。HBase的查询效率很高,主要由于查询和展示结果。

http://fccjxxw.com非常超级学习网

hive是分布式的关系型数据库。主要用来并行分布式 处理 大量数据。hive中的所有查询除了"select * from table;"都是需要通过Map\Reduce的方式来执行的。由于要走Map\Reduce,即使一个只有1行1列的表,如果不是通过select * from table;方式来查询的,可能也需要8、9秒。但hive比较擅长处理大量数据。当要处理的数据很多,并且Hadoop集群有足够的规模,这时就能体现出它的优势。

通过hive的存储接口,hive和Hbase可以整合使用。

 

 

 

1、hive是sql语言,通过数据库的方式来操作hdfs文件系统,为了简化编程,底层计算方式为mapreduce。

2、hive是面向行存储的数据库。

3、Hive本身不存储和计算数据,它完全依赖于HDFS和MapReduce,Hive中的表纯逻辑。

4、HBase为查询而生的,它通过组织起节点內所有机器的內存,提供一個超大的內存Hash表

5、hbase不是关系型数据库,而是一个在hdfs上开发的面向列的分布式数据库,不支持sql。

6、hbase是物理表,不是逻辑表,提供一个超大的内存hash表,搜索引擎通过它来存储索引,方便查询操作。

7、hbase是列存储。

 

 

Hive只供维护用,真正查起来非常非常慢的!

这是因为它的底层是要通过mapreduce分布式计算的,hbase、hive、pig底层都是这样的。但整体来说hadoop还是比较快的,因为它是进行海量数据存储和分布式计算,这个速度已经很不错了。
 

 

Hive和Hbase有各自不同的特征:hive是高延迟、结构化和面向分析的,hbase是低延迟、非结构化和面向编程的。Hive数据仓库在hadoop上是高延迟的。

 

 

其中HBase位于结构化存储层,Hadoop HDFS为HBase提供了高可靠性的底层存储支持,Hadoop MapReduce为HBase提供了高性能的计算能力,Zookeeper为HBase提供了稳定服务和failover机制。

此外,Pig和Hive还为HBase提供了高层语言支持,使得在HBase上进行数据统计处理变的非常简单。 Sqoop则为HBase提供了方便的RDBMS数据导入功能,使得传统数据库数据向HBase中迁移变的非常方便。

 

转:

觉得在问区别之前,我应该显示说相同点,这么一想,又糊涂了,hive和hbase哪里像了,好像哪里都不像,既然哪里都不像,又何来的“区别是什么”这一问题,他俩所有的都算区别。
那么,hive是什么?
白话一点再加不严格一点,hive可以认为是map-reduce的一个包装。hive的意义就是把好写的hive的sql转换为复杂难写的map-reduce程序。
于是,hbase是什么?
同样白话一点加不严格一点,hbase可以认为是hdfs的一个包装。他的本质是数据存储,是个NoSql数据库;hbase部署于hdfs之上,并且克服了hdfs在随机读写方面的缺点。
所以要问hive和hbase的区别,就应该问问map-reduce和hdfs之间的区别,问区别,就要先说说他俩哪里像。
于是,你说map-reduce和hdfs哪里像了呢?

 

转自:http://blog.csdn.net/maixia24/article/details/14163203

分享到:
评论

相关推荐

    HIVE和HBASE区别

    "HIVE和HBASE区别" HIVE和HBASE是两种基于Hadoop的不同技术,分别是数据仓库和Key/Value系统。它们之间有很多区别,包括设计理念、应用场景、查询语言等方面。 HIVE HIVE是一个构建在Hadoop基础设施之上的数据...

    HIVE和HBASE的整合

    HIVE和HBASE的整合 HIVE和HBASE是两个不同的数据处理和存储系统,HIVE是一种数据仓库系统,专门用来存储和处理结构化数据,而HBASE是一种NoSQL数据库,专门用来存储和处理半结构化和非结构化数据。由于HIVE和HBASE...

    Hadoop Hive HBase Spark Storm概念解释

    ### Hadoop Hive HBase Spark Storm概念详解 #### Hadoop **Hadoop** 是一个由Apache基金会开发的开源分布式系统基础架构。它通过提供一个高效、可靠且可扩展的平台来解决大数据存储与处理的需求。Hadoop的核心组件...

    Hadoop,Hive,Hbase等框架详解

    该文档保护了目前比较流行的大数据平台的原理过程梳理。Hadoop,Hive,Hbase,Spark,MapReduce,Storm

    小牛学堂-大数据24期-04-Hadoop Hive Hbase Flume Sqoop-12天适合初学者

    小牛学堂-大数据24期-04-Hadoop Hive Hbase Flume Sqoop-12天适合初学者.txt

    hive和hbase整合

    【Hive与HBase整合详解】 Hive和HBase是两个大数据处理的重要组件。Hive提供了基于SQL的查询语言(HQL)来处理大规模的数据,适合于离线批处理;而HBase则是一个NoSQL数据库,它基于Google的Bigtable设计,提供高...

    hive、Hbase、mysql的区别.docx

    【Hive、Hbase、MySQL的区别】 Hive、Hbase和MySQL是三种不同类型的数据库系统,它们各自在数据处理和存储方面有着独特的特性和应用场景。 1. Hive与Hbase的区别: - Hive是一个基于Hadoop的数据仓库工具,它允许...

    hive-hbase-handler-1.2.1.jar

    被编译的hive-hbase-handler-1.2.1.jar,用于在Hive中创建关联HBase表的jar,解决创建Hive关联HBase时报FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. org.apache.hadoop....

    scala-hive-HBASE-Api.7z

    Scala、Hive与HBase是大数据处理领域中的关键组件,它们在Java开发环境中扮演着重要角色。本压缩包"scala-hive-HBASE-Api.7z"包含了2019年8月至10月间用于工作的相关jar包,主要用于支持Scala、Hive和HBase的集成...

    hive-hbase-handler-1.2.2.jar

    hive和hbase整合的时候,如果出现不兼容的情况需要手动编译:hive-hbase-hander-1.2.2.jar把这个jar替换掉hive/lib里的那个jar包

    Hadoop hbase hive sqoop集群环境安装配置及使用文档

    大数据集群 Hadoop HBase Hive Sqoop 集群环境安装配置及使用文档 在本文档中,我们将详细介绍如何搭建一个大数据集群环境,包括 Hadoop、HBase、Hive 和 Sqoop 的安装配置及使用。该文档将分为四部分:Hadoop 集群...

    hadoop hive hbase安装过程

    ### Hadoop、Hive、HBase 的安装配置详解 #### 一、Hadoop 安装配置 ##### 1. 创建用户与安装 JDK 在安装 Hadoop 前,首先需要创建一个专用的用户账户用于运行 Hadoop 相关服务,并确保 Java 环境已经正确安装。 ...

    Hive数据导入HBase的方法.docx

    Hive 数据导入 HBase 的方法 Hive 是一个基于 Hadoop 的数据仓库工具,而 HBase 是一个基于 Hadoop 的 NoSQL 数据库。它们都是大数据处理的重要组件。在数据处理过程中,经常需要将数据从 Hive 导入到 HBase 中。...

    hive0.8.1和hbase0.92.0集成的hive-hbase-handler.Jar包

    hive0.8.1和hbase0.92.0集成的hive-hbase-handler.Jar包,里面包含:hbase-0.92.0.jar、hbase-0.92.0-tests.jar、hive-hbase-handler-0.9.0-SNAPSHOT.jar。经测试没有问题。

    hive与hbase整合经验谈

    在大数据处理领域,Hive和HBase都是广泛使用的工具,各有其特定的优势。Hive作为一个基于Hadoop的数据仓库工具,适合于数据批处理和分析,而HBase则是一款分布式、高性能的NoSQL数据库,适用于实时数据查询。本文将...

    一个开源、成体系的大数据学习教程 spark学习 hadoop hive hbase flink教程 linux 从入门到精通

    spark学习 hadoop hive hbase flink教程 linux 从入门到精通 一个开源、成体系的大数据学习教程。spark学习 hadoop hive hbase flink教程 linux 从入门到精通 一个开源、成体系的大数据学习教程。spark学习 hadoop ...

    Hive整合HBase资源文件.zip

    标题 "Hive整合HBase资源文件.zip" 指向的是一个关于如何将Apache Hive与Apache HBase集成的教程或工具包。Hive是大数据处理领域的一个重要组件,主要用于结构化数据的查询和分析,而HBase则是一个分布式、列式存储...

Global site tag (gtag.js) - Google Analytics