redis--->字符串和哈希對比


redis 的字符串和哈希對比

相同點和不同點
  • 相同點:
    • 首先是他們有很多效果類似的命令,比如set和hset,mset和hmset等等
    • 大多數情況下使用字符串存儲的場景使用hash也可以實現。
  • 不同點
    • 他們的存儲結構決定了他們有一些本質的差異
使用hash散列的優勢
  • 使用hash可以將數據放在同一個地方方便管理,而不必用字符串將數據放在整個數據庫,而且還可以避免誤操作。
  • 使用hash散列既可以減少創建鍵的數量又可以避免鍵名沖突。
  • 使用hash散列比使用字符串鍵更節約內存。因為在數據庫中創建key都有數據庫附加的管理信息(比如鍵的類型,最后一次訪問時間等等),所以keys越多,服務器在存儲附加管理信息方面消耗的內存就越多,同時花在管理數據庫中key的cu'p也會越多。而且redis本事也會對hash的存儲做一些底層的優化,內存消耗更少。
特定情況下使用字符串
  • 使用過期功能
    • 因為redis的過期功能只能對鍵進行操作而不能對散列鍵的field進行操作。
  • 對二進制存儲的命令
    - 因為redis目前只支持對字符串鍵進行setbit,getbit,bitop等二進制相關的命令操作。
所以在使用場景中使用字符串和hash都可以的情況下,盡量使用hash


免責聲明!

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



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