1. 程式人生 > >hive與hbase的區別與聯絡

hive與hbase的區別與聯絡

問題導讀:
hive與hbase的底層儲存是什麼?
hive是產生的原因是什麼?
habase是為了彌補hadoop的什麼缺陷?





共同點:

1.hbase與hive都是架構在hadoop之上的。都是用hadoop作為底層儲存

區別:
2.Hive是建立在Hadoop之上為了減少MapReduce jobs編寫工作的批處理系統,HBase是為了支援彌補Hadoop對實時操作的缺陷的專案 。
3.想象你在操作RMDB資料庫,如果是全表掃描,就用Hive+Hadoop,如果是索引訪問,就用HBase+Hadoop 。
4.Hive query就是MapReduce jobs可以從5分鐘到數小時不止,HBase是非常高效的,肯定比Hive高效的多。

5.Hive本身不儲存和計算資料,它完全依賴於HDFS和MapReduce,Hive中的表純邏輯。
6.hive借用hadoop的MapReduce來完成一些hive中的命令的執行
7.hbase是物理表,不是邏輯表,提供一個超大的記憶體hash表,搜尋引擎通過它來儲存索引,方便查詢操作。
8.hbase是列儲存。
9.hdfs作為底層儲存,hdfs是存放檔案的系統,而Hbase負責組織檔案。
10.hive需要用到hdfs儲存檔案,需要用到MapReduce計算框架。