大數據的存儲——HBase、HIVE、MYSQL數據庫學習筆記


 HBase

1、hbase為查詢而生,它通過組織機器的內存,提供一個超大的內存hash表,它需要組織自己的數據結構,表在hbase中是物理表,而不是邏輯表,搜索引擎用它來存儲索引,以滿足實時查詢的需求;

2、hbase 是一個基於列存儲的非關系型數據庫,查詢效率高,主要用於查詢和展示結果;
 
3、hbase可以認為是hdfs的一個包裝。它的本質是數據存儲,是個nosql數據庫;hbase部署於hdfs之上,並且克服了hdfs在隨機讀寫方面的缺點。
 

Hive/數據庫

1、hive提供了一套查詢hadoop海量數據的接口,以sql為基礎;

2、hive是分布式的關系型數據庫查詢接口,它不是一個數據庫;用於並行分布式處理大量數據。
 
3、它建立在hadoop之上,所有hive的數據都是存儲在hdfs中的。而數據庫則可以將數據保存在塊設備或者本地文件系統中。
 
4、hive中所有查詢除了“select * from table”之外,所有的查詢都是需要通過map-reduce實現的,在處理大量數據的時候,hive的優勢就能體現出來。
 
5、它可以認為是map-reduce的一個包裝,將寫好的sql轉化為復雜難寫的map-reduce程序;
 
6、hive中不支持對數據的改寫和添加,只能通過覆蓋來實現數據修改;
 
7、hive中沒有key的概念,不會建立數據索引,這和mysql不一樣;需要訪問某些滿足條件的特定結果時,都需要暴力掃描整個數據,因此訪問延遲高。
 
8、hive 建立在集群上可以利用map-reduce並行計算,因此可以支持很大規模的數據;對應的,數據庫可以支持的數據規模較小。
 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM