爲了實現在線庫的複雜查詢,你還在雙寫嗎?

一、在線庫不支持在線複雜查詢

做在線業務的開發者經常會碰到這樣的難題:在線數據庫上面運行稍微複雜點的查詢,在線業務就掛了!不管是單機數據庫如MySQL、PG,還是分佈式數據庫,HBase、MongoDB、Cassandra都有這個問題。下面,本文就以HBase爲例對該問題進行說明,其他庫原理類似。

HBase作爲海量在線存儲引擎,被廣泛應用於推薦、風控、物聯網、畫像、表單等大數據場景。Phoenix作爲HBase的SQL層,極大降低了用戶使用門檻,並且實現了二級索引、加鹽表、動態列等大量實用功能。HBase底層存儲基於LSM,LSM能將業務的隨機寫轉爲順序寫,能有效提升寫吞吐,但是其查詢只適合於Rowkey的前綴匹配,查詢模式單一;Phoenix二級索引,底層是跟原表關聯的索引表,同樣也是前綴匹配,一個表可以有多個索引,這樣可以增加查

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