1. Redis 只適合精確檢索,使用 keys 關鍵字做檢索的話壹定會遍歷所有 key,如果不能得出精確的 key 就不能用 Redis。「數據對象可能很多,上百個」,對 Redis 來說「對象」只是字符串,妳能做的也只是把對象序列化成字符串存儲到 Redis 中,取出來時反序列化成對象。
2. 只要有精確的 key,檢索時不會有任何性能問題。Redis 用於存儲 key 的是壹個字典對象,查詢性能與數量級無關。
3. 用 pipeline 批量執行。
4. 數據量大部分取決於妳使用的數據格式,也取決於妳單個 key 的數據規模。比如使用 Hash 時,默認 entry 數量小於 512 時或 value 小於 64 Kb,使用 ziplist 作為數據結構存儲,否則使用 dict 作為數據結構存儲。壹個 key 還可能產生壹個 ttl 對象記錄過期時間。很難非常準確地預計。如果不用過分精確地估計的話,建議先放入壹部分數據,通過「info」關鍵字查詢放入前後 memory 的大小來估算。
5. Redis 是近乎不可視的存儲工具,如果要做數據統計、模糊檢索,就不要用 Redis 。Redis 更適合用於快速存取的場景。
希望能幫到妳