全方位認識HBase:一個值得擁有的NoSQL數據庫(一)

前言:說起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

掃描二維碼關注博主公衆號

轉載請註明出處!歡迎關注本人微信公衆號【HBase工作筆記】

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章