Hadoop】【大数据基础】hbase和hadoop的区别

2020-12-05 14:16发布

6条回答
summer
2楼 · 2020-12-07 13:49

1.Hbase即 HadoopDatabase 的简称,也就是基于Hadoop数据库,是一种NoSQL数据库,主要适用于海量明细数据(十亿、百亿)的随机实时查询,如交易清单、日志明细、轨迹行为等。

2. Hive是Hadoop的数据仓库,严格地讲并非数据库,主要是让开发人员能够通过SQL来计算和处理HDFS上的结构化数据,适用于离线的批量数据计算。

3.通过元数据来描述HDFS上的结构化文本数据,通俗点来说,就是定义一张表来描述HDFS上的结构化文本,包括各列数据名称、数据类型等内容,便于处理数据,当前很多SQL ON Hadoop的计算引擎均用的是Hive的元数据,例如Spark SQL、Impala等;

4.基于第一点,通过SQL来处理和计算HDFS的数据,Hive会将SQL翻译为MapReduce来处理数据。


水默
3楼 · 2020-12-07 20:10

hadoop的hdfs支持海量数据量存储

hbase是一种nosql数据库,列式数据库,支持海量数据存储,支持列的扩展,但是查询操作较复杂,不如oracle这类关系型数据库简单,且只支持一个索引,但是Hbase在表结构设置合理情况下,查询速度跟数据量大小没有太大关系,即数据量的大小不会影响到查询速度,顺便说句Hbase查询速度可以达到ms级


善良的琼琼姐
4楼 · 2020-12-13 17:35

hadoop的hdfs支持海量数据量存储

hbase是一种nosql数据库,列式数据库,支持海量数据存储,支持列的扩展,但是查询操作较复杂,不如oracle这类关系型数据库简单,且只支持一个索引,但是Hbase在表结构设置合理情况下,查询速度跟数据量大小没有太大关系,即数据量的大小不会影响到查询速度,顺便说句Hbase查询速度可以达到ms级。



椰子椰子
5楼 · 2020-12-14 10:35

hadoop的hdfs支持海量数据量存储 mapreduce支持对海量数据的分布式处理

oracle虽然可以搭建集群但是当数据量达到一定限度之后查询处理速度会变得很慢 且对机器性能要求很高

其实这两个东西不是同类 hadoop是一个分布式云处理架构,倾向于数据计算 而oracle是一个关系型数据库,倾向于数据存储。要说比较可以比较hbase与oracle。

hbase是一种nosql数据库,列式数据库,支持海量数据存储,支持列的扩展,但是查询操作较复杂,不如oracle这类关系型数据库简单,且只支持一个索引,但是Hbase在表结构设置合理情况下,查询速度跟数据量大小没有太大关系,即数据量的大小不会影响到查询速度,顺便说句Hbase查询速度可以达到ms级


我的网名不再改
6楼 · 2020-12-20 15:45

1.hdfs分布式文件系统,存储大量数据;hbase是数据库,存储大量数据,构建与hdfs之上
2.hdfs不支持快速单条数据的查找;hbase支持大表的快速查询
3.hdfs提供高延迟批处理;hbase提供单行数据低延迟随机访问
4.hdfs只提供数据按序访问;hbase内部是使用hash表提供的随机访问

征戰撩四汸
7楼 · 2022-03-15 16:46

  Hbase,其实是Hadoop Database的简称,本质上来说就是Hadoop系统的数据库,为Hadoop框架当中的结构化数据提供存储服务,是面向列的分布式数据库。这一点与HDFS是不一样的,HDFS是分布式文件系统,管理的是存放在多个硬盘上的数据文件,而Hbase管理的是类似于key—value映射的表。

  Hbase底层仍然依赖HDFS来作为其物理存储,并且还需要Zookeeper协助提供部分配置服务,包括维护元信息和命名空间等。

  传统的关系型数据库,数据按照行进行存储,在进行查询时,需要使用大量的I/O,数据库必须大量膨胀才能满足性能要求,这在面对大规模数据处理任务时,计算性能受到极大的拖累,完全不适应大数据处理的需求。

  而Hbase的数据存储,数据是按列存储的,查询时只访问所涉及的列,大量降低系统I/O,数据类型一致,可以高效压缩存储。

  HBase中有Column Family的概念,简称为CF。CF一般用于将相关的列(Column)组合起来。上述例子中,“姓”和“名”组合成为info,组合的形式是类似于字典的key-value形式。在物理上HBase其实是按CF存储的,只是按照Row-key将相关CF中的列关联起来。

  总体来说,Hbase对数据的存储方式和数据结构进行的修改和规整,使其更加善于去处理大数据的场景,此在Hadoop MapReduce运行计算时能够提供更好的底层支持。

  当然,Hbase并非完美,限于这样的数据结构和存储方式,Hbase只能做简单的key-value查询,不能支持复杂的统计SQL。


