用於Keys命令或match命令得到匹配的key時使用,註意不要與正則表達式混淆 語法:KEYS pattern / scan 0 match pattern count 10 說明:返回與指定模式相匹配的所用的keys。 該命令所支持的匹配模式如下: (1)?:用於匹配單個字元。例如,h?llo可 ...
實際業務場景:
現需求要將多個KEY的set集合數據合併到一個總集合中,思路:通過scan分批掃描滿足條件的KEY,然後用sunionstore分批合併。
註意閉坑:此種解決方案只適用於待合併的集合KEY較多,但所有集合存儲的總數據量不大的情況,sunionstore的複雜度為O(N),若合併的數據量較大,同樣會造成REDIS長時間阻塞,與KEYS命令無異
主邏輯線程:
SACN方法:
SUNIONSTORE方法:
模式匹配pattern:
用於Keys命令或match命令得到匹配的key時使用,註意不要與正則表達式混淆
語法:KEYS pattern / scan 0 match pattern count 10
說明:返回與指定模式相匹配的所用的keys。
該命令所支持的匹配模式如下:
(1)?:用於匹配單個字元。例如,h?llo可以匹配hello、hallo和hxllo等;
(2)*:用於匹配零個或者多個字元。例如,h*llo可以匹配hllo和heeeello等;
(3)[]:可以用來指定模式的選擇區間。例如h[ae]llo可以匹配hello和hallo,但是不能匹配hillo。
同時,可以使用“/”符號來轉義特殊的字元