HBase可以替代redis嗎

時間 2021-05-31 05:12:27

1樓:

redis還是在記憶體中,效率更高,所以更適合於快取場景。

hbase屬於nosql和bigtable,主要解決mysql資料量大了之後,分割槽和聚合的問題,還是屬於資料持久層的東西。

兩者不可互相取代。

2樓:冰封

兩個不能互相替代,只能互相彌補,redis是基於記憶體的,而hbase基於hdfs。

1、hbase:可以儲存上億的資料,適合儲存大資料,可以基於rowkey掃瞄資料,作為大資料儲存資料庫的不錯選擇。

2、redis:基於記憶體的,速度比hbase快,但是不能作為大資料儲存,但是適合一些批量資料,快速讀取,作為臨時資料快取的不錯選擇。

3樓:

不行,redis較快,因為它把資料熱緩到記憶體,儲存大小有限,而hbase雖然也是k_v資料庫,但是它是大表資料庫,適合放大資料,速度慢redis。某些業務是可以互相替換的,但是redis並適合放永續性資料。

4樓:iseeyou

兩者功能上比較相近,都屬於nosql資料庫,都支援資料分片儲存,一般來講redis比較依賴記憶體,適合做快取,hbase適合做大資料的持久儲存,兩者適合的場景不太一樣,主要區別有如下幾點:

1.讀寫效能:hbase採用了LSM結構,寫快讀慢,hbase讀延時在一般在幾毫秒,redis讀延時在幾十微秒,效能相差比較大

2.資料型別:hbase和redis都支援kv型別,但redis支援更豐富的集合型別list,set等

3.資料量:redis在熱資料比記憶體大時,效能下降比較厲害,非常依賴記憶體,hbase不存在這問題

4.部署複雜度:hbase部署複雜,依賴hadoop,zookeeper,redis部署簡單

5.資料持久化:hbase採用了WAL,先記錄日誌再寫入資料,理論上不會丟失資料,而redis採用的是非同步複製資料,failover時可能丟失資料

5樓:

目前正在做技術選型,有一些結論你可以參考一下:

redis

1. 速度快,響應穩定(<10ms)

2. 資料持久化(落地)存在隱患

3. 分布式方案沒有或者不好,擴充套件起來不如hbase方便

4. 完全依靠記憶體容量,儲存容量大成本很高

hbase

1. 速度不如redis(10-200ms級別),存在一些效能尖峰(毛刺)。

2. hadoop(hive)算完寫入hbase很方便

3. 對錶結構設計等要求較高,需要對hbase比較了解才可以規避一些效能陷阱

4. 擴充套件較redis容易,成本低

結論:redis適合場景:效能要求高,儲存容量不是很大,可以接受記憶體成本高的

hbase適合場景:效能要求不是特別高,可以容忍一些請求是失敗的或者超時的

6樓:

現在的架構,導致hbase對寫友好,對讀就差了些許。

LSM 模型造成的

我做過乙個用hbase做線上高併發的任務,但是是在前面加了快取層,榮譽是快取層的。

對於線上的請求,redis等類似的cache系統是不可缺少的工具。

---hbase 可以用來做資料的固化,也就是資料儲存,做這個他非常合適。

redis適合做cache,也就是系統的訪問。好訊息是現在基於redis的分布式方案也不少,不用擔心單機的效能或者記憶體不夠用的情況。

cache+storage 是比較經典的組合。

---這個組合最大的問題估計就是資料一致性的問題了,我有簡單的方法1. cache miss tag

2. cache read not write

7樓:YING zz

兩個場景有點不同。

hbase是屬於hadoop生態圈的元件,不可能脫離hdfs使用的。hbase部署起來較重,需要有一定人力搞定它。但是優點也是很明顯的,作為分布式資料庫,容災以及擴充套件性都很棒。

redis更適合小場景的需求,優點是速度快,作為快取是個不錯的選擇。但是大資料肯定不夠玩。

最後回答一下樓主的問題,hbase是可以作為線上系統的後台的,實時性是建立在你們對錶的設計和優化上的。如果人力允許,完全可以用hbase+redis實現資料倉儲加快取資料庫,速度和擴充套件性都兼顧。

8樓:Reid Chan

不存在誰替代誰的關係

本人不了解redis 但可以確定的是HBase諸多限制和問題肯定不會出現替代***的情況 (即便現處於高速發展態

各種場景都有各個db的角色孰勝孰優很難一刀斷只能說HBase後台硬吧哈哈哈畢竟很多apache專案都有意支援HBase 例如火到炸開的spark

MongoDB 或者 redis 可以替代 memcached 嗎

站在巨人的肩膀上 沒有誰可以替代誰,還要看使用場景,MongoDB,redis,memcached都有自己獨有的特性,無法替換 不存在誰是誰的子集的問題。 有人改了一版redis,支援了部分memcached的指令。可以用redis的客戶端和memcached的客戶端同時操作同乙份資料。可以作為me...

Redis 可以用來做資料庫嗎?

愛折騰的80後 顯然不能 資料庫需要支援標準SQL語句操作,事務等特徵當然你有說我做個中介軟體封裝一下,提供SQL和事務介面出去,問題是與其這樣為什麼你不直接用成熟的資料庫呢?如果說技術上能不能,那一定能,至於真的能不能,那一定是不能,彙編也能寫出軟體,但是真的有彙編寫出來的應用嗎? 李橙橙 看業務...

Spark可以完全替代hadoop嗎?

老馮 Hadoop 有三部分組成 hdfs,yarn,mapreducehdfs,分布式檔案系統,用來儲存檔案或者說是儲存資料。yarn,資源排程系統,用於管理集群中的資源mapreduce,批處理計算引擎 spark 是乙個計算引擎,包括了流處理和批處理,資料探勘與圖計算。可以說spark在計算方...