相关问题推荐

  • 回答 1

    /data/hadoop-2.7.0/logsgedit hadoop-neworigin-datanode-s100.log查看clusterID发现datanode和namenode之间的ID不一致进入hdfs-site.xml 配置文件查看:[hdfs-site.xml]dfs.namenode.name.dir/home/neworigin/hadoop/hdfs/namedfs.data......

  • 回答 1

    Kafka是一个高吞吐量分布式消息系统。linkedin开源的kafka。 Kafka就跟这个名字一样,设计非常独特。首先,kafka的开发者们认为不需要在内存里缓存什么数据,操作系统的文件缓存已经足够完善和强大,只要你不搞随机写,顺序读写的性能是非常高效的。kafka的数...

  • 回答 3

    将 hadoop执行job命令写到shell脚本中。类似 hadoop jar  x.jar  ×××.MainClassName inputPath outputPath这种命令。hadoop客户机在本地,使用 Process执行shell脚本,java执行本地shell脚本的代码  1234Process process =null;String command1 ...

  • 回答 1

    1

  • 回答 1

    public static void test1(String user, String keytab, String dir) throws Exception {         Configuration conf = new Configuration();        // conf.set(fs.defaultFS, hdfs://hadoop01:8020);         c...

  • 回答 1

          Hello, world! ]]>  

  • 回答 2

    Hadoop是由java语言编写的,在分布式服务器集群上存储海量数据并运行分布式分析应用的开源框架,其核心部件是HDFS与MapReduce。       HDFS是一个分布式文件系统:引入存放文件元数据信息的服务器Namenode和实际存放数据的服务器Datanode,对数据进行分布...

  • 回答 2

    Hadoop的三大核心组件 分别是 :HDFS(Hadoop Distribute File System):hadoop的数据存储 工具。YARN(Yet Another Resource Negotiator,另一种 资源协调者):Hadoop 的资源管理 器。Hadoop MapReduce:分布式计算 框架...

  • 回答 1

  • 回答 2

    可以调一下系统时间,使用date命令,一般节点掉了都是时间不同步。

  • 回答 1

    Hbase安装与启动一,前言二,前期准备  2.1 文件下载  2.2 服务器准备三,配置文件配置  3.1 hbase-env.sh  3.2 hbase-site.xml  3.3 regionservers  3.4 将hbase的bin目录添加到环境变量  3.5 Hbase的官方配置文档四,Hbase服务启动  4.1 ...

  • 回答 3

    首先介绍部署 HBase 之前需要做的准备工作,如 Java、SSH 和 Hadoop 这些先决条件的配置;然后介绍如何安装 HBase,以及如何配置集群中相关文件。同时需要注意的是,本节介绍的是分布式 HBase 集群的部署,在对一台机器修改配置文件后需要同步到集群中的所有...

  • 回答 1

    HBase安装HBase的安装也分为三种,单机版、伪分布式、分布式。我们首先来安装单机版。单机版首先我们去官网下载好HBase的安装包;接下来,将压缩包解压缩到你想安装的目录(我解压到的是/app目录):tar -zxvf hbase-2.1.0-bin.tar.gz /app安装单机版很简...

  • 回答 24

    HBase分布式数据库具有如下的显著特点:容量大:HBase分布式数据库中的表可以存储成千上万的行和列组成的数据。面向列:HBase是面向列的存储和权限控制,并支持独立检索。列存储,其数据在表中是按照某列存储的,根据数据动态的增加列,并且可以单独对列进行...

  • 回答 9

    1、查看单行记录:get '表名称', '行名称'2、查看表中的记录总数:count '表名称'3、查看表所有记录:scan 表名称4、查看表某个列所有记录:scan 表名称 , ['列名称:']5、查看有哪些表:list6、查看表结构:describe '表...

  • 回答 15

    hbase与传统数据库的区别1.数据类型:Hbase只有简单的数据类型,只保留字符串;传统数据库有丰富的数据类型。2.数据操作:Hbase只有简单的插入、查询、删除、清空等操作,表和表之间是分离的,没有复杂的表和表之间的关系;传统数据库通常有各式各样的函数和连...

没有解决我的问题,去提问