全方位认识HBase:一个值得拥有的NoSQL数据库(一)

本文涉及的产品
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
简介: 前言:说起HBase这门技术,在认知上对于稍微接触或使用过它的人来讲,可能只是百千数据库中一个很普通的库,大概就像我对Redis的认知一样:缓存嘛!可对于HBase,我确实是带着某些感情在的。今日突然萌生了一个生趣的想法,想抛开技术的视角,从情感的角度,像写小说一样,写写这位老朋友,这可能会有点滑稽吧,不过我觉得很放松。

前言:说起HBase这门技术,在认知上对于稍微接触或使用过它的人来讲,可能只是百千数据库中一个很普通的库,大概就像我对Redis的认知一样:缓存嘛!可对于HBase,我确实是带着某些感情在的。今日突然萌生了一个生趣的想法,想抛开技术的视角,从情感的角度,像写小说一样,写写这位老朋友,这可能会有点滑稽吧,不过我觉得很放松。《全方位认识HBase:一个值得拥有的NoSQL数据库》:从今天起,我们就暂且认为这是一本小说的名字吧!哈哈~

其实我特别想做的一件事情,就是想让更多的人来认识并使用HBase这门地地道道的大数据栈技术,当然不为别的,主要原因还是HBase真的很棒很热,自己用着感觉真的好,不好的产品我怎么会推荐给你呢?毕竟HBase这家伙不会给我一分钱的广告费~

那首先,我想给大家分享的内容就是:在我刚接触HBase这位老朋友的时候根本不想去看的一些觉得没用的东西。什么呢?其实就是特别无聊又深奥的好像还不得不问的灵魂三问:我是谁?我从哪里来?我要到哪里去?

为什么想写写这个呢?真的好无聊啊~ 当然肯定不是我太无聊了,说实话,是因为对它真的有感情了,所以就想把它的前世今生全都介绍给你,可能算是一种情怀,也可能算是一种敬畏,也可能只是怕赶路的人忘了它是谁。

我从哪里来?

我们知道,HBase出现于大数据背景之下,那么谈到这个问题,我们不得不提一下当年奠定了大数据算法基础的风靡全球的Google三篇论文,也称为Google的三驾马车:Google FS[2003]、MapReduce[2004]、BigTable[2006]。三篇论文中文版链接这里提供给大家,闲来没事可以看一看。

链接:https://pan.baidu.com/s/1EIhGR6gADm2BnEh5hW4KUA 
提取码:c1wb 

这三篇论文为何风靡全球呢?我们说随着大数据时代的到来,我们同样面临着大数据所带给我们的核心二问:

1、海量数据如何存储?
2、海量数据如何计算?
3、海量结构化数据如何高效读写?

然而,而谷歌公司在2003年至2006年发布的三篇论文则为解决两个问题提供了思路。

“ 我们设计并实现了 Google GFS 文件系统,一个面向大规模数据密集型应用的、可伸缩的分布式文件系统。

GFS 虽然运行在廉价的普遍硬件设备上,但是它依然了提供灾难冗余的能力,为大量客户机提供了高性能的
服务。
...
GFS 完全满足了我们对存储的需求。”

Google GFS 文件系统超前的设计思想,为解决大数据时代海量数据的存储提出了解决思路,同时对今后的分布式系统设计都提供了宝贵的指导意义。而MapReduce框架则解决了大数据时代海量数据如何计算的问题,虽然现在的Spark很火,但吃水不能忘了挖井人。

2006年,Google发布了第三篇重要论文。Bigtable 是一个分布式的结构化数据存储系统,它被设计用来处理海量数据:通常是分布在数千台普通服务器上的 PB 级的数据。Bigtable 的设计目的是可靠的处理 PB 级别的数据,并且能够部署到上千台机器上。用于解决Google内部海量结构化数据的存储以及高效读写问题。

也正是因为这三篇论文的发表,才有了而后的HDFS、MapReduce 和 HBase,才有了2015大数据元年。下面我们详细看一下Hadoop 家族的编年史,这里你大概也可以看出HBase在Hadoop家族中的地位。

*   2002年10月,Doug Cutting和Mike Cafarella创建了开源网页爬虫项目Nutch。

*   2003年10月,Google发表Google File System论文。

*   2004年7月,Doug Cutting和Mike Cafarella在Nutch中实现了类似GFS的功能,即后来HDFS的前身。

*   2004年10月,Google发表了MapReduce论文。

*   2005年2月,Mike Cafarella在Nutch中实现了MapReduce的最初版本。

*   2006年1月,Doug Cutting加入雅虎,Yahoo!提供一个专门的团队和资源将Hadoop发展成一个可在网络上运行的系统。

*   2006年2月,Apache Hadoop项目正式启动以支持MapReduce和HDFS的独立发展。

*   2006年3月,Yahoo!建设了第一个Hadoop集群用于开发。

*   2006年4月,第一个Apache Hadoop发布。

*   2006年11月,Google发表了Bigtable论文,这最终激发了HBase库的创建。

*   2007年10月,第一个可用的HBase发布了。

*   2008年1月,Hadoop成为Apache顶级项目。

*   2008年1月,HBase成为 Hadoop 的子项目。

*   2008年6月,Hadoop的第一个SQL框架——Hive成为了Hadoop的子项目。

*   2009年7月 ,MapReduce 和 HDFS成为Hadoop项目的独立子项目。

*   2009年7月 ,Avro 和 Chukwa 成为Hadoop新的子项目。

*   2009年10月,首届Hadoop World大会在纽约召开。

*   2010年5月 ,HBase脱离Hadoop项目,成为Apache顶级项目。

*   2010年9月,Hive 脱离Hadoop,成为Apache顶级项目。

*   2010年9月,Pig脱离Hadoop,成为Apache顶级项目。

*   2011年1月,ZooKeeper 脱离Hadoop,成为Apache顶级项目。

*   2012年8月,YARN成为Hadoop子项目。

*   2012年10月,第一个Hadoop原生MPP查询引擎Impala加入到了Hadoop生态圈。

*  2014年2月,Spark逐渐代替MapReduce成为Hadoop的缺省执行引擎,并成为Apache基金会顶级项目。

*   2015年10月,Cloudera公布继HBase以后的第一个Hadoop原生存储替代方案——Kudu。

*   2015年12月,Cloudera发起的Impala和Kudu项目加入Apache孵化器。

好了,一张图向大家道一声晚安吧,挺晚了,该睡了~ 下一章我们再追问“我是谁?”的灵魂思考吧~

我从哪里来?

参考文章

https://blog.csdn.net/lfq1532632051/article/details/53219558

900px

相关实践学习
lindorm多模间数据无缝流转
展现了Lindorm多模融合能力——用kafka API写入,无缝流转在各引擎内进行数据存储和计算的实验。
云数据库HBase版使用教程
  相关的阿里云产品:云数据库 HBase 版 面向大数据领域的一站式NoSQL服务,100%兼容开源HBase并深度扩展,支持海量数据下的实时存储、高并发吞吐、轻SQL分析、全文检索、时序时空查询等能力,是风控、推荐、广告、物联网、车联网、Feeds流、数据大屏等场景首选数据库,是为淘宝、支付宝、菜鸟等众多阿里核心业务提供关键支撑的数据库。 了解产品详情: https://cn.aliyun.com/product/hbase   ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
目录
相关文章
|
9天前
|
存储 缓存 NoSQL
常见的 NoSQL 数据库有哪些?
常见的 NoSQL 数据库有哪些?
14 2
|
26天前
|
存储 SQL JSON
介绍一下RDBMS和NoSQL数据库之间的区别
【10月更文挑战第21天】介绍一下RDBMS和NoSQL数据库之间的区别
55 2
|
26天前
|
存储 SQL NoSQL
数据库技术深度探索:从关系型到NoSQL的演变
【10月更文挑战第21天】数据库技术深度探索:从关系型到NoSQL的演变
32 1
|
1月前
|
存储 NoSQL 搜索推荐
nosql
【10月更文挑战第14天】nosql
21 2
|
27天前
|
NoSQL 前端开发 MongoDB
前端的全栈之路Meteor篇(三):运行在浏览器端的NoSQL数据库副本-MiniMongo介绍及其前后端数据实时同步示例
MiniMongo 是 Meteor 框架中的客户端数据库组件,模拟了 MongoDB 的核心功能,允许前端开发者使用类似 MongoDB 的 API 进行数据操作。通过 Meteor 的数据同步机制,MiniMongo 与服务器端的 MongoDB 实现实时数据同步,确保数据一致性,支持发布/订阅模型和响应式数据源,适用于实时聊天、项目管理和协作工具等应用场景。
|
2月前
|
分布式计算 Java Hadoop
java使用hbase、hadoop报错举例
java使用hbase、hadoop报错举例
91 4
|
1月前
|
分布式计算 Hadoop Shell
Hadoop-35 HBase 集群配置和启动 3节点云服务器 集群效果测试 Shell测试
Hadoop-35 HBase 集群配置和启动 3节点云服务器 集群效果测试 Shell测试
70 4
|
1月前
|
SQL 分布式计算 Hadoop
Hadoop-37 HBase集群 JavaAPI 操作3台云服务器 POM 实现增删改查调用操作 列族信息 扫描全表
Hadoop-37 HBase集群 JavaAPI 操作3台云服务器 POM 实现增删改查调用操作 列族信息 扫描全表
33 3
|
1月前
|
分布式计算 Hadoop Shell
Hadoop-36 HBase 3节点云服务器集群 HBase Shell 增删改查 全程多图详细 列族 row key value filter
Hadoop-36 HBase 3节点云服务器集群 HBase Shell 增删改查 全程多图详细 列族 row key value filter
57 3
|
1月前
|
SQL 分布式计算 Hadoop
Hadoop-34 HBase 安装部署 单节点配置 hbase-env hbase-site 超详细图文 附带配置文件
Hadoop-34 HBase 安装部署 单节点配置 hbase-env hbase-site 超详细图文 附带配置文件
75 2
下一篇
无影云桌面