转载请注明出处:  

1.Google的三篇论文

  2003年,Google发布Google File System论文,(GFS)这是一个可扩展的分布 式文件系统,用于大型的、分布式的、对大量数据进行访问的应用。它运行于廉价 的普通硬件上,提供容错功能。从根本上说:文件被分割成很多块,使用冗余的方 式储存于商用机器集群上。

  紧随其后,2004年,Google公布了MapReduce论文,论文描述了大数据的分布 式计算方式,主要思想是将任务分解然后在多台处理能力较弱的计算节点中同时处 理,然后将结果合并从而完成大数据处理。

  接着到了2006年,Google公布了BigTable论文,BigTable是一种构建于GFS和 MapReduce之上的多维稀疏图管理工具。

  正是这三篇论文,掀起了开源软件的大数据热潮。人们根据GFS,开发出了HDFS 文件存储。MapReduce计算框架,也成了海量数据处理的标准。而HDFS与 MapReduce结合在一起,形成了Hadoop。而BigTable更是启发了无数的NoSQL 数据库。而HBase正是继承了正统的BigTable思想。所以,Hadoop+HBase是模拟 了Google处理海量网页的三大基石实现的,他们也就成了开源大数据处理的基石。

2.Hbase是什么

  HBase是一种构建在HDFS之上的分布式、面向列的存储系统。

  HBase是构建于HDFS上的一套分布式非结构化数据存储系统,类似于Redis之类的Key-Value数据库,可以通过key进行大规模数据的快速索引查询。目前常用于在大规模数据中快速查询某些信息记录,例如从几亿用户信息中快速查询某个用户信息。

  特性:

  • 对于检索key查询value可以做到毫秒级的响应,满足大多数低延迟相应的要求;
  • 底层使用HDFS作为文件存储系统,让HBase的单表存储记录数可以达到极高的规模。

  在需要实时读写、随机访问超大规模数据集时,可以使用HBase。

  尽管已经有许多数据存储和访问的策略和实现方法,但事实上大多数解决方案,特别是一些关系类型的,在构建时并没有考虑超大规模和分布式的特点。许多商家通过复制和分区的方法来扩充数据库使其突破单个节点的界限,但这些功能通常都是事后增加的,安装和维护都很复杂。同时,也会影响RDBMS的特定功能,例如联接、复杂的查询、触发器、视图和外键约束这些操作在大型的RDBMS上的代价相当高,甚至根本无法实现。

  HBase从另一个角度处理伸缩性问题。它通过线性方式从下到上增加节点来进行扩展。HBase不是关系型数据库,也不支持SQL,但是它有自己的特长,这是RDBMS不能处理的,HBase巧妙地将大而稀疏的表放在商用的服务器集群上。

  HBase是可以提供实时计算的分布式数据库,数据被保存在HDFS分布式文件系统上,由HDFS保证期高容错性;

  Hadoop是一个高容错、高延时的分布式文件系统和高并发的批处理系统,不适用于提供实时计算;HBase是可以提供实时计算的分布式数据库,数据被保存在HDFS分布式文件系统上,由HDFS保证期高容错性。

  它是Hadoop的生态系统,提供对数据的随机实时读/写访问,是Hadoop文件系统的一部分。我们可以直接或通过HBase的存储HDFS数据。使用HBase在HDFS读取消费/随机访问数据。 HBase在Hadoop的文件系统之上,并提供了读写访问。

3.Hbase特性

  Apache HBase是一个Hadoop上的数据库。一个分布式,可扩展的大数据存储 引擎。HBase有个最明显的特征:

  1、HBase支持非常大的数据集,数十亿行*数百万列。如此庞大的数据量级,足以 撑爆我们在J2EE阶段学习过的所有数据存储引擎。

  2、HBase支持大数据量的随机、实时读写操作。在海量数据中,可以实现毫秒级的 数据读写。

  3、HBase从一开始就深度集成了Hadoop。HBase基于Hadoop进行文件持久化, 还继承了Hadoop带来的强大的可扩展性。Hadoop可以基于廉价PC机组建庞大的 应用集群。HBase也深度集成了Hadoop的MapReduce计算框架,并且也正在积极 整合Spark。这使得HBase能够很轻松的融入到整个大数据生态圈。

  4、HBase的数据是强一致性的,从CAP理论来看,HBase是属于CP的。这种设计 可以让程序员不需要担心脏读、幻读这些事务最终一致性带来的问题。

  5、最后最重要的还是HBase的框架性能是足够高效的。HBase的开源社区非常活 跃,他的性能经过很多大型商业产品的验证。Facebook的整个消息流转的基础设施 就构建于HBase之上。

