Navicat Blog

一些必備的 Redis 命令 2023 年 11 月 17 日,由 Robert Gravelle 撰寫

Redis 是一種快速的記憶體資料結構儲存庫,以處理鍵值對的能力而備受推崇。然而,它的功能遠不止於基本的鍵作業。在本文中,我們將探索一些最不可或缺的 Redis 命令(不包括之前介紹過的涉及鍵的命令),發揮這個強大工具的真正潛力。我們還將了解如何從 Navicat 直接與 Redis 通訊!

1. LPUSH 和 RPUSH

Redis 的多功能性在於其能處理複雜的資料結構。在這方面,最強大的兩個命令是 LPUSH 和 RPUSH,分別將元素加入到 List 的左側和右側。

	> LPUSH my_list "element1"
	(integer) 1
	> RPUSH my_list "element2"
	(integer) 2
	> LRANGE my_list 0 -1
	1) "element1"
	2) "element2"
	
	

在需要管理有序資料集的情況下,這些命令非常有用。

2. LPOP 和 RPOP

作為補充 List 的附加命令,Redis 還提供 LPOPRPOP 兩個命令,分別移除並傳回 List 的第一個和最後一個元素。

	> LPOP my_list
	"element1"
	> RPOP my_list
	"element2"
	
	

在實作佇列(queue)或堆疊(stack)時,這些命令特別有用。

3. SADD 和 SMEMBERS

Redis Set 是唯一元素的集合。SADD 命令將一個或多個成員加入到 Set 中,而 SMEMBERS 命令則擷取 Set 的所有成員。

	> SADD my_set "member1"
	(integer) 1
	> SADD my_set "member2"
	(integer) 1
	> SMEMBERS my_set
	1) "member1"
	2) "member2"
	
	

Set 在需要成員檢測或儲存唯一資料的場景中非常有用。

4. ZADD 和 ZRANGE

Redis 的有序集合(Sorted Set)提供了一個有序的唯一元素集合。 ZADD 命令加入具有指定分數的元素,而 ZRANGE 則擷取指定範圍內的元素。

	> ZADD my_sorted_set 1 "element1"
	(integer) 1
	> ZADD my_sorted_set 2 "element2"
	(integer) 1
	> ZRANGE my_sorted_set 0 -1 WITHSCORES
	1) "element1"
	2) "1"
	3) "element2"
	4) "2"
	
	

有序集合非常適用於需要有序資料擷取的場景。

5. HSET 和 HGET

Redis Hash 是字串欄位名稱和字串值之間的對應。 HSET 命令設定 Hash 中欄位的值,而 HGET 則擷取欄位的值。

	> HSET my_hash field1 "value1"
	(integer) 1
	> HSET my_hash field2 "value2"
	(integer) 1
	> HGET my_hash field1
	"value1"
	
	

Hash 非常適合涉及結構化資料的場景。

6. PUBLISH 和 SUBSCRIBE

Redis 不僅在資料儲存方面表現出色,而且在即時訊息傳遞方面也非常優秀。 PUBLISH 命令允許用戶端向頻道傳送訊息,而 SUBSCRIBE 命令則使用戶端能夠聽取頻道上的訊息。

	# Terminal 1
	> SUBSCRIBE my_channel
	Reading messages... (press Ctrl-C to quit)
	1) "subscribe"
	2) "my_channel"
	3) (integer) 1

	# Terminal 2
	> PUBLISH my_channel "Hello, Redis!"
	(integer) 1
	
	

對於建置即時應用程式和事件驅動架構,這個功能非常有用。

7. SCAN

雖然 SCAN 命令不是用於直接資料調處的命令,但它對於在 Redis 資料庫中逐一查看鍵而不阻塞伺服器非常重要。它提供了一種指標型的方法,以防止系統超載。

	> SCAN 0
	1) "0"
	2) 1) "my_list"
	   2) "my_set"
	   3) "my_sorted_set"
	   4) "my_hash"
	   5) "my_channel"
	
	

對於涉及大型資料集的作業,這個命令至關重要。

在 Navicat 16 for Redis 中執行命令

雖然你可以使用 Navicat 的直觀 GUI 完成幾乎所有需要的操作,但也可以使用「命令列介面」視窗直接向 Redis 發出命令。你可以在主功能表中的「工具」->「命令列介面」或主工具列上的「命令列介面」按鈕開啟它:

console_button (9K)

以下是我們上面學到的 SCAN 命令的一些範例輸出:

console (24K)

Redis 命令的結語

Redis 的命令功能遠不止我們在最近的文章中所探討的鍵值作業。透過熟練掌握用於處理資料結構、Set、有序集合、Hash 甚至實時消息傳遞的進階命令,你可以充分發揮 Redis 在各種應用程式中的潛力。無論你是建置快取層、實作佇列還是開發即時應用程式, Navicat 16 for Redis 提供的強大的工具集都能滿足你的需求。

Navicat Blogs
Feed Entries
Blog Archives
Share