Hbase一:Hbase介绍及特点

简介: Hbase一:Hbase介绍及特点

转载请注明出处:  

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之上。

 

标签: 大数据

相关文章
|
数据可视化 数据挖掘 数据处理
【100天精通Python】Day61:Python 数据分析_Pandas可视化功能:绘制饼图,箱线图,散点图,散点图矩阵,热力图,面积图等(示例+代码)
【100天精通Python】Day61:Python 数据分析_Pandas可视化功能:绘制饼图,箱线图,散点图,散点图矩阵,热力图,面积图等(示例+代码)
2330 0
|
Linux 数据安全/隐私保护
【Cloud】修改CentOS官方 云镜像的ROOT密码
在私有云平台使用中,去CentOS官网下载qcow2格式的镜像,发现运行之后不知道密码无法进入系统。现在提供两种修改or注入密码的方法
7825 0
【Cloud】修改CentOS官方 云镜像的ROOT密码
|
存储 Java BI
XXL-JOB定时任务知识点和应用实例
XXL-JOB是一个分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。该处只是介绍xxl_job的一下基础知识和使用的实例,具体的安装调试请参照对应的最新的官方文档,中文开源地址:https://www.xuxueli.com/xxl-job
5264 0
|
人工智能 程序员 开发者
「超级开发个体」在诞生:一份白皮书带你理解AI时代开发者
10月24日程序员节,魔搭社区联合知乎发布《THE NEXT WAVE:AI时代开发者生态白皮书》,揭示AI时代开发者新画像:以“超级个体”为核心,兼具技术与商业闭环能力,工具平权让个人开发者崛起。报告涵盖年龄、学历、组织分布及认知行为特征,展现开发者如何用AI提效、实现从“写代码”到“搭系统”的跃迁。点击下载完整报告。
804 0
|
缓存 NoSQL 关系型数据库
美团面试:MySQL有1000w数据,redis只存20w的数据,如何做 缓存 设计?
美团面试:MySQL有1000w数据,redis只存20w的数据,如何做 缓存 设计?
美团面试:MySQL有1000w数据,redis只存20w的数据,如何做 缓存 设计?
|
11月前
|
SQL 关系型数据库 数据挖掘
阿里云析言XiYan-SQL智能体,登顶BIRD-CRITIC全球榜单!
阿里云飞天实验室自研数据分析智能体“析言 XiYan-SQL”在全球权威SQL诊断基准BIRD-CRITIC(SWE-SQL)多项榜单中排名第一,超越国内外顶尖团队。该模型在真实数据库问题诊断、跨方言鲁棒性、复杂SQL处理及分布外泛化等方面表现卓越,支持MySQL、PostgreSQL等主流数据库。技术上创新采用模式筛选、多生成器集成与候选重组策略,提升SQL生成质量与系统适应性。核心模型已开源至GitHub、ModelScope和Hugging Face,欢迎开发者体验贡献。
1169 8
|
存储 分布式数据库 数据库
Hbase学习二:Hbase数据特点和架构特点
Hbase学习二:Hbase数据特点和架构特点
895 0
|
存储 大数据 关系型数据库
HBase系列学习:基础知识
HBase系列学习:基础知识
797 1
HBase系列学习:基础知识
|
存储 Shell 分布式数据库
Hbase 的基本shell 命令
Hbase 的基本shell 命令
1408 8
|
算法 Java 数据库
美团面试:百亿级分片,如何设计基因算法?
40岁老架构师尼恩在读者群中分享了关于分库分表的基因算法设计,旨在帮助大家应对一线互联网企业的面试题。文章详细介绍了分库分表的背景、分片键的设计目标和建议,以及基因法的具体应用和优缺点。通过系统化的梳理,帮助读者提升架构、设计和开发水平,顺利通过面试。
美团面试:百亿级分片,如何设计基因算法?