Hbase一:Hbase介绍及特点的更多相关文章

  1. HBase shell 命令介绍

    HBase shell是HBase的一套命令行工具,类似传统数据中的sql概念,可以使用shell命令来查询HBase中数据的详细情况.安装完HBase之后,如果配置了HBase的环境变量,只要在sh ...

  2. 【转】HBase 超详细介绍

    ---恢复内容开始--- http://blog.csdn.net/frankiewang008/article/details/41965543 1-HBase的安装 HBase是什么? HBase ...

  3. HBase 超详细介绍

    1-HBase的安装 HBase是什么? HBase是Apache Hadoop中的一个子项目,Hbase依托于Hadoop的HDFS作为最基本存储基础单元,通过使用hadoop的DFS工具就可以看到 ...

  4. Hbase学习Hbase基础介绍

    一.产生背景 自1970年以来,关系数据库用于数据存储和维护有关问题的解决方案.大数据的出现后,好多公司实现处理大数据并从中受益,并开始选择像Hadoop的解决方案.Hadoop使用分布式文件系统,用 ...

  5. Hbase总结(一)-hbase命令,hbase安装,与Hive的区别,与传统数据库的区别,Hbase数据模型

    Hbase总结(一)-hbase命令 下面我们看看HBase Shell的一些基本操作命令,我列出了几个常用的HBase Shell命令,如下: 名称 命令表达式 创建表 create '表名称', ...

  6. HBase学习-HBase原理

    1.系统架构 1.1 图解   从HBase的架构图上可以看出,HBase中的组件包括Client.Zookeeper.HMaster.HRegionServer.HRegion.Store.MemS ...

  7. Hbase理论&&hbase shell&&python操作hbase&&python通过mapreduce操作hbase

    一.Hbase搭建: 二.理论知识介绍: 1Hbase介绍: Hbase是分布式.面向列的开源数据库(其实准确的说是面向列族).HDFS为Hbase提供可靠的底层数据存储服务,MapReduce为Hb ...

  8. 大数据技术之_11_HBase学习_01_HBase 简介+HBase 安装+HBase Shell 操作+HBase 数据结构+HBase 原理

    第1章 HBase 简介1.1 什么是 HBase1.2 HBase 特点1.3 HBase 架构1.3 HBase 中的角色1.3.1 HMaster1.3.2 RegionServer1.3.3 ...

  9. 【HBase】HBase Getting Started(HBase 入门指南)

    入门指南 1. 简介 Quickstart 会让你启动和运行一个单节点单机HBase. 2. 快速启动 – 单点HBase 这部分描述单节点单机HBase的配置.一个单例拥有所有的HBase守护线程- ...

  10. Hbase启动hbase shell运行命令报Class path contains multiple SLF4J bindings.错误

    1:Hbase启动hbase shell运行命令报Class path contains multiple SLF4J bindings.错误,是因为jar包冲突了,所以对于和hadoop的jar包冲 ...

随机推荐

  1. HSSFSheet XSSFWorkbook SXSSF Java读取Excel数据

    HSSF是POI工程对Excel 97(-2007)文件操作的纯Java实现 XSSF是POI工程对Excel 2007 OOXML (.xlsx)文件操作的纯Java实现 SXSSF通过一个滑动窗口 ...

  2. Java开发学习(四十六)----MyBatisPlus新增语句之id生成策略控制及其简化配置

    在前面有一篇博客:Java开发学习(四十一)----MyBatisPlus标准数据层(增删查改分页)开发,我们在新增的时候留了一个问题,就是新增成功后,主键ID是一个很长串的内容. 我们更想要的是按照 ...

  3. socet网络编程

    一. 网络模型 应用层   -----     HTTP协议 传输层   -----     TCP协议 网络层   -----       IP协议 链路层   -----     以太网协议 二. ...

  4. 《HTTP权威指南》 – 11.验证码和新鲜度

    服务器应当告知客户端能够将内容缓存多长时间,在这个时间内就是新鲜的.服务器可以用这两个首部之一来提供信息: Expires(过期) Cache - Control(缓存控制) Expires首部 规定 ...

  5. vue 单独封装分页组件

    一.在components文件夹下新建 pagination.vue <template> <div class="page-wrap"> <ul&g ...

  6. uni-app生命周期和路由跳转

    生命周期分为:应用生命周期和页面生命周期 具体内容可参考:uni-app官网Api 应用生命周期(仅可在App.vue中监听) (1)onLaunch:当uni-app 初始化完成时触发(全局之触发一 ...

  7. 侦察工具——Httrack

    前言 web渗透学习笔记,实验环境为Metasploitable靶机上的DVWA.此随笔介绍Web渗透侦察工具Httrack Httrack 简介 Httrack能够克隆拷贝目标网站上的所有可访问.可 ...

  8. JavaScript:是一种什么样的编程语言?

    有关JavaScript的发展历程,百度百科上已经说得很清楚了,这里不赘述,只是想谈一下我刚刚接触JS的一些感触. 作为后端java开发者,初次学习JS的时候,真的觉得JS非常的不严谨,很混乱.由于它 ...

  9. 【转载】EXCEL VBA 同时选择多个工作表的方法

    如果要用VBA同时选择多个工作表,可以利用数组或设置"Select"方法的参数为"False"来扩展所选择的内容,如下面的一些代码:   1.用工作表名称:   ...

  10. java8新特性学习笔记

    目录 1.速度更快 2.Lambda表达式 2.1.匿名内部类的Lambda转换 2.2.java8内置的四大核心函数式接口 2.3.方法引用和构造器 2.3.1.方法引用 2.3.2.构造器引用 2 ...